From 95ae9b378b866dbed0c8b5221bf175c4010fefc9 Mon Sep 17 00:00:00 2001 From: Finagolfin Date: Sun, 3 Sep 2023 23:10:01 +0530 Subject: [PATCH] bump(libllvm): 16.0.6 to 17.0.0 RC4 --- packages/libllvm/build.sh | 9 ++++----- packages/libllvm/clang.subpackage.sh | 1 + packages/libllvm/cxx-libm.patch | 6 +++--- packages/libllvm/llvm-config.in | 11 ++++++----- scripts/setup-ubuntu.sh | 3 +++ 5 files changed, 17 insertions(+), 13 deletions(-) diff --git a/packages/libllvm/build.sh b/packages/libllvm/build.sh index 1ebfa21f930633b..f62427aa819e1df 100644 --- a/packages/libllvm/build.sh +++ b/packages/libllvm/build.sh @@ -3,11 +3,10 @@ TERMUX_PKG_DESCRIPTION="Modular compiler and toolchain technologies library" TERMUX_PKG_LICENSE="Apache-2.0, NCSA" TERMUX_PKG_LICENSE_FILE="llvm/LICENSE.TXT" TERMUX_PKG_MAINTAINER="@finagolfin" -LLVM_MAJOR_VERSION=16 -TERMUX_PKG_VERSION=${LLVM_MAJOR_VERSION}.0.6 -TERMUX_PKG_REVISION=2 -TERMUX_PKG_SHA256=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e -TERMUX_PKG_SRCURL=https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/llvm-project-$TERMUX_PKG_VERSION.src.tar.xz +LLVM_MAJOR_VERSION=17 +TERMUX_PKG_VERSION=${LLVM_MAJOR_VERSION}.0.0 +TERMUX_PKG_SHA256=277d0671a8f389e2ae44f4fe591974bb8434c115a94ed289ab17d13a4de2940e +TERMUX_PKG_SRCURL=https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION-rc4/llvm-project-${TERMUX_PKG_VERSION}rc4.src.tar.xz TERMUX_PKG_HOSTBUILD=true TERMUX_PKG_RM_AFTER_INSTALL=" bin/ld64.lld.darwin* diff --git a/packages/libllvm/clang.subpackage.sh b/packages/libllvm/clang.subpackage.sh index 4d006b0a6d72d53..adfd6ee9c03f945 100644 --- a/packages/libllvm/clang.subpackage.sh +++ b/packages/libllvm/clang.subpackage.sh @@ -22,6 +22,7 @@ include/clang* lib/clang/*/include/*.h lib/clang/*/include/module.modulemap lib/clang/*/include/cuda_wrappers/ +lib/clang/*/include/llvm_libc_wrappers/ lib/clang/*/include/openmp_wrappers/ lib/clang/*/include/orc/ lib/clang/*/include/ppc_wrappers/ diff --git a/packages/libllvm/cxx-libm.patch b/packages/libllvm/cxx-libm.patch index a4434782f57c36a..86666ffbc8082a8 100644 --- a/packages/libllvm/cxx-libm.patch +++ b/packages/libllvm/cxx-libm.patch @@ -17,6 +17,6 @@ index 2ad4509..4d0b060 100644 + if (D.CCCIsCXX()) + CmdArgs.push_back("-lm"); + - if (WantPthread && !isAndroid) - CmdArgs.push_back("-lpthread"); - + // LLVM support for atomics on 32-bit SPARC V8+ is incomplete, so + // forcibly link with libatomic as a workaround. + // TODO: Issue #41880 and D118021. diff --git a/packages/libllvm/llvm-config.in b/packages/libllvm/llvm-config.in index 323fc6f803b34f1..508efee03dfb7cb 100644 --- a/packages/libllvm/llvm-config.in +++ b/packages/libllvm/llvm-config.in @@ -15,6 +15,7 @@ Options: --bindir Directory containing LLVM executables. --includedir Directory containing LLVM headers. --libdir Directory containing LLVM libraries. + --cmakedir Directory containing LLVM CMake modules. --cppflags C preprocessor flags for files that include LLVM headers. --cflags C compiler flags for files that include LLVM headers. --cxxflags C++ compiler flags for files that include LLVM headers. @@ -43,7 +44,7 @@ prefix=@TERMUX_PREFIX@ has_rtti=NO CPPFLAGS="-I${prefix}/include -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS" CFLAGS="${CPPFLAGS} ${CFLAGS}" -CXXFLAGS="${CFLAGS} -std=c++17 -fno-exceptions" +CXXFLAGS="${CFLAGS} -std=c++17 -fno-exceptions -funwind-tables" if [ "$has_rtti" != "YES" ]; then CXXFLAGS="$CXXFLAGS -fno-rtti"; fi LDFLAGS="-L${prefix}/lib" LIBFILE="${prefix}/lib/libLLVM-${version/.*/}.so" @@ -54,8 +55,8 @@ analysis arc arccodegen arcdesc arcdisassembler arcinfo arm armasmparser armcode armdesc armdisassembler arminfo armutils asmparser asmprinter avr avrasmparser \ avrcodegen avrdesc avrdisassembler avrinfo binaryformat bitreader bitstreamreader \ bitwriter bpf bpfasmparser bpfcodegen bpfdesc bpfdisassembler bpfinfo cfguard codegen \ -core coroutines coverage csky cskyasmparser cskycodegen cskydesc cskydisassembler \ -cskyinfo debuginfocodeview debuginfodwarf debuginfogsym debuginfologicalview \ +codegentypes core coroutines coverage csky cskyasmparser cskycodegen cskydesc cskydisassembler \ +cskyinfo debuginfobtf debuginfocodeview debuginfodwarf debuginfogsym debuginfologicalview \ debuginfomsf debuginfopdb demangle dlltooldriver dwarflinker dwarflinkerparallel \ dwp engine executionengine extensions filecheck frontendhlsl frontendopenacc \ frontendopenmp fuzzercli fuzzmutate globalisel hexagon hexagonasmparser hexagoncodegen \ @@ -110,10 +111,10 @@ static_libs="-lLLVMWindowsManifest -lLLVMXRay -lLLVMLibDriver -lLLVMDlltoolDrive -lLLVMMCA -lLLVMMCDisassembler -lLLVMLTO -lLLVMCFGuard -lLLVMFrontendOpenACC -lLLVMFrontendHLSL \ -lLLVMExtensions -lPolly -lPollyISL -lLLVMPasses -lLLVMCoroutines -lLLVMipo -lLLVMInstrumentation \ -lLLVMVectorize -lLLVMLinker -lLLVMFrontendOpenMP -lLLVMDWARFLinkerParallel -lLLVMDWARFLinker \ --lLLVMGlobalISel -lLLVMMIRParser -lLLVMAsmPrinter -lLLVMSelectionDAG -lLLVMCodeGen \ +-lLLVMGlobalISel -lLLVMMIRParser -lLLVMAsmPrinter -lLLVMSelectionDAG -lLLVMCodeGen -lLLVMCodeGenTypes \ -lLLVMObjCARCOpts -lLLVMIRPrinter -lLLVMInterfaceStub -lLLVMFileCheck -lLLVMFuzzMutate \ -lLLVMTarget -lLLVMScalarOpts -lLLVMInstCombine -lLLVMAggressiveInstCombine -lLLVMTransformUtils \ --lLLVMBitWriter -lLLVMAnalysis -lLLVMProfileData -lLLVMSymbolize -lLLVMDebugInfoPDB \ +-lLLVMBitWriter -lLLVMAnalysis -lLLVMProfileData -lLLVMSymbolize -lLLVMDebugInfoBTF -lLLVMDebugInfoPDB \ -lLLVMDebugInfoMSF -lLLVMDebugInfoDWARF -lLLVMObject -lLLVMTextAPI -lLLVMMCParser \ -lLLVMIRReader -lLLVMAsmParser -lLLVMMC -lLLVMDebugInfoCodeView -lLLVMBitReader \ -lLLVMFuzzerCLI -lLLVMCore -lLLVMRemarks -lLLVMBitstreamReader -lLLVMBinaryFormat \ diff --git a/scripts/setup-ubuntu.sh b/scripts/setup-ubuntu.sh index b9b69ae4f9596ef..480beb2c6451d50 100755 --- a/scripts/setup-ubuntu.sh +++ b/scripts/setup-ubuntu.sh @@ -302,6 +302,9 @@ PACKAGES+=" libdebuginfod-dev" # Needed to set up CGCT and also to set up other packages PACKAGES+=" patchelf" +# Needed by lldb for python integration +PACKAGES+=" swig" + # Do not require sudo if already running as root. if [ "$(id -u)" = "0" ]; then SUDO=""