From: Martin Jansa <martin.jansa@gmail.com>
To: openembedded-core@lists.openembedded.org
Cc: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Subject: [dizzy][PATCH] serf: fix 'ccache' builds
Date: Fri, 6 Mar 2015 00:03:28 +0100 [thread overview]
Message-ID: <1425596608-24197-1-git-send-email-Martin.Jansa@gmail.com> (raw)
From: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
'scons' cleans the environment which breaks ccache builds because
CCACHEDIR can point to an unexpected location:
| ccache arm-linux-gnueabi-gcc ... context.c
| ccache: failed to create .../serf/1.3.8-r0/.home/.ccache (No such file or directory)
Issue is described in
http://www.scons.org/wiki/ImportingEnvironmentSettings
and because 'bitbake' cleans environment we can pass it completely
instead of trying to enumerate needed env.
With the 'env.patch' the FULLCC variable is not needed anymore (which
would break when CC is 'ccache arm-...-gcc' and host ccache is used)
because the correct $PATH is available during scons build:
| sh: .../sysroots/x86_64-oe-linux/usr/bin/arm-linux-gnueabi/ccache: No such file or directory
| scons: *** [context.o] Error 127
Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
---
meta/recipes-support/serf/serf/env.patch | 28 ++++++++++++++++++++++++++++
meta/recipes-support/serf/serf_1.3.7.bb | 8 +++-----
2 files changed, 31 insertions(+), 5 deletions(-)
create mode 100644 meta/recipes-support/serf/serf/env.patch
diff --git a/meta/recipes-support/serf/serf/env.patch b/meta/recipes-support/serf/serf/env.patch
new file mode 100644
index 0000000..9d073e9
--- /dev/null
+++ b/meta/recipes-support/serf/serf/env.patch
@@ -0,0 +1,28 @@
+'scons' cleans the environment which breaks ccache builds because
+CCACHEDIR can point to an unexpected location:
+
+| ccache arm-linux-gnueabi-gcc ... context.c
+| ccache: failed to create .../serf/1.3.6-r0/.home/.ccache (No such file or directory)
+
+Issue is described in
+
+ http://www.scons.org/wiki/ImportingEnvironmentSettings
+
+and because 'bitbake' cleans environment we can pass it completely
+instead of trying to enumerate needed env.
+
+Upstream-Status: Inappropriate
+
+
+Index: serf-1.3.6/SConstruct
+===================================================================
+--- serf-1.3.6.orig/SConstruct
++++ serf-1.3.6/SConstruct
+@@ -149,6 +149,7 @@ if sys.platform == 'win32':
+ env = Environment(variables=opts,
+ tools=('default', 'textfile',),
+ CPPPATH=['.', ],
++ ENV = os.environ,
+ )
+
+ env.Append(BUILDERS = {
diff --git a/meta/recipes-support/serf/serf_1.3.7.bb b/meta/recipes-support/serf/serf_1.3.7.bb
index 5230ef7..b87a04a 100644
--- a/meta/recipes-support/serf/serf_1.3.7.bb
+++ b/meta/recipes-support/serf/serf_1.3.7.bb
@@ -1,6 +1,7 @@
SRC_URI = "http://serf.googlecode.com/svn/src_releases/serf-1.3.7.tar.bz2 \
- file://norpath.patch"
+ file://norpath.patch \
+ file://env.patch"
SRC_URI[md5sum] = "0a6fa745df4517dd8f79c75c538919bc"
SRC_URI[sha256sum] = "ecccb74e665e6ea7539271e126a21d0f7eeddfeaa8ce090adb3aec6682f9f0ae"
@@ -9,12 +10,9 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
DEPENDS = "python-scons-native openssl apr apr-util util-linux expat"
-FULLCC = "${STAGING_BINDIR_TOOLCHAIN}/${CC}"
-FULLCC_class-native = "${CC}"
-
do_compile() {
${STAGING_BINDIR_NATIVE}/scons ${PARALLEL_MAKE} PREFIX=${prefix} \
- CC="${FULLCC}" \
+ CC="${CC}" \
APR=`which apr-1-config` APU=`which apu-1-config` \
CFLAGS="${CFLAGS}" LINKFLAGS="${LDFLAGS}" \
OPENSSL="${STAGING_EXECPREFIXDIR}"
--
2.3.1
next reply other threads:[~2015-03-05 23:03 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-05 23:03 Martin Jansa [this message]
2015-03-05 23:07 ` [dizzy][PATCH] serf: fix 'ccache' builds Martin Jansa
2015-03-07 4:13 ` akuster808
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=1425596608-24197-1-git-send-email-Martin.Jansa@gmail.com \
--to=martin.jansa@gmail.com \
--cc=enrico.scholz@sigma-chemnitz.de \
--cc=openembedded-core@lists.openembedded.org \
/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