diff --git a/llvm-2.9.99.svn20111106.tar.bz2 b/llvm-2.9.99.svn20111106.tar.bz2 deleted file mode 100644 index a5e888f..0000000 --- a/llvm-2.9.99.svn20111106.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4e405888b4a4dfdfff799a6d0ab2f933d83dcc7f62406d55ba337d98a7196304 -size 13958733 diff --git a/llvm-3.0.tar.bz2 b/llvm-3.0.tar.bz2 new file mode 100644 index 0000000..53b3cdf --- /dev/null +++ b/llvm-3.0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9486d9f956ceb8002377406368ad871f41ce01e95ba3b735757df4beaaa3374 +size 13988408 diff --git a/llvm.changes b/llvm.changes index 419f734..7219016 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,41 @@ +------------------------------------------------------------------- +Mon Dec 5 13:19:22 UTC 2011 - idoenmez@suse.de + +- Switch to 3-stage bootstrap + +------------------------------------------------------------------- +Fri Dec 2 12:22:07 UTC 2011 - idoenmez@suse.de + +- Build first stage compiler with -O0 to workaround gcc 4.5 bug + +------------------------------------------------------------------- +Thu Dec 1 18:04:15 UTC 2011 - idoenmez@suse.de + +- Update to final 3.0 release + * No real change since rc2 + +------------------------------------------------------------------- +Tue Nov 29 13:23:32 UTC 2011 - idoenmez@suse.de + +- Use %{_lib} macro instead of checking for x86_64 + +------------------------------------------------------------------- +Wed Nov 16 14:28:17 UTC 2011 - idonmez@suse.com + +- Enable ARM support again +- Switch to optimized build + +------------------------------------------------------------------- +Thu Nov 10 14:54:50 UTC 2011 - idonmez@suse.com + +- Disable ARM support, VM goes out of memory while compiling it + +------------------------------------------------------------------- +Thu Nov 10 10:33:01 UTC 2011 - idonmez@suse.com + +- Really enable ARM support +- Remove forcing -frtti + ------------------------------------------------------------------- Mon Nov 7 15:05:52 UTC 2011 - idonmez@suse.com diff --git a/llvm.spec b/llvm.spec index 873952f..ca3f39a 100644 --- a/llvm.spec +++ b/llvm.spec @@ -16,11 +16,12 @@ # -%define _revision 143961 +%define _revision 145598 %define _release_version 3.0 +%define _supported_archs "ARM;X86" Name: llvm -Version: 2.9.99.svn20111106 +Version: 3.0 Release: 1 License: NCSA Summary: Low Level Virtual Machine @@ -132,38 +133,53 @@ This package contains vim plugins for LLVM like syntax highlighting. sed -i s,SVN_REVISION,\"%{_revision}\",g tools/clang/lib/Basic/Version.cpp # Nasty hardcoded path -%ifarch x86_64 +%if "%{_lib}" == "lib64" sed -i s,/lib/LLVMgold.so,/lib64/LLVMgold.so, tools/clang/lib/Driver/Tools.cpp %endif %build TOPLEVEL=$PWD -mkdir stage1 stage2 -cd stage1 +mkdir stage1 stage2 stage3 +pushd stage1 -cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ - -DLLVM_ENABLE_ASSERTIONS=TRUE \ - -DLLVM_TARGETS_TO_BUILD="ARM;X86" \ - .. +# Idiot cmake doesn't let me select my own optimization level here +# hence we use configure, this needed to workaround a gcc 4.5 bug +../configure \ + --enable-optimized \ + --disable-assertions \ + --with-optimize-option="-O0" \ + --enable-targets=host make %{?_smp_mflags} -cd ../stage2 +popd +pushd stage2 + +export CC=$TOPLEVEL/stage1/Release/bin/clang +export CXX=$TOPLEVEL/stage1/Release/bin/clang++ + +cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ + -DCMAKE_BUILD_TYPE=Release \ + -DLLVM_TARGETS_TO_BUILD=%{_supported_archs} \ + .. +make %{?_smp_mflags} + +popd +pushd stage3 # Needed to make clang resource dir working inside build tree ln -s lib lib64 -export CC=$TOPLEVEL/stage1/bin/clang -export CXX=$TOPLEVEL/stage1/bin/clang++ -export CXXFLAGS="%{optflags} -frtti" +export CC=$TOPLEVEL/stage2/bin/clang +export CXX=$TOPLEVEL/stage2/bin/clang++ cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_BUILD_TYPE=Release \ -DLLVM_ENABLE_ASSERTIONS=FALSE \ -DLLVM_ENABLE_PIC=TRUE \ -DLLVM_ENABLE_TIMESTAMPS=FALSE \ - -DLLVM_TARGETS_TO_BUILD=X86 \ + -DLLVM_TARGETS_TO_BUILD=%{_supported_archs} \ -DCLANG_VENDOR="SUSE Linux" \ -%ifarch x86_64 +%if "%{_lib}" == "lib64" -DLLVM_LIBDIR_SUFFIX=64 \ %endif %if 0%{?suse_version} >= 1220 @@ -174,17 +190,17 @@ cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ make %{?_smp_mflags} %check -cd stage2 +cd stage3 make check make clang-test %install -cd stage2 +cd stage3 %makeinstall cd .. -# Fixup libdir for x86-64 -%ifarch x86_64 +# Fixup libdir +%if "%{_lib}" == "lib64" sed -i s,ABS_RUN_DIR/lib,ABS_RUN_DIR/lib64, %{buildroot}/%{_bindir}/llvm-config %endif