diff --git a/gpkg/clang/build.sh b/gpkg/clang/build.sh new file mode 100644 index 000000000..df78f5445 --- /dev/null +++ b/gpkg/clang/build.sh @@ -0,0 +1,49 @@ +TERMUX_PKG_HOMEPAGE=https://llvm.org/ +TERMUX_PKG_DESCRIPTION="Compiler infrastructure" +TERMUX_PKG_LICENSE="Apache-2.0, NCSA" +TERMUX_PKG_LICENSE_FILE="LICENSE.TXT" +TERMUX_PKG_MAINTAINER="@termux-pacman" +TERMUX_PKG_VERSION=17.0.6 +_SOURCE=https://github.com/llvm/llvm-project/releases/download/llvmorg-$TERMUX_PKG_VERSION +TERMUX_PKG_SRCURL=($_SOURCE/clang-$TERMUX_PKG_VERSION.src.tar.xz + $_SOURCE/clang-tools-extra-$TERMUX_PKG_VERSION.src.tar.xz + $_SOURCE/llvm-$TERMUX_PKG_VERSION.src.tar.xz + $_SOURCE/cmake-$TERMUX_PKG_VERSION.src.tar.xz + $_SOURCE/third-party-$TERMUX_PKG_VERSION.src.tar.xz) +TERMUX_PKG_SHA256=(a78f668a726ae1d3d9a7179996d97b12b90fb76ab9442a43110b972ff7ad9029 + aa774642415d338d7b77a66fcbad6fd1f77f382dabcb67422a6230614eff1ab9 + b638167da139126ca11917b6880207cc6e8f9d1cbb1a48d87d017f697ef78188 + 807f069c54dc20cb47b21c1f6acafdd9c649f3ae015609040d6182cab01140f4 + 3054d0a9c9375dab1a4539cc2cc45ab340341c5d71475f9599ba7752e222947b) +TERMUX_PKG_DEPENDS="libllvm-glibc, gcc-glibc, compiler-rt-glibc" +TERMUX_PKG_BUILD_DEPENDS="llvm-glibc, python-glibc" +TERMUX_PKG_NO_STATICSPLIT=true +TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" +-DCMAKE_INSTALL_DOCDIR=share/doc +-DCMAKE_SKIP_RPATH=ON +-DCLANG_DEFAULT_PIE_ON_LINUX=ON +-DCLANG_LINK_CLANG_DYLIB=ON +-DENABLE_LINKER_BUILD_ID=ON +-DLLVM_BUILD_DOCS=ON +-DLLVM_BUILD_TESTS=ON +-DLLVM_ENABLE_RTTI=ON +-DLLVM_ENABLE_SPHINX=ON +-DLLVM_EXTERNAL_LIT=$TERMUX_PREFIX/bin/lit +-DLLVM_INCLUDE_DOCS=ON +-DLLVM_LINK_LLVM_DYLIB=ON +-DSPHINX_WARNINGS_AS_ERRORS=OFF +-DLLVM_INCLUDE_TESTS=OFF +" + +termux_step_post_get_source() { + for i in clang-tools-extra llvm cmake third-party; do + rm -fr $TERMUX_TOPDIR/$TERMUX_PKG_NAME/${i} + mv $TERMUX_PKG_SRCDIR/$i-$TERMUX_PKG_VERSION.src $TERMUX_TOPDIR/$TERMUX_PKG_NAME + mv $TERMUX_TOPDIR/$TERMUX_PKG_NAME/$i-$TERMUX_PKG_VERSION.src $TERMUX_TOPDIR/$TERMUX_PKG_NAME/$i + done +} + +termux_step_pre_configure() { + termux_setup_cmake + termux_setup_ninja +}