All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Fiona Klute <fiona.klute@gmx.de>, buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH] package/gobject-introspection: use objdump instead of prelink-cross
Date: Sat, 31 Aug 2024 00:23:43 +0200	[thread overview]
Message-ID: <ZtJGb8msWCzUxiui@landeda> (raw)
In-Reply-To: <20240825092543.2484923-1-thomas.petazzoni@bootlin.com>

Thomas, All,

On 2024-08-25 11:25 +0200, Thomas Petazzoni via buildroot spake thusly:
> This commit switches the gobject-introspection package from using
> prelink-cross to simply using "objdump -p". This basically implements
> the same change as was done in OpenEmbedded commit:
> 
>   https://git.openembedded.org/openembedded-core/commit/?id=767e0880d4d729e659e859dd99c1cdb084b8ba51
> 
> In particular, this allows to get rid of the architecture dependency
> of prelink-cross, which wasn't currently encoded, but that was
> actually causing failures such as:
> 
> /home/autobuild/autobuild/instance-17/output-1/host/sbin/prelink-rtld: error while loading shared libraries: /lib/libc.so.6: cannot handle TLS data
> 
> It also paves the way for removing host-prelink-cross entirely, as the
> only remaining user of it now is dracut.
> 
> The test tests.package.test_python_gobject.TestPythonPy3Gobject (which
> uses gobject-introspection) has been tested to run fine after this
> commit.
> 
> Fixes:
> 
>   http://autobuild.buildroot.net/results/7efa6a18f543752dfe33577f74c20bda3f8b1e65/
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

Applied to next, thanks.

Regards,
Yann E. MORIN.

> ---
>  .checkpackageignore                           |  1 -
>  ...-error-return-codes-from-ldd-wrapper.patch | 31 -------------------
>  .../g-ir-scanner-lddwrapper.in                |  3 +-
>  .../gobject-introspection.mk                  |  3 +-
>  4 files changed, 3 insertions(+), 35 deletions(-)
>  delete mode 100644 package/gobject-introspection/0003-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch
> 
> diff --git a/.checkpackageignore b/.checkpackageignore
> index 81e48bf859..4b1bd6a42e 100644
> --- a/.checkpackageignore
> +++ b/.checkpackageignore
> @@ -586,7 +586,6 @@ package/go/go-src/0001-build.go-explicit-option-for-crosscompilation.patch lib_p
>  package/gob2/0001-dont-include-from-prefix.patch lib_patch.Upstream
>  package/gobject-introspection/0001-disable-tests.patch lib_patch.Upstream
>  package/gobject-introspection/0002-Add-rpath-links-to-ccompiler.patch lib_patch.Upstream
> -package/gobject-introspection/0003-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch lib_patch.Upstream
>  package/gpsd/S50gpsd Shellcheck lib_sysv.Indent lib_sysv.Variables
>  package/gptfdisk/0001-gptcurses-partially-revert-Tweaks-for-building-on-th.patch lib_patch.Upstream
>  package/graphite2/0001-don-t-install-a-libtool-file-with-static-library.patch lib_patch.Upstream
> diff --git a/package/gobject-introspection/0003-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch b/package/gobject-introspection/0003-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch
> deleted file mode 100644
> index f1ea518954..0000000000
> --- a/package/gobject-introspection/0003-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch
> +++ /dev/null
> @@ -1,31 +0,0 @@
> -From e0fc4a2a5161a36483ddc518be9bb14390f11b19 Mon Sep 17 00:00:00 2001
> -From: Alexander Kanavin <alex.kanavin@gmail.com>
> -Date: Wed, 5 Sep 2018 16:46:52 +0200
> -Subject: [PATCH] giscanner: ignore error return codes from ldd-wrapper
> -
> -prelink-rtld, which we use instead of ldd returns 127 when it can't find a library.
> -It is not an error per se, but it breaks subprocess.check_output().
> -
> -Upstream-Status: Inappropriate [oe-core specific]
> -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> -Signed-off-by: Adam Duskett <aduskett@gmail.com>
> ----
> - giscanner/shlibs.py | 2 +-
> - 1 file changed, 1 insertion(+), 1 deletion(-)
> -
> -diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
> -index 9f8ab5df..7a1a72fe 100644
> ---- a/giscanner/shlibs.py
> -+++ b/giscanner/shlibs.py
> -@@ -103,7 +103,7 @@ def _resolve_non_libtool(options, binary, libraries):
> -             args.extend(['otool', '-L', binary.args[0]])
> -         else:
> -             args.extend(['ldd', binary.args[0]])
> --        output = subprocess.check_output(args)
> -+        output = subprocess.run(args, check=False, stdout=subprocess.PIPE).stdout
> -         if isinstance(output, bytes):
> -             output = output.decode("utf-8", "replace")
> - 
> --- 
> -2.25.1
> -
> diff --git a/package/gobject-introspection/g-ir-scanner-lddwrapper.in b/package/gobject-introspection/g-ir-scanner-lddwrapper.in
> index 2f09bca77a..7f3db67da4 100644
> --- a/package/gobject-introspection/g-ir-scanner-lddwrapper.in
> +++ b/package/gobject-introspection/g-ir-scanner-lddwrapper.in
> @@ -1,3 +1,2 @@
>  #!/usr/bin/env sh
> -
> -"${HOST_DIR}"/sbin/prelink-rtld --root="$(dirname "$0")/../../" "$@"
> +@TARGET_OBJDUMP@ -p "$@"
> diff --git a/package/gobject-introspection/gobject-introspection.mk b/package/gobject-introspection/gobject-introspection.mk
> index f0c7fcd2ca..ad72af22a2 100644
> --- a/package/gobject-introspection/gobject-introspection.mk
> +++ b/package/gobject-introspection/gobject-introspection.mk
> @@ -15,7 +15,6 @@ GOBJECT_INTROSPECTION_LICENSE_FILES = COPYING.LGPL COPYING.GPL giscanner/scanner
>  GOBJECT_INTROSPECTION_DEPENDENCIES = \
>  	host-autoconf-archive \
>  	host-gobject-introspection \
> -	host-prelink-cross \
>  	host-qemu \
>  	libffi \
>  	libglib2 \
> @@ -78,6 +77,8 @@ define GOBJECT_INTROSPECTION_INSTALL_PRE_WRAPPERS
>  
>  	$(INSTALL) -D -m 755 $(GOBJECT_INTROSPECTION_PKGDIR)/g-ir-scanner-lddwrapper.in \
>  		$(STAGING_DIR)/usr/bin/g-ir-scanner-lddwrapper
> +	$(SED) "s%@TARGET_OBJDUMP@%$(TARGET_OBJDUMP)%" \
> +		$(STAGING_DIR)/usr/bin/g-ir-scanner-lddwrapper
>  
>  	$(INSTALL) -D -m 755 $(GOBJECT_INTROSPECTION_PKGDIR)/g-ir-scanner-qemuwrapper.in \
>  		$(STAGING_DIR)/usr/bin/g-ir-scanner-qemuwrapper
> -- 
> 2.46.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

      parent reply	other threads:[~2024-08-30 22:23 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-25  9:25 [Buildroot] [PATCH] package/gobject-introspection: use objdump instead of prelink-cross Thomas Petazzoni via buildroot
2024-08-26 11:05 ` Fiona Klute via buildroot
2024-08-30 22:23 ` Yann E. MORIN [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZtJGb8msWCzUxiui@landeda \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@buildroot.org \
    --cc=fiona.klute@gmx.de \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.