All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Egorenkov <egorenar-dev@posteo.net>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v4 1/1] package/multipath-tools: new package
Date: Sat, 05 Sep 2020 22:03:24 +0200	[thread overview]
Message-ID: <87k0x8uh2r.fsf@posteo.net> (raw)
In-Reply-To: <20200905215837.1851ab18@windsurf.home>

Thomas Petazzoni <thomas.petazzoni@bootlin.com> writes:

>
> I get:
>
> uxsock.c:20:10: fatal error: systemd/sd-daemon.h: No such file or directory
>  #include <systemd/sd-daemon.h>
>           ^~~~~~~~~~~~~~~~~~~~~
> compilation terminated.
>
> This is due to how SYSTEMD is detected:
>
> ifndef SYSTEMD
>         ifeq ($(shell pkg-config --modversion libsystemd >/dev/null 2>&1 && echo 1), 1)
>                 SYSTEMD = $(shell pkg-config --modversion libsystemd)
>         else
>                 ifeq ($(shell systemctl --version >/dev/null 2>&1 && echo 1), 1)
>                         SYSTEMD = $(shell systemctl --version 2> /dev/null | \
>                                 sed -n 's/systemd \([0-9]*\).*/\1/p')
>                 endif
>         endif
> endif
>
> Indeed, if systemd is found using pkg-config, then it falls back to
> using systemctl.. and since my Fedora uses systemd, the multipath-tools
> build system thinks it should enable systemd support.. but I don't have
> systemd enabled in my Buildroot configuration.
>
> And the problem is that there is no way to explicitly disable SYSTEMD
> support...
>
> Also, there are two other things that we should pass explicitly. If you
> look at the Makefile, it does this:
>
> ifndef LIB
>         ifeq ($(shell test -d /lib64 && echo 1),1)
>                 LIB=lib64
>         else
>                 LIB=lib
>         endif
> endif
>
> ifndef RUN
>         ifeq ($(shell test -L /var/run -o ! -d /var/run && echo 1),1)
>                 RUN=run
>         else
>                 RUN=var/run
>         endif
> endif
>
> So for LIB and RUN, it looks at what exists on the build machine...
> which doesn't make sense when cross-compiling. So I think we want t
> pass LIB=lib and RUN=run explicitly.
>
> Could you have a look at the systemd ? Just build a Buildroot
> configuration without systemd, on a build machine that uses systemd,
> and you'll get the failure.


No problem, i'll look into it. I admit i have a machine w/o systemd :)
Best to setup fedora Docker container.

Thanks for feedback
Regards
Alex

  reply	other threads:[~2020-09-05 20:03 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-05 19:20 [Buildroot] [PATCH v4 1/1] package/multipath-tools: new package Alexander Egorenkov
2020-09-05 19:58 ` Thomas Petazzoni
2020-09-05 20:03   ` Alexander Egorenkov [this message]
2020-09-05 21:10   ` Alexander Egorenkov
2020-09-06  9:31   ` Alexander Egorenkov

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=87k0x8uh2r.fsf@posteo.net \
    --to=egorenar-dev@posteo.net \
    --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.