Re: llvm34-3.4.1-0c on 10.6
Jack Howarth <[email protected]>
| Newsgroups | gmane.os.apple.fink.devel |
|---|---|
| Message-ID | <CAP5Ds0AQMH7z2=XojO9-FcGjydRpK2+c19gVK0JvC1u3S65nWw@mail.gmail.com> |
On reflection, I don't see any way to achieve this transition from the broken stage4 bootstrap to the proper stage3 bootstrap without some from of circular dependency being created within fink on 10.4-EOL/10.5-EOL/10.6-EOL. We can't force the current llvm34-3.4.1-0a package to be built and installed first so that it can then be used by the new llvm34-3.4.1-0c packaging. Likewise, if the new llvm34 package were renamed to llvm34-libcxx or such, it would require a Provides/Replaces of llvm34 creating a circular loop. We probably should just leave the broken bootstrap in place for llvm34 on 10.4-EOL/10.5-EOL/10.6-EOL and then use the changes I proposed above for the upcoming llvm35 packaging so that going forward the bootstrap would be unbroken. On Sat, May 24, 2014 at 1:58 PM, Jack Howarth <[email protected]>wrote: > David, > Unfortunately, I seem to have upgraded the drive which I used for 10.6 > testing to 10.8. If you need help with the 10.6-EOL version of llvm34, I > can wipe my MacBook Pro's Time Machine drive temporarily and install Snow > Leopard there but I would prefer not to. > I had forgotten that the libc++ support in your llvm3x packages wasn't > introduced until llvm34. Perhaps we can pull enough dependency games to > manage something like the following. > > 1) Rename the existing llvm34.info (for 3.4.1-0a) in 10.6-EOL to > llvm34-3.4.1-0a.info > 2) Add the new 10.6-EOL modified llvm34.info for 3.4.1-0c with a the > BuildDepends of xcode changed to llvm34 (= 3.4.1-0a) > > This would look something like… > > --- llvm34.info 2014-05-24 09:04:04.000000000 -0400 > +++ llvm34.info.10.6 2014-05-24 13:56:29.000000000 -0400 > @@ -5,7 +5,7 @@ > Description: Modular and reusable compiler > License: BSD > Maintainer: David Fang <[email protected]> > - > +Distribution: 10.4, 10.5, 10.6 > BuildDepends: << > fink (>= 0.30.0), > cmake (>= 2.8.10.2-1), > @@ -20,7 +20,8 @@ > # xml and lzma are used to build an uninstalled bin/c-index-test, so > bdep-only > libxml2, > liblzma5, > - xcode (>= 4.6) > + clang34 (= 3.4.1-0a), > + libcxx1-dev (= 3.4.1-0a) > << > Depends: %N-shlibs > # no longer uses cloog directly, only indirectly through isl > @@ -335,7 +336,12 @@ > -DCMAKE_BUILD_TYPE:STRING=$build_type ) > > STAGE1_CMAKE_OPTIONS=( -DCMAKE_C_FLAGS=-fno-common \ > - -DCMAKE_CXX_FLAGS="-fno-common -std=c++11 -stdlib=libc++" ) > + -DCMAKE_CXX_FLAGS="-fno-common -std=c++11 -stdlib=libc++ -cxx-isystem > %p/include/c++/v1" \ > + -DCMAKE_C_COMPILER:FILEPATH=%p/opt/llvm-3.4/bin/clang \ > + -DCMAKE_CXX_COMPILER:FILEPATH=%p/opt/llvm-3.4/bin/clang++ \ > + -DCMAKE_EXE_LINKER_FLAGS:STRING="-L%p/lib -L%p/lib/c++" \ > + -DCMAKE_MODULE_LINKER_FLAGS:STRING="-L%p/lib -L%p/lib/c++" \ > + -DCMAKE_SHARED_LINKER_FLAGS:STRING="-L%p/lib -L%p/lib/c++" ) > # trying to disable optimization flags on non-trustworthy compilers > # worked around in recompile_known_units(), and now using RelWithDebInfo > ccvers=`$CXX -v 2>&1 | tail -n 1 | cut -d\ -f3` > > Alexander, any comments on the logic of have a specific version of a fink > package retained to bootstrap a later version without explicitly renaming > the packages? > Jack > ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ Fink-devel mailing list [email protected] List archive: http://news.gmane.org/gmane.os.apple.fink.devel Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-devel