From 411277e5d07e9659fa785de1fbcfc069a95b0535 Mon Sep 17 00:00:00 2001 From: EWouters <6179932+EWouters@users.noreply.github.com> Date: Fri, 3 Jun 2022 17:01:48 +0200 Subject: Ports/libiconv: Update libiconv to version 1.17 This also removes the patch that stubbed out `getprogname()` as it is no longer needed. --- Ports/AvailablePorts.md | 2 +- Ports/libiconv/package.sh | 14 ++-- .../0001-Stub-out-getprogname-for-serenity.patch | 25 ------- ...ble-shared-library-support-for-SerenityOS.patch | 76 ++++++++++++++++++++++ ...ble-shared-library-support-for-SerenityOS.patch | 76 ---------------------- Ports/libiconv/patches/ReadMe.md | 7 +- 6 files changed, 85 insertions(+), 115 deletions(-) delete mode 100644 Ports/libiconv/patches/0001-Stub-out-getprogname-for-serenity.patch create mode 100644 Ports/libiconv/patches/0001-libtool-Enable-shared-library-support-for-SerenityOS.patch delete mode 100644 Ports/libiconv/patches/0002-libtool-Enable-shared-library-support-for-SerenityOS.patch diff --git a/Ports/AvailablePorts.md b/Ports/AvailablePorts.md index 7277de5046..14bde6cdda 100644 --- a/Ports/AvailablePorts.md +++ b/Ports/AvailablePorts.md @@ -100,7 +100,7 @@ This list is also available at [ports.serenityos.net](https://ports.serenityos.n | [`libgcrypt`](libgcrypt/) | libgcrypt | 1.10.1 | https://gnupg.org/software/libgcrypt/index.html | | [`libgd`](libgd/) | libgd | 2.3.3 | https://libgd.github.io/ | | [`libgpg-error`](libgpg-error/) | libgpg-error | 1.45 | https://gnupg.org/software/libgpg-error/index.html | -| [`libiconv`](libiconv/) | GNU libiconv | 1.16 | https://www.gnu.org/software/libiconv/ | +| [`libiconv`](libiconv/) | GNU libiconv | 1.17 | https://www.gnu.org/software/libiconv/ | | [`libicu`](libicu/) | ICU | 69.1 | http://site.icu-project.org/ | | [`libjpeg`](libjpeg/) | libjpeg | 9e | https://ijg.org/ | | [`libksba`](libksba/) | libksba | 1.5.1 | https://gnupg.org/software/libksba/index.html | diff --git a/Ports/libiconv/package.sh b/Ports/libiconv/package.sh index e4eb13ed54..c102b1a877 100755 --- a/Ports/libiconv/package.sh +++ b/Ports/libiconv/package.sh @@ -1,9 +1,9 @@ #!/usr/bin/env -S bash ../.port_include.sh -port=libiconv -version=1.16 -useconfigure=true -configopts=("--enable-shared" "--disable-nls") -files="https://ftpmirror.gnu.org/gnu/libiconv/libiconv-${version}.tar.gz libiconv-${version}.tar.gz e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04" -auth_type="sha256" -use_fresh_config_sub=true +port='libiconv' +version='1.17' +files="https://ftpmirror.gnu.org/gnu/libiconv/libiconv-${version}.tar.gz libiconv-${version}.tar.gz 8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313" +auth_type='sha256' +useconfigure='true' +use_fresh_config_sub='true' config_sub_paths=("build-aux/config.sub" "libcharset/build-aux/config.sub") +configopts=("--enable-shared" "--disable-nls") diff --git a/Ports/libiconv/patches/0001-Stub-out-getprogname-for-serenity.patch b/Ports/libiconv/patches/0001-Stub-out-getprogname-for-serenity.patch deleted file mode 100644 index 3acfa2ee29..0000000000 --- a/Ports/libiconv/patches/0001-Stub-out-getprogname-for-serenity.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 74f7065ed6f9cf338f53657ea08e980328dd27c6 Mon Sep 17 00:00:00 2001 -From: Vincent Sanders -Date: Sun, 6 Oct 2019 11:11:16 +0100 -Subject: [PATCH 1/2] Stub out getprogname() for serenity - ---- - srclib/getprogname.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/srclib/getprogname.c b/srclib/getprogname.c -index 22d71eb..7cc112d 100644 ---- a/srclib/getprogname.c -+++ b/srclib/getprogname.c -@@ -244,6 +244,8 @@ getprogname (void) - } - } - return NULL; -+# elif defined __serenity__ -+ return "?"; - # else - # error "getprogname module not ported to this OS" - # endif --- -2.36.1 - diff --git a/Ports/libiconv/patches/0001-libtool-Enable-shared-library-support-for-SerenityOS.patch b/Ports/libiconv/patches/0001-libtool-Enable-shared-library-support-for-SerenityOS.patch new file mode 100644 index 0000000000..de144fd65b --- /dev/null +++ b/Ports/libiconv/patches/0001-libtool-Enable-shared-library-support-for-SerenityOS.patch @@ -0,0 +1,76 @@ +From bdcb52aa7f451346423c3468ab124c57464b1b5a Mon Sep 17 00:00:00 2001 +From: Tim Schumacher +Date: Sun, 29 May 2022 15:01:28 +0200 +Subject: [PATCH 2/2] libtool: Enable shared library support for SerenityOS + +For some odd reason, libtool handles the configuration for shared +libraries entirely statically and in its configure script. If no +shared library support is "present", building shared libraries is +disabled entirely. + +Fix that by just adding the appropriate configuration options for +`serenity`. This allows us to finally create dynamic libraries +automatically using libtool, without having to manually link the +static library into a shared library. +--- + configure | 23 +++++++++++++++++++++++ + 1 file changed, 23 insertions(+) + +diff --git a/configure b/configure +index 668c3dd..a2857fc 100755 +--- a/configure ++++ b/configure +@@ -8649,6 +8649,10 @@ tpf*) + os2*) + lt_cv_deplibs_check_method=pass_all + ;; ++ ++serenity*) ++ lt_cv_deplibs_check_method=pass_all ++ ;; + esac + + fi +@@ -12125,6 +12129,10 @@ lt_prog_compiler_static= + lt_prog_compiler_static='-Bstatic' + ;; + ++ serenity*) ++ lt_prog_compiler_can_build_shared=yes ++ ;; ++ + *) + lt_prog_compiler_can_build_shared=no + ;; +@@ -13657,6 +13665,10 @@ printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; } + hardcode_shlibpath_var=no + ;; + ++ serenity*) ++ ld_shlibs=yes ++ ;; ++ + *) + ld_shlibs=no + ;; +@@ -14729,6 +14741,17 @@ uts4*) + shlibpath_var=LD_LIBRARY_PATH + ;; + ++serenity*) ++ version_type=linux ++ need_lib_prefix=no ++ need_version=no ++ library_names_spec='${libname}${release}${shared_ext}${versuffix} ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' ++ soname_spec='${libname}${release}${shared_ext}${major}' ++ shlibpath_var=LD_LIBRARY_PATH ++ shlibpath_overrides_runpath=no ++ dynamic_linker='SerenityOS LibELF' ++ ;; ++ + *) + dynamic_linker=no + ;; +-- +2.36.1 + diff --git a/Ports/libiconv/patches/0002-libtool-Enable-shared-library-support-for-SerenityOS.patch b/Ports/libiconv/patches/0002-libtool-Enable-shared-library-support-for-SerenityOS.patch deleted file mode 100644 index 0ddb432ec4..0000000000 --- a/Ports/libiconv/patches/0002-libtool-Enable-shared-library-support-for-SerenityOS.patch +++ /dev/null @@ -1,76 +0,0 @@ -From bdcb52aa7f451346423c3468ab124c57464b1b5a Mon Sep 17 00:00:00 2001 -From: Tim Schumacher -Date: Sun, 29 May 2022 15:01:28 +0200 -Subject: [PATCH 2/2] libtool: Enable shared library support for SerenityOS - -For some odd reason, libtool handles the configuration for shared -libraries entirely statically and in its configure script. If no -shared library support is "present", building shared libraries is -disabled entirely. - -Fix that by just adding the appropriate configuration options for -`serenity`. This allows us to finally create dynamic libraries -automatically using libtool, without having to manually link the -static library into a shared library. ---- - configure | 23 +++++++++++++++++++++++ - 1 file changed, 23 insertions(+) - -diff --git a/configure b/configure -index 3488d1d..33b4956 100755 ---- a/configure -+++ b/configure -@@ -7376,6 +7376,10 @@ tpf*) - os2*) - lt_cv_deplibs_check_method=pass_all - ;; -+ -+serenity*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; - esac - - fi -@@ -10688,6 +10692,10 @@ lt_prog_compiler_static= - lt_prog_compiler_static='-Bstatic' - ;; - -+ serenity*) -+ lt_prog_compiler_can_build_shared=yes -+ ;; -+ - *) - lt_prog_compiler_can_build_shared=no - ;; -@@ -12206,6 +12214,10 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } - hardcode_shlibpath_var=no - ;; - -+ serenity*) -+ ld_shlibs=yes -+ ;; -+ - *) - ld_shlibs=no - ;; -@@ -13274,6 +13286,17 @@ uts4*) - shlibpath_var=LD_LIBRARY_PATH - ;; - -+serenity*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}${shared_ext}${versuffix} ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' -+ soname_spec='${libname}${release}${shared_ext}${major}' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ dynamic_linker='SerenityOS LibELF' -+ ;; -+ - *) - dynamic_linker=no - ;; --- -2.36.1 - diff --git a/Ports/libiconv/patches/ReadMe.md b/Ports/libiconv/patches/ReadMe.md index 779a29f555..1ee364b2bc 100644 --- a/Ports/libiconv/patches/ReadMe.md +++ b/Ports/libiconv/patches/ReadMe.md @@ -1,11 +1,6 @@ # Patches for libiconv on SerenityOS -## `0001-Stub-out-getprogname-for-serenity.patch` - -Stub out getprogname() for serenity - - -## `0002-libtool-Enable-shared-library-support-for-SerenityOS.patch` +## `0001-libtool-Enable-shared-library-support-for-SerenityOS.patch` libtool: Enable shared library support for SerenityOS -- cgit v1.2.3