Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 05 Mar 2007 12:25:59 -0800
From:      Alexander Botero-Lowry <alexbl@FreeBSD.org>
To:        Hye-Shik Chang <perky@freebsd.org>
Cc:        python@freebsd.org
Subject:   Re: New patch to upgrade python to 2.5
Message-ID:  <20070305202257.8C9CE3A875@cherenkov.geekfire.com>
In-Reply-To: <20070305123623.GA41027@FreeBSD.org>
References:  <20070305123623.GA41027@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
> Hi guys
> 
> Sorry for my late response to the recent python problems.
> I just prepared a patch to switch default version to 2.5.  The patch
> also includes a fix for 2.5 migration problems related to egginfo
> and setuptools.
Yay! I've been waiting for you to show up to work this out, been afraid
to go at it all on my own.

> 
> Changes and notes for the patch:
> 
>  * lang/python depends on lang/python25 by default.
> 
>  * None of lang/python(ver) installs ${PREFIX}/bin/python but
>    lang/python holds all executable files as symlinks to the default
>    version's.
> 
>  * The user can choose her default python version that serves
>    as ${PREFIX}/bin/python by putting PYTHON_VERSION=python{ver}
>    in /etc/make.conf.
> 
>  * Even if the user didn't specify PYTHON_VERSION, bsd.python.mk
>    will determine the default python version correctly if
>    ${PREFIX}/bin/python exists.
> 
>  * ${PREFIX}/bin/python may not be available even though a consumer
>    port used USE_PYTHON.  It'll be need to use the filename including
>    python version (eg. python2.5) in scripts or shebang lines.
>    ${PYTHON_CMD} is provided by bsd.python.mk for this purpose.
> 
I think in all honesty we need to have something linked to 
$LOCALBASE/bin/python always. There are too many situations where people
might have non ports managed stuff installed that has a shebang for a
simple python binary, and even cases where python is invoked more directly
that cause issues. I see this is also causing a problem for committers and
submitters that have to patch or sed _every_ shebang line in existence
instead of just getting a simple solution to the problem.

>  * egginfo support is added.  PYDISTUTILS_EGGINFO holds a filename of
>    egginfo and it'll be added to plist unless PYDISTUTILS_NOEGGINFO is
>    defined.  PYDISTUTILS_PKGNAME and PYDISTUTILS_PKGVERSION is added
>    for the ports which has different name from distutils-side.
> 
Yay!

>  * setuptools support is added.  USE_PYDISTUTILS=easy_install
>    invokes setuptools installation phases and it'll add setuptools
>    registration/unregistration command to plist automatically.  When
>    the binary package is architecture-dependent, port must define
>    PYEASYINSTALL_ARCHDEP to match the egg name.
> 
Does this provide a solution for the make -V BLAH_EGG hack that has been
proliferating in ports (where one port depends on an egg of another port
so it has to get the egg name from the other port using make -V. I believe
py-django does this.)

> Here's a patch for python ports and bsd.python.mk:
>   http://people.freebsd.org/~perky/python25-rev1.diff
> 
> And a patch for few example ports; py-parsing, py-simplejson and
> py-zopeInterface.
>   http://people.freebsd.org/~perky/python25-rev1-consumers.diff
> 
> Thanks
> 
> Hye-Shik
> _______________________________________________
> freebsd-python@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-python
> To unsubscribe, send any mail to "freebsd-python-unsubscribe@freebsd.org"
> 
> !DSPAM:4,45ec0f3b854541621712674!
> 
> 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070305202257.8C9CE3A875>