1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 03:17:35 +00:00

Ports/zlib: Do not manually link zlib into a shared library

Instead, pass our system name to its (non-autotools) configure script.
Tell it to include a SONAME to avoid breaking dependent ports when
updating zlib.
This commit is contained in:
Daniel Bertalan 2023-08-01 21:10:45 +02:00 committed by Tim Schumacher
parent 100714b8ac
commit a050d91073

View file

@ -5,12 +5,9 @@ useconfigure=true
files="https://www.zlib.net/zlib-${version}.tar.gz zlib-${version}.tar.gz b3a24de97a8fdbc835b9833169501030b8977031bcb54b3b3ac13740f846ab30"
configure() {
# Set uname to linux to prevent it finding the host's `libtool` on e.g. Darwin
run ./configure --uname=linux
}
install() {
run make DESTDIR=${SERENITY_INSTALL_ROOT} "${installopts[@]}" install
${CC} -shared -o ${SERENITY_INSTALL_ROOT}/usr/local/lib/libz.so -Wl,-soname,libz.so -Wl,--whole-archive ${SERENITY_INSTALL_ROOT}/usr/local/lib/libz.a -Wl,--no-whole-archive
rm -f ${SERENITY_INSTALL_ROOT}/usr/local/lib/libz.la
# No SONAME is set on unknown systems by default. Manually set it
# to an unversioned name to avoid needing to rebuild dependent
# ports after a minor version upgrade.
export LDSHARED="$CC -shared -Wl,-soname,libz.so"
run ./configure --uname=SerenityOS
}