llvm8: update to 8.0.1, remove clang, lld etc., set up conflicts

This commit is contained in:
q66 2019-09-23 00:22:59 +02:00 committed by Helmut Pozimski
parent a2be11a086
commit 63c168928d
8 changed files with 7 additions and 183 deletions

View file

@ -1 +0,0 @@
llvm8

View file

@ -1 +0,0 @@
llvm8

View file

@ -1 +0,0 @@
llvm8

View file

@ -1 +0,0 @@
llvm8

View file

@ -1 +0,0 @@
llvm8

View file

@ -1 +0,0 @@
llvm8

View file

@ -1 +0,0 @@
llvm8

View file

@ -1,7 +1,7 @@
# Template file for 'llvm8'
pkgname=llvm8
version=8.0.0
revision=7
version=8.0.1
revision=1
wrksrc="llvm-${version}.src"
build_style=cmake
configure_args="
@ -20,38 +20,15 @@ short_desc="Low Level Virtual Machine"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="NCSA"
homepage="https://www.llvm.org"
distfiles="https://releases.llvm.org/${version}/llvm-${version}.src.tar.xz
https://releases.llvm.org/${version}/lldb-${version}.src.tar.xz
https://releases.llvm.org/${version}/lld-${version}.src.tar.xz
https://releases.llvm.org/${version}/cfe-${version}.src.tar.xz
https://releases.llvm.org/${version}/clang-tools-extra-${version}.src.tar.xz
https://releases.llvm.org/${version}/compiler-rt-${version}.src.tar.xz"
checksum="8872be1b12c61450cacc82b3d153eab02be2546ef34fa3580ed14137bb26224c
49918b9f09816554a20ac44c5f85a32dc0a7a00759b3259e78064d674eac0373
9caec8ec922e32ffa130f0fb08e4c5a242d7e68ce757631e425e9eba2e1a6e37
084c115aab0084e63b23eee8c233abb6739c399e29966eaeccfc6e088e0b736b
4f00122be408a7482f2004bcf215720d2b88cf8dc78b824abb225da8ad359d4b
b435c7474f459e71b2831f1a4e3f1d21203cb9c0172e94e9d9b69f50354f21b1"
distfiles="https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/llvm-${version}.src.tar.xz"
checksum="44787a6d02f7140f145e2250d56c9f849334e11f9ae379827510ed72f12b75e7"
disable_parallel_builds=yes
lib32disabled=yes
_lldb_enable=yes
# all of these provide llvm-config
conflicts="llvm>=0 llvm3.9>=0 llvm6.0>=0 llvm7>=0 llvm9>=0"
if [ "$CROSS_BUILD" ]; then
_lldb_enable=no
fi
case "$XBPS_TARGET_MACHINE" in
ppc64le*) ;;
ppc*) _lldb_enable=no ;;
esac
subpackages="clang-tools-extra clang clang-analyzer libllvm8"
if [ "$_lldb_enable" = "yes" ]; then
# XXX fails to cross compile due to python
subpackages+=" lldb lldb-devel"
fi
subpackages+=" lld lld-devel"
subpackages="libllvm8"
case "$XBPS_TARGET_MACHINE" in
armv5*) broken="Tries to assemble VFP instructions with armv5tel arch";;
@ -64,51 +41,6 @@ post_patch() {
msg_normal "Applying $i to llvm\n"
patch -sNp1 -i ${i}
done
cd ${XBPS_BUILDDIR}/cfe-${version}.src
for i in ${FILESDIR}/patches/cfe/cfe-*.patch; do
msg_normal "Applying $i to cfe\n"
patch -sNp1 -i ${i}
done
if [ "$_lldb_enable" = "yes" ]; then
cd ${XBPS_BUILDDIR}/lldb-${version}.src
for i in ${FILESDIR}/patches/lldb/*.patch; do
msg_normal "Applying $i to lldb\n"
patch -sNp1 -i ${i}
done
case "$XBPS_TARGET_MACHINE" in
*-musl) sed -i 's|__ptrace_request|int|g' source/Plugins/Process/Linux/NativeProcessLinux.cpp ;;
esac
fi
# Move clang files into the llvm source.
if [ -d ${XBPS_BUILDDIR}/cfe-${version}.src ]; then
mv ${XBPS_BUILDDIR}/cfe-${version}.src ${wrksrc}/tools/clang
fi
# Move clang-tools-extra files into llvm source.
if [ -d ${XBPS_BUILDDIR}/clang-tools-extra-${version}.src ]; then
mv ${XBPS_BUILDDIR}/clang-tools-extra-${version}.src ${wrksrc}/tools/clang/tools/extra
fi
# Move lld files into the llvm source.
if [ -d ${XBPS_BUILDDIR}/lld-${version}.src ]; then
mv ${XBPS_BUILDDIR}/lld-${version}.src ${wrksrc}/tools/lld
fi
# Move lldb files into the llvm source.
if [ "$_lldb_enable" = "yes" -a -d ${XBPS_BUILDDIR}/lldb-${version}.src ]; then
mv ${XBPS_BUILDDIR}/lldb-${version}.src ${wrksrc}/tools/lldb
fi
# Move compiler-rt files into the llvm source.
if [ -d ${XBPS_BUILDDIR}/compiler-rt-${version}.src ]; then
mv ${XBPS_BUILDDIR}/compiler-rt-${version}.src ${wrksrc}/projects/compiler-rt
fi
case "$XBPS_TARGET_MACHINE" in
*-musl)
# Disable sanitizers
sed -i 's/set(COMPILER_RT_HAS_SANITIZER_COMMON TRUE)/set(COMPILER_RT_HAS_SANITIZER_COMMON FALSE)/' ${wrksrc}/projects/compiler-rt/cmake/config-ix.cmake
;;
esac
}
pre_configure() {
@ -131,9 +63,7 @@ pre_configure() {
CXXFLAGS="$BUILD_CXXFLAGS" LDFLAGS="$BUILD_LDFLAGS" \
cmake ../.. -DCMAKE_BUILD_TYPE=Release
make ${makejobs} -C utils/TableGen
make ${makejobs} -C tools/clang/utils/TableGen
configure_args+=" -DLLVM_TABLEGEN=${wrksrc}/build/HOST/bin/llvm-tblgen"
configure_args+=" -DCLANG_TABLEGEN=${wrksrc}/build/HOST/bin/clang-tblgen"
cd ../..
fi
@ -175,105 +105,6 @@ do_install() {
fi
}
clang-analyzer_package() {
archs=noarch
pycompile_dirs="usr/share/scan-view"
depends="clang-${version}_${revision} python"
short_desc+=" - A source code analysis framework"
homepage="https://clang-analyzer.llvm.org/"
pkg_install() {
vmove usr/share/man/man1/scan-build.1
vmove "/usr/bin/scan-*"
vmove "/usr/share/scan-*"
vmove "/usr/libexec/*analyzer"
}
}
clang-tools-extra_package() {
depends="clang-${version}_${revision} python"
short_desc+=" - Extra Clang tools"
homepage="https://clang.llvm.org/extra/"
pkg_install() {
vmove usr/bin/clang-apply-replacements
vmove usr/bin/clang-query
vmove usr/bin/clang-rename
vmove usr/bin/clang-tidy
vmove usr/bin/modularize
vmove "usr/lib/libclangApplyReplacements*"
vmove "usr/lib/libclangQuery*"
vmove "usr/lib/libclangTidy*"
vmove "usr/share/clang/*tidy*"
}
}
clang_package() {
lib32disabled=yes
depends="libstdc++-devel libgcc-devel binutils"
case "$XBPS_TARGET_MACHINE" in
*-musl) depends+=" musl-devel";;
*) depends+=" glibc-devel";;
esac
short_desc+=" - C language family frontend"
alternatives="cc:cc:/usr/bin/clang"
homepage="https://clang.llvm.org/"
pkg_install() {
vmove usr/include/clang
vmove usr/include/clang-c
vmove "usr/bin/*clang*"
vmove usr/bin/c-index-test
vmove usr/lib/clang
vmove usr/lib/cmake/clang
vmove "usr/lib/libclang*"
vmove "usr/share/clang"
}
}
lld_package() {
lib32disabled=yes
short_desc+=" - linker"
homepage="https://lld.llvm.org"
pkg_install() {
vmove usr/bin/lld*
vmove usr/bin/wasm-ld
vmove usr/bin/ld.lld*
}
}
lld-devel_package() {
lib32disabled=yes
short_desc+=" - linker - development files"
homepage="https://lld.llvm.org"
pkg_install() {
vmove usr/include/lld
vmove "usr/lib/liblld*a"
}
}
lldb_package() {
lib32disabled=yes
depends+=" python-six"
short_desc+=" - LLDB debugger"
homepage="https://lldb.llvm.org/"
pkg_install() {
vmove usr/bin/*lldb*
vmove usr/lib/liblldb*so.*
vman tools/lldb/docs/lldb.1
vmove /usr/lib/python*
# Depend on python-six instead of conflicting
rm "${PKGDESTDIR}/usr/lib/python2.7/site-packages/six.py"
}
}
lldb-devel_package() {
depends="lldb>=${version}_${revision}"
short_desc+=" - LLDB debugger - development files"
pkg_install() {
vmove usr/include/lldb
vmove "usr/lib/liblldb*.a"
vmove "usr/lib/liblldb*.so"
}
}
libllvm8_package() {
short_desc+=" - runtime library"
pkg_install() {