libllvm: update from 10.0.1 to 11.0.0 and merge lldb
This commit is contained in:
parent
40e13e5e34
commit
206246fc9d
@ -1,23 +1,10 @@
|
|||||||
TERMUX_PKG_HOMEPAGE=https://clang.llvm.org/
|
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="@termux"
|
TERMUX_PKG_MAINTAINER="@buttaface"
|
||||||
TERMUX_PKG_VERSION=10.0.1
|
TERMUX_PKG_VERSION=11.0.0
|
||||||
TERMUX_PKG_REVISION=4
|
TERMUX_PKG_SHA256=b7b639fc675fa1c86dd6d0bc32267be9eb34451748d2efd03f674b773000e92b
|
||||||
TERMUX_PKG_SHA256=(c5d8e30b57cbded7128d78e5e8dad811bff97a8d471896812f57fa99ee82cdf3
|
TERMUX_PKG_SRCURL=https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/llvm-project-$TERMUX_PKG_VERSION.tar.xz
|
||||||
f99afc382b88e622c689b6d96cadfa6241ef55dca90e87fc170352e12ddb2b24
|
|
||||||
591449e0aa623a6318d5ce2371860401653c48bb540982ccdd933992cb88df7a
|
|
||||||
d19f728c8e04fb1e94566c8d76aef50ec926cd2f95ef3bf1e0a5de4909b28b44
|
|
||||||
d093782bcfcd0c3f496b67a5c2c997ab4b85816b62a7dd5b27026634ccf5c11a
|
|
||||||
d90dc8e121ca0271f0fd3d639d135bfaa4b6ed41e67bd6eb77808f72629658fa
|
|
||||||
d2fb0bb86b21db1f52402ba231da7c119c35c21dfb843c9496fe901f2d6aa25a)
|
|
||||||
TERMUX_PKG_SRCURL=(https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/llvm-$TERMUX_PKG_VERSION.src.tar.xz
|
|
||||||
https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/clang-$TERMUX_PKG_VERSION.src.tar.xz
|
|
||||||
https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/lld-$TERMUX_PKG_VERSION.src.tar.xz
|
|
||||||
https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/openmp-$TERMUX_PKG_VERSION.src.tar.xz
|
|
||||||
https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/clang-tools-extra-$TERMUX_PKG_VERSION.src.tar.xz
|
|
||||||
https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/compiler-rt-$TERMUX_PKG_VERSION.src.tar.xz
|
|
||||||
https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/polly-$TERMUX_PKG_VERSION.src.tar.xz)
|
|
||||||
TERMUX_PKG_HOSTBUILD=true
|
TERMUX_PKG_HOSTBUILD=true
|
||||||
TERMUX_PKG_RM_AFTER_INSTALL="
|
TERMUX_PKG_RM_AFTER_INSTALL="
|
||||||
lib/libgomp.a
|
lib/libgomp.a
|
||||||
@ -33,6 +20,7 @@ TERMUX_PKG_REPLACES="gcc, libclang, libclang-dev, libllvm-dev"
|
|||||||
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
|
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
|
||||||
-DPYTHON_EXECUTABLE=$(which python3)
|
-DPYTHON_EXECUTABLE=$(which python3)
|
||||||
-DLLVM_ENABLE_PIC=ON
|
-DLLVM_ENABLE_PIC=ON
|
||||||
|
-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra;compiler-rt;lld;lldb;openmp;polly
|
||||||
-DLLVM_ENABLE_LIBEDIT=OFF
|
-DLLVM_ENABLE_LIBEDIT=OFF
|
||||||
-DLLVM_INCLUDE_TESTS=OFF
|
-DLLVM_INCLUDE_TESTS=OFF
|
||||||
-DCLANG_DEFAULT_CXX_STDLIB=libc++
|
-DCLANG_DEFAULT_CXX_STDLIB=libc++
|
||||||
@ -40,6 +28,7 @@ TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
|
|||||||
-DCLANG_TOOL_C_INDEX_TEST_BUILD=OFF
|
-DCLANG_TOOL_C_INDEX_TEST_BUILD=OFF
|
||||||
-DDEFAULT_SYSROOT=$(dirname $TERMUX_PREFIX)
|
-DDEFAULT_SYSROOT=$(dirname $TERMUX_PREFIX)
|
||||||
-DLLVM_LINK_LLVM_DYLIB=ON
|
-DLLVM_LINK_LLVM_DYLIB=ON
|
||||||
|
-DLLDB_TABLEGEN=$TERMUX_PKG_HOSTBUILD_DIR/bin/lldb-tblgen
|
||||||
-DLLVM_TABLEGEN=$TERMUX_PKG_HOSTBUILD_DIR/bin/llvm-tblgen
|
-DLLVM_TABLEGEN=$TERMUX_PKG_HOSTBUILD_DIR/bin/llvm-tblgen
|
||||||
-DCLANG_TABLEGEN=$TERMUX_PKG_HOSTBUILD_DIR/bin/clang-tblgen
|
-DCLANG_TABLEGEN=$TERMUX_PKG_HOSTBUILD_DIR/bin/clang-tblgen
|
||||||
-DLIBOMP_ENABLE_SHARED=FALSE
|
-DLIBOMP_ENABLE_SHARED=FALSE
|
||||||
@ -47,6 +36,7 @@ TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
|
|||||||
-DLLVM_BINUTILS_INCDIR=$TERMUX_PREFIX/include
|
-DLLVM_BINUTILS_INCDIR=$TERMUX_PREFIX/include
|
||||||
-DLLVM_ENABLE_SPHINX=ON
|
-DLLVM_ENABLE_SPHINX=ON
|
||||||
-DSPHINX_OUTPUT_MAN=ON
|
-DSPHINX_OUTPUT_MAN=ON
|
||||||
|
-DSPHINX_WARNINGS_AS_ERRORS=OFF
|
||||||
-DLLVM_TARGETS_TO_BUILD=all
|
-DLLVM_TARGETS_TO_BUILD=all
|
||||||
-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR;RISCV
|
-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR;RISCV
|
||||||
-DPERL_EXECUTABLE=$(which perl)
|
-DPERL_EXECUTABLE=$(which perl)
|
||||||
@ -65,41 +55,30 @@ TERMUX_PKG_HAS_DEBUG=false
|
|||||||
# cp: cannot stat '../src/projects/openmp/runtime/exports/common.min.50.ompt.optional/include/omp.h': No such file or directory
|
# cp: cannot stat '../src/projects/openmp/runtime/exports/common.min.50.ompt.optional/include/omp.h': No such file or directory
|
||||||
# common.min.50.ompt.optional should be common.deb.50.ompt.optional when doing debug build
|
# common.min.50.ompt.optional should be common.deb.50.ompt.optional when doing debug build
|
||||||
|
|
||||||
termux_step_post_get_source() {
|
|
||||||
if [ "$TERMUX_PKG_QUICK_REBUILD" = "false" ]; then
|
|
||||||
mv clang-${TERMUX_PKG_VERSION}.src tools/clang
|
|
||||||
mv clang-tools-extra-${TERMUX_PKG_VERSION}.src tools/clang/tools/extra
|
|
||||||
mv lld-${TERMUX_PKG_VERSION}.src tools/lld
|
|
||||||
mv openmp-${TERMUX_PKG_VERSION}.src projects/openmp
|
|
||||||
mv compiler-rt-${TERMUX_PKG_VERSION}.src projects/compiler-rt
|
|
||||||
mv polly-${TERMUX_PKG_VERSION}.src tools/polly
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
termux_step_host_build() {
|
termux_step_host_build() {
|
||||||
termux_setup_cmake
|
termux_setup_cmake
|
||||||
termux_setup_ninja
|
termux_setup_ninja
|
||||||
|
|
||||||
cmake -G Ninja $TERMUX_PKG_SRCDIR
|
cmake -G Ninja -DLLVM_ENABLE_PROJECTS='clang;lldb' $TERMUX_PKG_SRCDIR/llvm
|
||||||
ninja -j $TERMUX_MAKE_PROCESSES clang-tblgen llvm-tblgen
|
ninja -j $TERMUX_MAKE_PROCESSES clang-tblgen lldb-tblgen llvm-tblgen
|
||||||
}
|
}
|
||||||
|
|
||||||
termux_step_pre_configure() {
|
termux_step_pre_configure() {
|
||||||
if [ "$TERMUX_PKG_QUICK_REBUILD" = "false" ]; then
|
if [ "$TERMUX_PKG_QUICK_REBUILD" = "false" ]; then
|
||||||
mkdir projects/openmp/runtime/src/android
|
mkdir openmp/runtime/src/android
|
||||||
cp $TERMUX_PKG_BUILDER_DIR/nl_types.h projects/openmp/runtime/src/android
|
cp $TERMUX_PKG_BUILDER_DIR/nl_types.h openmp/runtime/src/android
|
||||||
cp $TERMUX_PKG_BUILDER_DIR/nltypes_stubs.cpp projects/openmp/runtime/src/android
|
cp $TERMUX_PKG_BUILDER_DIR/nltypes_stubs.cpp openmp/runtime/src/android
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export LLVM_DEFAULT_TARGET_TRIPLE=$TERMUX_HOST_PLATFORM
|
# Add unknown vendor, otherwise it screws with the default LLVM triple
|
||||||
|
# detection.
|
||||||
|
export LLVM_DEFAULT_TARGET_TRIPLE=${CCTERMUX_HOST_PLATFORM/-/-unknown-}
|
||||||
export LLVM_TARGET_ARCH
|
export LLVM_TARGET_ARCH
|
||||||
if [ $TERMUX_ARCH = "arm" ]; then
|
if [ $TERMUX_ARCH = "arm" ]; then
|
||||||
LLVM_TARGET_ARCH=ARM
|
LLVM_TARGET_ARCH=ARM
|
||||||
elif [ $TERMUX_ARCH = "aarch64" ]; then
|
elif [ $TERMUX_ARCH = "aarch64" ]; then
|
||||||
LLVM_TARGET_ARCH=AArch64
|
LLVM_TARGET_ARCH=AArch64
|
||||||
elif [ $TERMUX_ARCH = "i686" ]; then
|
elif [ $TERMUX_ARCH = "i686" ] || [ $TERMUX_ARCH = "x86_64" ]; then
|
||||||
LLVM_TARGET_ARCH=X86
|
|
||||||
elif [ $TERMUX_ARCH = "x86_64" ]; then
|
|
||||||
LLVM_TARGET_ARCH=X86
|
LLVM_TARGET_ARCH=X86
|
||||||
else
|
else
|
||||||
termux_error_exit "Invalid arch: $TERMUX_ARCH"
|
termux_error_exit "Invalid arch: $TERMUX_ARCH"
|
||||||
@ -107,22 +86,30 @@ termux_step_pre_configure() {
|
|||||||
# see CMakeLists.txt and tools/clang/CMakeLists.txt
|
# see CMakeLists.txt and tools/clang/CMakeLists.txt
|
||||||
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" -DLLVM_TARGET_ARCH=$LLVM_TARGET_ARCH"
|
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" -DLLVM_TARGET_ARCH=$LLVM_TARGET_ARCH"
|
||||||
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" -DLLVM_HOST_TRIPLE=$LLVM_DEFAULT_TARGET_TRIPLE"
|
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" -DLLVM_HOST_TRIPLE=$LLVM_DEFAULT_TARGET_TRIPLE"
|
||||||
|
export TERMUX_SRCDIR_SAVE=$TERMUX_PKG_SRCDIR
|
||||||
|
TERMUX_PKG_SRCDIR=$TERMUX_PKG_SRCDIR/llvm
|
||||||
|
}
|
||||||
|
|
||||||
|
termux_step_post_configure() {
|
||||||
|
TERMUX_PKG_SRCDIR=$TERMUX_SRCDIR_SAVE
|
||||||
}
|
}
|
||||||
|
|
||||||
termux_step_post_make_install() {
|
termux_step_post_make_install() {
|
||||||
if [ $TERMUX_ARCH = "arm" ]; then
|
if [ $TERMUX_ARCH = "arm" ]; then
|
||||||
cp $TERMUX_PKG_SRCDIR/projects/openmp/runtime/exports/common/include/omp.h $TERMUX_PREFIX/include
|
cp $TERMUX_PKG_SRCDIR/openmp/runtime/exports/common/include/omp.h $TERMUX_PREFIX/include
|
||||||
else
|
else
|
||||||
cp $TERMUX_PKG_SRCDIR/projects/openmp/runtime/exports/common.ompt.optional/include/omp.h $TERMUX_PREFIX/include
|
cp $TERMUX_PKG_SRCDIR/openmp/runtime/exports/common.ompt.optional/include/omp.h $TERMUX_PREFIX/include
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$TERMUX_CMAKE_BUILD" = Ninja ]; then
|
if [ "$TERMUX_CMAKE_BUILD" = Ninja ]; then
|
||||||
ninja docs-llvm-man
|
ninja docs-llvm-man docs-lldb-man docs-clang-man
|
||||||
else
|
else
|
||||||
make docs-llvm-man
|
make docs-llvm-man docs-lldb-man docs-clang-man
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cp docs/man/* $TERMUX_PREFIX/share/man/man1
|
cp docs/man/* $TERMUX_PREFIX/share/man/man1
|
||||||
|
cp tools/clang/docs/man/clang.1 $TERMUX_PREFIX/share/man/man1
|
||||||
|
cp tools/lldb/docs/man/lldb.1 $TERMUX_PREFIX/share/man/man1
|
||||||
cd $TERMUX_PREFIX/bin
|
cd $TERMUX_PREFIX/bin
|
||||||
|
|
||||||
for tool in clang clang++ cc c++ cpp gcc g++ ${TERMUX_HOST_PLATFORM}-{clang,clang++,gcc,g++,cpp}; do
|
for tool in clang clang++ cc c++ cpp gcc g++ ${TERMUX_HOST_PLATFORM}-{clang,clang++,gcc,g++,cpp}; do
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
diff --git a/tools/clang/lib/Driver/ToolChain.cpp b/tools/clang/lib/Driver/ToolChain.cpp
|
diff --git a/clang/lib/Driver/ToolChain.cpp b/clang/lib/Driver/ToolChain.cpp
|
||||||
index 469ef62f1a9d..218f5af748f4 100644
|
index 469ef62f1a9d..218f5af748f4 100644
|
||||||
--- a/tools/clang/lib/Driver/ToolChain.cpp
|
--- a/clang/lib/Driver/ToolChain.cpp
|
||||||
+++ b/tools/clang/lib/Driver/ToolChain.cpp
|
+++ b/clang/lib/Driver/ToolChain.cpp
|
||||||
@@ -374,6 +374,6 @@ StringRef ToolChain::getOSLibName() const {
|
@@ -374,6 +374,6 @@ StringRef ToolChain::getOSLibName() const {
|
||||||
case llvm::Triple::Solaris:
|
case llvm::Triple::Solaris:
|
||||||
return "sunos";
|
return "sunos";
|
@ -1,6 +1,5 @@
|
|||||||
diff -u -r ../llvm-5.0.0.src/tools/clang/lib/Driver/ToolChains/Gnu.cpp ./tools/clang/lib/Driver/ToolChains/Gnu.cpp
|
--- a/clang/lib/Driver/ToolChains/Gnu.cpp 2017-08-11 03:47:32.000000000 +0200
|
||||||
--- ../llvm-5.0.0.src/tools/clang/lib/Driver/ToolChains/Gnu.cpp 2017-08-11 03:47:32.000000000 +0200
|
+++ b/clang/lib/Driver/ToolChains/Gnu.cpp 2017-09-10 20:14:54.636653647 +0200
|
||||||
+++ ./tools/clang/lib/Driver/ToolChains/Gnu.cpp 2017-09-10 20:14:54.636653647 +0200
|
|
||||||
@@ -152,14 +152,11 @@
|
@@ -152,14 +152,11 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,5 +1,5 @@
|
|||||||
--- tools/clang/lib/Driver/ToolChains/Linux.cpp.orig 2019-12-21 22:30:03.676720096 +0000
|
--- a/clang/lib/Driver/ToolChains/Linux.cpp 2019-12-21 22:30:03.676720096 +0000
|
||||||
+++ ./tools/clang/lib/Driver/ToolChains/Linux.cpp 2019-12-21 22:34:42.941719383 +0000
|
+++ b/clang/lib/Driver/ToolChains/Linux.cpp 2019-12-21 22:34:42.941719383 +0000
|
||||||
@@ -374,7 +374,7 @@
|
@@ -374,7 +374,7 @@
|
||||||
// those searched.
|
// those 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
|
||||||
@ -28,7 +28,7 @@
|
|||||||
|
|
||||||
addPathIfExists(D, SysRoot + "/lib", Paths);
|
addPathIfExists(D, SysRoot + "/lib", Paths);
|
||||||
- addPathIfExists(D, SysRoot + "/usr/lib", Paths);
|
- addPathIfExists(D, SysRoot + "/usr/lib", Paths);
|
||||||
+ bool nativeBuild = MultiarchTriple == llvm::sys::getDefaultTargetTriple();
|
+ bool nativeBuild = MultiarchTriple == getMultiarchTriple(D, llvm::Triple(llvm::sys::getDefaultTargetTriple()), SysRoot);
|
||||||
+ if (nativeBuild || !IsAndroid)
|
+ if (nativeBuild || !IsAndroid)
|
||||||
+ addPathIfExists(D, SysRoot + "/usr/lib", Paths);
|
+ addPathIfExists(D, SysRoot + "/usr/lib", Paths);
|
||||||
+
|
+
|
@ -3,13 +3,19 @@ bin/c++
|
|||||||
bin/cc
|
bin/cc
|
||||||
bin/*clang*
|
bin/*clang*
|
||||||
bin/*cpp
|
bin/*cpp
|
||||||
|
bin/diagtool
|
||||||
|
bin/find-all-symbols
|
||||||
bin/*g++
|
bin/*g++
|
||||||
bin/*gcc
|
bin/*gcc
|
||||||
bin/git-clang-format
|
bin/git-clang-format
|
||||||
|
bin/hmaptool
|
||||||
|
bin/modularize
|
||||||
|
bin/pp-trace
|
||||||
bin/scan-*
|
bin/scan-*
|
||||||
include/clang*
|
include/clang*
|
||||||
include/omp.h
|
include/omp*.h
|
||||||
lib/clang/*/include/*.h
|
lib/clang/*/include/*.h
|
||||||
|
lib/clang/*/include/*.modulemap
|
||||||
lib/clang/*/include/openmp_wrappers/
|
lib/clang/*/include/openmp_wrappers/
|
||||||
lib/clang/*/include/ppc_wrappers/
|
lib/clang/*/include/ppc_wrappers/
|
||||||
lib/clang/*/include/cuda_wrappers/
|
lib/clang/*/include/cuda_wrappers/
|
||||||
@ -19,6 +25,7 @@ lib/libomp.a
|
|||||||
libexec/
|
libexec/
|
||||||
share/clang
|
share/clang
|
||||||
share/scan-*
|
share/scan-*
|
||||||
|
share/man/man1/clang.1.gz
|
||||||
share/man/man1/scan-*
|
share/man/man1/scan-*
|
||||||
"
|
"
|
||||||
TERMUX_SUBPKG_DESCRIPTION="C language frontend for LLVM"
|
TERMUX_SUBPKG_DESCRIPTION="C language frontend for LLVM"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- ../projects-compiler-rt-CMakeLists.txt.orig 2020-09-22 14:12:54.771097201 +0000
|
--- a/compiler-rt/CMakeLists.txt 2020-09-22 14:12:54.771097201 +0000
|
||||||
+++ ./projects/compiler-rt/CMakeLists.txt 2020-09-22 16:11:07.568559345 +0000
|
+++ b/compiler-rt/CMakeLists.txt 2020-09-22 16:11:07.568559345 +0000
|
||||||
@@ -182,6 +182,9 @@
|
@@ -182,6 +182,9 @@
|
||||||
elseif (FUCHSIA)
|
elseif (FUCHSIA)
|
||||||
set(${var}_LIBNAME "libc++")
|
set(${var}_LIBNAME "libc++")
|
@ -1,7 +1,7 @@
|
|||||||
diff --git a/tools/clang/lib/Driver/ToolChains/Gnu.cpp~ b/tools/clang/lib/Driver/ToolChains/Gnu.cpp
|
diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp~ b/clang/lib/Driver/ToolChains/Gnu.cpp
|
||||||
index 2ad4509..4d0b060 100644
|
index 2ad4509..4d0b060 100644
|
||||||
--- a/tools/clang/lib/Driver/ToolChains/Gnu.cpp~
|
--- a/clang/lib/Driver/ToolChains/Gnu.cpp~
|
||||||
+++ b/tools/clang/lib/Driver/ToolChains/Gnu.cpp
|
+++ b/clang/lib/Driver/ToolChains/Gnu.cpp
|
||||||
@@ -483,7 +483,6 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
|
@@ -483,7 +483,6 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
|
||||||
if (OnlyLibstdcxxStatic)
|
if (OnlyLibstdcxxStatic)
|
||||||
CmdArgs.push_back("-Bdynamic");
|
CmdArgs.push_back("-Bdynamic");
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
diff --git a/include/llvm/ADT/Triple.h b/include/llvm/ADT/Triple.h
|
|
||||||
index 926039ca5982..0e4b55733f5e 100644
|
|
||||||
--- a/include/llvm/ADT/Triple.h
|
|
||||||
+++ b/include/llvm/ADT/Triple.h
|
|
||||||
@@ -666,6 +666,10 @@ public:
|
|
||||||
unsigned Env[3];
|
|
||||||
getEnvironmentVersion(Env[0], Env[1], Env[2]);
|
|
||||||
|
|
||||||
+ // If not specified, set a default Android API.
|
|
||||||
+ if (Env[0] == 0)
|
|
||||||
+ Env[0] = __ANDROID_API__;
|
|
||||||
+
|
|
||||||
// 64-bit targets did not exist before API level 21 (Lollipop).
|
|
||||||
if (isArch64Bit() && Env[0] < 21)
|
|
||||||
Env[0] = 21;
|
|
@ -1,5 +1,6 @@
|
|||||||
TERMUX_SUBPKG_INCLUDE="
|
TERMUX_SUBPKG_INCLUDE="
|
||||||
include/lld/
|
include/lld/
|
||||||
|
lib/cmake/lld/
|
||||||
lib/liblld*.a
|
lib/liblld*.a
|
||||||
bin/lld
|
bin/lld
|
||||||
bin/lld-link
|
bin/lld-link
|
||||||
|
13
packages/libllvm/lldb-include-lldb-Host-Editline.h.patch
Normal file
13
packages/libllvm/lldb-include-lldb-Host-Editline.h.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
diff --git a/lldb/include/lldb/Host/Editline.h b/lldb/include/lldb/Host/Editline.h
|
||||||
|
index 356e8f734732..c717f7b0cebb 100644
|
||||||
|
--- a/lldb/include/lldb/Host/Editline.h
|
||||||
|
+++ b/lldb/include/lldb/Host/Editline.h
|
||||||
|
@@ -43,7 +43,7 @@
|
||||||
|
|
||||||
|
#if defined(_WIN32)
|
||||||
|
#include "lldb/Host/windows/editlinewin.h"
|
||||||
|
-#elif !defined(__ANDROID__)
|
||||||
|
+#else
|
||||||
|
#include <histedit.h>
|
||||||
|
#endif
|
||||||
|
|
@ -0,0 +1,15 @@
|
|||||||
|
diff --git a/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp b/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp
|
||||||
|
index 35482341d3e6..90daaf9ef16d 100644
|
||||||
|
--- a/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp
|
||||||
|
+++ b/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp
|
||||||
|
@@ -136,8 +136,10 @@ static void LLVM_ATTRIBUTE_NORETURN ChildFunc(int error_fd,
|
||||||
|
|
||||||
|
if (info.GetFlags().Test(eLaunchFlagDebug)) {
|
||||||
|
// Do not inherit setgid powers.
|
||||||
|
+#if !defined(__ANDROID__)
|
||||||
|
if (setgid(getgid()) != 0)
|
||||||
|
ExitWithError(error_fd, "setgid");
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
// HACK:
|
||||||
|
// Close everything besides stdin, stdout, and stderr that has no file
|
@ -1,6 +1,8 @@
|
|||||||
--- source/Utility/ArchSpec.cpp.orig 2019-03-29 01:49:35.969953714 +0000
|
diff --git a/lldb/source/Utility/ArchSpec.cpp b/lldb/source/Utility/ArchSpec.cpp
|
||||||
+++ ./source/Utility/ArchSpec.cpp 2019-03-29 01:49:39.102006003 +0000
|
index c7b56a8385f7..01887e37eb38 100644
|
||||||
@@ -197,7 +197,11 @@
|
--- a/lldb/source/Utility/ArchSpec.cpp
|
||||||
|
+++ b/lldb/source/Utility/ArchSpec.cpp
|
||||||
|
@@ -198,7 +198,11 @@ static const CoreDefinition g_core_definitions[] = {
|
||||||
"i486"},
|
"i486"},
|
||||||
{eByteOrderLittle, 4, 1, 15, llvm::Triple::x86,
|
{eByteOrderLittle, 4, 1, 15, llvm::Triple::x86,
|
||||||
ArchSpec::eCore_x86_32_i486sx, "i486sx"},
|
ArchSpec::eCore_x86_32_i486sx, "i486sx"},
|
10
packages/libllvm/lldb.subpackage.sh
Normal file
10
packages/libllvm/lldb.subpackage.sh
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
TERMUX_SUBPKG_INCLUDE="
|
||||||
|
bin/lldb*
|
||||||
|
include/lldb/
|
||||||
|
lib/liblldb.so
|
||||||
|
share/man/man1/lldb.1.gz
|
||||||
|
"
|
||||||
|
TERMUX_SUBPKG_DESCRIPTION="LLVM-based debugger"
|
||||||
|
TERMUX_SUBPKG_DEPENDS="libc++, libedit, libllvm, libxml2, ncurses-ui-libs"
|
||||||
|
TERMUX_SUBPKG_BREAKS="lldb-dev, lldb-static"
|
||||||
|
TERMUX_SUBPKG_REPLACES="lldb-dev, lldb-static"
|
@ -1,5 +1,5 @@
|
|||||||
--- ./tools/llvm-shlib/CMakeLists.txt.orig 2019-03-20 21:24:00.144316380 +0000
|
--- a/llvm/tools/llvm-shlib/CMakeLists.txt 2019-03-20 21:24:00.144316380 +0000
|
||||||
+++ ./tools/llvm-shlib/CMakeLists.txt 2019-03-20 21:25:26.117941452 +0000
|
+++ b/llvm/tools/llvm-shlib/CMakeLists.txt 2019-03-20 21:25:26.117941452 +0000
|
||||||
@@ -48,6 +48,7 @@
|
@@ -48,6 +48,7 @@
|
||||||
OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "OpenBSD")
|
OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "OpenBSD")
|
||||||
OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "Fuchsia")
|
OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "Fuchsia")
|
@ -1,5 +1,6 @@
|
|||||||
TERMUX_SUBPKG_INCLUDE="
|
TERMUX_SUBPKG_INCLUDE="
|
||||||
bin/bugpoint
|
bin/bugpoint
|
||||||
|
bin/dsymutil
|
||||||
bin/llc
|
bin/llc
|
||||||
bin/lli
|
bin/lli
|
||||||
bin/llvm*
|
bin/llvm*
|
||||||
@ -10,11 +11,12 @@ bin/sanstats
|
|||||||
bin/verify-uselistorder
|
bin/verify-uselistorder
|
||||||
bin/yaml2obj
|
bin/yaml2obj
|
||||||
share/opt-viewer
|
share/opt-viewer
|
||||||
share/man/man1/llc.1
|
share/man/man1/llc.1.gz
|
||||||
share/man/man1/lli.1
|
share/man/man1/lli.1.gz
|
||||||
share/man/man1/llvm*
|
share/man/man1/llvm*
|
||||||
share/man/man1/opt.1
|
share/man/man1/opt.1.gz
|
||||||
share/man/man1/bugpoint.1
|
share/man/man1/bugpoint.1.gz
|
||||||
share/man/man1/tblgen.1
|
share/man/man1/dsymutil.1.gz
|
||||||
|
share/man/man1/tblgen.1.gz
|
||||||
"
|
"
|
||||||
TERMUX_SUBPKG_DESCRIPTION="Modular compiler and toolchain technologies executables"
|
TERMUX_SUBPKG_DESCRIPTION="LLVM modular compiler and toolchain executables"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- projects/openmp/runtime/cmake/config-ix.cmake.orig 2019-04-04 21:32:58.195143957 +0000
|
--- a/openmp/runtime/cmake/config-ix.cmake 2019-04-04 21:32:58.195143957 +0000
|
||||||
+++ ./projects/openmp/runtime/cmake/config-ix.cmake 2019-04-04 21:33:43.999700683 +0000
|
+++ b/openmp/runtime/cmake/config-ix.cmake 2019-04-04 21:33:43.999700683 +0000
|
||||||
@@ -71,7 +71,6 @@
|
@@ -71,7 +71,6 @@
|
||||||
check_c_compiler_flag(-msse2 LIBOMP_HAVE_MSSE2_FLAG)
|
check_c_compiler_flag(-msse2 LIBOMP_HAVE_MSSE2_FLAG)
|
||||||
check_c_compiler_flag(-ftls-model=initial-exec LIBOMP_HAVE_FTLS_MODEL_FLAG)
|
check_c_compiler_flag(-ftls-model=initial-exec LIBOMP_HAVE_FTLS_MODEL_FLAG)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- ../../cache/llvm-project-20170507-release_600/openmp/runtime/src/CMakeLists.txt 2018-03-02 09:50:00.000000000 +0000
|
--- a/openmp/runtime/src/CMakeLists.txt 2018-03-02 09:50:00.000000000 +0000
|
||||||
+++ ./projects/openmp/runtime/src/CMakeLists.txt 2018-03-08 03:39:14.548490023 +0000
|
+++ b/openmp/runtime/src/CMakeLists.txt 2018-03-08 03:39:14.548490023 +0000
|
||||||
@@ -50,6 +50,9 @@
|
@@ -50,6 +50,9 @@
|
||||||
if(${LIBOMP_USE_HWLOC})
|
if(${LIBOMP_USE_HWLOC})
|
||||||
include_directories(${LIBOMP_HWLOC_INSTALL_DIR}/include)
|
include_directories(${LIBOMP_HWLOC_INSTALL_DIR}/include)
|
@ -1,14 +0,0 @@
|
|||||||
--- ../cache/lldb-6.0.0.src/include/lldb/Host/Editline.h 2017-05-25 20:12:30.000000000 +0000
|
|
||||||
+++ ./include/lldb/Host/Editline.h 2018-04-13 09:51:29.606274657 +0000
|
|
||||||
@@ -56,10 +56,9 @@
|
|
||||||
|
|
||||||
#if defined(_WIN32)
|
|
||||||
#include "lldb/Host/windows/editlinewin.h"
|
|
||||||
-#elif !defined(__ANDROID__)
|
|
||||||
-#include <histedit.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#include <histedit.h>
|
|
||||||
#include <mutex>
|
|
||||||
#include <string>
|
|
||||||
#include <vector>
|
|
@ -1,13 +0,0 @@
|
|||||||
--- source/Host/posix/ProcessLauncherPosixFork.cpp.orig 2019-11-03 00:42:25.977205716 +0000
|
|
||||||
+++ ./source/Host/posix/ProcessLauncherPosixFork.cpp 2019-11-03 00:43:11.313499292 +0000
|
|
||||||
@@ -136,8 +136,8 @@
|
|
||||||
|
|
||||||
if (info.GetFlags().Test(eLaunchFlagDebug)) {
|
|
||||||
// Do not inherit setgid powers.
|
|
||||||
- if (setgid(getgid()) != 0)
|
|
||||||
- ExitWithError(error_fd, "setgid");
|
|
||||||
+ // if (setgid(getgid()) != 0)
|
|
||||||
+ // ExitWithError(error_fd, "setgid");
|
|
||||||
|
|
||||||
// HACK:
|
|
||||||
// Close everything besides stdin, stdout, and stderr that has no file
|
|
@ -1,47 +0,0 @@
|
|||||||
TERMUX_PKG_HOMEPAGE=https://lldb.llvm.org
|
|
||||||
TERMUX_PKG_DESCRIPTION="LLVM based debugger"
|
|
||||||
TERMUX_PKG_LICENSE="NCSA"
|
|
||||||
TERMUX_PKG_MAINTAINER="@termux"
|
|
||||||
TERMUX_PKG_VERSION=10.0.1
|
|
||||||
TERMUX_PKG_SRCURL=(https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/lldb-$TERMUX_PKG_VERSION.src.tar.xz
|
|
||||||
https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION/llvm-$TERMUX_PKG_VERSION.src.tar.xz)
|
|
||||||
TERMUX_PKG_SHA256=(07abe87c25876aa306e73127330f5f37d270b6b082d50cc679e31b4fc02a3714
|
|
||||||
c5d8e30b57cbded7128d78e5e8dad811bff97a8d471896812f57fa99ee82cdf3)
|
|
||||||
TERMUX_PKG_DEPENDS="libc++, libedit, libllvm, libxml2, ncurses-ui-libs"
|
|
||||||
TERMUX_PKG_BUILD_DEPENDS="libllvm-static"
|
|
||||||
TERMUX_PKG_BREAKS="lldb-dev, lldb-static"
|
|
||||||
TERMUX_PKG_REPLACES="lldb-dev, lldb-static"
|
|
||||||
TERMUX_PKG_HOSTBUILD=true
|
|
||||||
TERMUX_PKG_HAS_DEBUG=false
|
|
||||||
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
|
|
||||||
-DLLDB_TABLEGEN=$TERMUX_PKG_HOSTBUILD_DIR/bin/lldb-tblgen
|
|
||||||
-DLLVM_ENABLE_SPHINX=ON
|
|
||||||
-DLLVM_ENABLE_TERMINFO=1
|
|
||||||
-DLLVM_LINK_LLVM_DYLIB=ON
|
|
||||||
-DLLVM_DIR=$TERMUX_PREFIX/lib/cmake/llvm
|
|
||||||
-DLLVM_TABLEGEN=$TERMUX_PKG_HOSTBUILD_DIR/llvm/bin/llvm-tblgen
|
|
||||||
"
|
|
||||||
|
|
||||||
termux_step_host_build() {
|
|
||||||
termux_setup_cmake
|
|
||||||
termux_setup_ninja
|
|
||||||
|
|
||||||
mkdir llvm
|
|
||||||
cd llvm
|
|
||||||
|
|
||||||
cmake -G Ninja $TERMUX_PKG_SRCDIR/llvm-${TERMUX_PKG_VERSION}.src
|
|
||||||
ninja -j $TERMUX_MAKE_PROCESSES llvm-tblgen
|
|
||||||
|
|
||||||
cd ..
|
|
||||||
cmake -G Ninja $TERMUX_PKG_SRCDIR -DLLDB_INCLUDE_TESTS=OFF \
|
|
||||||
-DLLVM_DIR=$TERMUX_PKG_HOSTBUILD_DIR/llvm/lib/cmake/llvm
|
|
||||||
ninja -j $TERMUX_MAKE_PROCESSES lldb-tblgen
|
|
||||||
}
|
|
||||||
|
|
||||||
termux_step_make() {
|
|
||||||
ninja -w dupbuild=warn -j $TERMUX_MAKE_PROCESSES all docs-lldb-man
|
|
||||||
}
|
|
||||||
|
|
||||||
termux_step_post_make_install() {
|
|
||||||
cp $TERMUX_PKG_BUILDDIR/docs/man/lldb.1 $TERMUX_PREFIX/share/man/man1
|
|
||||||
}
|
|
@ -1,21 +0,0 @@
|
|||||||
--- ./CMakeLists.txt.orig 2019-10-28 02:55:47.051030643 +0000
|
|
||||||
+++ ./CMakeLists.txt 2019-10-28 02:55:59.659010243 +0000
|
|
||||||
@@ -39,18 +39,6 @@
|
|
||||||
add_subdirectory(scripts)
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
-if(CMAKE_CROSSCOMPILING AND LLDB_BUILT_STANDALONE)
|
|
||||||
- set(LLVM_USE_HOST_TOOLS ON)
|
|
||||||
- include(CrossCompile)
|
|
||||||
- if (NOT NATIVE_LLVM_DIR OR NOT NATIVE_Clang_DIR)
|
|
||||||
- message(FATAL_ERROR
|
|
||||||
- "Crosscompiling standalone requires the variables NATIVE_{CLANG,LLVM}_DIR
|
|
||||||
- for building the native lldb-tblgen used during the build process.")
|
|
||||||
- endif()
|
|
||||||
- llvm_create_cross_target(lldb NATIVE "" Release
|
|
||||||
- -DLLVM_DIR=${NATIVE_LLVM_DIR}
|
|
||||||
- -DClang_DIR=${NATIVE_Clang_DIR})
|
|
||||||
-endif()
|
|
||||||
|
|
||||||
add_subdirectory(utils/TableGen)
|
|
||||||
add_subdirectory(source)
|
|
@ -1,52 +0,0 @@
|
|||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
||||||
index 26cefbf3758b..78cd146aee7e 100644
|
|
||||||
--- a/CMakeLists.txt
|
|
||||||
+++ b/CMakeLists.txt
|
|
||||||
@@ -103,7 +103,9 @@ endif()
|
|
||||||
# TableGen
|
|
||||||
add_subdirectory(utils/TableGen)
|
|
||||||
|
|
||||||
+if(CMAKE_CROSSCOMPILING)
|
|
||||||
add_subdirectory(source)
|
|
||||||
+endif()
|
|
||||||
add_subdirectory(tools)
|
|
||||||
add_subdirectory(docs)
|
|
||||||
|
|
||||||
diff --git a/cmake/modules/LLDBStandalone.cmake b/cmake/modules/LLDBStandalone.cmake
|
|
||||||
index 1079a1636fa7..1049303b1242 100644
|
|
||||||
--- a/cmake/modules/LLDBStandalone.cmake
|
|
||||||
+++ b/cmake/modules/LLDBStandalone.cmake
|
|
||||||
@@ -1,7 +1,9 @@
|
|
||||||
option(LLVM_INSTALL_TOOLCHAIN_ONLY "Only include toolchain files in the 'install' target." OFF)
|
|
||||||
|
|
||||||
find_package(LLVM REQUIRED CONFIG HINTS ${LLVM_DIR} NO_CMAKE_FIND_ROOT_PATH)
|
|
||||||
-find_package(Clang REQUIRED CONFIG HINTS ${Clang_DIR} ${LLVM_DIR}/../clang NO_CMAKE_FIND_ROOT_PATH)
|
|
||||||
+if(CMAKE_CROSSCOMPILING)
|
|
||||||
+ find_package(Clang REQUIRED CONFIG HINTS ${Clang_DIR} ${LLVM_DIR}/../clang NO_CMAKE_FIND_ROOT_PATH)
|
|
||||||
+endif()
|
|
||||||
|
|
||||||
# We set LLVM_CMAKE_PATH so that GetSVN.cmake is found correctly when building SVNVersion.inc
|
|
||||||
set(LLVM_CMAKE_PATH ${LLVM_CMAKE_DIR} CACHE PATH "Path to LLVM CMake modules")
|
|
||||||
@@ -87,14 +90,22 @@
|
|
||||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
+if(CMAKE_CROSSCOMPILING)
|
|
||||||
set_target_properties(clang-tablegen-targets PROPERTIES FOLDER "lldb misc")
|
|
||||||
+endif()
|
|
||||||
set_target_properties(intrinsics_gen PROPERTIES FOLDER "lldb misc")
|
|
||||||
|
|
||||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
|
||||||
+if(CMAKE_CROSSCOMPILING)
|
|
||||||
include_directories(
|
|
||||||
"${CMAKE_BINARY_DIR}/include"
|
|
||||||
"${LLVM_INCLUDE_DIRS}"
|
|
||||||
"${CLANG_INCLUDE_DIRS}")
|
|
||||||
+else()
|
|
||||||
+include_directories(
|
|
||||||
+ "${CMAKE_BINARY_DIR}/include"
|
|
||||||
+ "${LLVM_INCLUDE_DIRS}")
|
|
||||||
+endif()
|
|
||||||
|
|
||||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
|
|
||||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX})
|
|
Loading…
Reference in New Issue
Block a user