Issue 8607: OSX: duplicate -arch flags in CFLAGS breaks sysconfig (original) (raw)

In Python 2.7b1, building on OSX 10.6 with this configure command:

export CC=gcc-4.0 export CXX=g++-4.0 export MACOSX_DEPLOYMENT_TARGET=10.4 ../configure
--with-universal-archs=32-bit
--enable-universalsdk=/Developer/SDKs/MacOSX10.4u.sdk
--enable-framework

Results in these lines in Makefile:

BASECFLAGS= -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -fno-common -dynamic CFLAGS= (BASECFLAGS)−archppc−archi386−isysroot/Developer/SDKs/MacOSX10.4u.sdk(BASECFLAGS) -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk (BASECFLAGS)archppcarchi386isysroot/Developer/SDKs/MacOSX10.4u.sdk(OPT) $(EXTRA_CFLAGS)

Then later on in the build the sysconfig module uses the -arch flags in CFLAGS but is not able to find a match because of the extra set of values, and the build fails with this exception:

Traceback (most recent call last): File "./../Lib/site.py", line 542, in main() File "./../Lib/site.py", line 521, in main addbuilddir() File "./../Lib/site.py", line 118, in addbuilddir s = "build/lib.%s-%.3s" % (get_platform(), sys.version) File "/projects/Python-2.7b1/Lib/sysconfig.py", line 646, in get_platform "Don't know machine value for archs=%r"%(archs,)) ValueError: Don't know machine value for archs=('i386', 'i386', 'ppc', 'ppc') make: *** [sharedmods] Error 1