On Wed, Apr 17, 2013 at 11:02:15AM +0200, Martin Jansa wrote: > On Tue, Apr 16, 2013 at 05:59:53PM -0700, Khem Raj wrote: > > > > On Apr 16, 2013, at 2:28 PM, Richard Purdie > > <[email protected]> wrote: > > > > > On Tue, 2013-04-16 at 14:30 +0200, Martin Jansa wrote: > > >> * with external toolchain I have different HOST_PREFIX and HOST_SYS > > >> AC_PATH_TOOL is using HOST_SYS as prefix and fails to find objcopy > > >> then it tries objcopy without prefix which is found on host, but > > >> that objcopy does not work for arm libs > > >> * with internal toolchain gperf is not prefixed with HOST_PREFIX, but > > >> fallback to "gperf" only finds the one in native sysroot first > > >> * based on > > >> http://lists.linuxtogo.org/pipermail/openembedded-core/2013-April/037985.html > > >> Khem suggested to export strings and gperf from bitbake.conf instead > > >> > > >> Signed-off-by: Martin Jansa <[email protected]> > > >> --- > > >> meta/conf/bitbake.conf | 2 ++ > > >> ...se-AC_CHECK_TOOL-for-objcopy-strings-and-.patch | 41 > > >> ++++++++++++++++++++++ > > >> meta/recipes-core/systemd/systemd_199.bb | 1 + > > >> 3 files changed, 44 insertions(+) > > >> create mode 100644 > > >> meta/recipes-core/systemd/systemd/0001-configure-use-AC_CHECK_TOOL-for-objcopy-strings-and-.patch > > >> > > >> diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf > > >> index cd5d61e..a84ae38 100644 > > >> --- a/meta/conf/bitbake.conf > > >> +++ b/meta/conf/bitbake.conf > > >> @@ -455,6 +455,8 @@ export RANLIB = "${HOST_PREFIX}ranlib" > > >> export STRIP = "${HOST_PREFIX}strip" > > >> export OBJCOPY = "${HOST_PREFIX}objcopy" > > >> export OBJDUMP = "${HOST_PREFIX}objdump" > > >> +export STRINGS = "${HOST_PREFIX}strings" > > >> +export GPERF = "${HOST_PREFIX}gperf" > > >> export NM = "${HOST_PREFIX}nm" > > >> PYTHON = "${@sys.executable}" > > > > > > At this point in the release cycle I'm not adding new global exports to > > > ever piece of software in the system. I appreciate in theory nothing bad > > > should happen however the reality is sometimes different :/. I'm taking > > > a *lot* of risks in including as many changes as I have, I don't want to > > > add this one too. > > > > > > I'm also not sure its a good idea in general to build up more exports in > > > bitbake.conf if we haven't yet needed them. > > > > > > > We can not be certain we did not need them autoconfed packages will default > > to one on host > > so it might be that many recipes have been wrongly using non-cross version > > of tools and succeeding > > the build. Problem is there in though. > > > > I think on master this patch should be considered as such > > > > > I'll take a version of this which does this in the systemd recipe. > > > > For dylan this seems ok > > I have patch moving exports to bitbake.conf in my local tree, I'll send > it for master after dylan is released.
It was good call to keep it local for systemd in dylan x86_64-oe-linux-gperf: No such file or directory in webkit-efl and kconfig-frontends | sh: 1: x86_64-oe-linux-gperf: not found | calling gperf failed: 32512 at /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/x86_64-oe-linux/webkit-efl/1.9.3+svnr120144-r2/src/Source/WebCore/make-hash-tools.pl line 36. x86_64-oe-linux-strings: No such file or directory in tcp-wrappers, interestingly in gcc call: | x86_64-oe-linux-gcc -m64 --sysroot=/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemux86-64 -DFACILITY=LOG_DAEMON -DHOSTS_ACCESS -DNETGROUP -DUSE_GETDOMAIN -DDAEMON_UMASK=022 -DREAL_DAEMON_DIR=\"/usr/sbin\" -DPROCESS_OPTIONS -DKILL_IP_OPTIONS -DSEVERITY=LOG_INFO -DRFC931_TIMEOUT=10 -DHOSTS_DENY=\"/etc/hosts.deny\" -DHOSTS_ALLOW=\"/etc/hosts.allow\" x86_64-oe-linux-strings -O2 -pipe -g -feliminate-unused-debug-types -DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len -o tcpd.o -c tcpd.c | x86_64-oe-linux-gcc: error: x86_64-oe-linux-strings: No such file or directory > > >> diff --git > > >> a/meta/recipes-core/systemd/systemd/0001-configure-use-AC_CHECK_TOOL-for-objcopy-strings-and-.patch > > >> > > >> b/meta/recipes-core/systemd/systemd/0001-configure-use-AC_CHECK_TOOL-for-objcopy-strings-and-.patch > > >> new file mode 100644 > > >> index 0000000..d847bbc > > >> --- /dev/null > > >> +++ > > >> b/meta/recipes-core/systemd/systemd/0001-configure-use-AC_CHECK_TOOL-for-objcopy-strings-and-.patch > > >> @@ -0,0 +1,41 @@ > > >> +From d6f92bcbbae9a577adb9588c7b2783a5d0bf343d Mon Sep 17 00:00:00 2001 > > >> +From: Martin Jansa <[email protected]> > > >> +Date: Tue, 16 Apr 2013 14:20:41 +0200 > > >> +Subject: [PATCH] configure: use AC_CHECK_TOOL for objcopy, strings and > > >> gperf > > >> + > > >> +* using AC_PATH_TOOL does not allow to override it from shell > > >> environment > > >> + which is useful when cross-compiling > > >> +* with external toolchain I have different HOST_PREFIX and HOST_SYS > > >> + AC_PATH_TOOL is using HOST_SYS as prefix and fails to find objcopy > > >> + which is available only as ${TARGET_PREFIX}objcopy then it tries > > >> + objcopy without prefix which is found on host, but that objcopy > > >> + does not work for !host (e.g. arm when building on x86) libs > > >> + > > >> +Signed-off-by: Martin Jansa <[email protected]> > > >> +Upstream-Status: Submitted > > >> +http://lists.freedesktop.org/archives/systemd-devel/2013-April/010468.html > > >> + > > >> +--- > > >> + configure.ac | 6 +++--- > > >> + 1 file changed, 3 insertions(+), 3 deletions(-) > > >> + > > >> +diff --git a/configure.ac b/configure.ac > > >> +index 33b0ca9..519f1a9 100644 > > >> +--- a/configure.ac > > >> ++++ b/configure.ac > > >> +@@ -86,9 +86,9 @@ GOBJECT_INTROSPECTION_CHECK([1.31.1]) > > >> + AM_CONDITIONAL([HAVE_INTROSPECTION], [false]) > > >> + enable_introspection=no]) > > >> + > > >> +-AC_PATH_TOOL(OBJCOPY, objcopy) > > >> +-AC_PATH_TOOL(STRINGS, strings) > > >> +-AC_PATH_TOOL(GPERF, gperf) > > >> ++AC_CHECK_TOOL(OBJCOPY, objcopy) > > >> ++AC_CHECK_TOOL(STRINGS, strings) > > >> ++AC_CHECK_TOOL(GPERF, gperf) > > >> + if test -z "$GPERF" ; then > > >> + AC_MSG_ERROR([*** gperf not found]) > > >> + fi > > >> +-- > > >> +1.8.1.5 > > >> + > > >> diff --git a/meta/recipes-core/systemd/systemd_199.bb > > >> b/meta/recipes-core/systemd/systemd_199.bb > > >> index d22df12..e8ad8f5 100644 > > >> --- a/meta/recipes-core/systemd/systemd_199.bb > > >> +++ b/meta/recipes-core/systemd/systemd_199.bb > > >> @@ -27,6 +27,7 @@ SRC_URI = > > >> "http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \ > > >> file://0002-readahead-chunk-on-spinning-media.patch \ > > >> file://0003-readahead-cleanups.patch \ > > >> > > >> file://0013-systemd-sysctl-Handle-missing-etc-sysctl.conf-proper.patch \ > > >> + > > >> file://0001-configure-use-AC_CHECK_TOOL-for-objcopy-strings-and-.patch \ > > >> file://199-firmware.patch \ > > >> file://init \ > > >> " > > > > > > > > > > > > _______________________________________________ > > > Openembedded-core mailing list > > > [email protected] > > > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core > > > > -- > Martin 'JaMa' Jansa jabber: [email protected] -- Martin 'JaMa' Jansa jabber: [email protected]
signature.asc
Description: Digital signature
_______________________________________________ Openembedded-core mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
