[Buildroot] [PATCH 1/1] package/libpsl: fix build with libiconv

Arnout Vandecappelle arnout at mind.be
Mon Apr 4 19:44:13 UTC 2022



On 03/04/2022 14:13, Fabrice Fontaine wrote:
> 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 <fontaine.fabrice at gmail.com>

  Applied to master, thanks.

  Regards,
  Arnout

> ---
>   ...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 <zhilizhao at tencent.com>
> +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 <fontaine.fabrice at gmail.com>
> +---
> + 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,
> + )



More information about the buildroot mailing list