wip: cleanup static libs

This commit is contained in:
Marcus Holland-Moritz 2025-07-28 08:32:46 +02:00
parent 7a8e75c9f2
commit 5fb5ebc12c

View File

@ -92,13 +92,20 @@ PARALLEL_HASHMAP_TARBALL="parallel-hashmap-${PARALLEL_HASHMAP_VERSION}.tar.gz"
use_lib() { use_lib() {
local lib="$1" local lib="$1"
case "$CARCH" in case "$CARCH" in
ppc64le|s390x|arm) ppc64le|arm)
case "$lib" in case "$lib" in
libunwind|libdwarf|cpptrace) libunwind|libdwarf|cpptrace)
return 1 return 1
;; ;;
esac esac
;; ;;
s390x)
case "$lib" in
libunwind|libdwarf|cpptrace|libressl)
return 1
;;
esac
;;
esac esac
if [[ ",$PKGS," == *",$lib,"* ]]; then if [[ ",$PKGS," == *",$lib,"* ]]; then
return 0 return 0
@ -277,12 +284,11 @@ EOF
# COMPILERS="clang clang-lto clang-minsize-lto gcc" # COMPILERS="clang clang-lto clang-minsize-lto gcc"
case "$CARCH" in case "$CARCH" in
ppc64le|s390x) # There are currently issues with Clang & PPC64LE, see
# https://github.com/rui314/mold/issues/1490
ppc64le)
COMPILERS="gcc" COMPILERS="gcc"
;; ;;
arm)
COMPILERS="clang clang-minsize-lto"
;;
*) *)
if [[ "$ARCH" == "riscv64" ]]; then if [[ "$ARCH" == "riscv64" ]]; then
# This is so slow natively, stick to the basics for now # This is so slow natively, stick to the basics for now
@ -310,10 +316,7 @@ EOF
export COMP_LDFLAGS="$TARGET_FLAGS $COMMON_LDFLAGS -L$INSTALL_DIR/lib" export COMP_LDFLAGS="$TARGET_FLAGS $COMMON_LDFLAGS -L$INSTALL_DIR/lib"
case "$CARCH" in case "$CARCH" in
arm) ppc64le)
export COMP_LDFLAGS="-fuse-ld=lld $COMP_LDFLAGS"
;;
ppc64le|s390x)
;; ;;
*) *)
export COMP_LDFLAGS="-fuse-ld=mold $COMP_LDFLAGS" export COMP_LDFLAGS="-fuse-ld=mold $COMP_LDFLAGS"
@ -621,19 +624,17 @@ EOF
fi fi
if use_lib libressl; then if use_lib libressl; then
if [[ "$CARCH" =~ ^(x86_64|aarch64|riscv64|i386)$ ]]; then opt_size
opt_size cd "$WORKDIR"
cd "$WORKDIR" tar xf ${WORKROOT}/${LIBRESSL_TARBALL}
tar xf ${WORKROOT}/${LIBRESSL_TARBALL} cd libressl-${LIBRESSL_VERSION}
cd libressl-${LIBRESSL_VERSION} mkdir build
mkdir build cd build
cd build cmake .. -DCMAKE_PREFIX_PATH="$INSTALL_DIR" -DCMAKE_INSTALL_PREFIX="$INSTALL_DIR_LIBRESSL" \
cmake .. -DCMAKE_PREFIX_PATH="$INSTALL_DIR" -DCMAKE_INSTALL_PREFIX="$INSTALL_DIR_LIBRESSL" \ -DBUILD_SHARED_LIBS=OFF -DLIBRESSL_APPS=OFF -DLIBRESSL_TESTS=OFF \
-DBUILD_SHARED_LIBS=OFF -DLIBRESSL_APPS=OFF -DLIBRESSL_TESTS=OFF \ ${CMAKE_ARGS}
${CMAKE_ARGS} ninja
ninja ninja install
ninja install
fi
fi fi
if use_lib libevent; then if use_lib libevent; then