diff --git a/srcpkgs/libcxxabi/template b/srcpkgs/libcxxabi/template index 554491a4d26..78bc43a02d2 100644 --- a/srcpkgs/libcxxabi/template +++ b/srcpkgs/libcxxabi/template @@ -1,33 +1,41 @@ # Template file for 'libcxxabi' pkgname=libcxxabi -version=6.0.1 +version=7.0.1 revision=1 wrksrc="${pkgname}-${version}.src" build_style=cmake -configure_args="-DLIBCXXABI_LIBCXX_INCLUDES=../libcxx/include" +configure_args="-DLIBCXXABI_LIBCXX_INCLUDES=../libcxx/include + -DLIBCXXABI_USE_LLVM_UNWINDER=1" make_build_args="VERBOSE=1" -hostmakedepends="llvm" -makedepends="llvm llvm-libunwind-devel" -LDFLAGS="-Wl,--no-as-needed -lunwind -Wl,--as-needed" +hostmakedepends="llvm7" +makedepends="llvm7 llvm-libunwind-devel" short_desc="Low-level support for libc++ standard library" maintainer="Juan RP " -homepage="http://libcxxabi.llvm.org" +homepage="https://libcxxabi.llvm.org" license="NCSA, MIT" -distfiles="http://www.llvm.org/releases/${version}/${pkgname}-${version}.src.tar.xz - http://www.llvm.org/releases/${version}/libcxx-${version}.src.tar.xz" -checksum="209f2ec244a8945c891f722e9eda7c54a5a7048401abd62c62199f3064db385f - 7654fbc810a03860e6f01a54c2297a0b9efb04c0b9aa0409251d9bdb3726fc67" +distfiles="https://www.llvm.org/releases/${version}/${pkgname}-${version}.src.tar.xz + https://www.llvm.org/releases/${version}/libcxx-${version}.src.tar.xz" +checksum="8168903a157ca7ab8423d3b974eaa497230b1564ceb57260be2bd14412e8ded8 + 020002618b319dc2a8ba1f2cba88b8cc6a209005ed8ad29f9de0c562c6ebb9f1" +# Aarch64 fails to build with gcc case "$XBPS_TARGET_MACHINE" in - arm*) broken="Wierd EHABI defines break it";; + aarch64*) + hostmakedepends+=" clang" + pre_configure() { + export CC="clang" + export CXX="clang++" + + CFLAGS+=" --target=$XBPS_CROSS_TRIPLET --sysroot=${XBPS_CROSS_BASE}" + CXXFLAGS+=" --target=${XBPS_CROSS_TRIPLET} --sysroot=${XBPS_CROSS_BASE}" + } + ;; esac post_extract() { # Break dependency cycle, we just need the headers here mv ../libcxx-${version}.src libcxx - sed -i 's,share/llvm/cmake,lib/cmake/llvm,g' CMakeLists.txt - # For musl sed -i 's/!defined(_GCC_MAX_ALIGN_T)/& \&\& !defined(__DEFINED_max_align_t)/' libcxx/include/stddef.h }