From bd026aef2ceaa40ecdf2e75d098b855e78d06327babbc199c539a68df98e3865 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Thu, 10 Nov 2011 10:34:16 +0000 Subject: [PATCH 1/9] - Really enable ARM support - Remove forcing -frtti OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=94 --- llvm.changes | 6 ++++++ llvm.spec | 6 +++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/llvm.changes b/llvm.changes index 419f734..7213830 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +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..2ffb672 100644 --- a/llvm.spec +++ b/llvm.spec @@ -18,6 +18,7 @@ %define _revision 143961 %define _release_version 3.0 +%define _supported_archs "ARM;X86" Name: llvm Version: 2.9.99.svn20111106 @@ -143,7 +144,7 @@ cd stage1 cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DLLVM_ENABLE_ASSERTIONS=TRUE \ - -DLLVM_TARGETS_TO_BUILD="ARM;X86" \ + -DLLVM_TARGETS_TO_BUILD=%{_supported_archs} \ .. make %{?_smp_mflags} @@ -154,14 +155,13 @@ ln -s lib lib64 export CC=$TOPLEVEL/stage1/bin/clang export CXX=$TOPLEVEL/stage1/bin/clang++ -export CXXFLAGS="%{optflags} -frtti" cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -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 -DLLVM_LIBDIR_SUFFIX=64 \ From 58c2b1acef183fcba10392133a0ccb11a23c55b6aa317412950356cd48c52dea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Thu, 10 Nov 2011 14:55:16 +0000 Subject: [PATCH 2/9] - Disable ARM support, VM goes out of memory while compiling it OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=95 --- llvm.changes | 5 +++++ llvm.spec | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/llvm.changes b/llvm.changes index 7213830..6c25e58 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +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 diff --git a/llvm.spec b/llvm.spec index 2ffb672..b1f8efb 100644 --- a/llvm.spec +++ b/llvm.spec @@ -18,7 +18,7 @@ %define _revision 143961 %define _release_version 3.0 -%define _supported_archs "ARM;X86" +%define _supported_archs "X86" Name: llvm Version: 2.9.99.svn20111106 From 8e9524212e0c020ca789bc2f9e2ae9be4b738f63e8786499c3c6ed299ea62d3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Wed, 16 Nov 2011 14:28:41 +0000 Subject: [PATCH 3/9] - Enable ARM support again - Switch to optimized build OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=96 --- llvm.changes | 6 ++++++ llvm.spec | 8 ++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/llvm.changes b/llvm.changes index 6c25e58..dbdd061 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +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 diff --git a/llvm.spec b/llvm.spec index b1f8efb..4b4a280 100644 --- a/llvm.spec +++ b/llvm.spec @@ -18,7 +18,7 @@ %define _revision 143961 %define _release_version 3.0 -%define _supported_archs "X86" +%define _supported_archs "ARM;X86" Name: llvm Version: 2.9.99.svn20111106 @@ -142,8 +142,8 @@ TOPLEVEL=$PWD mkdir stage1 stage2 cd stage1 -cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ - -DLLVM_ENABLE_ASSERTIONS=TRUE \ +cmake -DCMAKE_BUILD_TYPE=Release \ + -DLLVM_ENABLE_ASSERTIONS=FALSE \ -DLLVM_TARGETS_TO_BUILD=%{_supported_archs} \ .. @@ -157,7 +157,7 @@ export CC=$TOPLEVEL/stage1/bin/clang export CXX=$TOPLEVEL/stage1/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 \ From 9db86cfd9d218cfd3fd172281af480a0706ae9e646f27b44197ad8ac2bae738c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Tue, 29 Nov 2011 13:23:48 +0000 Subject: [PATCH 4/9] - Use %{_lib} macro instead of checking for x86_64 OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=97 --- llvm.changes | 5 +++++ llvm.spec | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/llvm.changes b/llvm.changes index dbdd061..41b449d 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +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 diff --git a/llvm.spec b/llvm.spec index 4b4a280..d67809c 100644 --- a/llvm.spec +++ b/llvm.spec @@ -133,7 +133,7 @@ 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 @@ -183,8 +183,8 @@ cd stage2 %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 From 3b19d5767fe0245c8935c865ee933d1947674d9e2cba732b2fbc0cd0e51271be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Thu, 1 Dec 2011 18:06:09 +0000 Subject: [PATCH 5/9] - Update to final 3.0 release * No real change since rc2 OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=98 --- llvm-2.9.99.svn20111106.tar.bz2 | 3 --- llvm-3.0.tar.bz2 | 3 +++ llvm.changes | 6 ++++++ llvm.spec | 4 ++-- 4 files changed, 11 insertions(+), 5 deletions(-) delete mode 100644 llvm-2.9.99.svn20111106.tar.bz2 create mode 100644 llvm-3.0.tar.bz2 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 41b449d..b3c5426 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +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 diff --git a/llvm.spec b/llvm.spec index d67809c..967fc94 100644 --- a/llvm.spec +++ b/llvm.spec @@ -16,12 +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 From 1e5a0441c421aeecc358286bcf1b88e892e8edb3b3a3ddfbc49fc96f8a834263 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Fri, 2 Dec 2011 12:22:27 +0000 Subject: [PATCH 6/9] - Build first stage compiler with -O0 to workaround gcc 4.5 bug OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=99 --- llvm.changes | 5 +++++ llvm.spec | 15 +++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/llvm.changes b/llvm.changes index b3c5426..c2a43c8 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +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 diff --git a/llvm.spec b/llvm.spec index 967fc94..d87af28 100644 --- a/llvm.spec +++ b/llvm.spec @@ -142,10 +142,13 @@ TOPLEVEL=$PWD mkdir stage1 stage2 cd stage1 -cmake -DCMAKE_BUILD_TYPE=Release \ - -DLLVM_ENABLE_ASSERTIONS=FALSE \ - -DLLVM_TARGETS_TO_BUILD=%{_supported_archs} \ - .. +# 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} @@ -153,8 +156,8 @@ cd ../stage2 # 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 CC=$TOPLEVEL/stage1/Release/bin/clang +export CXX=$TOPLEVEL/stage1/Release/bin/clang++ cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_BUILD_TYPE=Release \ From 4924b082fdc72029122fded35351650b03a4f64ae906460d3ecee44bc6c2f70f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Mon, 5 Dec 2011 13:38:51 +0000 Subject: [PATCH 7/9] - Switch to 3-stage bootstrap OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=100 --- llvm.changes | 5 +++++ llvm.spec | 29 +++++++++++++++++++++-------- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/llvm.changes b/llvm.changes index c2a43c8..7219016 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +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 diff --git a/llvm.spec b/llvm.spec index d87af28..375082f 100644 --- a/llvm.spec +++ b/llvm.spec @@ -139,8 +139,8 @@ sed -i s,/lib/LLVMgold.so,/lib64/LLVMgold.so, tools/clang/lib/Driver/Tools.cpp %build TOPLEVEL=$PWD -mkdir stage1 stage2 -cd stage1 +mkdir stage1 stage2 stage3 +pushd stage1 # 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 @@ -152,18 +152,31 @@ cd stage1 make %{?_smp_mflags} -cd ../stage2 -# Needed to make clang resource dir working inside build tree -ln -s lib lib64 +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/stage2/Release/bin/clang +export CXX=$TOPLEVEL/stage2/Release/bin/clang++ + cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_ENABLE_ASSERTIONS=FALSE \ -DLLVM_ENABLE_PIC=TRUE \ - -DLLVM_ENABLE_TIMESTAMPS=FALSE \ + -DLLVM_ENABLE_TIMESTAMPS=FALSE \ -DLLVM_TARGETS_TO_BUILD=%{_supported_archs} \ -DCLANG_VENDOR="SUSE Linux" \ %ifarch x86_64 @@ -177,12 +190,12 @@ 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 .. From 83e9dfb0e4b87c470bc3ea9b3148a286613f464fb8b0579c0be61a7e708aab4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Mon, 5 Dec 2011 16:01:36 +0000 Subject: [PATCH 8/9] Fix build OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=101 --- llvm.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/llvm.spec b/llvm.spec index 375082f..3b61621 100644 --- a/llvm.spec +++ b/llvm.spec @@ -176,10 +176,10 @@ cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_ENABLE_ASSERTIONS=FALSE \ -DLLVM_ENABLE_PIC=TRUE \ - -DLLVM_ENABLE_TIMESTAMPS=FALSE \ + -DLLVM_ENABLE_TIMESTAMPS=FALSE \ -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 From 6c752c8ae603810b3157a86009e8acfe7d7f5eef95ca8f0cf92580bf3ef442ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Mon, 5 Dec 2011 19:33:29 +0000 Subject: [PATCH 9/9] Fix build OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=102 --- llvm.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/llvm.spec b/llvm.spec index 3b61621..ca3f39a 100644 --- a/llvm.spec +++ b/llvm.spec @@ -169,8 +169,8 @@ pushd stage3 # Needed to make clang resource dir working inside build tree ln -s lib lib64 -export CC=$TOPLEVEL/stage2/Release/bin/clang -export CXX=$TOPLEVEL/stage2/Release/bin/clang++ +export CC=$TOPLEVEL/stage2/bin/clang +export CXX=$TOPLEVEL/stage2/bin/clang++ cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_BUILD_TYPE=Release \