[libclc] r200413 - Enforce python2 for systems that use python3 as their default.

Tom Stellard tom at stellard.net
Thu Jan 30 08:15:02 PST 2014


On Wed, Jan 29, 2014 at 02:59:44PM -0800, James Dennett wrote:
> On Wed, Jan 29, 2014 at 1:32 PM, Daniel Liew <daniel.liew at imperial.ac.uk> wrote:
> > Hi Nico,
> >
> >> This breaks systems that keep "python" as python2 and don't have a "python2"
> >> binary, no?
> >
> > It would totally depend on the distro but in my experience
> > "/usr/bin/python" and "/usr/bin/python2" are both symbolic links to
> > the real python executables. So it works fine for many distros that
> > only have python2.x and do not have python3 as well.
> >
> > E.g. on Ubuntu 12.04 LTS (Python2 is default)
> >
> > $ ls /usr/bin/python*
> > /usr/bin/python  /usr/bin/python2  /usr/bin/python2.7  /usr/bin/python-mkdebian
> > dan at Sputnik:~$ ls -l /usr/bin/python*
> > lrwxrwxrwx 1 root root       9 Jun 18  2013 /usr/bin/python -> python2.7
> > lrwxrwxrwx 1 root root       9 Jun 18  2013 /usr/bin/python2 -> python2.7
> > -rwxr-xr-x 1 root root 2989496 Sep 26 21:29 /usr/bin/python2.7
> > -rwxr-xr-x 1 root root   14078 Jul 12  2012 /usr/bin/python-mkdebian
> >
> > and similarly on Fedora 18 (python2 is default)
> >
> > $ ls -l /usr/bin/python*
> > lrwxrwxrwx. 1 root root    7 Jan 22  2013 /usr/bin/python -> python2
> > lrwxrwxrwx. 1 root root    9 Jan 22  2013 /usr/bin/python2 -> python2.7
> > -rwxr-xr-x. 1 root root 7120 Aug  9  2012 /usr/bin/python2.7
> > -rwxr-xr-x. 1 root root 1785 Aug  9  2012 /usr/bin/python2.7-config
> > lrwxrwxrwx. 1 root root   16 Jan 24  2013 /usr/bin/python2-config ->
> > python2.7-config
> > lrwxrwxrwx. 1 root root   14 Jan 24  2013 /usr/bin/python-config ->
> > python2-config
> > lrwxrwxrwx. 1 root root    3 Aug  1 23:06 /usr/bin/python-pip -> pip
> >
> > and on something like Arch Linux where Python3 is default (I also have
> > python2.7 installed along side)
> >
> > $ ls /usr/bin/python*
> > lrwxrwxrwx 1 root root     7 Nov 26 16:42 /usr/bin/python -> python3
> > lrwxrwxrwx 1 root root     9 Nov 26 15:53 /usr/bin/python2 -> python2.7
> > -rwxr-xr-x 1 root root  6224 Nov 26 15:53 /usr/bin/python2.7
> > -rwxr-xr-x 1 root root  1668 Nov 26 15:53 /usr/bin/python2.7-config
> > lrwxrwxrwx 1 root root    16 Nov 26 15:53 /usr/bin/python2-config ->
> > python2.7-config
> > -rwxr-xr-x 1 root root    94 Aug 22 13:15 /usr/bin/python2-pyuic4
> > lrwxrwxrwx 1 root root     9 Nov 26 16:42 /usr/bin/python3 -> python3.3
> > -rwxr-xr-x 2 root root 10384 Nov 26 16:42 /usr/bin/python3.3
> > lrwxrwxrwx 1 root root    17 Nov 26 16:42 /usr/bin/python3.3-config ->
> > python3.3m-config
> > -rwxr-xr-x 2 root root 10384 Nov 26 16:42 /usr/bin/python3.3m
> > -rwxr-xr-x 1 root root  1972 Nov 26 16:42 /usr/bin/python3.3m-config
> > lrwxrwxrwx 1 root root    16 Nov 26 16:42 /usr/bin/python3-config ->
> > python3.3-config
> > lrwxrwxrwx 1 root root    14 Nov 26 16:42 /usr/bin/python-config ->
> > python3-config
> >
> > The patch is fine for the Linux distros that I use but I cannot speak
> > for everybody. Do you know anyone that uses a (still supported)
> > distribution that does not provide the python2 symlink? I haven't
> > talked about OSX at all... I don't use it so I can't test it but I
> > would be surprised if it didn't work because I've written python
> > scripts before (with the same shebang) that I know OSX users use.
> 
> It doesn't appear to work on OS X, which has python2.4, python2.5,
> python2.6 and python2.7 as well as plain python, but no python2 (on my
> system).

Was the original purpose of this patch to fix the build with python3?
If yes, is there some other solution?

-Tom

> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits



More information about the cfe-commits mailing list