From: Arnout Vandecappelle <arnout@mind.be>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] Add support for eglibc-2.17 multiarch layout, from Linaro 2013.07+
Date: Tue, 17 Sep 2013 08:23:48 +0200 [thread overview]
Message-ID: <5237F574.9070700@mind.be> (raw)
In-Reply-To: <1379353155-26459-1-git-send-email-greg.beresford@zbdsolutions.com>
On 16/09/13 19:39, Greg Beresford wrote:
> From: Henry Luis <henry@echelon.com>
>
> Arch-specific libraries, including libc.so.6, are expected to be in a
> subdirectory of /lib (e.g. /lib/arm-linux-gnueabihf). This patch
> changes copy_toolchain_lib_root() in helper.mk to preserve the
> toolchain sysroot's lib directory structure, except for SUPPORT_LIB_DIR
> which are still copied directly under DESTDIR.
>
> Signed-off-by: Greg Beresford <greg.beresford@zbdsolutions.com>
> ---
> I've copied and reformatted Henry Luis' patch from the attachment to
> https://bugs.busybox.net/show_bug.cgi?id=6452. I've given it a test
> with Linaro ARM 2013.08 and CodeSourcery ARM 2013.05 toolchains and
> it seems to work ok. It does result in a non-hf ld-linux.so being
> copied in addition to the correct one on the linaro toolchain, but
> the target still works. (I think that this is because buildroot checks
> for both versions, and copies everything it successfully finds.)
>
> Also, this is my first submission to anything using git. I've tried to
> follow the instructions in the manual, so I hope everything is in order!
The way you did it is perfect! I'm glad to see that documentation works :-)
>
> Regards
> Greg
>
> toolchain/helpers.mk | 24 ++++++++++++++++--------
> 1 file changed, 16 insertions(+), 8 deletions(-)
>
> diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk
> index 0e270ee..b2b1b2f 100644
> --- a/toolchain/helpers.mk
> +++ b/toolchain/helpers.mk
> @@ -50,11 +50,12 @@ copy_toolchain_lib_root = \
> LIB="$(strip $4)"; \
> DESTDIR="$(strip $5)" ; \
> \
> + pushd $${ARCH_SYSROOT_DIR} > /dev/null; \
I don't see why this pushd change is needed, and I think it makes
things even less clear.
Regards,
Arnout
> for dir in \
> - $${ARCH_SYSROOT_DIR}/$${ARCH_LIB_DIR}/$(TOOLCHAIN_EXTERNAL_PREFIX) \
> - $${ARCH_SYSROOT_DIR}/usr/$(TOOLCHAIN_EXTERNAL_PREFIX)/$${ARCH_LIB_DIR} \
> - $${ARCH_SYSROOT_DIR}/$${ARCH_LIB_DIR} \
> - $${ARCH_SYSROOT_DIR}/usr/$${ARCH_LIB_DIR} \
> + ./$${ARCH_LIB_DIR}/$(TOOLCHAIN_EXTERNAL_PREFIX) \
> + ./usr/$(TOOLCHAIN_EXTERNAL_PREFIX)/$${ARCH_LIB_DIR} \
> + ./$${ARCH_LIB_DIR} \
> + ./usr/$${ARCH_LIB_DIR} \
> $${SUPPORT_LIB_DIR} ; do \
> LIBSPATH=`find $${dir} -maxdepth 1 -name "$${LIB}.*" 2>/dev/null` ; \
> if test -n "$${LIBSPATH}" ; then \
> @@ -66,18 +67,25 @@ copy_toolchain_lib_root = \
> LIBDIR=`dirname $${LIBPATH}` ; \
> while test \! -z "$${LIBNAME}" ; do \
> LIBPATH=$${LIBDIR}/$${LIBNAME} ; \
> - rm -fr $(TARGET_DIR)/$${DESTDIR}/$${LIBNAME}; \
> - mkdir -p $(TARGET_DIR)/$${DESTDIR}; \
> + if [ "$${dir}" = "$${SUPPORT_LIB_DIR}" ]; then \
> + DDIR=$${DESTDIR} ; \
> + else \
> + DDIR=$${LIBDIR} ; \
> + fi; \
> + rm -fr $(TARGET_DIR)/$${DDIR}/$${LIBNAME}; \
> + mkdir -p $(TARGET_DIR)/$${DDIR}; \
> if test -h $${LIBPATH} ; then \
> - cp -d $${LIBPATH} $(TARGET_DIR)/$${DESTDIR}/; \
> + cp -d $${LIBPATH} $(TARGET_DIR)/$${DDIR}/; \
> elif test -f $${LIBPATH}; then \
> - $(INSTALL) -D -m0755 $${LIBPATH} $(TARGET_DIR)/$${DESTDIR}/$${LIBNAME}; \
> + $(INSTALL) -D -m0755 $${LIBPATH} $(TARGET_DIR)/$${DDIR}/$${LIBNAME}; \
> else \
> + popd > /dev/null; \
> exit -1; \
> fi; \
> LIBNAME="`readlink $${LIBPATH}`"; \
> done; \
> done; \
> + popd > /dev/null; \
> \
> echo -n
>
>
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
next prev parent reply other threads:[~2013-09-17 6:23 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-16 17:39 [Buildroot] [PATCH] Add support for eglibc-2.17 multiarch layout, from Linaro 2013.07+ Greg Beresford
2013-09-17 6:23 ` Arnout Vandecappelle [this message]
2013-09-17 9:44 ` [Buildroot] [PATCH v2] " Greg Beresford
2013-09-17 17:01 ` Frank Hunleth
2013-09-17 18:50 ` Thomas Petazzoni
2013-09-27 15:06 ` Frank Hunleth
2013-09-18 9:32 ` Greg Beresford
2013-09-18 12:35 ` Frank Hunleth
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=5237F574.9070700@mind.be \
--to=arnout@mind.be \
--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.