From 3239fb5b179d043ecfc854dd2f4962444d8b36a6 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Sun, 3 Apr 2022 14:13:27 +0200 Subject: [PATCH] package/libpsl: fix build with libiconv Fix the following build failure raised since the addition of the package in commit 47acda3a95bd4310f884e741f20785d374af7b22: /home/autobuild/autobuild/instance-9/output-1/host/lib/gcc/sparc-buildroot-linux-uclibc/10.3.0/../../../../sparc-buildroot-linux-uclibc/bin/ld: src/libpsl.so.5.3.2.p/psl.c.o: in function `psl_str_to_utf8lower': psl.c:(.text+0x1584): undefined reference to `libiconv_open' Fixes: - http://autobuild.buildroot.org/results/8f012331acd3edb96a69d374436884679add8860 Signed-off-by: Fabrice Fontaine Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- ...dd-libiconv-dep-to-meson-build-again.patch | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 package/libpsl/0001-Add-libiconv-dep-to-meson-build-again.patch diff --git a/package/libpsl/0001-Add-libiconv-dep-to-meson-build-again.patch b/package/libpsl/0001-Add-libiconv-dep-to-meson-build-again.patch new file mode 100644 index 0000000000..72f50aa593 --- /dev/null +++ b/package/libpsl/0001-Add-libiconv-dep-to-meson-build-again.patch @@ -0,0 +1,60 @@ +From 5b63816e82287808e81b8603a528af3cc6fab354 Mon Sep 17 00:00:00 2001 +From: Zhao Zhili +Date: Thu, 7 Jan 2021 20:59:17 +0800 +Subject: [PATCH] Add libiconv dep to meson build again + +Build success on macOS and ubuntu. + +[Retrieved from: +https://github.com/rockdaboot/libpsl/commit/5b63816e82287808e81b8603a528af3cc6fab354] +Signed-off-by: Fabrice Fontaine +--- + meson.build | 14 ++++++++++++++ + src/meson.build | 2 +- + 2 files changed, 15 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index f248171..fb2de31 100644 +--- a/meson.build ++++ b/meson.build +@@ -20,6 +20,7 @@ libicu_dep = notfound + libidn_dep = notfound + libunistring = notfound + networking_deps = notfound ++libiconv_dep = notfound + + # FIXME: Cleanup this when Meson gets 'feature-combo': + # https://github.com/mesonbuild/meson/issues/4566 +@@ -86,6 +87,19 @@ endif + if libidn2_dep.found() or libidn_dep.found() + # Check for libunistring, we need it for psl_str_to_utf8lower() + libunistring = cc.find_library('unistring') ++ found_iconv = false ++ if cc.has_function('iconv_open') ++ libiconv_dep = [] ++ found_iconv = true ++ endif ++ if not found_iconv and cc.has_header_symbol('iconv.h', 'iconv_open') ++ libiconv_dep = [cc.find_library('iconv')] ++ found_iconv = true ++ endif ++ ++ if not found_iconv ++ error('iconv implementation not found') ++ endif + endif + + if host_machine.system() == 'windows' +diff --git a/src/meson.build b/src/meson.build +index 0d1dcdf..746bf44 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -19,7 +19,7 @@ cargs = [ + libpsl = library('psl', sources, suffixes_dafsa_h, + include_directories : [configinc, includedir], + c_args : cargs, +- dependencies : [libidn2_dep, libidn_dep, libicu_dep, libunistring, networking_deps], ++ dependencies : [libidn2_dep, libidn_dep, libicu_dep, libunistring, networking_deps, libiconv_dep], + version: lt_version, + install: true, + )