libllvm: update from 13.0.1 to 14.0.0
This commit is contained in:
parent
757db2c47f
commit
0fe298fd86
|
@ -2,8 +2,8 @@ TERMUX_PKG_HOMEPAGE=https://clang.llvm.org/
|
||||||
TERMUX_PKG_DESCRIPTION="Modular compiler and toolchain technologies library"
|
TERMUX_PKG_DESCRIPTION="Modular compiler and toolchain technologies library"
|
||||||
TERMUX_PKG_LICENSE="NCSA"
|
TERMUX_PKG_LICENSE="NCSA"
|
||||||
TERMUX_PKG_MAINTAINER="@buttaface"
|
TERMUX_PKG_MAINTAINER="@buttaface"
|
||||||
TERMUX_PKG_VERSION=13.0.1
|
TERMUX_PKG_VERSION=14.0.0
|
||||||
TERMUX_PKG_SHA256=326335a830f2e32d06d0a36393b5455d17dc73e0bd1211065227ee014f92cbf8
|
TERMUX_PKG_SHA256=35ce9edbc8f774fe07c8f4acdf89ec8ac695c8016c165dd86b8d10e7cba07e23
|
||||||
TERMUX_PKG_SRCURL=https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/llvm-project-$TERMUX_PKG_VERSION.src.tar.xz
|
TERMUX_PKG_SRCURL=https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/llvm-project-$TERMUX_PKG_VERSION.src.tar.xz
|
||||||
TERMUX_PKG_HOSTBUILD=true
|
TERMUX_PKG_HOSTBUILD=true
|
||||||
TERMUX_PKG_RM_AFTER_INSTALL="
|
TERMUX_PKG_RM_AFTER_INSTALL="
|
||||||
|
@ -20,6 +20,7 @@ TERMUX_PKG_REPLACES="gcc, libclang, libclang-dev, libllvm-dev"
|
||||||
TERMUX_PKG_GROUPS="base-devel"
|
TERMUX_PKG_GROUPS="base-devel"
|
||||||
# See http://llvm.org/docs/CMake.html:
|
# See http://llvm.org/docs/CMake.html:
|
||||||
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
|
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
|
||||||
|
-DANDROID_PLATFORM_LEVEL=$TERMUX_PKG_API_LEVEL
|
||||||
-DPYTHON_EXECUTABLE=$(command -v python3)
|
-DPYTHON_EXECUTABLE=$(command -v python3)
|
||||||
-DLLVM_ENABLE_PIC=ON
|
-DLLVM_ENABLE_PIC=ON
|
||||||
-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra;compiler-rt;lld;lldb;openmp;polly
|
-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra;compiler-rt;lld;lldb;openmp;polly
|
||||||
|
|
|
@ -2,14 +2,6 @@ diff --git a/clang/lib/Driver/ToolChain.cpp b/clang/lib/Driver/ToolChain.cpp
|
||||||
index 469ef62f1a9d..218f5af748f4 100644
|
index 469ef62f1a9d..218f5af748f4 100644
|
||||||
--- a/clang/lib/Driver/ToolChain.cpp
|
--- a/clang/lib/Driver/ToolChain.cpp
|
||||||
+++ b/clang/lib/Driver/ToolChain.cpp
|
+++ b/clang/lib/Driver/ToolChain.cpp
|
||||||
@@ -374,6 +374,6 @@ StringRef ToolChain::getOSLibName() const {
|
|
||||||
case llvm::Triple::Solaris:
|
|
||||||
return "sunos";
|
|
||||||
default:
|
|
||||||
- return getOS();
|
|
||||||
+ return Triple.isAndroid() ? "android":getOS();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -632,7 +632,7 @@
|
@@ -632,7 +632,7 @@
|
||||||
|
|
||||||
switch (Type) {
|
switch (Type) {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/clang/lib/Driver/ToolChains/Linux.cpp 2019-12-21 22:30:03.676720096 +0000
|
--- a/clang/lib/Driver/ToolChains/Linux.cpp
|
||||||
+++ b/clang/lib/Driver/ToolChains/Linux.cpp 2019-12-21 22:34:42.941719383 +0000
|
+++ b/clang/lib/Driver/ToolChains/Linux.cpp
|
||||||
@@ -162,8 +162,8 @@ static StringRef getOSLibDir(const llvm::Triple &Triple, const ArgList &Args) {
|
@@ -162,8 +162,8 @@
|
||||||
// FIXME: This is a bit of a hack. We should really unify this code for
|
// FIXME: This is a bit of a hack. We should really unify this code for
|
||||||
// reasoning about oslibdir spellings with the lib dir spellings in the
|
// reasoning about oslibdir spellings with the lib dir spellings in the
|
||||||
// GCCInstallationDetector, but that is a more significant refactoring.
|
// GCCInstallationDetector, but that is a more significant refactoring.
|
||||||
|
@ -11,7 +11,7 @@
|
||||||
return "lib32";
|
return "lib32";
|
||||||
|
|
||||||
if (Triple.getArch() == llvm::Triple::x86_64 && Triple.isX32())
|
if (Triple.getArch() == llvm::Triple::x86_64 && Triple.isX32())
|
||||||
@@ -403,7 +403,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
|
@@ -287,7 +287,7 @@
|
||||||
if (Triple.getVendor() == llvm::Triple::OpenEmbedded &&
|
if (Triple.getVendor() == llvm::Triple::OpenEmbedded &&
|
||||||
Triple.isArch64Bit())
|
Triple.isArch64Bit())
|
||||||
addPathIfExists(D, SysRoot + "/usr/" + OSLibDir, Paths);
|
addPathIfExists(D, SysRoot + "/usr/" + OSLibDir, Paths);
|
||||||
|
@ -20,13 +20,17 @@
|
||||||
addPathIfExists(D, SysRoot + "/usr/lib/../" + OSLibDir, Paths);
|
addPathIfExists(D, SysRoot + "/usr/lib/../" + OSLibDir, Paths);
|
||||||
if (IsRISCV) {
|
if (IsRISCV) {
|
||||||
StringRef ABIName = tools::riscv::getRISCVABI(Args, Triple);
|
StringRef ABIName = tools::riscv::getRISCVABI(Args, Triple);
|
||||||
@@ -447,11 +447,19 @@
|
@@ -302,7 +302,7 @@
|
||||||
// searched.
|
// searched.
|
||||||
// FIXME: It's not clear whether we should use the driver's installed
|
// FIXME: It's not clear whether we should use the driver's installed
|
||||||
// directory ('Dir' below) or the ResourceDir.
|
// directory ('Dir' below) or the ResourceDir.
|
||||||
- if (StringRef(D.Dir).startswith(SysRoot))
|
- if (StringRef(D.Dir).startswith(SysRoot)) {
|
||||||
+ if (StringRef(D.Dir).startswith(SysRoot) && !IsAndroid)
|
+ if (StringRef(D.Dir).startswith(SysRoot) && !IsAndroid) {
|
||||||
|
// Even if OSLibDir != "lib", this is needed for Clang in the build
|
||||||
|
// directory (not installed) to find libc++.
|
||||||
addPathIfExists(D, D.Dir + "/../lib", Paths);
|
addPathIfExists(D, D.Dir + "/../lib", Paths);
|
||||||
|
@@ -311,7 +311,15 @@
|
||||||
|
}
|
||||||
|
|
||||||
addPathIfExists(D, SysRoot + "/lib", Paths);
|
addPathIfExists(D, SysRoot + "/lib", Paths);
|
||||||
- addPathIfExists(D, SysRoot + "/usr/lib", Paths);
|
- addPathIfExists(D, SysRoot + "/usr/lib", Paths);
|
||||||
|
@ -41,4 +45,4 @@
|
||||||
+ }
|
+ }
|
||||||
}
|
}
|
||||||
|
|
||||||
ToolChain::CXXStdlibType Linux::GetDefaultCXXStdlibType() const {
|
ToolChain::RuntimeLibType Linux::GetDefaultRuntimeLibType() const {
|
||||||
|
|
|
@ -6,7 +6,7 @@ lib/clang/*/include/fuzzer/FuzzedDataProvider.h
|
||||||
lib/clang/*/include/profile/InstrProfData.inc
|
lib/clang/*/include/profile/InstrProfData.inc
|
||||||
lib/clang/*/include/sanitizer/
|
lib/clang/*/include/sanitizer/
|
||||||
lib/clang/*/include/xray/
|
lib/clang/*/include/xray/
|
||||||
lib/clang/*/lib/android/
|
lib/clang/*/lib/linux/
|
||||||
lib/clang/*/share/asan_ignorelist.txt
|
lib/clang/*/share/asan_ignorelist.txt
|
||||||
lib/clang/*/share/cfi_ignorelist.txt
|
lib/clang/*/share/cfi_ignorelist.txt
|
||||||
lib/clang/*/share/hwasan_ignorelist.txt
|
lib/clang/*/share/hwasan_ignorelist.txt
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
lldb wants to serialize a FILE, so pass it the header with the size now that it's an opaque
|
|
||||||
struct.
|
|
||||||
|
|
||||||
diff --git a/lldb/source/API/SBReproducerPrivate.h b/lldb/source/API/SBReproducerPrivate.h
|
|
||||||
index 02ac31c2ad89..0ec65e63fffe 100644
|
|
||||||
--- a/lldb/source/API/SBReproducerPrivate.h
|
|
||||||
+++ b/lldb/source/API/SBReproducerPrivate.h
|
|
||||||
@@ -19,6 +19,7 @@
|
|
||||||
#include "lldb/Utility/ReproducerProvider.h"
|
|
||||||
|
|
||||||
#include "llvm/ADT/DenseMap.h"
|
|
||||||
+#include <bits/struct_file.h>
|
|
||||||
|
|
||||||
#define LLDB_GET_INSTRUMENTATION_DATA() \
|
|
||||||
lldb_private::repro::InstrumentationData::Instance()
|
|
|
@ -50,7 +50,7 @@ LDFLAGS="-L${prefix}/lib"
|
||||||
LIBFILE="${prefix}/lib/libLLVM-$version.so"
|
LIBFILE="${prefix}/lib/libLLVM-$version.so"
|
||||||
components="aarch64 aarch64asmparser aarch64codegen aarch64desc \
|
components="aarch64 aarch64asmparser aarch64codegen aarch64desc \
|
||||||
aarch64disassembler aarch64info aarch64utils aggressiveinstcombine all all-targets amdgpu \
|
aarch64disassembler aarch64info aarch64utils aggressiveinstcombine all all-targets amdgpu \
|
||||||
amdgpuasmparser amdgpucodegen amdgpudesc amdgpudisassembler amdgpuinfo amdgpuutils \
|
amdgpuasmparser amdgpucodegen amdgpudesc amdgpudisassembler amdgpuinfo amdgputargetmca amdgpuutils \
|
||||||
analysis arc arccodegen arcdesc arcdissembler arcinfo arm armasmparser armcodegen armdesc \
|
analysis arc arccodegen arcdesc arcdissembler arcinfo arm armasmparser armcodegen armdesc \
|
||||||
armdisassembler arminfo armutils asmparser asmprinter avr avrasmparser avrcodegen avrdesc \
|
armdisassembler arminfo armutils asmparser asmprinter avr avrasmparser avrcodegen avrdesc \
|
||||||
avrdisassembler avrinfo binaryformat bitreader bitstreamreader bitwriter bpf bpfasmparser \
|
avrdisassembler avrinfo binaryformat bitreader bitstreamreader bitwriter bpf bpfasmparser \
|
||||||
|
@ -74,7 +74,7 @@ systemzdesc systemzdisassembler systemzinfo tablegen target textapi transformuti
|
||||||
vecodegen vedesc vedisassembler veinfo vectorize webassembly \
|
vecodegen vedesc vedisassembler veinfo vectorize webassembly \
|
||||||
webassemblyasmparser webassemblycodegen webassemblydesc webassemblydisassembler \
|
webassemblyasmparser webassemblycodegen webassemblydesc webassemblydisassembler \
|
||||||
webassemblyinfo webassemblyutils windowsmanifest x86 x86asmparser x86codegen x86desc x86disassembler x86info \
|
webassemblyinfo webassemblyutils windowsmanifest x86 x86asmparser x86codegen x86desc x86disassembler x86info \
|
||||||
xcore xcorecodegen xcoredesc xcoredisassembler xcoreinfo xray"
|
x86targetmca xcore xcorecodegen xcoredesc xcoredisassembler xcoreinfo xray"
|
||||||
static_libs="-lLLVMObjectYAML -lLLVMDlltoolDriver -lLLVMLineEditor -lLLVMFuzzMutate \
|
static_libs="-lLLVMObjectYAML -lLLVMDlltoolDriver -lLLVMLineEditor -lLLVMFuzzMutate \
|
||||||
-lLLVMCoroutines -lLLVMLTO -lLLVMPasses -lLLVMObjCARCOpts -lLLVMTextAPI -lLLVMCoverage \
|
-lLLVMCoroutines -lLLVMLTO -lLLVMPasses -lLLVMObjCARCOpts -lLLVMTextAPI -lLLVMCoverage \
|
||||||
-lLLVMXRay -lLLVMInterpreter -lLLVMRemarks -lLLVMMIRParser -lLLVMDWP -lLLVMSymbolize -lLLVMDebugInfoPDB \
|
-lLLVMXRay -lLLVMInterpreter -lLLVMRemarks -lLLVMMIRParser -lLLVMDWP -lLLVMSymbolize -lLLVMDebugInfoPDB \
|
||||||
|
@ -85,7 +85,7 @@ static_libs="-lLLVMObjectYAML -lLLVMDlltoolDriver -lLLVMLineEditor -lLLVMFuzzMut
|
||||||
-lLLVMAVRDisassembler -lLLVMAVRInfo -lLLVMRISCVDisassembler -lLLVMRISCVCodeGen -lLLVMRISCVAsmParser \
|
-lLLVMAVRDisassembler -lLLVMAVRInfo -lLLVMRISCVDisassembler -lLLVMRISCVCodeGen -lLLVMRISCVAsmParser \
|
||||||
-lLLVMRISCVDesc -lLLVMRISCVInfo -lLLVMXCoreDisassembler -lLLVMXCoreCodeGen \
|
-lLLVMRISCVDesc -lLLVMRISCVInfo -lLLVMXCoreDisassembler -lLLVMXCoreCodeGen \
|
||||||
-lLLVMXCoreDesc -lLLVMXCoreInfo -lLLVMX86Disassembler -lLLVMX86CodeGen -lLLVMX86AsmParser \
|
-lLLVMXCoreDesc -lLLVMXCoreInfo -lLLVMX86Disassembler -lLLVMX86CodeGen -lLLVMX86AsmParser \
|
||||||
-lLLVMX86Desc -lLLVMX86Info -lLLVMWebAssemblyDisassembler \
|
-lLLVMX86Desc -lLLVMX86Info -lLLVMX86TargetMCA -lLLVMWebAssemblyDisassembler \
|
||||||
-lLLVMWebAssemblyCodeGen -lLLVMWebAssemblyDesc -lLLVMWebAssemblyAsmParser \
|
-lLLVMWebAssemblyCodeGen -lLLVMWebAssemblyDesc -lLLVMWebAssemblyAsmParser \
|
||||||
-lLLVMWebAssemblyUtils -lLLVMWebAssemblyInfo -lLLVMSystemZDisassembler -lLLVMSystemZCodeGen \
|
-lLLVMWebAssemblyUtils -lLLVMWebAssemblyInfo -lLLVMSystemZDisassembler -lLLVMSystemZCodeGen \
|
||||||
-lLLVMSystemZAsmParser -lLLVMSystemZDesc -lLLVMSystemZInfo -lLLVMSparcDisassembler \
|
-lLLVMSystemZAsmParser -lLLVMSystemZDesc -lLLVMSystemZInfo -lLLVMSparcDisassembler \
|
||||||
|
@ -101,7 +101,7 @@ static_libs="-lLLVMObjectYAML -lLLVMDlltoolDriver -lLLVMLineEditor -lLLVMFuzzMut
|
||||||
-lLLVMARMCodeGen -lLLVMARMAsmParser -lLLVMARMDesc -lLLVMARMInfo -lLLVMARMUtils \
|
-lLLVMARMCodeGen -lLLVMARMAsmParser -lLLVMARMDesc -lLLVMARMInfo -lLLVMARMUtils \
|
||||||
-lLLVMAMDGPUDisassembler -lLLVMAMDGPUCodeGen -lLLVMipo -lLLVMInstrumentation \
|
-lLLVMAMDGPUDisassembler -lLLVMAMDGPUCodeGen -lLLVMipo -lLLVMInstrumentation \
|
||||||
-lLLVMVectorize -lLLVMLinker -lLLVMIRReader -lLLVMAsmParser -lLLVMAMDGPUAsmParser \
|
-lLLVMVectorize -lLLVMLinker -lLLVMIRReader -lLLVMAsmParser -lLLVMAMDGPUAsmParser \
|
||||||
-lLLVMAMDGPUDesc -lLLVMAMDGPUInfo -lLLVMAMDGPUUtils -lLLVMLibDriver -lLLVMOption \
|
-lLLVMAMDGPUDesc -lLLVMAMDGPUInfo -lLLVMAMDGPUTargetMCA -lLLVMAMDGPUUtils -lLLVMLibDriver -lLLVMOption \
|
||||||
-lLLVMWindowsManifest -lLLVMAArch64Disassembler -lLLVMMCDisassembler \
|
-lLLVMWindowsManifest -lLLVMAArch64Disassembler -lLLVMMCDisassembler \
|
||||||
-lLLVMAArch64AsmParser -lLLVMMCJIT -lLLVMTableGen -lLLVMOrcJIT -lLLVMOrcTargetProcess -lLLVMOrcShared -lLLVMExecutionEngine \
|
-lLLVMAArch64AsmParser -lLLVMMCJIT -lLLVMTableGen -lLLVMOrcJIT -lLLVMOrcTargetProcess -lLLVMOrcShared -lLLVMExecutionEngine \
|
||||||
-lLLVMRuntimeDyld -lLLVMBitstreamReader -lLLVMCFGuard -lLLVMFrontendOpenACC -lLLVMExtensions -lLLVMDWARFLinker \
|
-lLLVMRuntimeDyld -lLLVMBitstreamReader -lLLVMCFGuard -lLLVMFrontendOpenACC -lLLVMExtensions -lLLVMDWARFLinker \
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
--- a/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp 2022-03-14 09:44:55.000000000 +0000
|
||||||
|
+++ b/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp 2022-04-06 11:14:07.627066038 +0000
|
||||||
|
@@ -286,7 +286,7 @@
|
||||||
|
uintptr_t SlabSize = 0;
|
||||||
|
uintptr_t CurrentSlabOffset = 0;
|
||||||
|
SectionIDMap *SecIDMap = nullptr;
|
||||||
|
-#if defined(__x86_64__) && defined(__ELF__) && defined(__linux__)
|
||||||
|
+#if defined(__x86_64__) && defined(__ELF__) && defined(__linux__) && !defined(__ANDROID__)
|
||||||
|
unsigned UsedTLSStorage = 0;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
@@ -350,7 +350,7 @@
|
||||||
|
|
||||||
|
// In case the execution needs TLS storage, we define a very small TLS memory
|
||||||
|
// area here that will be used in allocateTLSSection().
|
||||||
|
-#if defined(__x86_64__) && defined(__ELF__) && defined(__linux__)
|
||||||
|
+#if defined(__x86_64__) && defined(__ELF__) && defined(__linux__) && !defined(__ANDROID__)
|
||||||
|
extern "C" {
|
||||||
|
alignas(16) __attribute__((visibility("hidden"), tls_model("initial-exec"),
|
||||||
|
used)) thread_local char LLVMRTDyldTLSSpace[16];
|
||||||
|
@@ -361,7 +361,7 @@
|
||||||
|
TrivialMemoryManager::allocateTLSSection(uintptr_t Size, unsigned Alignment,
|
||||||
|
unsigned SectionID,
|
||||||
|
StringRef SectionName) {
|
||||||
|
-#if defined(__x86_64__) && defined(__ELF__) && defined(__linux__)
|
||||||
|
+#if defined(__x86_64__) && defined(__ELF__) && defined(__linux__) && !defined(__ANDROID__)
|
||||||
|
if (Size + UsedTLSStorage > sizeof(LLVMRTDyldTLSSpace)) {
|
||||||
|
return {};
|
||||||
|
}
|
|
@ -11,3 +11,4 @@ bin/yaml-bench
|
||||||
share/man/man1/FileCheck.1.gz
|
share/man/man1/FileCheck.1.gz
|
||||||
"
|
"
|
||||||
TERMUX_SUBPKG_DESCRIPTION="LLVM Development Tools"
|
TERMUX_SUBPKG_DESCRIPTION="LLVM Development Tools"
|
||||||
|
TERMUX_SUBPKG_DEPENDS="libc++, ncurses, zlib"
|
||||||
|
|
Loading…
Reference in New Issue