All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v3] package/systemd: fixup RPATH for more systemd host binaries
Date: Wed, 17 Jun 2020 22:39:16 +0200	[thread overview]
Message-ID: <20200617203916.GH2351@scaer> (raw)
In-Reply-To: <20200615222856.147762-1-nolange79@gmail.com>

Norbert, All,

On 2020-06-16 00:28 +0200, Norbert Lange spake thusly:
> All systemd binaries depend on libsystemd-shared and need their
> RPATH fixed. Use a glob to catch them all
> 
> Signed-off-by: Norbert Lange <nolange79@gmail.com>

Applied to master, with the following changes:

  - don't use 'set -e', use the more traditional '|| eixt 1'
  - don't cd into HOST_DIR/bin, but use $(addprefix ...)
  - use positive logic in the test
  - expand commit log

... which makes it more in-line with how we're doing similar tweaks in
other packages.

Thanks!

Regards,
Yann E. MORIN.

> ---
> v1->v2:
> -   dont ignore failure from patchelf
> v2->v3:
> -   change back to shell loop, the wildcard gets expanded before
>     the install step and is empty the first time
> -   add busctl
> ---
>  package/systemd/systemd.mk | 19 +++++++------------
>  1 file changed, 7 insertions(+), 12 deletions(-)
> 
> diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
> index 2cc71ee667..b04391da9e 100644
> --- a/package/systemd/systemd.mk
> +++ b/package/systemd/systemd.mk
> @@ -659,6 +659,8 @@ HOST_SYSTEMD_DEPENDENCIES = \
>  	host-libcap \
>  	host-gperf
>  
> +HOST_SYSTEMD_NINJA_ENV = DESTDIR=$(HOST_DIR)
> +
>  # Fix RPATH After installation
>  # * systemd provides a install_rpath instruction to meson because the binaries
>  #   need to link with libsystemd which is not in a standard path
> @@ -667,20 +669,13 @@ HOST_SYSTEMD_DEPENDENCIES = \
>  # * the original path had been tweaked by buildroot via LDFLAGS to add
>  #   $(HOST_DIR)/lib
>  # * thus re-tweak rpath after the installation for all binaries that need it
> -HOST_SYSTEMD_HOST_TOOLS = \
> -	systemd-analyze \
> -	systemd-machine-id-setup \
> -	systemd-mount \
> -	systemd-nspawn \
> -	systemctl \
> -	udevadm
> -
> -HOST_SYSTEMD_NINJA_ENV = DESTDIR=$(HOST_DIR)
> +HOST_SYSTEMD_HOST_TOOLS = busctl journalctl systemctl udevadm systemd-*
>  
>  define HOST_SYSTEMD_FIX_RPATH
> -	$(foreach f,$(HOST_SYSTEMD_HOST_TOOLS), \
> -		$(HOST_DIR)/bin/patchelf --set-rpath $(HOST_DIR)/lib:$(HOST_DIR)/lib/systemd $(HOST_DIR)/bin/$(f)
> -	)
> +	cd $(HOST_DIR)/bin && for f in $(HOST_SYSTEMD_HOST_TOOLS); do \
> +		set -e; \
> +		[ ! -x $$f ] || $(HOST_DIR)/bin/patchelf --set-rpath $(HOST_DIR)/lib:$(HOST_DIR)/lib/systemd $$f; \
> +	done
>  endef
>  HOST_SYSTEMD_POST_INSTALL_HOOKS += HOST_SYSTEMD_FIX_RPATH
>  
> -- 
> 2.27.0
> 

-- 
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2020-06-17 20:39 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-15 22:28 [Buildroot] [PATCH v3] package/systemd: fixup RPATH for more systemd host binaries Norbert Lange
2020-06-17 20:39 ` Yann E. MORIN [this message]
2020-07-15 19:49 ` Peter Korsgaard

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=20200617203916.GH2351@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /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.