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
Fink-users@lists.sourceforge.net
List archive:
http://news.gmane.org/gmane.os.macosx.fink.user
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-users

Reply via email to