* [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches
@ 2012-07-03 7:09 Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 01/17] kconfig-frontends: New recipe Saul Wold
` (17 more replies)
0 siblings, 18 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
Richard,
This has been built against the AB and ready for pull
There is one multilib related issue I am still tracking down
related to task-core-boot, but I can seem to determin which
commit here casues it yet.
Please pull this set and we will work that out.
Sau!
The following changes since commit 64422f7c5da160050a5454817c8fa9d070104b34:
package.bbclass: Add missing PKGR, PKGV, PKGE and ALTERNATIVE variables from PACKAGEVARS (2012-07-02 16:44:57 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib sgw/stage
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=sgw/stage
Darren Hart (2):
linux-yocto-custom: Remove linux-tools
core-image*sdk: Add kernel-dev to sdk images
Dennis Lan (1):
openjade-native: fix undefined Getopts error, use std namespace
Khem Raj (1):
kconfig-frontends: New recipe
Mark Hatle (9):
Fix manual log file paths
populate_sdk.bbclass: Split into two parts
populate_sdk: Allow for attempt only packages in the SDK
populate_sdk_base.bbclass: Change to using task specific depends
populate_sdk: enable basic multilib support
libc-common: Allow -dbg package to append, and not just set package
variables
package.bbclass: Allow a package to skip per file dependency
generation
image.bbclass: Add support to build the SDK in parallel with the
image
base.bbclass: Add cross-canadian-${TRANSLATED_TARGET_ARCH} to the
license exclusion list
Paul Gortmaker (2):
u-boot: Don't make the -Os removal part of global settings.
u-boot: do not clobber PARALLEL_MAKE setting
Richard Purdie (1):
autotools.bbclass: When configure fails, dump the config.log files
the logs
Robert Yang (1):
icu 3.6: do_install failed: Segmentation fault
.../recipes-kernel/linux/linux-yocto-custom.bb | 2 -
meta/classes/autotools.bbclass | 9 ++-
meta/classes/base.bbclass | 2 +-
meta/classes/image.bbclass | 7 +-
meta/classes/libc-common.bbclass | 6 +-
meta/classes/package.bbclass | 3 +
meta/classes/package_deb.bbclass | 4 +-
meta/classes/package_ipk.bbclass | 2 +-
meta/classes/package_rpm.bbclass | 10 +-
meta/classes/populate_sdk.bbclass | 91 +-------------
meta/classes/populate_sdk_base.bbclass | 128 ++++++++++++++++++++
meta/classes/populate_sdk_deb.bbclass | 6 +-
meta/classes/populate_sdk_ipk.bbclass | 5 +-
meta/classes/populate_sdk_rpm.bbclass | 4 +-
meta/classes/rootfs_deb.bbclass | 2 +
meta/classes/rootfs_ipk.bbclass | 2 +
meta/classes/toolchain-scripts.bbclass | 16 ++-
meta/recipes-bsp/u-boot/u-boot.inc | 5 +-
.../kconfig-frontends/kconfig-frontends_3.4.bb | 34 +++++
.../openjade/openjade-1.3.2/msggen.pl.patch | 44 +++++++
.../openjade/openjade-native_1.3.2.bb | 1 +
meta/recipes-extended/images/core-image-lsb-sdk.bb | 1 +
meta/recipes-rt/images/core-image-rt-sdk.bb | 2 +-
meta/recipes-sato/images/core-image-sato-sdk.bb | 3 +
.../icu/files/larger-cmd-size.patch | 27 ++++
meta/recipes-support/icu/icu-3.6.inc | 1 +
meta/recipes-support/icu/icu_3.6.bb | 2 +-
27 files changed, 299 insertions(+), 120 deletions(-)
create mode 100644 meta/classes/populate_sdk_base.bbclass
create mode 100644 meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.4.bb
create mode 100644 meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch
create mode 100644 meta/recipes-support/icu/files/larger-cmd-size.patch
--
1.7.7.6
^ permalink raw reply [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 01/17] kconfig-frontends: New recipe
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 02/17] icu 3.6: do_install failed: Segmentation fault Saul Wold
` (16 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Khem Raj <raj.khem@gmail.com>
kconfig-frontends provides the kconfig infrastructure
thats used for linux kernel as a standalone package. Its
not intended to be used for kernel itself but can be
used by packages who are based on kconfig e.g. busybox
uclibc or new packages who wants to use kconfig infra
for the package build
kconfig-frontends names it's shared library as -3.4.0.so instead of .so.3.4.0,
this causes the -dev package to grab it since it matches on *.so. This error
would also have shown up with the old PACKAGE order.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
.../kconfig-frontends/kconfig-frontends_3.4.bb | 34 ++++++++++++++++++++
1 files changed, 34 insertions(+), 0 deletions(-)
create mode 100644 meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.4.bb
diff --git a/meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.4.bb b/meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.4.bb
new file mode 100644
index 0000000..9abfa75
--- /dev/null
+++ b/meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.4.bb
@@ -0,0 +1,34 @@
+# Copyright (C) 2012 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+DESCRIPTION = "The kconfig-frontends project aims at centralising \
+the effort of keeping an up-to-date, out-of-tree, packaging of the \
+kconfig infrastructure, ready for use by third-party projects. \
+The kconfig-frontends package provides the kconfig parser, as well as all \
+the frontends"
+HOMEPAGE = "http://ymorin.is-a-geek.org/projects/kconfig-frontends"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=9b8cf60ff39767ff04b671fca8302408"
+SECTION = "devel"
+DEPENDS += "ncurses flex bison gperf"
+PR = "r0"
+PV = "3.4.0"
+SPIN = "0"
+SRC_URI = "http://ymorin.is-a-geek.org/download/${BPN}/${BPN}-${PV}-${SPIN}.tar.xz"
+SRC_URI[md5sum] = "7eed0faf5a41d6dd0b2a886a440a972d"
+SRC_URI[sha256sum] = "638006f3d1aefefdc1db3030a15b562cf3c89f2028b1cea0bf0f0629708802f2"
+
+S = "${WORKDIR}/${BPN}-${PV}-${SPIN}"
+
+inherit autotools
+do_configure_prepend () {
+ mkdir -p scripts/.autostuff/m4
+}
+EXTRA_OECONF += "--disable-gconf --disable-qconf"
+
+# Some packages have the version preceeding the .so instead properly
+# versioned .so.<version>, so we need to reorder and repackage.
+SOLIBS = "-${PV}.so"
+FILES_SOLIBSDEV = "${libdir}/libkconfig-parser.so"
+
+BBCLASSEXTEND = "native"
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 02/17] icu 3.6: do_install failed: Segmentation fault
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 01/17] kconfig-frontends: New recipe Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 03/17] linux-yocto-custom: Remove linux-tools Saul Wold
` (15 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Robert Yang <liezhi.yang@windriver.com>
There is a "Segmentation fault" error when the tmpdir is longer than 470
(or less), this is because it used "char cmd[1024]" which is not enough
for the command line. Allocate a larger memory size should fix this problem.
[YOCTO #2664]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
.../icu/files/larger-cmd-size.patch | 27 ++++++++++++++++++++
meta/recipes-support/icu/icu-3.6.inc | 1 +
meta/recipes-support/icu/icu_3.6.bb | 2 +-
3 files changed, 29 insertions(+), 1 deletions(-)
create mode 100644 meta/recipes-support/icu/files/larger-cmd-size.patch
diff --git a/meta/recipes-support/icu/files/larger-cmd-size.patch b/meta/recipes-support/icu/files/larger-cmd-size.patch
new file mode 100644
index 0000000..74a84f1
--- /dev/null
+++ b/meta/recipes-support/icu/files/larger-cmd-size.patch
@@ -0,0 +1,27 @@
+Allocate a larger memory size for cmd
+
+The length of the command line can be longer than 1024 sometimes,
+which will cause a "Segmentation fault" error.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
+Upstream-Status: Pending
+---
+ tools/pkgdata/pkgdata.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/pkgdata/pkgdata.c b/tools/pkgdata/pkgdata.c
+--- a/tools/pkgdata/pkgdata.c
++++ b/tools/pkgdata/pkgdata.c
+@@ -439,7 +439,7 @@ main(int argc, char* argv[]) {
+ /* POSIX - execute makefile */
+ static int executeMakefile(const UPKGOptions *o)
+ {
+- char cmd[1024];
++ char cmd[2048];
+ /*char pwd[1024];*/
+ const char *make;
+ int rc;
+--
+1.7.10.2
+
diff --git a/meta/recipes-support/icu/icu-3.6.inc b/meta/recipes-support/icu/icu-3.6.inc
index d3391fe..d969caa 100644
--- a/meta/recipes-support/icu/icu-3.6.inc
+++ b/meta/recipes-support/icu/icu-3.6.inc
@@ -6,6 +6,7 @@ BASE_SRC_URI = "ftp://ftp.software.ibm.com/software/globalization/icu/3.6/icu4c-
file://gccfix.patch \
file://fix-parallel-build.patch \
file://use-g++-for-linking.patch \
+ file://larger-cmd-size.patch \
"
SRC_URI = "${BASE_SRC_URI} \
file://noldlibpath.patch \
diff --git a/meta/recipes-support/icu/icu_3.6.bb b/meta/recipes-support/icu/icu_3.6.bb
index d7be522..f941acf 100644
--- a/meta/recipes-support/icu/icu_3.6.bb
+++ b/meta/recipes-support/icu/icu_3.6.bb
@@ -1,6 +1,6 @@
require icu-3.6.inc
-PR = "r8"
+PR = "r9"
SRC_URI[md5sum] = "6243f7a19e03e05403ce84e597510d4c"
SRC_URI[sha256sum] = "5135e8d69d6206d320515df7aeee7027711ab1aef9d8dbf29571a97a9746b041"
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 03/17] linux-yocto-custom: Remove linux-tools
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 01/17] kconfig-frontends: New recipe Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 02/17] icu 3.6: do_install failed: Segmentation fault Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 04/17] core-image*sdk: Add kernel-dev to sdk images Saul Wold
` (14 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Darren Hart <dvhart@linux.intel.com>
Remove the linux-tools include as perf is now packaged independently.
Without this, including meta-skeleton in bblayers.conf results in a
build failure as linux-tools.inc cannot be found.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Acked-by: Bruce Ashfield <bruce.ashfield@windriver.com>
CC: Tom Zanussi <tom.zanussi@intel.com>
---
.../recipes-kernel/linux/linux-yocto-custom.bb | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb b/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
index 1438ad8..55f0c38 100644
--- a/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
+++ b/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
@@ -42,5 +42,3 @@ PR = "r0"
PV = "${LINUX_VERSION}+git${SRCPV}"
COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips|qemux86-64)"
-
-require recipes-kernel/linux/linux-tools.inc
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 04/17] core-image*sdk: Add kernel-dev to sdk images
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (2 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 03/17] linux-yocto-custom: Remove linux-tools Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 05/17] Fix manual log file paths Saul Wold
` (13 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Darren Hart <dvhart@linux.intel.com>
While sdk images already have dev-pkgs included, the kernel-dev package
is special and does not get installed. Add kernel-dev explicitly to the
*sdk image recipes.
Note: We have to be careful with "IMAGE_INSTALL +=" as it must appear
after "inherit core-image" which makes an "IMAGE_INSTALL ?=" assignment.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
CC: Jessica Zhang <jessica.zhang@intel.com>
CC: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-extended/images/core-image-lsb-sdk.bb | 1 +
meta/recipes-rt/images/core-image-rt-sdk.bb | 2 +-
meta/recipes-sato/images/core-image-sato-sdk.bb | 3 +++
3 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/meta/recipes-extended/images/core-image-lsb-sdk.bb b/meta/recipes-extended/images/core-image-lsb-sdk.bb
index 32a5077..047d66b 100644
--- a/meta/recipes-extended/images/core-image-lsb-sdk.bb
+++ b/meta/recipes-extended/images/core-image-lsb-sdk.bb
@@ -10,6 +10,7 @@ IMAGE_INSTALL = "\
${CORE_IMAGE_BASE_INSTALL} \
task-core-basic \
task-core-lsb \
+ kernel-dev \
"
inherit core-image
diff --git a/meta/recipes-rt/images/core-image-rt-sdk.bb b/meta/recipes-rt/images/core-image-rt-sdk.bb
index 6ec2d00..29512e3 100644
--- a/meta/recipes-rt/images/core-image-rt-sdk.bb
+++ b/meta/recipes-rt/images/core-image-rt-sdk.bb
@@ -11,6 +11,6 @@ DEPENDS = "linux-yocto-rt"
IMAGE_FEATURES += "dev-pkgs tools-sdk"
EXTRA_IMAGE_FEATURES += "tools-debug tools-profile tools-testapps debug-tweaks"
-IMAGE_INSTALL += "rt-tests"
+IMAGE_INSTALL += "rt-tests kernel-dev"
LICENSE = "MIT"
diff --git a/meta/recipes-sato/images/core-image-sato-sdk.bb b/meta/recipes-sato/images/core-image-sato-sdk.bb
index eed1698..75ed64f 100644
--- a/meta/recipes-sato/images/core-image-sato-sdk.bb
+++ b/meta/recipes-sato/images/core-image-sato-sdk.bb
@@ -11,3 +11,6 @@ EXTRA_IMAGE_FEATURES += "tools-debug tools-profile tools-testapps debug-tweaks"
LICENSE = "MIT"
inherit core-image
+
+IMAGE_INSTALL += "kernel-dev"
+
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 05/17] Fix manual log file paths
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (3 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 04/17] core-image*sdk: Add kernel-dev to sdk images Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 06/17] populate_sdk.bbclass: Split into two parts Saul Wold
` (12 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
When a recent change, the path to log files may be contained within an
arbitrary directory. To generate the manual log files in the correct path
we should be using the ${BB_LOGFILE}'s path instead of always assuming the
logs go into ${WORKDIR}/temp.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/image.bbclass | 2 +-
meta/classes/package_deb.bbclass | 4 ++--
meta/classes/package_ipk.bbclass | 2 +-
meta/classes/package_rpm.bbclass | 10 +++++-----
meta/classes/populate_sdk.bbclass | 2 +-
5 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 7e4bb69..9fae1fe 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -220,7 +220,7 @@ insert_feed_uris () {
log_check() {
for target in $*
do
- lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
+ lf_path="`dirname ${BB_LOGFILE}`/log.do_$target.${PID}"
echo "log_check: Using $lf_path as logfile"
diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass
index 0a8dc1b..f58fd2b 100644
--- a/meta/classes/package_deb.bbclass
+++ b/meta/classes/package_deb.bbclass
@@ -167,10 +167,10 @@ package_install_internal_deb () {
fi
done
- rm -f ${WORKDIR}/temp/log.do_${task}-attemptonly.${PID}
+ rm -f `dirname ${BB_LOGFILE}`/log.do_${task}-attemptonly.${PID}
if [ ! -z "${package_attemptonly}" ]; then
for i in ${package_attemptonly}; do
- apt-get install $i --force-yes --allow-unauthenticated >> ${WORKDIR}/temp/log.do_${task}-attemptonly.${PID} 2>&1 || true
+ apt-get install $i --force-yes --allow-unauthenticated >> `dirname ${BB_LOGFILE}`/log.do_${task}-attemptonly.${PID} 2>&1 || true
done
fi
diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass
index c86ea03..e682e6a 100644
--- a/meta/classes/package_ipk.bbclass
+++ b/meta/classes/package_ipk.bbclass
@@ -157,7 +157,7 @@ package_install_internal_ipk() {
fi
if [ ! -z "${package_attemptonly}" ]; then
- opkg-cl ${ipkg_args} install ${package_attemptonly} > "${WORKDIR}/temp/log.do_${task}_attemptonly.${PID}" || true
+ opkg-cl ${ipkg_args} install ${package_attemptonly} > "`dirname ${BB_LOGFILE}`/log.do_${task}_attemptonly.${PID}" || true
fi
package_tryout_install_multilib_ipk
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 5559a46..78279f5 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -342,14 +342,14 @@ package_install_internal_rpm () {
echo "Note: Unable to find package $pkg ($ml_pkg) -- PACKAGE_INSTALL_ATTEMPTONLY"
continue
fi
- echo "Attempting $pkg_name..." >> "${WORKDIR}/temp/log.do_${task}_attemptonly.${PID}"
+ echo "Attempting $pkg_name..." >> "`dirname ${BB_LOGFILE}`/log.do_${task}_attemptonly.${PID}"
${RPM} --predefine "_rpmds_sysinfo_path ${target_rootfs}/etc/rpm/sysinfo" \
--predefine "_rpmrc_platform_path ${target_rootfs}/etc/rpm/platform" \
--root "${target_rootfs}/install" \
-D "_dbpath ${target_rootfs}/install" -D "`cat ${confbase}.macro`" \
-D "__dbi_txn create nofsync private" \
-U --justdb --noscripts --notriggers --noparentdirs --nolinktos --ignoresize \
- $pkg_name >> "${WORKDIR}/temp/log.do_${task}_attemptonly.${PID}" || true
+ $pkg_name >> "`dirname ${BB_LOGFILE}`/log.do_${task}_attemptonly.${PID}" || true
done
fi
@@ -390,17 +390,17 @@ package_install_internal_rpm () {
if [ $found -eq 0 ]; then
echo "Note: Unable to find package $pkg -- suggests"
- echo "Unable to find package $pkg." >> "${WORKDIR}/temp/log.do_${task}_recommend.${PID}"
+ echo "Unable to find package $pkg." >> "`dirname ${BB_LOGFILE}`/log.do_${task}_recommend.${PID}"
continue
fi
- echo "Attempting $pkg_name..." >> "${WORKDIR}/temp/log.do_{task}_recommend.${PID}"
+ echo "Attempting $pkg_name..." >> "`dirname ${BB_LOGFILE}`/log.do_{task}_recommend.${PID}"
${RPM} --predefine "_rpmds_sysinfo_path ${target_rootfs}/etc/rpm/sysinfo" \
--predefine "_rpmrc_platform_path ${target_rootfs}/etc/rpm/platform" \
--root "${target_rootfs}/install" \
-D "_dbpath ${target_rootfs}/install" -D "`cat ${confbase}.macro`" \
-D "__dbi_txn create nofsync private" \
-U --justdb --noscripts --notriggers --noparentdirs --nolinktos --ignoresize \
- $pkg_name >> "${WORKDIR}/temp/log.do_${task}_recommend.${PID}" 2>&1 || true
+ $pkg_name >> "`dirname ${BB_LOGFILE}`/log.do_${task}_recommend.${PID}" 2>&1 || true
done
cat ${target_rootfs}/install/recommend.list ${target_rootfs}/install/recommend.new | sort -u > ${target_rootfs}/install/recommend.new.list
mv -f ${target_rootfs}/install/recommend.new.list ${target_rootfs}/install/recommend.list
diff --git a/meta/classes/populate_sdk.bbclass b/meta/classes/populate_sdk.bbclass
index 5aa8e92..1131d68 100644
--- a/meta/classes/populate_sdk.bbclass
+++ b/meta/classes/populate_sdk.bbclass
@@ -70,7 +70,7 @@ fakeroot do_populate_sdk() {
populate_sdk_log_check() {
for target in $*
do
- lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
+ lf_path="`dirname ${BB_LOGFILE}`/log.do_$target.${PID}"
echo "log_check: Using $lf_path as logfile"
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 06/17] populate_sdk.bbclass: Split into two parts
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (4 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 05/17] Fix manual log file paths Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 07/17] populate_sdk: Allow for attempt only packages in the SDK Saul Wold
` (11 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
populate_sdk was renamed to populate_sdk_base in order to allow for changes
that may break existing SDK recipes. Any such changes need an analog
in populate_sdk (new version) to restore previous desired behavior.
In addition to the rename, one minor change was made. The _base version
only had the do_populate_sdk as an added task, but no before or after defined.
For compatibility, populate_sdk has do_populate_sdk defined as "after"
do_install and before do_build, this is identical to the original behavior.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/populate_sdk.bbclass | 91 ++------------------------------
meta/classes/populate_sdk_base.bbclass | 89 +++++++++++++++++++++++++++++++
2 files changed, 93 insertions(+), 87 deletions(-)
create mode 100644 meta/classes/populate_sdk_base.bbclass
diff --git a/meta/classes/populate_sdk.bbclass b/meta/classes/populate_sdk.bbclass
index 1131d68..e5bb540 100644
--- a/meta/classes/populate_sdk.bbclass
+++ b/meta/classes/populate_sdk.bbclass
@@ -1,89 +1,6 @@
-inherit meta toolchain-scripts
-inherit populate_sdk_${IMAGE_PKGTYPE}
+# The majority of populate_sdk is located in populate_sdk_base
+# This chunk simply facilitates compatibility with SDK only recipes.
-SDK_DIR = "${WORKDIR}/sdk"
-SDK_OUTPUT = "${SDK_DIR}/image"
-SDK_DEPLOY = "${TMPDIR}/deploy/sdk"
+inherit populate_sdk_base
-SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${MULTIMACH_TARGET_SYS}"
-
-TOOLCHAIN_HOST_TASK ?= "task-sdk-host-nativesdk task-cross-canadian-${TRANSLATED_TARGET_ARCH}"
-TOOLCHAIN_TARGET_TASK ?= "task-core-standalone-sdk-target task-core-standalone-sdk-target-dbg"
-TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${DISTRO_VERSION}"
-
-RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
-DEPENDS = "virtual/fakeroot-native sed-native"
-
-PID = "${@os.getpid()}"
-
-EXCLUDE_FROM_WORLD = "1"
-
-python () {
- # If we don't do this we try and run the mapping hooks while parsing which is slow
- # bitbake should really provide something to let us know this...
- if bb.data.getVar('BB_WORKERCONTEXT', d, True) is not None:
- runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", d)
-}
-
-fakeroot do_populate_sdk() {
- rm -rf ${SDK_OUTPUT}
- mkdir -p ${SDK_OUTPUT}
-
- # populate_sdk_<image> is required to construct two images:
- # SDK_ARCH-nativesdk - contains the cross compiler and associated tooling
- # target - contains a target rootfs configured for the SDK usage
- #
- # the output of populate_sdk_<image> should end up in ${SDK_OUTPUT} it is made
- # up of:
- # ${SDK_OUTPUT}/<sdk_arch-nativesdk pkgs>
- # ${SDK_OUTPUT}/${SDKTARGETSYSROOT}/<target pkgs>
-
- populate_sdk_${IMAGE_PKGTYPE}
-
- # Don't ship any libGL in the SDK
- rm -rf ${SDK_OUTPUT}/${SDKPATHNATIVE}${libdir_nativesdk}/libGL*
-
- # Can copy pstage files here
- # target_pkgs=`cat ${SDK_OUTPUT}/${SDKTARGETSYSROOT}/var/lib/opkg/status | grep Package: | cut -f 2 -d ' '`
-
- # Fix or remove broken .la files
- #rm -f ${SDK_OUTPUT}/${SDKPATHNATIVE}/lib/*.la
- rm -f ${SDK_OUTPUT}/${SDKPATHNATIVE}${libdir_nativesdk}/*.la
-
- # Link the ld.so.cache file into the hosts filesystem
- ln -s /etc/ld.so.cache ${SDK_OUTPUT}/${SDKPATHNATIVE}/etc/ld.so.cache
-
- # Setup site file for external use
- toolchain_create_sdk_siteconfig ${SDK_OUTPUT}/${SDKPATH}/site-config-${MULTIMACH_TARGET_SYS}
-
- toolchain_create_sdk_env_script
-
- # Add version information
- toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${MULTIMACH_TARGET_SYS}
-
- # Package it up
- mkdir -p ${SDK_DEPLOY}
- cd ${SDK_OUTPUT}
- tar --owner=root --group=root -cj --file=${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.tar.bz2 .
-}
-
-populate_sdk_log_check() {
- for target in $*
- do
- lf_path="`dirname ${BB_LOGFILE}`/log.do_$target.${PID}"
-
- echo "log_check: Using $lf_path as logfile"
-
- if test -e "$lf_path"
- then
- ${IMAGE_PKGTYPE}_log_check $target $lf_path
- else
- echo "Cannot find logfile [$lf_path]"
- fi
- echo "Logfile is clean"
- done
-}
-
-do_populate_sdk[nostamp] = "1"
-do_populate_sdk[recrdeptask] = "do_package_write"
-addtask populate_sdk before do_build after do_install
+addtask populate_sdk after do_install before do_build
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
new file mode 100644
index 0000000..a3bf8c2
--- /dev/null
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -0,0 +1,89 @@
+inherit meta toolchain-scripts
+inherit populate_sdk_${IMAGE_PKGTYPE}
+
+SDK_DIR = "${WORKDIR}/sdk"
+SDK_OUTPUT = "${SDK_DIR}/image"
+SDK_DEPLOY = "${TMPDIR}/deploy/sdk"
+
+SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${MULTIMACH_TARGET_SYS}"
+
+TOOLCHAIN_HOST_TASK ?= "task-sdk-host-nativesdk task-cross-canadian-${TRANSLATED_TARGET_ARCH}"
+TOOLCHAIN_TARGET_TASK ?= "task-core-standalone-sdk-target task-core-standalone-sdk-target-dbg"
+TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${DISTRO_VERSION}"
+
+RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
+DEPENDS = "virtual/fakeroot-native sed-native"
+
+PID = "${@os.getpid()}"
+
+EXCLUDE_FROM_WORLD = "1"
+
+python () {
+ # If we don't do this we try and run the mapping hooks while parsing which is slow
+ # bitbake should really provide something to let us know this...
+ if bb.data.getVar('BB_WORKERCONTEXT', d, True) is not None:
+ runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", d)
+}
+
+fakeroot do_populate_sdk() {
+ rm -rf ${SDK_OUTPUT}
+ mkdir -p ${SDK_OUTPUT}
+
+ # populate_sdk_<image> is required to construct two images:
+ # SDK_ARCH-nativesdk - contains the cross compiler and associated tooling
+ # target - contains a target rootfs configured for the SDK usage
+ #
+ # the output of populate_sdk_<image> should end up in ${SDK_OUTPUT} it is made
+ # up of:
+ # ${SDK_OUTPUT}/<sdk_arch-nativesdk pkgs>
+ # ${SDK_OUTPUT}/${SDKTARGETSYSROOT}/<target pkgs>
+
+ populate_sdk_${IMAGE_PKGTYPE}
+
+ # Don't ship any libGL in the SDK
+ rm -rf ${SDK_OUTPUT}/${SDKPATHNATIVE}${libdir_nativesdk}/libGL*
+
+ # Can copy pstage files here
+ # target_pkgs=`cat ${SDK_OUTPUT}/${SDKTARGETSYSROOT}/var/lib/opkg/status | grep Package: | cut -f 2 -d ' '`
+
+ # Fix or remove broken .la files
+ #rm -f ${SDK_OUTPUT}/${SDKPATHNATIVE}/lib/*.la
+ rm -f ${SDK_OUTPUT}/${SDKPATHNATIVE}${libdir_nativesdk}/*.la
+
+ # Link the ld.so.cache file into the hosts filesystem
+ ln -s /etc/ld.so.cache ${SDK_OUTPUT}/${SDKPATHNATIVE}/etc/ld.so.cache
+
+ # Setup site file for external use
+ toolchain_create_sdk_siteconfig ${SDK_OUTPUT}/${SDKPATH}/site-config-${MULTIMACH_TARGET_SYS}
+
+ toolchain_create_sdk_env_script
+
+ # Add version information
+ toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${MULTIMACH_TARGET_SYS}
+
+ # Package it up
+ mkdir -p ${SDK_DEPLOY}
+ cd ${SDK_OUTPUT}
+ tar --owner=root --group=root -cj --file=${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.tar.bz2 .
+}
+
+populate_sdk_log_check() {
+ for target in $*
+ do
+ lf_path="`dirname ${BB_LOGFILE}`/log.do_$target.${PID}"
+
+ echo "log_check: Using $lf_path as logfile"
+
+ if test -e "$lf_path"
+ then
+ ${IMAGE_PKGTYPE}_log_check $target $lf_path
+ else
+ echo "Cannot find logfile [$lf_path]"
+ fi
+ echo "Logfile is clean"
+ done
+}
+
+do_populate_sdk[nostamp] = "1"
+do_populate_sdk[recrdeptask] = "do_package_write"
+addtask populate_sdk
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 07/17] populate_sdk: Allow for attempt only packages in the SDK
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (5 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 06/17] populate_sdk.bbclass: Split into two parts Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 08/17] populate_sdk_base.bbclass: Change to using task specific depends Saul Wold
` (10 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
We want to be able to supply attempt only packages in the SDK in order to
support more advanced SDK images that more closely match specific image
recipes.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/populate_sdk_base.bbclass | 2 ++
meta/classes/populate_sdk_deb.bbclass | 4 ++--
meta/classes/populate_sdk_ipk.bbclass | 3 ++-
meta/classes/populate_sdk_rpm.bbclass | 4 ++--
4 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index a3bf8c2..a0a0a80 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -8,7 +8,9 @@ SDK_DEPLOY = "${TMPDIR}/deploy/sdk"
SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${MULTIMACH_TARGET_SYS}"
TOOLCHAIN_HOST_TASK ?= "task-sdk-host-nativesdk task-cross-canadian-${TRANSLATED_TARGET_ARCH}"
+TOOLCHAIN_HOST_TASK_ATTEMPTONLY ?= ""
TOOLCHAIN_TARGET_TASK ?= "task-core-standalone-sdk-target task-core-standalone-sdk-target-dbg"
+TOOLCHAIN_TARGET_TASK_ATTEMPTONLY ?= ""
TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${DISTRO_VERSION}"
RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
diff --git a/meta/classes/populate_sdk_deb.bbclass b/meta/classes/populate_sdk_deb.bbclass
index 920c89a..c3b3e0c 100644
--- a/meta/classes/populate_sdk_deb.bbclass
+++ b/meta/classes/populate_sdk_deb.bbclass
@@ -28,7 +28,7 @@ populate_sdk_deb () {
export INSTALL_BASEARCH_DEB="${DPKG_ARCH}"
export INSTALL_ARCHS_DEB="${PACKAGE_ARCHS}"
export INSTALL_PACKAGES_DEB="${TOOLCHAIN_TARGET_TASK}"
- export INSTALL_PACKAGES_ATTEMPTONLY_DEB=""
+ export INSTALL_PACKAGES_ATTEMPTONLY_DEB="${TOOLCHAIN_TARGET_TASK_ATTEMPTONLY}"
export PACKAGES_LINGUAS_DEB=""
export INSTALL_TASK_DEB="populate_sdk-target"
@@ -44,7 +44,7 @@ populate_sdk_deb () {
export INSTALL_BASEARCH_DEB="${DEB_SDK_ARCH}"
export INSTALL_ARCHS_DEB="${SDK_PACKAGE_ARCHS}"
export INSTALL_PACKAGES_DEB="${TOOLCHAIN_HOST_TASK}"
- export INSTALL_PACKAGES_ATTEMPTONLY_DEB=""
+ export INSTALL_PACKAGES_ATTEMPTONLY_DEB="${TOOLCHAIN_HOST_TASK_ATTEMPTONLY}"
export PACKAGES_LINGUAS_DEB=""
export INSTALL_TASK_DEB="populate_sdk-nativesdk"
diff --git a/meta/classes/populate_sdk_ipk.bbclass b/meta/classes/populate_sdk_ipk.bbclass
index c256c69..aa3efde 100644
--- a/meta/classes/populate_sdk_ipk.bbclass
+++ b/meta/classes/populate_sdk_ipk.bbclass
@@ -11,7 +11,6 @@ populate_sdk_ipk() {
package_update_index_ipk
package_generate_ipkg_conf
- export INSTALL_PACKAGES_ATTEMPTONLY_IPK=""
export INSTALL_PACKAGES_LINGUAS_IPK=""
export INSTALL_TASK_IPK="populate_sdk"
@@ -19,6 +18,7 @@ populate_sdk_ipk() {
export INSTALL_ROOTFS_IPK="${SDK_OUTPUT}/${SDKTARGETSYSROOT}"
export INSTALL_CONF_IPK="${IPKGCONF_TARGET}"
export INSTALL_PACKAGES_IPK="${TOOLCHAIN_TARGET_TASK}"
+ export INSTALL_PACKAGES_ATTEMPTONLY_IPK="${TOOLCHAIN_TARGET_TASK_ATTEMPTONLY}"
export D=${INSTALL_ROOTFS_IPK}
export OFFLINE_ROOT=${INSTALL_ROOTFS_IPK}
@@ -31,6 +31,7 @@ populate_sdk_ipk() {
export INSTALL_ROOTFS_IPK="${SDK_OUTPUT}"
export INSTALL_CONF_IPK="${IPKGCONF_SDK}"
export INSTALL_PACKAGES_IPK="${TOOLCHAIN_HOST_TASK}"
+ export INSTALL_PACKAGES_ATTEMPTONLY_IPK="${TOOLCHAIN_HOST_TASK_ATTEMPTONLY}"
package_install_internal_ipk
diff --git a/meta/classes/populate_sdk_rpm.bbclass b/meta/classes/populate_sdk_rpm.bbclass
index e0adb8f..b115c27 100644
--- a/meta/classes/populate_sdk_rpm.bbclass
+++ b/meta/classes/populate_sdk_rpm.bbclass
@@ -33,7 +33,7 @@ populate_sdk_rpm () {
export INSTALL_PLATFORM_RPM="${TARGET_ARCH}"
export INSTALL_CONFBASE_RPM="${RPMCONF_TARGET_BASE}"
export INSTALL_PACKAGES_RPM="${TOOLCHAIN_TARGET_TASK}"
- export INSTALL_PACKAGES_ATTEMPTONLY_RPM=""
+ export INSTALL_PACKAGES_ATTEMPTONLY_RPM="${TOOLCHAIN_TARGET_TASK_ATTEMPTONLY}"
export INSTALL_PACKAGES_LINGUAS_RPM=""
export INSTALL_PROVIDENAME_RPM="/bin/sh /bin/bash /usr/bin/env /usr/bin/perl pkgconfig pkgconfig(pkg-config)"
export INSTALL_TASK_RPM="populate_sdk-target"
@@ -82,7 +82,7 @@ EOF
export INSTALL_PLATFORM_RPM="${SDK_ARCH}"
export INSTALL_CONFBASE_RPM="${RPMCONF_HOST_BASE}"
export INSTALL_PACKAGES_RPM="${TOOLCHAIN_HOST_TASK}"
- export INSTALL_PACKAGES_ATTEMPTONLY_RPM=""
+ export INSTALL_PACKAGES_ATTEMPTONLY_RPM="${TOOLCHAIN_TARGET_HOST_ATTEMPTONLY}"
export INSTALL_PACKAGES_LINGUAS_RPM=""
export INSTALL_PROVIDENAME_RPM="/bin/sh /bin/bash /usr/bin/env /usr/bin/perl pkgconfig libGL.so()(64bit) libGL.so"
export INSTALL_TASK_RPM="populate_sdk_rpm-nativesdk"
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 08/17] populate_sdk_base.bbclass: Change to using task specific depends
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (6 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 07/17] populate_sdk: Allow for attempt only packages in the SDK Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 09/17] populate_sdk: enable basic multilib support Saul Wold
` (9 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
If we combine the do_populate_sdk with the image generation, we want
to avoid the dependency processing unless do_populate_sdk is run.
This requires the bitbake change to implement task based rdepends.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/populate_sdk_base.bbclass | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index a0a0a80..6508bd9 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -13,8 +13,8 @@ TOOLCHAIN_TARGET_TASK ?= "task-core-standalone-sdk-target task-core-standalone-s
TOOLCHAIN_TARGET_TASK_ATTEMPTONLY ?= ""
TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${DISTRO_VERSION}"
-RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
-DEPENDS = "virtual/fakeroot-native sed-native"
+SDK_RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
+SDK_DEPENDS = "virtual/fakeroot-native sed-native"
PID = "${@os.getpid()}"
@@ -87,5 +87,7 @@ populate_sdk_log_check() {
}
do_populate_sdk[nostamp] = "1"
+do_populate_sdk[depends] = "${@' '.join([x + ':do_populate_sysroot' for x in d.getVar('SDK_DEPENDS', True).split()])}"
+do_populate_sdk[rdepends] = "${@' '.join([x + ':do_populate_sysroot' for x in d.getVar('SDK_RDEPENDS', True).split()])}"
do_populate_sdk[recrdeptask] = "do_package_write"
addtask populate_sdk
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 09/17] populate_sdk: enable basic multilib support
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (7 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 08/17] populate_sdk_base.bbclass: Change to using task specific depends Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 10/17] u-boot: Don't make the -Os removal part of global settings Saul Wold
` (8 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
In order to enable basic multilib support for the export of an SDK
image, a number of minor changes had to be made:
The value of MULTIMACH_TARGET_SYS needs to be variable. This way we
can define the value to the appropriate multilib. (Also in some cases
the default PACKAGE_ARCH is set to MACHINE_ARCH which is incorrect for
the SDK.) Add a companion REAL_MULTIMACH_TARGET_SYS, based on code
from meta-environment, to allow for this.
We have to convert the do_populate_sdk into a python call, and then
break up the previous items into three parts.
* Image construction
* Setup of environment files
* Generation of the tarball
Then we can iterate over the multilibs to populate the environment files.
Finally, matching changes were needed in the toolchain-scripts file. And
what I presume is an optimization of immediate evaluation for
TOOLCHAIN_CONFIGSITE_NOCACHE and ..._SYSROOTCACHE needed to be done at
runtime, otherwise the wrong values may be used.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/populate_sdk_base.bbclass | 42 ++++++++++++++++++++++++++++---
meta/classes/toolchain-scripts.bbclass | 16 +++++++----
2 files changed, 48 insertions(+), 10 deletions(-)
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index 6508bd9..6dc66fb 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -16,6 +16,10 @@ TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${DISTRO_VERSION}"
SDK_RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
SDK_DEPENDS = "virtual/fakeroot-native sed-native"
+# We want the MULTIARCH_TARGET_SYS to point to the TUNE_PKGARCH, not PACKAGE_ARCH as it
+# could be set to the MACHINE_ARCH
+REAL_MULTIMACH_TARGET_SYS = "${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}"
+
PID = "${@os.getpid()}"
EXCLUDE_FROM_WORLD = "1"
@@ -27,7 +31,33 @@ python () {
runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", d)
}
-fakeroot do_populate_sdk() {
+fakeroot python do_populate_sdk() {
+ bb.build.exec_func("populate_sdk_image", d)
+
+ # Handle multilibs in the SDK environment, siteconfig, etc files...
+ localdata = bb.data.createCopy(d)
+
+ # make sure we only use the WORKDIR value from 'd', or it can change
+ localdata.setVar('WORKDIR', d.getVar('WORKDIR', True))
+
+ # make sure we only use the SDKTARGETSYSROOT value from 'd'
+ localdata.setVar('SDKTARGETSYSROOT', d.getVar('SDKTARGETSYSROOT', True))
+
+ # Process DEFAULTTUNE
+ bb.build.exec_func("create_sdk_files", localdata)
+
+ variants = d.getVar("MULTILIB_VARIANTS", True) or ""
+ for item in variants.split():
+ # Load overrides from 'd' to avoid having to reset the value...
+ overrides = d.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item
+ localdata.setVar("OVERRIDES", overrides)
+ bb.data.update_data(localdata)
+ bb.build.exec_func("create_sdk_files", localdata)
+
+ bb.build.exec_func("tar_sdk", d)
+}
+
+fakeroot populate_sdk_image() {
rm -rf ${SDK_OUTPUT}
mkdir -p ${SDK_OUTPUT}
@@ -54,15 +84,19 @@ fakeroot do_populate_sdk() {
# Link the ld.so.cache file into the hosts filesystem
ln -s /etc/ld.so.cache ${SDK_OUTPUT}/${SDKPATHNATIVE}/etc/ld.so.cache
+}
+fakeroot create_sdk_files() {
# Setup site file for external use
- toolchain_create_sdk_siteconfig ${SDK_OUTPUT}/${SDKPATH}/site-config-${MULTIMACH_TARGET_SYS}
+ toolchain_create_sdk_siteconfig ${SDK_OUTPUT}/${SDKPATH}/site-config-${REAL_MULTIMACH_TARGET_SYS}
- toolchain_create_sdk_env_script
+ toolchain_create_sdk_env_script ${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}
# Add version information
- toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${MULTIMACH_TARGET_SYS}
+ toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${REAL_MULTIMACH_TARGET_SYS}
+}
+fakeroot tar_sdk() {
# Package it up
mkdir -p ${SDK_DEPLOY}
cd ${SDK_OUTPUT}
diff --git a/meta/classes/toolchain-scripts.bbclass b/meta/classes/toolchain-scripts.bbclass
index 2099c4d..bedcd61 100644
--- a/meta/classes/toolchain-scripts.bbclass
+++ b/meta/classes/toolchain-scripts.bbclass
@@ -1,15 +1,19 @@
inherit siteinfo
+# We want to be able to change the value of MULTIMACH_TARGET_SYS, because it
+# doesn't always match our expectations... but we default to the stock value
+REAL_MULTIMACH_TARGET_SYS ?= "${MULTIMACH_TARGET_SYS}"
+
# This function creates an environment-setup-script for use in a deployable SDK
toolchain_create_sdk_env_script () {
# Create environment setup script
- script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${MULTIMACH_TARGET_SYS}
+ script=${1:-${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}}
rm -f $script
touch $script
- echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:${SDKPATHNATIVE}${bindir_nativesdk}/${MULTIMACH_TARGET_SYS}:$PATH' >> $script
+ echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:${SDKPATHNATIVE}${bindir_nativesdk}/${REAL_MULTIMACH_TARGET_SYS}:$PATH' >> $script
echo 'export PKG_CONFIG_SYSROOT_DIR=${SDKTARGETSYSROOT}' >> $script
echo 'export PKG_CONFIG_PATH=${SDKTARGETSYSROOT}${libdir}/pkgconfig' >> $script
- echo 'export CONFIG_SITE=${SDKPATH}/site-config-${MULTIMACH_TARGET_SYS}' >> $script
+ echo 'export CONFIG_SITE=${SDKPATH}/site-config-${REAL_MULTIMACH_TARGET_SYS}' >> $script
echo 'export CC=${TARGET_PREFIX}gcc' >> $script
echo 'export CXX=${TARGET_PREFIX}g++' >> $script
echo 'export GDB=${TARGET_PREFIX}gdb' >> $script
@@ -36,7 +40,7 @@ toolchain_create_sdk_env_script () {
# This function creates an environment-setup-script in the TMPDIR which enables
# a OE-core IDE to integrate with the build tree
toolchain_create_tree_env_script () {
- script=${TMPDIR}/environment-setup-${MULTIMACH_TARGET_SYS}
+ script=${TMPDIR}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}
rm -f $script
touch $script
echo 'export PATH=${PATH}' >> $script
@@ -103,8 +107,8 @@ toolchain_create_sdk_env_script_for_installer () {
}
#we get the cached site config in the runtime
-TOOLCHAIN_CONFIGSITE_NOCACHE := "${@siteinfo_get_files(d, True)}"
-TOOLCHAIN_CONFIGSITE_SYSROOTCACHE := "${STAGING_DATADIR}/${TARGET_SYS}_config_site.d"
+TOOLCHAIN_CONFIGSITE_NOCACHE = "${@siteinfo_get_files(d, True)}"
+TOOLCHAIN_CONFIGSITE_SYSROOTCACHE = "${STAGING_DATADIR}/${TARGET_SYS}_config_site.d"
TOOLCHAIN_NEED_CONFIGSITE_CACHE = "${TCLIBC} ncurses"
#This function create a site config file
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 10/17] u-boot: Don't make the -Os removal part of global settings.
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (8 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 09/17] populate_sdk: enable basic multilib support Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 11/17] u-boot: do not clobber PARALLEL_MAKE setting Saul Wold
` (7 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Paul Gortmaker <paul.gortmaker@windriver.com>
We don't want to force everyone to be stripping the -Os
flags from their u-boot builds. Remove it, since it pertains
to an old toolchain issue that is no longer relevant, and it
breaks the powerpc mpc8315.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
meta/recipes-bsp/u-boot/u-boot.inc | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc
index a13eddc..5de3583 100644
--- a/meta/recipes-bsp/u-boot/u-boot.inc
+++ b/meta/recipes-bsp/u-boot/u-boot.inc
@@ -7,8 +7,7 @@ inherit deploy
PARALLEL_MAKE=""
-# GCC 4.5.1 builds unusable binaries using -Os, remove it from OPTFLAGS
-EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX} OPTFLAGS='-O2'"
+EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}"
python () {
if not d.getVar("UBOOT_MACHINE", True):
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 11/17] u-boot: do not clobber PARALLEL_MAKE setting
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (9 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 10/17] u-boot: Don't make the -Os removal part of global settings Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 12/17] autotools.bbclass: When configure fails, dump the config.log files the logs Saul Wold
` (6 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Paul Gortmaker <paul.gortmaker@windriver.com>
The u-boot tree is fully capable of parallel builds, so this
setting should not exist as a blanket setting for all of the
recipes. Going forward, if there is a parallelism issue
in u-boot, it needs to be reported and fixed there, and not
with the "make -j1" band-aid approach.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
meta/recipes-bsp/u-boot/u-boot.inc | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc
index 5de3583..afc2d12 100644
--- a/meta/recipes-bsp/u-boot/u-boot.inc
+++ b/meta/recipes-bsp/u-boot/u-boot.inc
@@ -5,8 +5,6 @@ PROVIDES = "virtual/bootloader"
inherit deploy
-PARALLEL_MAKE=""
-
EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}"
python () {
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 12/17] autotools.bbclass: When configure fails, dump the config.log files the logs
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (10 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 11/17] u-boot: do not clobber PARALLEL_MAKE setting Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 13/17] libc-common: Allow -dbg package to append, and not just set package variables Saul Wold
` (5 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Richard Purdie <richard.purdie@linuxfoundation.org>
When configure fails, it usually says "see config.log" yet nobody ever shares
the config.log file meaning the person trying to help invariably has to ask
for more information.
This patch dumps all the config.log files into the main bitbake log files when
configure fails, meaning all the information is present to help someone debug
such failures. It does make the log rather larger but this is preferable to
not having enough information in most cases.
[YOCTO #2463]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
meta/classes/autotools.bbclass | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass
index 9b36f3c..02b984d 100644
--- a/meta/classes/autotools.bbclass
+++ b/meta/classes/autotools.bbclass
@@ -74,7 +74,14 @@ oe_runconf () {
cfgscript="${S}/configure"
if [ -x "$cfgscript" ] ; then
bbnote "Running $cfgscript ${CONFIGUREOPTS} ${EXTRA_OECONF} $@"
- ${CACHED_CONFIGUREVARS} $cfgscript ${CONFIGUREOPTS} ${EXTRA_OECONF} "$@" || bbfatal "oe_runconf failed"
+ set +e
+ ${CACHED_CONFIGUREVARS} $cfgscript ${CONFIGUREOPTS} ${EXTRA_OECONF} "$@"
+ if [ "$?" != "0" ]; then
+ echo "Configure failed. The contents of all config.log files follows to aid debugging"
+ find ${S} -name config.log -print -exec cat {} \;
+ bbfatal "oe_runconf failed"
+ fi
+ set -e
else
bbfatal "no configure script found at $cfgscript"
fi
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 13/17] libc-common: Allow -dbg package to append, and not just set package variables
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (11 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 12/17] autotools.bbclass: When configure fails, dump the config.log files the logs Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 14/17] package.bbclass: Allow a package to skip per file dependency generation Saul Wold
` (4 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
The libc-common attempts to rewrite the package information in a way similar
to debian.bbclass. When it does this, it should be appending to the
dependency variables (RPROVIDES, RREPLACES, and RCONFLICTS), instead
of simply setting a hard coded value. Otherwise the lib package can not
tailor the dependency variables to suite it's needs.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/libc-common.bbclass | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/meta/classes/libc-common.bbclass b/meta/classes/libc-common.bbclass
index 9b91f0a..8145d64 100644
--- a/meta/classes/libc-common.bbclass
+++ b/meta/classes/libc-common.bbclass
@@ -29,7 +29,7 @@ python populate_packages_prepend () {
d.setVar('PKG_'+bpn+'-dev', 'libc6-dev')
d.setVar('PKG_'+bpn+'-dbg', 'libc6-dbg')
# For backward compatibility with old -dbg package
- d.setVar('RPROVIDES_' + bpn + '-dbg', 'libc-dbg')
- d.setVar('RCONFLICTS_' + bpn + '-dbg', 'libc-dbg')
- d.setVar('RREPLACES_' + bpn + '-dbg', 'libc-dbg')
+ d.appendVar('RPROVIDES_' + bpn + '-dbg', ' libc-dbg')
+ d.appendVar('RCONFLICTS_' + bpn + '-dbg', ' libc-dbg')
+ d.appendVar('RREPLACES_' + bpn + '-dbg', ' libc-dbg')
}
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 14/17] package.bbclass: Allow a package to skip per file dependency generation
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (12 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 13/17] libc-common: Allow -dbg package to append, and not just set package variables Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 15/17] image.bbclass: Add support to build the SDK in parallel with the image Saul Wold
` (3 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
Most of the time skipping per file dependency generation is a bad idea, but
when building a nativesdk or similar you may be required to pickup host
dependencies. These host dependencies can not always be reconciled within
the scope of other nativesdk components, so if we skip them we can facilitate
this unique situation.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/package.bbclass | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index 0b98c6b..d94d32f 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -1154,6 +1154,9 @@ RPMDEPS = "${STAGING_LIBDIR_NATIVE}/rpm/bin/rpmdeps-oecore --macros ${STAGING_LI
python package_do_filedeps() {
import re
+ if d.getVar('SKIP_FILEDEPS', True) == '1':
+ return
+
pkgdest = d.getVar('PKGDEST', True)
packages = d.getVar('PACKAGES', True)
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 15/17] image.bbclass: Add support to build the SDK in parallel with the image
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (13 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 14/17] package.bbclass: Allow a package to skip per file dependency generation Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 16/17] base.bbclass: Add cross-canadian-${TRANSLATED_TARGET_ARCH} to the license exclusion list Saul Wold
` (2 subsequent siblings)
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
When building an image recipe, you can now build a companion SDK by
calling the populate_sdk task:
bitbake -c populate_sdk core-image-minimal
Note: there are still issues w/ the SDK not working completely with
multilibs.
A lock is required between rootfs and populate_sdk activities to prevent
configuration file clashes and similar package management problems in ipk
and deb based systems. (RPM already had a lock for a different reason.)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/image.bbclass | 5 +++++
meta/classes/populate_sdk_base.bbclass | 1 +
meta/classes/populate_sdk_deb.bbclass | 2 ++
meta/classes/populate_sdk_ipk.bbclass | 2 ++
meta/classes/rootfs_deb.bbclass | 2 ++
meta/classes/rootfs_ipk.bbclass | 2 ++
6 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 9fae1fe..24fd868 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -3,6 +3,11 @@ inherit rootfs_${IMAGE_PKGTYPE}
IMAGETEST ?= "dummy"
inherit imagetest-${IMAGETEST}
+inherit populate_sdk_base
+
+TOOLCHAIN_TARGET_TASK += "${PACKAGE_INSTALL}"
+TOOLCHAIN_TARGET_TASK_ATTEMPTONLY += "${PACKAGE_INSTALL_ATTEMPTONLY} ${PACKAGE_GROUP_dev-pkgs} ${PACKAGE_GROUP_dbg-pkgs}"
+
inherit gzipnative
LICENSE = "MIT"
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index 6dc66fb..ed2dca0 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -120,6 +120,7 @@ populate_sdk_log_check() {
done
}
+do_populate_sdk[dirs] = "${TOPDIR}"
do_populate_sdk[nostamp] = "1"
do_populate_sdk[depends] = "${@' '.join([x + ':do_populate_sysroot' for x in d.getVar('SDK_DEPENDS', True).split()])}"
do_populate_sdk[rdepends] = "${@' '.join([x + ':do_populate_sysroot' for x in d.getVar('SDK_RDEPENDS', True).split()])}"
diff --git a/meta/classes/populate_sdk_deb.bbclass b/meta/classes/populate_sdk_deb.bbclass
index c3b3e0c..9e9e1e1 100644
--- a/meta/classes/populate_sdk_deb.bbclass
+++ b/meta/classes/populate_sdk_deb.bbclass
@@ -6,6 +6,8 @@ DEB_SDK_ARCH = "${@[d.getVar('SDK_ARCH', True), "i386"]\
[d.getVar('SDK_ARCH', True) in \
["x86", "i486", "i586", "i686", "pentium"]]}"
+do_populate_sdk[lockfiles] += "${WORKDIR}/deb.lock"
+
populate_sdk_post_deb () {
local target_rootfs=$1
diff --git a/meta/classes/populate_sdk_ipk.bbclass b/meta/classes/populate_sdk_ipk.bbclass
index aa3efde..4321afb 100644
--- a/meta/classes/populate_sdk_ipk.bbclass
+++ b/meta/classes/populate_sdk_ipk.bbclass
@@ -1,6 +1,8 @@
do_populate_sdk[depends] += "opkg-native:do_populate_sysroot opkg-utils-native:do_populate_sysroot"
do_populate_sdk[recrdeptask] += "do_package_write_ipk"
+do_populate_sdk[lockfiles] += "${WORKDIR}/ipk.lock"
+
populate_sdk_ipk() {
rm -f ${IPKGCONF_TARGET}
diff --git a/meta/classes/rootfs_deb.bbclass b/meta/classes/rootfs_deb.bbclass
index 6c9767f..4ea71da 100644
--- a/meta/classes/rootfs_deb.bbclass
+++ b/meta/classes/rootfs_deb.bbclass
@@ -8,6 +8,8 @@ ROOTFS_PKGMANAGE_BOOTSTRAP = "run-postinsts"
do_rootfs[depends] += "dpkg-native:do_populate_sysroot apt-native:do_populate_sysroot"
do_rootfs[recrdeptask] += "do_package_write_deb"
+do_rootfs[lockfiles] += "${WORKDIR}/deb.lock"
+
DEB_POSTPROCESS_COMMANDS = "rootfs_install_all_locales; "
opkglibdir = "${localstatedir}/lib/opkg"
diff --git a/meta/classes/rootfs_ipk.bbclass b/meta/classes/rootfs_ipk.bbclass
index 1580086..9732385 100644
--- a/meta/classes/rootfs_ipk.bbclass
+++ b/meta/classes/rootfs_ipk.bbclass
@@ -12,6 +12,8 @@ ROOTFS_PKGMANAGE_BOOTSTRAP = "run-postinsts"
do_rootfs[depends] += "opkg-native:do_populate_sysroot opkg-utils-native:do_populate_sysroot"
do_rootfs[recrdeptask] += "do_package_write_ipk"
+do_rootfs[lockfiles] += "${WORKDIR}/ipk.lock"
+
IPKG_ARGS = "-f ${IPKGCONF_TARGET} -o ${IMAGE_ROOTFS} --force-overwrite"
OPKG_PREPROCESS_COMMANDS = "package_update_index_ipk; package_generate_ipkg_conf"
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 16/17] base.bbclass: Add cross-canadian-${TRANSLATED_TARGET_ARCH} to the license exclusion list
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (14 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 15/17] image.bbclass: Add support to build the SDK in parallel with the image Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 17/17] openjade-native: fix undefined Getopts error, use std namespace Saul Wold
2012-07-03 14:55 ` [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Richard Purdie
17 siblings, 0 replies; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Mark Hatle <mark.hatle@windriver.com>
This appears to be an oversight in the original implementation. All of the
host package types were being ignored except for the SDK cross-canadian type.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/base.bbclass | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 9219170..08065c6 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -432,7 +432,7 @@ python () {
dont_want_license = d.getVar('INCOMPATIBLE_LICENSE', True)
- if dont_want_license and not pn.endswith("-native") and not pn.endswith("-cross") and not pn.endswith("-cross-initial") and not pn.endswith("-cross-intermediate") and not pn.endswith("-crosssdk-intermediate") and not pn.endswith("-crosssdk") and not pn.endswith("-crosssdk-initial") and not pn.endswith("-nativesdk"):
+ if dont_want_license and not pn.endswith("-native") and not pn.endswith("-cross") and not pn.endswith("-cross-initial") and not pn.endswith("-cross-intermediate") and not pn.endswith("-crosssdk-intermediate") and not pn.endswith("-crosssdk") and not pn.endswith("-crosssdk-initial") and not pn.endswith("-cross-canadian-%s" % d.getVar('TRANSLATED_TARGET_ARCH', True)) and not pn.endswith("-nativesdk"):
# Internally, we'll use the license mapping. This way INCOMPATIBLE_LICENSE = "GPLv2" and
# INCOMPATIBLE_LICENSE = "GPLv2.0" will pick up all variations of GPL-2.0
spdx_license = return_spdx(d, dont_want_license)
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [CONSOLIDATED PULL 17/17] openjade-native: fix undefined Getopts error, use std namespace
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (15 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 16/17] base.bbclass: Add cross-canadian-${TRANSLATED_TARGET_ARCH} to the license exclusion list Saul Wold
@ 2012-07-03 7:09 ` Saul Wold
2012-07-03 12:59 ` Martin Jansa
2012-07-03 14:55 ` [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Richard Purdie
17 siblings, 1 reply; 20+ messages in thread
From: Saul Wold @ 2012-07-03 7:09 UTC (permalink / raw)
To: openembedded-core
From: Dennis Lan <dennis.yxun@gmail.com>
Using Gentoo Linux as the build host, it fails without this patch
Use Getopt::Std in place of getopts.pl.
https://bugs.gentoo.org/show_bug.cgi?id=420083
which following error:
/usr/bin/perl -w ./../msggen.pl -l jstyleModule InterpreterMessages.msg
/usr/bin/perl -w ./../msggen.pl -l jstyleModule DssslAppMessages.msg
Undefined subroutine &main::Getopts called at ./../msggen.pl line 22.
make[2]: *** [InterpreterMessages.h] Error 2
make[2]: *** Waiting for unfinished jobs....
Undefined subroutine &main::Getopts called at ./../msggen.pl line 22.
make[2]: *** [DssslAppMessages.h] Error 2
Signed-off-by: Dennis Lan <dennis.yxun@gmail.com>
---
.../openjade/openjade-1.3.2/msggen.pl.patch | 44 ++++++++++++++++++++
.../openjade/openjade-native_1.3.2.bb | 1 +
2 files changed, 45 insertions(+), 0 deletions(-)
create mode 100644 meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch
diff --git a/meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch b/meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch
new file mode 100644
index 0000000..b47fd46
--- /dev/null
+++ b/meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch
@@ -0,0 +1,44 @@
+commit fcc5b94f118495b1a467edcda6c6f631691c3f69
+Author: Dennis Lan <dennis.yxun@gmail.com>
+Date: Tue Jul 3 09:25:42 2012 +0800
+
+ openjade: fix undefined Getopts error, use std namespace
+
+ Using Gentoo Linux as the build host, it fails without this patch
+ Use Getopt::Std in place of getopts.pl.
+
+ Upstream-Status: Inappropriate [no upstream]
+ Original-Author-By: Mike Gilbert <floppym@gentoo.org>
+ Signed-off-by: Dennis Lan <dennis.yxun@gmail.com>
+
+diff --git a/msggen.pl b/msggen.pl
+index 0c33968..2ee3f66 100644
+--- a/msggen.pl
++++ b/msggen.pl
+@@ -4,6 +4,7 @@
+ # See the file COPYING for copying permission.
+
+ use POSIX;
++use Getopt::Std;
+
+ # Package and version.
+ $package = 'openjade';
+@@ -18,8 +19,7 @@ $gen_c = 0;
+ undef $opt_l;
+ undef $opt_p;
+ undef $opt_t;
+-do 'getopts.pl';
+-&Getopts('l:p:t:');
++getopts('l:p:t:');
+ $module = $opt_l;
+ $pot_file = $opt_p;
+
+@@ -72,7 +72,7 @@ while (<DEF>) {
+ else {
+ $field[0] =~ /^[IWQXE][0-9]$/ || &error("invalid first field");;
+ $type[$num] = substr($field[0], 0, 1);
+- $argc = int(substr($field[0], 1, 1));
++ $argc = substr($field[0], 1, 1);
+ }
+ $nargs[$num] = $argc;
+ $field[1] =~ /^[a-zA-Z_][a-zA-Z0-9_]+$/ || &error("invalid tag");
diff --git a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
index 5b29c1f..efd1e11 100644
--- a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
+++ b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
@@ -14,6 +14,7 @@ RDEPENDS_${PN} = "sgml-common-native"
SRC_URI = "${SOURCEFORGE_MIRROR}/openjade/openjade-${PV}.tar.gz \
file://makefile.patch \
+ file://msggen.pl.patch \
file://reautoconf.patch \
file://user-declared-default-constructor.patch"
--
1.7.7.6
^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [CONSOLIDATED PULL 17/17] openjade-native: fix undefined Getopts error, use std namespace
2012-07-03 7:09 ` [CONSOLIDATED PULL 17/17] openjade-native: fix undefined Getopts error, use std namespace Saul Wold
@ 2012-07-03 12:59 ` Martin Jansa
0 siblings, 0 replies; 20+ messages in thread
From: Martin Jansa @ 2012-07-03 12:59 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
[-- Attachment #1: Type: text/plain, Size: 3768 bytes --]
On Tue, Jul 03, 2012 at 12:09:46AM -0700, Saul Wold wrote:
> From: Dennis Lan <dennis.yxun@gmail.com>
>
> Using Gentoo Linux as the build host, it fails without this patch
> Use Getopt::Std in place of getopts.pl.
This looks like older version (v2 instead of v3) without PR bump.
>
> https://bugs.gentoo.org/show_bug.cgi?id=420083
>
> which following error:
> /usr/bin/perl -w ./../msggen.pl -l jstyleModule InterpreterMessages.msg
> /usr/bin/perl -w ./../msggen.pl -l jstyleModule DssslAppMessages.msg
> Undefined subroutine &main::Getopts called at ./../msggen.pl line 22.
> make[2]: *** [InterpreterMessages.h] Error 2
> make[2]: *** Waiting for unfinished jobs....
> Undefined subroutine &main::Getopts called at ./../msggen.pl line 22.
> make[2]: *** [DssslAppMessages.h] Error 2
>
> Signed-off-by: Dennis Lan <dennis.yxun@gmail.com>
> ---
> .../openjade/openjade-1.3.2/msggen.pl.patch | 44 ++++++++++++++++++++
> .../openjade/openjade-native_1.3.2.bb | 1 +
> 2 files changed, 45 insertions(+), 0 deletions(-)
> create mode 100644 meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch
>
> diff --git a/meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch b/meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch
> new file mode 100644
> index 0000000..b47fd46
> --- /dev/null
> +++ b/meta/recipes-devtools/openjade/openjade-1.3.2/msggen.pl.patch
> @@ -0,0 +1,44 @@
> +commit fcc5b94f118495b1a467edcda6c6f631691c3f69
> +Author: Dennis Lan <dennis.yxun@gmail.com>
> +Date: Tue Jul 3 09:25:42 2012 +0800
> +
> + openjade: fix undefined Getopts error, use std namespace
> +
> + Using Gentoo Linux as the build host, it fails without this patch
> + Use Getopt::Std in place of getopts.pl.
> +
> + Upstream-Status: Inappropriate [no upstream]
> + Original-Author-By: Mike Gilbert <floppym@gentoo.org>
> + Signed-off-by: Dennis Lan <dennis.yxun@gmail.com>
> +
> +diff --git a/msggen.pl b/msggen.pl
> +index 0c33968..2ee3f66 100644
> +--- a/msggen.pl
> ++++ b/msggen.pl
> +@@ -4,6 +4,7 @@
> + # See the file COPYING for copying permission.
> +
> + use POSIX;
> ++use Getopt::Std;
> +
> + # Package and version.
> + $package = 'openjade';
> +@@ -18,8 +19,7 @@ $gen_c = 0;
> + undef $opt_l;
> + undef $opt_p;
> + undef $opt_t;
> +-do 'getopts.pl';
> +-&Getopts('l:p:t:');
> ++getopts('l:p:t:');
> + $module = $opt_l;
> + $pot_file = $opt_p;
> +
> +@@ -72,7 +72,7 @@ while (<DEF>) {
> + else {
> + $field[0] =~ /^[IWQXE][0-9]$/ || &error("invalid first field");;
> + $type[$num] = substr($field[0], 0, 1);
> +- $argc = int(substr($field[0], 1, 1));
> ++ $argc = substr($field[0], 1, 1);
> + }
> + $nargs[$num] = $argc;
> + $field[1] =~ /^[a-zA-Z_][a-zA-Z0-9_]+$/ || &error("invalid tag");
> diff --git a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
> index 5b29c1f..efd1e11 100644
> --- a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
> +++ b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
> @@ -14,6 +14,7 @@ RDEPENDS_${PN} = "sgml-common-native"
>
> SRC_URI = "${SOURCEFORGE_MIRROR}/openjade/openjade-${PV}.tar.gz \
> file://makefile.patch \
> + file://msggen.pl.patch \
> file://reautoconf.patch \
> file://user-declared-default-constructor.patch"
>
> --
> 1.7.7.6
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
` (16 preceding siblings ...)
2012-07-03 7:09 ` [CONSOLIDATED PULL 17/17] openjade-native: fix undefined Getopts error, use std namespace Saul Wold
@ 2012-07-03 14:55 ` Richard Purdie
17 siblings, 0 replies; 20+ messages in thread
From: Richard Purdie @ 2012-07-03 14:55 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
On Tue, 2012-07-03 at 00:09 -0700, Saul Wold wrote:
> Richard,
>
> This has been built against the AB and ready for pull
>
> There is one multilib related issue I am still tracking down
> related to task-core-boot, but I can seem to determin which
> commit here casues it yet.
>
> Please pull this set and we will work that out.
I've merged this. I updated to v3 of the openjade-native patch.
Cheers,
Richard
^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2012-07-03 15:06 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-03 7:09 [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 01/17] kconfig-frontends: New recipe Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 02/17] icu 3.6: do_install failed: Segmentation fault Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 03/17] linux-yocto-custom: Remove linux-tools Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 04/17] core-image*sdk: Add kernel-dev to sdk images Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 05/17] Fix manual log file paths Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 06/17] populate_sdk.bbclass: Split into two parts Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 07/17] populate_sdk: Allow for attempt only packages in the SDK Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 08/17] populate_sdk_base.bbclass: Change to using task specific depends Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 09/17] populate_sdk: enable basic multilib support Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 10/17] u-boot: Don't make the -Os removal part of global settings Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 11/17] u-boot: do not clobber PARALLEL_MAKE setting Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 12/17] autotools.bbclass: When configure fails, dump the config.log files the logs Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 13/17] libc-common: Allow -dbg package to append, and not just set package variables Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 14/17] package.bbclass: Allow a package to skip per file dependency generation Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 15/17] image.bbclass: Add support to build the SDK in parallel with the image Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 16/17] base.bbclass: Add cross-canadian-${TRANSLATED_TARGET_ARCH} to the license exclusion list Saul Wold
2012-07-03 7:09 ` [CONSOLIDATED PULL 17/17] openjade-native: fix undefined Getopts error, use std namespace Saul Wold
2012-07-03 12:59 ` Martin Jansa
2012-07-03 14:55 ` [CONSOLIDATED PULL 00/17] SDK Fixes and other Patches Richard Purdie
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox