From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/1] open-plc-utils: fix build with static musl
Date: Thu, 11 Oct 2018 10:12:21 +0200 [thread overview]
Message-ID: <20181011101221.47d280d7@windsurf> (raw)
In-Reply-To: <20181009192102.13223-1-fontaine.fabrice@gmail.com>
Hello Fabrice,
On Tue, 9 Oct 2018 21:21:02 +0200, Fabrice Fontaine wrote:
> Pass -static to EXTRA_LDFLAGS to fix following issue:
> /home/buildroot/autobuild/run/instance-3/output/build/host-gcc-final-7.3.0/build/arm-buildroot-linux-musleabihf/libgcc/../../../libgcc/config/arm/lib1funcs.S:1545: undefined reference to `raise'
>
> Move EXTRA_CFLAGS and this new variable to OPEN_PLC_UTILS_MAKE_OPTS for
> readability
>
> Fixes:
> - http://autobuild.buildroot.org/results/67bc5e7ac8ae1c49c035b022a394d2f746705cf2
>
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Thanks for investigating this, however, I believe we need a better fix.
> +OPEN_PLC_UTILS_MAKE_OPTS = EXTRA_CFLAGS="-D__UCLIBC__"
> +
> +ifeq ($(BR2_STATIC_LIBS),y)
> +OPEN_PLC_UTILS_MAKE_OPTS += EXTRA_LDFLAGS=-static
> +endif
The crux of the matter is that open-plc-utils defines its own
CFLAGS/LDFLAGS/CXXFLAGS, without obeying to the ones passed in the
environment. -static is already in TARGET_LDFLAGS when
BR2_STATIC_LIBS=y, so there's no need to repeat this condition.
So, I would suggest to do this instead:
# blabla keep comment about __UCLIBC__
OPEN_PLC_UTILS_MAKE_OPTS = \
EXTRA_CFLAGS="$(TARGET_CFLAGS) -D__UCLIBC__" \
EXTRA_CXXFLAGS="$(TARGET_CXXFLAGS)" \
EXTRA_LDFLAGS="$(TARGET_LDFLAGS)"
This should fix the static linking issue, but also more generally
ensure that our flags are taken into account during the build.
Could you check if this works better, and if it does, send an updated
version of the patch?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
prev parent reply other threads:[~2018-10-11 8:12 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-09 19:21 [Buildroot] [PATCH 1/1] open-plc-utils: fix build with static musl Fabrice Fontaine
2018-10-11 8:12 ` Thomas Petazzoni [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=20181011101221.47d280d7@windsurf \
--to=thomas.petazzoni@bootlin.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox