On 4/6/14, 1:46 PM, Gary K. Olson wrote:
> I have llvm-gcc42-2336.11-7 installed from the binary distribution. I
> was wondering if it would be better if I added Alexander’s suggested
> perl scripts to the llvm-gcc42.info file:
>
>> Adding
>>
>> perl -pi -e 's/module/export_dynamic/' llvmCore/Makefile.rules
>> perl -pi -e 's/-no-undefined//' llvmCore/tools/edis/Makefile
>> llvmCore/tools/lto/Makefile
>>
>> to the PatchScript block of
>> /sw/fink/10.7/stable/main/finkinfo/languages/llvm-gcc42.info to get
>> rid of some flags that are no longer allowed in the current clang
>> allowed the build to work for me.
>
> So, I added this to my PatchScript block:
>
> PatchScript: <<
> #!/bin/bash -ev
> sed -e "s|@@FINKPREFIX@@|%p|g" < %{PatchFile} | patch -p0
> mv build_gcc.fink build_gcc
> chmod u+x build_gcc
> perl -pi -e "s|DEVELOPER_DIR|BUILD_DEVELOPER_DIR|g" %b/GNUmakefile
> %b/llvmCore/utils/buildit/build_llvm
> perl -pi -e "s|--enable-werror | |" %b/build_gcc
> perl -pi -e
> "s|developer.apple.com/bugreporter|http://sourceforge.net/p/fink/bugs/|g
> <http://developer.apple.com/bugreporter|http://sourceforge.net/p/fink/bugs/|g>"
> %b/gcc/version.c
> perl -pi -e "s|LLVM_VERSION_INFO \"|LLVM_VERSION_INFO \" as Fink %n
> %v_%r|g" %b/gcc/version.c
> perl -pi -e 's/module/export_dynamic/' llvmCore/Makefile.rules
> perl -pi -e 's/-no-undefined//' llvmCore/tools/edis/Makefile
> llvmCore/tools/lto/Makefile
> <<
>
> and attempted to rebuild llvm-gcc42 and I got the following:
>
> llvm[4]: Building Release+Debug-Asserts Archive Library libLLVMCodeGen.a
> /bin/rm -f
> /sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/Release+Debug-Asserts/lib/libLLVMCodeGen.a
> ar cru
> /sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/Release+Debug-Asserts/lib/libLLVMCodeGen.a
> /sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/lib/CodeGen/Release+Debug-Asserts/AggressiveAntiDepBreaker.o
>
>
> <snip - snip>
>
> /sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/lib/CodeGen/Release+Debug-Asserts/UnreachableBlockElim.o
> /sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/lib/CodeGen/Release+Debug-Asserts/VirtRegMap.o
> /sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/lib/CodeGen/Release+Debug-Asserts/VirtRegRewriter.o
> ranlib
> /sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/Release+Debug-Asserts/lib/libLLVMCodeGen.a
> make[4]: Leaving directory
> `/sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/lib/CodeGen'
> make[3]: Leaving directory
> `/sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm/lib'
> make[2]: *** [all] Error 1
> make[2]: Leaving directory
> `/sw/src/fink.build/llvm-gcc42-2336.11-7/objroot/obj-llvmCore/obj-llvm'
> + '[' 2 '!=' 0 ']'
> + echo 'error: LLVM '\''make'\'' failed!'
> error: LLVM 'make' failed!
> + exit 1
> make[1]: *** [llvmCore] Error 1
> make: *** [install] Error 2
> ### execution of /tmp/fink.duCUq failed, exit code 2
> ### execution of /tmp/fink.yQHO6 failed, exit code 2
> Removing runtime build-lock...
> Removing build-lock package...
> /sw/bin/dpkg-lockwait -r fink-buildlock-llvm-gcc42-2336.11-7
> (Reading database ... 330249 files and directories currently installed.)
> Removing fink-buildlock-llvm-gcc42-2336.11-7 ...
> Failed: phase installing: llvm-gcc42-2336.11-7 failed
>
> This looks like an error in the same place as Jens Kaufmann failed
> before he inserted the perl scripts. Obviously, I have more wrong than
> Jens or Alexander. Question: Is attempting to build llvm with the perl
> scripts the best way to go, especially since I have the compiler-wrapper
> fink setup and a working llvm-gcc42 from bind-dist? If, it is a good
> idea, what should I do next. Thanks for any help.
>
> Gary K Olson
>
>
There's probably no real reason not just to go with what you have
installed via the binary distribution. I don't think the changes needed
to build the package with Xcode 5.1 have any runtime effects: the first
is supposedly chooses between two nominally equivalent syntaxes for an
option, and the second takes out a link flag which isn't even used.
I went ahead and applied my changes to the package in the distribution,
at any rate based on the feedback from Jens and my own tests.
--
Alexander Hansen, Ph.D.
Fink User Liaison
My package updates: http://finkakh.wordpress.com/
------------------------------------------------------------------------------
_______________________________________________
Fink-users mailing list
[email protected]
List archive:
http://news.gmane.org/gmane.os.macosx.fink.user
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-users