diff --git a/0001-PATCH-libcxx-Remove-monorepo-requirement.patch b/0001-PATCH-libcxx-Remove-monorepo-requirement.patch index 6e673de..9baa403 100644 --- a/0001-PATCH-libcxx-Remove-monorepo-requirement.patch +++ b/0001-PATCH-libcxx-Remove-monorepo-requirement.patch @@ -22,15 +22,15 @@ index 9bf1a02..5348a15 100644 #=============================================================================== # Setup Project #=============================================================================== -@@ -39,8 +32,6 @@ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUIL - set(LIBCXX_STANDALONE_BUILD 1) - set(LLVM_LIT_OUTPUT_DIR "${LIBCXX_BINARY_DIR}/bin") - -- # Find the LLVM sources and simulate LLVM CMake options. -- include(HandleOutOfTreeLLVM) - endif() +@@ -39,8 +32,6 @@ + include(GNUInstallDirs) if (LIBCXX_STANDALONE_BUILD) +- # Find the LLVM sources and simulate LLVM CMake options. +- include(HandleOutOfTreeLLVM) + + find_package(Python3 COMPONENTS Interpreter) + if(NOT Python3_Interpreter_FOUND) -- 1.8.3.1 diff --git a/add-llvm-cmake-package.patch b/add-llvm-cmake-package.patch new file mode 100644 index 0000000..bc3d516 --- /dev/null +++ b/add-llvm-cmake-package.patch @@ -0,0 +1,19 @@ +diff -ruN libcxx-14.0.0rc2.src.orig/CMakeLists.txt libcxx-14.0.0rc2.src/CMakeLists.txt +--- a/libcxx-14.0.0rc2.src.orig/CMakeLists.txt 2022-03-04 17:08:07.363822171 +0100 ++++ a/libcxx-14.0.0rc2.src/CMakeLists.txt 2022-03-07 08:29:06.632754832 +0100 +@@ -13,6 +13,7 @@ + "${LLVM_COMMON_CMAKE_UTILS}/Modules" + ) + ++ + set(CMAKE_FOLDER "libc++") + + set(LIBCXX_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) +@@ -40,6 +41,7 @@ + include(GNUInstallDirs) + + if (LIBCXX_STANDALONE_BUILD) ++ find_package(LLVM REQUIRED HINTS "${LLVM_CMAKE_DIR}") + + find_package(Python3 COMPONENTS Interpreter) + if(NOT Python3_Interpreter_FOUND) diff --git a/libcxx.spec b/libcxx.spec index 817de3c..f7436ca 100644 --- a/libcxx.spec +++ b/libcxx.spec @@ -1,9 +1,9 @@ # If you need to bootstrap this, turn this on. # Otherwise, you have a loop with libcxxabi %global bootstrap 0 -#global rc_ver 3 -%global libcxx_version 13.0.1 +%global libcxx_version 14.0.0 +#global rc_ver 2 %global libcxx_srcdir libcxx-%{libcxx_version}%{?rc_ver:rc%{rc_ver}}.src Name: libcxx @@ -17,10 +17,12 @@ Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{libcxx Source2: tstellar-gpg-key.asc Patch0: 0001-PATCH-libcxx-Remove-monorepo-requirement.patch +Patch1: add-llvm-cmake-package.patch BuildRequires: gcc-c++ llvm-devel cmake llvm-static ninja-build -# We need python3-devel for pathfix.py. +# We need python3-devel for %%py3_shebang_fix BuildRequires: python3-devel +BuildRequires: llvm-cmake-devel # The static libc++ links the static abi library in as well BuildRequires: libcxxabi-static @@ -64,8 +66,7 @@ Summary: Static libraries for libcxx %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' %autosetup -n %{libcxx_srcdir} -p2 -pathfix.py -i %{__python3} -pn \ - utils/*.py +%py3_shebang_fix utils/ %build @@ -80,6 +81,7 @@ common_cmake_flags="\ -DPYTHON_EXECUTABLE=%{_bindir}/python3 \ %endif -DLIBCXX_STANDALONE_BUILD=ON \ + -DLIBCXX_INCLUDE_BENCHMARKS=OFF \ -DCMAKE_BUILD_TYPE=RelWithDebInfo" # Build the static libc++.a. @@ -120,7 +122,7 @@ install results-static/libc++.a %{buildroot}/%{_libdir} # Install header files that libcxxabi needs mkdir -p %{buildroot}%{_includedir}/libcxx-internal/ -install -m 0644 src/include/* %{buildroot}%{_includedir}/libcxx-internal/ +install -m 0644 src/include/*.h %{buildroot}%{_includedir}/libcxx-internal/ %files %license LICENSE.TXT @@ -138,6 +140,9 @@ install -m 0644 src/include/* %{buildroot}%{_includedir}/libcxx-internal/ %changelog +* Thu Mar 24 2022 Timm Bäder - 14.0.0-1 +- Update to 14.0.0 + * Thu Feb 03 2022 Nikita Popov - 13.0.1-1 - Update to LLVM 13.0.1 final