Share gcc work directories
v4 cover Share gcc work directories
Changes of V4:
* Change the definition of GLIBC_DYNAMIC_LINKER as Richard suggested.
e.g., the entries in the files that look like:
#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
become
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"
and we define SYSTEMLIBS_DIR in defaults.h.
NOTE, the round brackets:
#define GLIBC_DYNAMIC_LINKER64 (SYSTEMLIBS_DIR "/ld-linux-x86-64.so.2")
doesn't work in in the following define:
#define LINUX_DYNAMIC_LINKER \
CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
so use:
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"* Compare to V3, reduce two patches which are for gcc-crosssdk.inc and gcc-cross-canadian which are not needed any more.
* Fix the conflicts(gcc-4.6.0 -> gcc-4.6, and the ${BRANCH})
* Both tested 4.5.1 and 4.6:
$ bitbake meta-toolchain core-image-sato $ runqemu qemurm
Also unpack the sdk to /opt and test to make sure the toolchain works well.
The following changes since commit a1f79a7896b6411669b3ccada6204d2695e80fc5:
runqueue.py: Add umask task control (2011-06-24 12:23:12 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib robert/share_gcc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/share_gcc
Robert Yang (4):
bitbake: share source directory
Share gcc work directories
gcc-4.5.1: share work directories
gcc-4.6: share work directories
bitbake/lib/bb/build.py | 4 +- bitbake/lib/bb/cache.py | 3 + bitbake/lib/bb/runqueue.py | 10 +++ meta/recipes-devtools/gcc/gcc-4.5.1.inc | 1 + .../gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch | 57 ++++++++++++++ meta/recipes-devtools/gcc/gcc-4.6.inc | 5 +- .../gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch | 80 ++++++++++++++++++++ meta/recipes-devtools/gcc/gcc-common.inc | 32 +++++++- meta/recipes-devtools/gcc/gcc-configure-common.inc | 48 +++++++----- meta/recipes-devtools/gcc/gcc-configure-cross.inc | 4 +- meta/recipes-devtools/gcc/gcc-crosssdk.inc | 6 -- 11 files changed, 218 insertions(+), 32 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch create mode 100644 meta/recipes-devtools/gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch
PATCH v4 1/4 bitbake: share source directory
This patch is derived from Richard, it is a quick proof of concept to show how source code could be shared between recipes which use ${B} to have a separate build directory compared to source directory ${S}.
--- bitbake/lib/bb/build.py | 4 ++-- bitbake/lib/bb/cache.py | 3 +++ bitbake/lib/bb/runqueue.py | 10 ++++++++++ 3 files changed, 15 insertions(+), 2 deletions(-)
bitbake/lib/bb/build.py +2 -2
@@ -383,10 +383,10 @@ def stamp_internal(taskname, d, file_name): taskflagname = taskname.replace("_setscene", "") if file_name: - stamp = d.stamp[file_name] + stamp = d.stamp_base[file_name].get(taskflagname) or d.stamp[file_name] extrainfo = d.stamp_extrainfo[file_name].get(taskflagname) or "" else: - stamp = d.getVar('STAMP', True) + stamp = d.getVarFlag(taskflagname, 'stamp-base', True) or d.getVar('STAMP', True) file_name = d.getVar('BB_FILENAME', True) extrainfo = d.getVarFlag(taskflagname, 'stamp-extra-info', True) or ""
bitbake/lib/bb/cache.py +3 -0
@@ -124,6 +124,7 @@ class CoreRecipeInfo(RecipeInfoCommon): self.broken = self.getvar('BROKEN', metadata) self.not_world = self.getvar('EXCLUDE_FROM_WORLD', metadata) self.stamp = self.getvar('STAMP', metadata) + self.stamp_base = self.flaglist('stamp-base', self.tasks, metadata) self.stamp_extrainfo = self.flaglist('stamp-extra-info', self.tasks, metadata) self.packages_dynamic = self.listvar('PACKAGES_DYNAMIC', metadata) self.depends = self.depvar('DEPENDS', metadata)
@@ -151,6 +152,7 @@ class CoreRecipeInfo(RecipeInfoCommon): cachedata.pkg_dp = {} cachedata.stamp = {} + cachedata.stamp_base = {} cachedata.stamp_extrainfo = {} cachedata.fn_provides = {} cachedata.pn_provides = defaultdict(list)
@@ -183,6 +185,7 @@ class CoreRecipeInfo(RecipeInfoCommon): cachedata.pkg_pepvpr[fn] = (self.pe, self.pv, self.pr) cachedata.pkg_dp[fn] = self.defaultpref cachedata.stamp[fn] = self.stamp + cachedata.stamp_base[fn] = self.stamp_base cachedata.stamp_extrainfo[fn] = self.stamp_extrainfo provides = [self.pn]
bitbake/lib/bb/runqueue.py +10 -0
@@ -105,6 +105,11 @@ class RunQueueScheduler(object): if self.rq.runq_running[taskid] == 1: continue if self.rq.runq_buildable[taskid] == 1: + fn = self.rqdata.taskData.fn_index[self.rqdata.runq_fnid[taskid]] + taskname = self.rqdata.runq_task[taskid] + stamp = bb.build.stampfile(taskname, self.rqdata.dataCache, fn) + if stamp in self.rq.build_stamps.values(): + continue return taskid def next(self):
@@ -1009,6 +1014,7 @@ class RunQueueExecute: self.runq_complete = [] self.build_pids = {} self.build_pipes = {} + self.build_stamps = {} self.failed_fnids = [] def runqueue_process_waitpid(self):
@@ -1023,6 +1029,9 @@ class RunQueueExecute: del self.build_pids[result[0]] self.build_pipes[result[0]].close() del self.build_pipes[result[0]] + # self.build_stamps[result[0]] may not exist when use shared work directory. + if result[0] in self.build_stamps.keys(): + del self.build_stamps[result[0]] if result[1] != 0: self.task_fail(task, result[1]>>8) else:
@@ -1330,6 +1339,7 @@ class RunQueueExecuteTasks(RunQueueExecute): self.build_pids[pid] = task self.build_pipes[pid] = runQueuePipe(pipein, pipeout, self.cfgData) + self.build_stamps[pid] = bb.build.stampfile(taskname, self.rqdata.dataCache, fn) self.runq_running[task] = 1 self.stats.taskActive() if self.stats.active < self.number_tasks:
Signature · 1 line
1.7.1
Re: [PATCH 1/4 V4] bitbake: share source directory
Quoted 10 lines · Robert Yang
This patch is derived from Richard, it is a quick proof of concept to show how source code could be shared between recipes which use ${B} to have a separate build directory compared to source directory ${S}.
Signed-off-by Robert Yang <[email protected]>--- bitbake/lib/bb/build.py | 4 ++-- bitbake/lib/bb/cache.py | 3 +++ bitbake/lib/bb/runqueue.py | 10 ++++++++++ 3 files changed, 15 insertions(+), 2 deletions(-)
Since this is a bitbake patch it should really have gone to the bitbake-devel list. Its been posted around enough times for review though so I've merged it into bitbake. I did massively reword the commit message though to reflect what the changes mean from a bitbake perspective.
Cheers,
Richard
PATCH v4 2/4 Share gcc work directories
In reply to Robert YangThis patched is derived from Richard, make gcc use the shared source directory during the different building:
1) Make gcc-cross, gcc-cross-initial, gcc-cross-intermediate and gcc-runtime share the same source directory.
2) The source directory is ${TMPDIR}/work-shared/gcc-${PV}, for example:
tmp/work-shared/gcc-4.5.1
3) Fix do_clean to clean the shared source directory and stamps
4) gcc uses sed and creates config files against ${S} which means the directory should not be shared. Change the way to make it work:
* The configure option --with-headers=${STAGING_DIR_TARGET}${SYSTEMHEADERS} can replace the sed command, see the code in configure:
if test "x$with_headers" != x; then
glibc_header_dir=$with_headers
This has the same effect as the sed command:
sed -i 's:^\([ ]*\)glibc_header_dir=\"${with_build_sysroot}/usr/include\": ...
so add the --with-headers=${STAGING_DIR_TARGET}${SYSTEMHEADERS} to gcc-configure-cross.inc( not add to gcc-configure-common.inc, since not all the gcc building need this, the one which has its own do_configure doesn't need it).
* Move t-oe from ${T} to ${B}/gcc, so that the patched Makefile.in can read it easily, please see the commit for gcc-4.5.1 and gcc-4.6.0.
* Use the defaults.h in ${B}/gcc instead of ${S}/gcc, and the patched configure.ac(configure) can read it correctly, please see the commit for gcc-4.5.1 and gcc-4.6.0.
* The gcc-crosssdk.inc used sed to edit ${S}/config/*/linux*.h
to change the GLIBC_DYNAMIC_LINKER, which made the source incompatible. To make the source compatible:
- Use:
sed -i ${S}/gcc/config/*/linux*.h -e \
's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#'
so entries in the files that look like:
#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" would become
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2" and we define SYSTEMLIBS_DIR in defaults.h.
NOTE:
#define GLIBC_DYNAMIC_LINKER64 (SYSTEMLIBS_DIR "/ld-linux-x86-64.so.2") doesn't work in in the following define:
#define LINUX_DYNAMIC_LINKER \
CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
so use #define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"
5) Add do_configure_prepend to gcc-configure-common.inc and remove the one in gcc-crosssdk.inc, this makes it easy to share the source, otherwise we need do extra changes in gcc-configure-sdk.inc.
6) Use "cat > file <_EOF" to replace the "echo > file"
--- meta/recipes-devtools/gcc/gcc-common.inc | 32 ++++++++++++- meta/recipes-devtools/gcc/gcc-configure-common.inc | 48 +++++++++++-------- meta/recipes-devtools/gcc/gcc-configure-cross.inc | 4 +- meta/recipes-devtools/gcc/gcc-crosssdk.inc | 6 --- 4 files changed, 61 insertions(+), 29 deletions(-)
meta/recipes-devtools/gcc/gcc-common.inc +30 -2
@@ -37,10 +37,38 @@ ${GNU_MIRROR}/gcc/ http://gcc.get-software.com/releases/ \n \ # gcclibdir = "${libdir}/gcc" BINV = "${PV}" -S = "${WORKDIR}/gcc-${PV}" -B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" +#S = "${WORKDIR}/gcc-${PV}" +S = "${TMPDIR}/work-shared/gcc-${PV}/gcc-${PV}" +B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}" + +# SS means Shared Stamps directory +SS = "${TMPDIR}/stamps/work-shared/gcc-${PV}" +do_fetch[stamp-base] = "${SS}" +do_unpack[stamp-base] = "${SS}" +do_patch[stamp-base] = "${SS}" + +# SW means Shared Work directory +SW = "${TMPDIR}/work-shared/gcc-${PV}" +WORKDIR_task-unpack = "${SW}" +WORKDIR_task-patch = "${SW}" target_includedir ?= "${includedir}" target_libdir ?= "${libdir}" target_base_libdir ?= "${base_libdir}" target_prefix ?= "${prefix}" + +CLEANFUNCS += "workshared_clean" +# The do_clean should be exclusive since share ${S} +do_clean[lockfiles] = "${TMPDIR}/stamps/work-shared/gcc-${PV}.clean.lock" + +python workshared_clean () { + """clear the source directory""" + dir = bb.data.expand("${SW}", d) + bb.note("Removing " + dir) + oe.path.remove(dir) + + """clear the the stamps in work-shared""" + dir = "%s.*" % bb.data.expand(d.getVarFlag('do_fetch', 'stamp-base', True), d) + bb.note("Removing " + dir) + oe.path.remove(dir) +}
meta/recipes-devtools/gcc/gcc-configure-common.inc +28 -20
61 lines not on this page · raw message
meta/recipes-devtools/gcc/gcc-configure-cross.inc +3 -1
@@ -2,7 +2,9 @@ require gcc-configure-common.inc USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}' -EXTRA_OECONF += " --enable-poison-system-directories " +EXTRA_OECONF += " --enable-poison-system-directories \ + --with-headers=${STAGING_DIR_TARGET}${SYSTEMHEADERS} \ + " EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR_TARGET}${target_exec_prefix} \ --with-gxx-include-dir=${target_includedir}/c++ \
meta/recipes-devtools/gcc/gcc-crosssdk.inc +0 -6
@@ -8,9 +8,3 @@ GCCMULTILIB = "--disable-multilib" DEPENDS = "virtual/${TARGET_PREFIX}binutils-crosssdk virtual/${TARGET_PREFIX}libc-for-gcc-nativesdk gettext-native" PROVIDES = "virtual/${TARGET_PREFIX}gcc-crosssdk virtual/${TARGET_PREFIX}g++-crosssdk" - -do_configure_prepend () { - # Change the default dynamic linker path to the one in the SDK - sed -i ${S}/gcc/config/*/linux*.h -e 's#\(GLIBC_DYNAMIC_LINKER.*\)/lib/#\1${SYSTEMLIBS}#' - sed -i ${S}/gcc/config/*/linux*.h -e 's#\(GLIBC_DYNAMIC_LINKER.*\)/lib64/#\1${SYSTEMLIBS}#' -}
Signature · 1 line
1.7.1
PATCH v4 3/4 gcc-4.5.1: share work directories
In reply to Robert YangFix configure and Makefile to read the defaults.h and t-oe from ${B}, so that the ${S} can be shared.
--- meta/recipes-devtools/gcc/gcc-4.5.1.inc | 1 + .../gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch | 57 ++++++++++++++++++++ 2 files changed, 58 insertions(+), 0 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch
meta/recipes-devtools/gcc/gcc-4.5.1.inc +1 -0
@@ -57,6 +57,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ file://gcc-poison-parameters.patch \ file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \ file://COLLECT_GCC_OPTIONS.patch \ + file://use-defaults.h-and-t-oe-in-B.patch \ " SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "
meta/recipes-devtools/gcc/gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch new file +57 -0
57 lines not on this page · raw message
Signature · 1 line
1.7.1
PATCH v4 4/4 gcc-4.6: share work directories
In reply to Robert Yang* Fix configure and Makefile to read the defaults.h and t-oe from ${B}, so that the ${S} can be shared.
* Change ${S} to the shared source directory.
--- meta/recipes-devtools/gcc/gcc-4.6.inc | 5 +- .../gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch | 80 ++++++++++++++++++++ 2 files changed, 84 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch
meta/recipes-devtools/gcc/gcc-4.6.inc +4 -1
@@ -66,11 +66,14 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH};proto=http \ file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \ file://COLLECT_GCC_OPTIONS.patch \ file://volatile_access_backport.patch \ + file://use-defaults.h-and-t-oe-in-B.patch \ " SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 " -S = "${WORKDIR}/${BRANCH}" +#S = "${WORKDIR}/${BRANCH}" +S = "${TMPDIR}/work-shared/gcc-${PV}/${BRANCH}" +B = "${WORKDIR}/${BRANCH}/build.${HOST_SYS}.${TARGET_SYS}" # Language Overrides FORTRAN = ""
meta/recipes-devtools/gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch new file +80 -0
80 lines not on this page · raw message
Signature · 1 line
1.7.1
Hi Robert,
I just wanted to let you know that these look good, thanks.
I need to get the changes into bitbake for this first (along with the umask and multilib changes), let that version sit for a vew days, them bump the version requirement of OE-Core so we can then merge these patches.
They will therefore merge and I'm happy with them but it will be a few more days before that happens. The bitbake piece is now merged already.
Cheers,
Richard
Quoted 70 lines · Robert Yang
Changes of V4:
* Change the definition of
GLIBC_DYNAMIC_LINKERas Richard suggested.e.g., the entries in the files that look like:
#defineGLIBC_DYNAMIC_LINKER64"/lib64/ld-linux-x86-64.so.2"become
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"and we define
SYSTEMLIBS_DIRindefaults.h.NOTE, the round brackets:
#defineGLIBC_DYNAMIC_LINKER64(SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2")doesn't work in in the following define:
#define LINUX_DYNAMIC_LINKER \ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) so use: #define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"* Compare to V3, reduce two patches which are for gcc-crosssdk.inc and gcc-cross-canadian which are not needed any more.
* Fix the
conflicts(gcc-4.6.0 -> gcc-4.6, and the ${BRANCH})* Both tested 4.5.1 and 4.6:
$ bitbake meta-toolchain core-image-sato $ runqemu qemurmAlso unpack the sdk to /opt and test to make sure the toolchain works well.
The following changes since commit
a1f79a7896b6411669b3ccada6204d2695e80fc5:
runqueue.py: Add umask task control (2011-06-24 12:23:12 +0100)are available in the git repository at:
git://git.pokylinux.org/poky-contribrobert/share_gcc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/share_gccRobert Yang (4):
bitbake: share source directory
Share gcc work directories
gcc-4.5.1: share work directories
gcc-4.6: share work directoriesbitbake/lib/bb/build.py | 4 +- bitbake/lib/bb/cache.py | 3 + bitbake/lib/bb/runqueue.py | 10 +++ meta/recipes-devtools/gcc/gcc-4.5.1.inc | 1 + .../gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch | 57 ++++++++++++++ meta/recipes-devtools/gcc/gcc-4.6.inc | 5 +- .../gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch | 80 ++++++++++++++++++++ meta/recipes-devtools/gcc/gcc-common.inc | 32 +++++++- meta/recipes-devtools/gcc/gcc-configure-common.inc | 48 +++++++----- meta/recipes-devtools/gcc/gcc-configure-cross.inc | 4 +- meta/recipes-devtools/gcc/gcc-crosssdk.inc | 6 -- 11 files changed, 218 insertions(+), 32 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch create mode 100644 meta/recipes-devtools/gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Saul Wold
AppliedQuoted 62 lines · Robert Yang
Changes of V4:
* Change the definition of
GLIBC_DYNAMIC_LINKERas Richard suggested.e.g., the entries in the files that look like:
#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" become #define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2" and we define SYSTEMLIBS_DIR in defaults.h. NOTE, the round brackets: #define GLIBC_DYNAMIC_LINKER64 (SYSTEMLIBS_DIR "/ld-linux-x86-64.so.2") doesn't work in in the following define: #define LINUX_DYNAMIC_LINKER \ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) so use: #define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"* Compare to V3, reduce two patches which are for gcc-crosssdk.inc and gcc-cross-canadian which are not needed any more.
* Fix the
conflicts(gcc-4.6.0 -> gcc-4.6, and the ${BRANCH})* Both tested 4.5.1 and 4.6:
$ bitbake meta-toolchain core-image-sato $ runqemu qemurmAlso unpack the sdk to /opt and test to make sure the toolchain works well.
The following changes since commit
a1f79a7896b6411669b3ccada6204d2695e80fc5:runqueue.py: Add umask task control (2011-06-24 12:23:12 +0100)are available in the git repository at:
git://git.pokylinux.org/poky-contribrobert/share_gcc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/share_gccRobert Yang (4):
bitbake: share source directory
Share gcc work directories
gcc-4.5.1: share work directories
gcc-4.6: share work directoriesbitbake/lib/bb/build.py | 4 +- bitbake/lib/bb/cache.py | 3 + bitbake/lib/bb/runqueue.py | 10 +++ meta/recipes-devtools/gcc/gcc-4.5.1.inc | 1 + .../gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch | 57 ++++++++++++++ meta/recipes-devtools/gcc/gcc-4.6.inc | 5 +- .../gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch | 80 ++++++++++++++++++++ meta/recipes-devtools/gcc/gcc-common.inc | 32 +++++++- meta/recipes-devtools/gcc/gcc-configure-common.inc | 48 +++++++----- meta/recipes-devtools/gcc/gcc-configure-cross.inc | 4 +- meta/recipes-devtools/gcc/gcc-crosssdk.inc | 6 -- 11 files changed, 218 insertions(+), 32 deletions(-)
Quoted 9 lines
create mode 100644
meta/recipes-devtools/gcc/gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patchcreate mode 100644meta/recipes-devtools/gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Merged into OE-Core
Thanks
Sau!
It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
Op 1 jul 2011, om 01:26 heeft Saul Wold het volgende geschreven:
Quoted 67 lines · Robert Yang
Quoted 66 lines
Changes of V4:
* Change the definition of
GLIBC_DYNAMIC_LINKERas Richard suggested.e.g., the entries in the files that look like:
#defineGLIBC_DYNAMIC_LINKER64"/lib64/ld-linux-x86-64.so.2"become
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"and we define
SYSTEMLIBS_DIRindefaults.h.NOTE, the round brackets:
#defineGLIBC_DYNAMIC_LINKER64(SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2")doesn't work in in the following define:
#define LINUX_DYNAMIC_LINKER \ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) so use: #define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"* Compare to V3, reduce two patches which are for gcc-crosssdk.inc and gcc-cross-canadian which are not needed any more.
* Fix the
conflicts(gcc-4.6.0 -> gcc-4.6, and the ${BRANCH})* Both tested 4.5.1 and 4.6:
$ bitbake meta-toolchain core-image-sato $ runqemu qemurmAlso unpack the sdk to /opt and test to make sure the toolchain works well.
The following changes since commit
a1f79a7896b6411669b3ccada6204d2695e80fc5:
runqueue.py: Add umask task control (2011-06-24 12:23:12 +0100)are available in the git repository at:
git://git.pokylinux.org/poky-contribrobert/share_gcc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/share_gccRobert Yang (4):
bitbake: share source directory
Share gcc work directories
gcc-4.5.1: share work directories
gcc-4.6: share work directoriesbitbake/lib/bb/build.py | 4 +- bitbake/lib/bb/cache.py | 3 + bitbake/lib/bb/runqueue.py | 10 +++ meta/recipes-devtools/gcc/gcc-4.5.1.inc | 1 + .../gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch | 57 ++++++++++++++ meta/recipes-devtools/gcc/gcc-4.6.inc | 5 +- .../gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch | 80 ++++++++++++++++++++ meta/recipes-devtools/gcc/gcc-common.inc | 32 +++++++- meta/recipes-devtools/gcc/gcc-configure-common.inc | 48 +++++++----- meta/recipes-devtools/gcc/gcc-configure-cross.inc | 4 +- meta/recipes-devtools/gcc/gcc-crosssdk.inc | 6 -- 11 files changed, 218 insertions(+), 32 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch create mode 100644 meta/recipes-devtools/gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch
Quoted 7 lines
Quoted 5 lines
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-coreMerged into OE-Core
incremental build with rm_work turned on:
ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
ERROR: Logfile of failure stored in: /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 Log data follows:
| + cd /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4.5/build.x86_64-linux.arm-angstrom-linux-gnueabi | + do_configure | + sed -i '/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h' -e 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | sed: can't read /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h: No such file or directory | ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
NOTE: package gcc-cross-initial-4.5-r37.0+svnr175127: task do_configure: Failed
ERROR: Task 764 (/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-devtools/gcc/gcc-cross-initial_4.5.bb, do_configure) failed with exit code '1'
Can this patchset get reverted please and reapplied when it actually has been tested to work?
Re: It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
Quoted 87 lines · Koen Kooi
Op 1 jul 2011, om 01:26 heeft Saul Wold het volgende geschreven:
Quoted 67 lines · Robert Yang
Quoted 66 lines
Changes of V4:
* Change the definition of
GLIBC_DYNAMIC_LINKERas Richard suggested.e.g., the entries in the files that look like:
#defineGLIBC_DYNAMIC_LINKER64"/lib64/ld-linux-x86-64.so.2"become
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"and we define
SYSTEMLIBS_DIRindefaults.h.NOTE, the round brackets:
#defineGLIBC_DYNAMIC_LINKER64(SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2")doesn't work in in the following define:
#define LINUX_DYNAMIC_LINKER \ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) so use: #define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"* Compare to V3, reduce two patches which are for gcc-crosssdk.inc and gcc-cross-canadian which are not needed any more.
* Fix the
conflicts(gcc-4.6.0 -> gcc-4.6, and the ${BRANCH})* Both tested 4.5.1 and 4.6:
$ bitbake meta-toolchain core-image-sato $ runqemu qemurmAlso unpack the sdk to /opt and test to make sure the toolchain works well.
The following changes since commit
a1f79a7896b6411669b3ccada6204d2695e80fc5:
runqueue.py: Add umask task control (2011-06-24 12:23:12 +0100)are available in the git repository at:
git://git.pokylinux.org/poky-contribrobert/share_gcc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/share_gccRobert Yang (4):
bitbake: share source directory
Share gcc work directories
gcc-4.5.1: share work directories
gcc-4.6: share work directoriesbitbake/lib/bb/build.py | 4 +- bitbake/lib/bb/cache.py | 3 + bitbake/lib/bb/runqueue.py | 10 +++ meta/recipes-devtools/gcc/gcc-4.5.1.inc | 1 + .../gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch | 57 ++++++++++++++ meta/recipes-devtools/gcc/gcc-4.6.inc | 5 +- .../gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch | 80 ++++++++++++++++++++ meta/recipes-devtools/gcc/gcc-common.inc | 32 +++++++- meta/recipes-devtools/gcc/gcc-configure-common.inc | 48 +++++++----- meta/recipes-devtools/gcc/gcc-configure-cross.inc | 4 +- meta/recipes-devtools/gcc/gcc-crosssdk.inc | 6 -- 11 files changed, 218 insertions(+), 32 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch create mode 100644 meta/recipes-devtools/gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patchQuoted 7 lines
Quoted 5 lines
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-coreMerged into OE-Core
incremental build with
rm_workturned on:ERROR: Function '
do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
ERROR: Logfile of failure stored in: /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 Log data follows:| + cd /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4.5/build.x86_64-linux.arm-angstrom-linux-gnueabi | + do_configure | + sed -i '/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h' -e 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | sed: can't read /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h: No such file or directory | ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
Quoted 4 lines
NOTE: package gcc-cross-initial-4.5-r37.0+svnr175127: task
do_configure: Failed
ERROR: Task 764 (/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-devtools/gcc/gcc-cross-initial_4.5.bb,do_configure) failed with exit code '1'Can this patchset get reverted please and reapplied when it actually has been tested to work?
Testing patches is not the sole responsibility of myself and Saul. This gcc patchset was on the mailing list for a considerable time and has been tested in a variety of ways. Various breakage was identified found and those breakages were fixed. The fact there looks to be some incremental build issue with rm_work is unfortunate and likely easy to fix so I think this request is a little out of proportion.
If someone had reported the problem before it merged it would have waited until it was fixed before merging.
I find it ironic you're one of the people asking to turn the autobuilder red, make warnings fatal and break things for everyone as 'its the only way to get people to look at and fix them; but on the other hand you're unhappy if testing of patches doesn't happen on every single combination of usages and something does break :/.
Cheers,
Richard
Re: It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
Op 1 jul 2011, om 10:10 heeft Richard Purdie het volgende geschreven:
Quoted 100 lines · Koen Kooi
Quoted 87 lines
Op 1 jul 2011, om 01:26 heeft Saul Wold het volgende geschreven:
Quoted 67 lines · Robert Yang
Quoted 66 lines
Changes of V4:
* Change the definition of
GLIBC_DYNAMIC_LINKERas Richard suggested.e.g., the entries in the files that look like:
#defineGLIBC_DYNAMIC_LINKER64"/lib64/ld-linux-x86-64.so.2"become
#define
GLIBC_DYNAMIC_LINKER64SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"and we define
SYSTEMLIBS_DIRindefaults.h.NOTE, the round brackets:
#defineGLIBC_DYNAMIC_LINKER64(SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2")doesn't work in in the following define:
#define
LINUX_DYNAMIC_LINKER\
CHOOSE_DYNAMIC_LINKER(GLIBC_DYNAMIC_LINKER,UCLIBC_DYNAMIC_LINKER)so use:
#defineGLIBC_DYNAMIC_LINKER64SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"* Compare to V3, reduce two patches which are for gcc-crosssdk.inc and gcc-cross-canadian which are not needed any more.
* Fix the
conflicts(gcc-4.6.0 -> gcc-4.6, and the ${BRANCH})* Both tested 4.5.1 and 4.6:
$ bitbake meta-toolchain core-image-sato $ runqemu qemurmAlso unpack the sdk to /opt and test to make sure the toolchain works well.
The following changes since commit
a1f79a7896b6411669b3ccada6204d2695e80fc5:
runqueue.py: Add umask task control (2011-06-24 12:23:12 +0100)are available in the git repository at:
git://git.pokylinux.org/poky-contribrobert/share_gcc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/share_gccRobert Yang (4):
bitbake: share source directory
Share gcc work directories
gcc-4.5.1: share work directories
gcc-4.6: share work directoriesbitbake/lib/bb/build.py | 4 +- bitbake/lib/bb/cache.py | 3 + bitbake/lib/bb/runqueue.py | 10 +++ meta/recipes-devtools/gcc/gcc-4.5.1.inc | 1 + .../gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patch | 57 ++++++++++++++ meta/recipes-devtools/gcc/gcc-4.6.inc | 5 +- .../gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patch | 80 ++++++++++++++++++++ meta/recipes-devtools/gcc/gcc-common.inc | 32 +++++++- meta/recipes-devtools/gcc/gcc-configure-common.inc | 48 +++++++----- meta/recipes-devtools/gcc/gcc-configure-cross.inc | 4 +- meta/recipes-devtools/gcc/gcc-crosssdk.inc | 6 -- 11 files changed, 218 insertions(+), 32 deletions(-)create mode 100644
meta/recipes-devtools/gcc/gcc-4.5.1/use-defaults.h-and-t-oe-in-B.patchcreate mode 100644meta/recipes-devtools/gcc/gcc-4.6/use-defaults.h-and-t-oe-in-B.patchQuoted 7 lines
Quoted 5 lines
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-coreMerged into OE-Core
incremental build with
rm_workturned on:ERROR: Function '
do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
ERROR: Logfile of failure stored in: /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 Log data follows:| + cd /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4.5/build.x86_64-linux.arm-angstrom-linux-gnueabi | + do_configure | + sed -i '/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h' -e 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | sed: can't read /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h: No such file or directory | ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)Quoted 4 lines
NOTE: package gcc-cross-initial-4.5-r37.0+svnr175127: task
do_configure: Failed
ERROR: Task 764 (/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-devtools/gcc/gcc-cross-initial_4.5.bb,do_configure) failed with exit code '1'Can this patchset get reverted please and reapplied when it actually has been tested to work?
Testing patches is not the sole responsibility of myself and Saul. This gcc patchset was on the mailing list for a considerable time and has been tested in a variety of ways. Various breakage was identified found and those breakages were fixed. The fact there looks to be some incremental build issue with
rm_workis unfortunate and likely easy to fix so I think this request is a little out of proportion.
Quoted 2 lines
If someone had reported the problem before it merged it would have waited until it was fixed before merging.
"They will therefore merge and I'm happy with them but it will be a few more days before that happens. "
I was under the impression that I still had a few more days to test them now that the eglibc problems have been solved. I don't think you can blame people for not testing gcc when eglibc was still blowing up in their faces.
Quoted 5 lines
I find it ironic you're one of the people asking to turn the autobuilder red, make warnings fatal and break things for everyone as 'its the only way to get people to look at and fix them; but on the other hand you're unhappy if testing of patches doesn't happen on every single combination of usages and something does break :/.
I was actually planning to test them today, now that eglibc works again.
Re: It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
Quoted 14 lines · Koen Kooi
Op 1 jul 2011, om 10:10 heeft Richard Purdie het volgende geschreven:
Quoted 11 lines · Koen Kooi
Quoted 1 line
Op 1 jul 2011, om 01:26 heeft Saul Wold het volgende geschreven:
Testing patches is not the sole responsibility of myself and Saul. This gcc patchset was on the mailing list for a considerable time and has been tested in a variety of ways. Various breakage was identified found and those breakages were fixed. The fact there looks to be some incremental build issue with
rm_workis unfortunate and likely easy to fix so I think this request is a little out of proportion.If someone had reported the problem before it merged it would have waited until it was fixed before merging.
Quoted 7 lines
"They will therefore merge and I'm happy with them but it will be a few more days before that happens. "
I was under the impression that I still had a few more days to test them now that the eglibc problems have been solved. I don't think you can blame people for not testing gcc when eglibc was still blowing up in their faces.
I balanced a few different factors in the timing. Merging code like this on a Friday with 4th July and the US going on holiday next week didn't seem like a better time to do this so I went for something slightly earlier. I was working on the assumption we had the eglibc issues resolved.
Quoted 7 lines
Quoted 5 lines
I find it ironic you're one of the people asking to turn the autobuilder red, make warnings fatal and break things for everyone as 'its the only way to get people to look at and fix them; but on the other hand you're unhappy if testing of patches doesn't happen on every single combination of usages and something does break :/.
I was actually planning to test them today, now that eglibc works again.
Ok, sorry I wasn't aware of that.
Cheers,
Richard
Re: It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
In reply to Koen KooiQuoted 10 lines · Koen Kooi
incremental build with
rm_workturned on:ERROR: Function '
do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
ERROR: Logfile of failure stored in: /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 Log data follows:| + cd /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4.5/build.x86_64-linux.arm-angstrom-linux-gnueabi | + do_configure | + sed -i '/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h' -e 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | sed: can't read /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h: No such file or directory | ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
Quoted 4 lines
NOTE: package gcc-cross-initial-4.5-r37.0+svnr175127: task
do_configure: Failed
ERROR: Task 764 (/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-devtools/gcc/gcc-cross-initial_4.5.bb,do_configure) failed with exit code '1'Can this patchset get reverted please and reapplied when it actually has been tested to work?
I checked and everything is fine with rm_work.
Looking at this error, something is changing ${S} as there is no mention of work-shared in the sed command yet there should be.
At a guess this is coming from:
where it says:
S = "${WORKDIR}/${BRANCH}"
and if that is changed to
S_append = "/${BRANCH}"
or removed it will likely work better.
Cheers,
Richard
Re: It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
Op 1 jul 2011, om 10:32 heeft Richard Purdie het volgende geschreven:
Quoted 27 lines · Koen Kooi
Quoted 10 lines
incremental build with
rm_workturned on:ERROR: Function '
do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
ERROR: Logfile of failure stored in: /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 Log data follows:| + cd /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4.5/build.x86_64-linux.arm-angstrom-linux-gnueabi | + do_configure | + sed -i '/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h' -e 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | sed: can't read /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h: No such file or directory | ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)Quoted 4 lines
NOTE: package gcc-cross-initial-4.5-r37.0+svnr175127: task
do_configure: Failed
ERROR: Task 764 (/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-devtools/gcc/gcc-cross-initial_4.5.bb,do_configure) failed with exit code '1'Can this patchset get reverted please and reapplied when it actually has been tested to work?
I checked and everything is fine with
rm_work.Looking at this error, something is changing ${S} as there is no mention of work-shared in the sed command yet there should be.
At a guess this is coming from:
where it says:
Quoted 7 lines
S = "${WORKDIR}/${BRANCH}"
and if that is changed to
S_append= "/${BRANCH}"or removed it will likely work better.
It was indeed a bug in meta-oe and the following fixed it:
https://github.com/koenkooi/meta-oe/commit/8a917caaa5506fa0f875202243658a1c2fe60c40
Re: It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
Quoted 34 lines · Koen Kooi
Op 1 jul 2011, om 10:32 heeft Richard Purdie het volgende geschreven:
Quoted 31 lines · Koen Kooi
Quoted 10 lines
incremental build with
rm_workturned on:ERROR: Function '
do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
ERROR: Logfile of failure stored in: /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 Log data follows:| + cd /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4.5/build.x86_64-linux.arm-angstrom-linux-gnueabi | + do_configure | + sed -i '/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h' -e 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | sed: can't read /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h: No such file or directory | ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)Quoted 4 lines
NOTE: package gcc-cross-initial-4.5-r37.0+svnr175127: task
do_configure: Failed
ERROR: Task 764 (/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-devtools/gcc/gcc-cross-initial_4.5.bb,do_configure) failed with exit code '1'Can this patchset get reverted please and reapplied when it actually has been tested to work?
I checked and everything is fine with
rm_work.Looking at this error, something is changing ${S} as there is no mention of work-shared in the sed command yet there should be.
At a guess this is coming from:
where it says:
S = "${WORKDIR}/${BRANCH}"
and if that is changed to
Quoted 7 lines
Quoted 3 lines
S_append= "/${BRANCH}"or removed it will likely work better.
It was indeed a bug in meta-oe and the following fixed it:
https://github.com/koenkooi/meta-oe/commit/8a917caaa5506fa0f875202243658a1c2fe60c40
Additionally you would need to port the patch which mucks makefile fragment I think
Quoted 4 lines
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Re: It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
Op 1 jul 2011, om 15:57 heeft Khem Raj het volgende geschreven:
Quoted 40 lines · Koen Kooi
Quoted 37 lines
Op 1 jul 2011, om 10:32 heeft Richard Purdie het volgende geschreven:
Quoted 33 lines · Koen Kooi
Quoted 10 lines
incremental build with
rm_workturned on:ERROR: Function '
do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
ERROR: Logfile of failure stored in: /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 Log data follows:| + cd /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4.5/build.x86_64-linux.arm-angstrom-linux-gnueabi | + do_configure | + sed -i '/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h' -e 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | sed: can't read /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h: No such file or directory | ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)Quoted 4 lines
NOTE: package gcc-cross-initial-4.5-r37.0+svnr175127: task
do_configure: Failed
ERROR: Task 764 (/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-devtools/gcc/gcc-cross-initial_4.5.bb,do_configure) failed with exit code '1'Can this patchset get reverted please and reapplied when it actually has been tested to work?
I checked and everything is fine with
rm_work.Looking at this error, something is changing ${S} as there is no mention of work-shared in the sed command yet there should be.
At a guess this is coming from:
where it says:
S = "${WORKDIR}/${BRANCH}"
and if that is changed to
S_append= "/${BRANCH}"
Quoted 7 lines
Quoted 5 lines
Quoted 1 line
or removed it will likely work better.
It was indeed a bug in meta-oe and the following fixed it:
https://github.com/koenkooi/meta-oe/commit/8a917caaa5506fa0f875202243658a1c2fe60c40
Additionally you would need to port the patch which mucks makefile fragment I think
Any volunteers for that? My incremental build seems to work now, haven't tried a from scratch yet.
Re: It's broken, please revert. Re: [PATCH 0/4 V4] Share gcc work directories
Quoted 45 lines · Koen Kooi
Op 1 jul 2011, om 15:57 heeft Khem Raj het volgende geschreven:
Quoted 42 lines · Koen Kooi
Quoted 39 lines
Op 1 jul 2011, om 10:32 heeft Richard Purdie het volgende geschreven:
Quoted 34 lines · Koen Kooi
Quoted 10 lines
incremental build with
rm_workturned on:ERROR: Function '
do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)
ERROR: Logfile of failure stored in: /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 Log data follows:| + cd /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4.5/build.x86_64-linux.arm-angstrom-linux-gnueabi | + do_configure | + sed -i '/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h' -e 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | sed: can't read /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/gcc-4_5-branch/gcc/config/*/linux*.h: No such file or directory | ERROR: Function 'do_configure' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-initial-4.5-r37.0+svnr175127/temp/log.do_configure.27092 for further information)Quoted 4 lines
NOTE: package gcc-cross-initial-4.5-r37.0+svnr175127: task
do_configure: Failed
ERROR: Task 764 (/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-devtools/gcc/gcc-cross-initial_4.5.bb,do_configure) failed with exit code '1'Can this patchset get reverted please and reapplied when it actually has been tested to work?
I checked and everything is fine with
rm_work.Looking at this error, something is changing ${S} as there is no mention of work-shared in the sed command yet there should be.
At a guess this is coming from:
where it says:
S = "${WORKDIR}/${BRANCH}"
and if that is changed to
S_append= "/${BRANCH}"or removed it will likely work better.
Quoted 7 lines
Quoted 5 lines
Quoted 3 lines
It was indeed a bug in meta-oe and the following fixed it:
https://github.com/koenkooi/meta-oe/commit/8a917caaa5506fa0f875202243658a1c2fe60c40
Additionally you would need to port the patch which mucks makefile fragment I think
Any volunteers for that? My incremental build seems to work now, haven't tried a from scratch yet.
I had a patch for it half of which you already have. Once it builds through I will post.
Quoted 4 lines
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core