On Fri, Oct 21, 2011 at 09:02:56PM +0200, Martin Costabel wrote: > On 21/10/11 16:04 , Jack Howarth wrote: >> On Fri, Oct 21, 2011 at 10:06:24AM +0200, Martin Costabel wrote: >>> On 21/10/11 01:05, Jack Howarth wrote: >>> [] >>>> should upgrade to this version (or revert to Xcode 3.2.6). This would >>>> allow us to >>>> focus on supporting clang in the Xcode 4.x releases and encourage >>>> unification of >>>> any clang specific changes to info files between the 10.4 and 10.6 trees. >>>> It also >>>> will likely accelerate the elimination of the unstable tree in 10.4 as any >>>> clang >>>> specific changes are backported into 10.4. >>> >>> The most common "clang specific changes to info files" are currently >>> SetCC: llvm-gcc-4.2 >>> SetCXX: llvm-g++ >>> because many packages won't compile with clang. >>> This is not backportable. > >> Martin, >> Re-reading your response again, I assume you meant that the info files >> will never >> been entirely unified. This is true however that shouldn't stand in our way >> of attempting >> to make fink usable for SL users who have Xcode 4.2 installed. We really >> only have two >> choices there... >> >> 1) Leave fink as is and manually check if each info file is miscompiled by >> llvm-gcc. >> This is a lot of work for a smallish testing and developer group to deal >> with. It also >> requires far more info file changes to switch these problem packages to >> clang or gcc-4.2. >> 2) Use my approach of enabling the path-prefix-clang on SL when Xcode 4.2 is >> detected via >> the system compiler change. This gives us a well tested package set which >> already has been >> checked against clang3.0svn. > > What I mean is that a package that does not compile under clang needs to > include the above fix for xcode-4.2 if your automatic switch to clang is > implemented. But then it will probably no longer work on 10.5 and on > 10.6 with xcode-3.2. You would need one info file for xcode-4.2 and > another one for xcode<=3.2. I don't see how this is possible inside the > 10.4 tree.
I don't see why this has to be so complex. If you run into package that is incompatible with clang, just use... if [ `gcc -v 2>&1 | grep -c clang` = "1" ]; then export CC=llvm-gcc-4.2 export CXX=llvm-g++-4.2 fi We could create a path-prefix-gcc42 to force the SL Xcode 4.2 compilers under fink to use gcc-4.2/g++-4.2 but that doesn't promote the general progress by encouraging testing of i386 code generation from clang. > > -- > Martin ------------------------------------------------------------------------------ The demand for IT networking professionals continues to grow, and the demand for specialized networking skills is growing even more rapidly. Take a complimentary Learning@Cisco Self-Assessment and learn about Cisco certifications, training, and career opportunities. http://p.sf.net/sfu/cisco-dev2dev _______________________________________________ Fink-devel mailing list Fink-devel@lists.sourceforge.net List archive: http://news.gmane.org/gmane.os.apple.fink.devel Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-devel