mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-21 18:37:58 +03:00
5b69e8d2c6
Without a SONAME gcc will put the whole library path into executables which link against these libraries: $ readelf -d Root/usr/local/games/openttd Dynamic section at offset 0xf0747c contains 32 entries: Tag Type Name/Value 0x00000001 (NEEDED) [libgcc_s.so] 0x00000001 (NEEDED) [/serenity/Build/i686/Root/usr/local/lib/libpng.so] 0x00000001 (NEEDED) [/serenity/Build/i686/Root/usr/local/lib/libz.so] 0x00000001 (NEEDED) [/serenity/Build/i686/Root/usr/local/lib/liblzma.so] 0x00000001 (NEEDED) [libSDL2-2.0.so.1] 0x00000001 (NEEDED) [libicui18n.so.69] 0x00000001 (NEEDED) [libicuuc.so.69] 0x00000001 (NEEDED) [libicudata.so.69] 0x00000001 (NEEDED) [libpthread.so] 0x00000001 (NEEDED) [libm.so] 0x00000001 (NEEDED) [libc.so] This causes the executable to fail because the dynamic linker tries to find the library in the incorrect path.
17 lines
769 B
Bash
Executable File
17 lines
769 B
Bash
Executable File
#!/usr/bin/env -S bash ../.port_include.sh
|
|
port=libiconv
|
|
version=1.16
|
|
useconfigure=true
|
|
configopts=--enable-shared
|
|
files="https://ftpmirror.gnu.org/gnu/libiconv/libiconv-${version}.tar.gz libiconv-${version}.tar.gz
|
|
https://ftpmirror.gnu.org/gnu/libiconv/libiconv-${version}.tar.gz.sig libiconv-${version}.tar.gz.sig
|
|
https://ftpmirror.gnu.org/gnu/gnu-keyring.gpg gnu-keyring.gpg"
|
|
|
|
auth_type="sig"
|
|
auth_opts="--keyring ./gnu-keyring.gpg libiconv-${version}.tar.gz.sig"
|
|
|
|
install() {
|
|
run make DESTDIR=${SERENITY_INSTALL_ROOT} $installopts install
|
|
run ${SERENITY_ARCH}-pc-serenity-gcc -shared -o ${SERENITY_INSTALL_ROOT}/usr/local/lib/libiconv.so -Wl,-soname,libiconv.so -Wl,--whole-archive ${SERENITY_INSTALL_ROOT}/usr/local/lib/libiconv.a -Wl,--no-whole-archive
|
|
}
|