diff --git a/llvm-remove-clang-only-flags.patch b/llvm-remove-clang-only-flags.patch index ed2c59e..65bae6b 100644 --- a/llvm-remove-clang-only-flags.patch +++ b/llvm-remove-clang-only-flags.patch @@ -2,7 +2,15 @@ Index: llvm-3.8.0.src/cmake/modules/HandleLLVMOptions.cmake =================================================================== --- llvm-3.8.0.src.orig/cmake/modules/HandleLLVMOptions.cmake +++ llvm-3.8.0.src/cmake/modules/HandleLLVMOptions.cmake -@@ -302,9 +302,6 @@ elseif( LLVM_COMPILER_IS_GCC_COMPATIBLE +@@ -417,7 +417,6 @@ elseif( LLVM_COMPILER_IS_GCC_COMPATIBLE + + append_if(LLVM_ENABLE_PEDANTIC "-pedantic" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) + append_if(LLVM_ENABLE_PEDANTIC "-Wno-long-long" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) +- add_flag_if_supported("-Wcovered-switch-default" COVERED_SWITCH_DEFAULT_FLAG) + append_if(USE_NO_UNINITIALIZED "-Wno-uninitialized" CMAKE_CXX_FLAGS) + append_if(USE_NO_MAYBE_UNINITIALIZED "-Wno-maybe-uninitialized" CMAKE_CXX_FLAGS) + +@@ -454,9 +453,6 @@ elseif( LLVM_COMPILER_IS_GCC_COMPATIBLE endif() endif (LLVM_ENABLE_WARNINGS) append_if(LLVM_ENABLE_WERROR "-Werror" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) @@ -12,7 +20,7 @@ Index: llvm-3.8.0.src/cmake/modules/HandleLLVMOptions.cmake if (LLVM_ENABLE_CXX1Y) check_cxx_compiler_flag("-std=c++1y" CXX_SUPPORTS_CXX1Y) append_if(CXX_SUPPORTS_CXX1Y "-std=c++1y" CMAKE_CXX_FLAGS) -@@ -367,13 +364,6 @@ add_llvm_definitions( -D__STDC_CONSTANT_ +@@ -578,13 +574,6 @@ add_llvm_definitions( -D__STDC_CONSTANT_ add_llvm_definitions( -D__STDC_FORMAT_MACROS ) add_llvm_definitions( -D__STDC_LIMIT_MACROS ) diff --git a/llvm.changes b/llvm.changes index 71c52d7..113885f 100644 --- a/llvm.changes +++ b/llvm.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Apr 4 17:53:14 UTC 2016 - idonmez@suse.com + +- Update llvm-remove-clang-only-flags.patch to remove + -Wcovered-switch-default flag for gcc compatibility. + ------------------------------------------------------------------- Wed Mar 16 09:28:51 UTC 2016 - idonmez@suse.com diff --git a/llvm.spec b/llvm.spec index 9c4dbaf..f2f3ec8 100644 --- a/llvm.spec +++ b/llvm.spec @@ -218,6 +218,14 @@ sed -i s,LLVM_REVISION,\"%{_revision}\",g tools/clang/lib/Basic/Version.cpp sed -i s,LLDB_REVISION,\"%{_revision}\",g tools/lldb/source/lldb.cpp %endif +# ARMv6 needs this exact host triple +%ifarch armv6hl +cat > autoconf/config.guess << EOF +#!/bin/sh +echo armv6hl-suse-linux-gnueabi +EOF +%endif + %build TOPLEVEL=$PWD mkdir stage1 stage2 @@ -232,14 +240,6 @@ cmake -G "Ninja" \ -DLLVM_ENABLE_ASSERTIONS=OFF \ -DLLVM_TARGETS_TO_BUILD=host \ -DLLDB_DISABLE_PYTHON=ON \ -%ifarch armv6hl - -DCMAKE_C_FLAGS="-mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \ - -DCMAKE_CXX_FLAGS="-mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \ -%endif -%ifarch armv7hl - -DCMAKE_C_FLAGS="-mfloat-abi=hard -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16" \ - -DCMAKE_CXX_FLAGS="-mfloat-abi=hard -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16" \ -%endif .. ninja %{?_smp_mflags} clang -v @@ -259,8 +259,8 @@ cmake -G "Ninja" \ %endif -DCMAKE_INSTALL_PREFIX=%{_prefix} \ %ifarch armv6hl - -DCMAKE_C_FLAGS="-mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \ - -DCMAKE_CXX_FLAGS="-mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \ + -DCMAKE_C_FLAGS="-target armv6hl-suse-linux-gnueabi -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \ + -DCMAKE_CXX_FLAGS="-target armv6hl-suse-linux-gnueabi -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \ %endif %ifarch armv7hl -DCMAKE_C_FLAGS="-mfloat-abi=hard -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16" \ @@ -377,6 +377,11 @@ rm -r %{buildroot}%{_includedir}/lldb %post clang-devel -p /sbin/ldconfig %postun clang-devel -p /sbin/ldconfig +%if %{build_lldb} +%post -n lldb -p /sbin/ldconfig +%postun -n lldb -p /sbin/ldconfig +%endif + %files %defattr(-,root,root) %{_bindir}/bugpoint