aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bitbake/lib/bb/data_smart.py11
-rw-r--r--meta/classes/insane.bbclass20
-rw-r--r--meta/classes/kernel.bbclass26
-rw-r--r--meta/packages/chrpath/chrpath_0.13.bb12
-rw-r--r--meta/packages/console-tools/console-tools_0.3.2.bb1
-rwxr-xr-xscripts/poky-env-internal2
6 files changed, 61 insertions, 11 deletions
diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py
index c93aea7fef3..988d5c3578f 100644
--- a/bitbake/lib/bb/data_smart.py
+++ b/bitbake/lib/bb/data_smart.py
@@ -171,14 +171,15 @@ class DataSmart:
Rename the variable key to newkey
"""
val = self.getVar(key, 0)
- if val is None:
- return
-
- self.setVar(newkey, val)
+ if val is not None:
+ self.setVar(newkey, val)
for i in ('_append', '_prepend'):
+ src = self.getVarFlag(key, i)
+ if src is None:
+ continue
+
dest = self.getVarFlag(newkey, i) or []
- src = self.getVarFlag(key, i) or []
dest.extend(src)
self.setVarFlag(newkey, i, dest)
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 31d28ca6d48..538cc140ee3 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -439,6 +439,19 @@ def package_qa_check_rdepends(pkg, workdir, d):
return sane
+def configure_qa_check_gettext(d):
+ # Check to see if gettext is required and if so whether it's in DEPENDS
+ # Returning False means we need gettext but don't have it in DEPENDS
+ deps = bb.utils.explode_deps(bb.data.getVar('DEPENDS', d, True) or "")
+ if "gettext" in deps:
+ return True
+
+ check = "grep \"^[[:space:]]*AM_GNU_GETTEXT\" $CONFIGURE_AC >/dev/null"
+ if os.system(check) == 0:
+ return True
+ else:
+ return False
+
# The PACKAGE FUNC to scan each package
python do_package_qa () {
bb.note("DO PACKAGE QA")
@@ -481,9 +494,14 @@ python do_qa_staging() {
bb.fatal("QA staging was broken by the package built above")
}
-# Check broken config.log files
+# Check broken config.log files & for packages requiring Gettext which don't
+# have it in DEPENDS
addtask qa_configure after do_configure before do_compile
python do_qa_configure() {
+ bb.note("Checking for gettext requirement")
+ if not configure_qa_check_gettext(d):
+ bb.fatal("Gettext required by configure but not in DEPENDS")
+
bb.note("Checking sanity of the config.log file")
for root, dirs, files in os.walk(bb.data.getVar('WORKDIR', d, True)):
statement = "grep 'CROSS COMPILE Badness:' %s > /dev/null" % \
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index 0907a48fb25..f902b7e9cec 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -43,7 +43,7 @@ KERNEL_CC = "${CCACHE}${HOST_PREFIX}gcc${KERNEL_CCSUFFIX} ${HOST_CC_KERNEL_ARCH}
KERNEL_LD = "${LD}${KERNEL_LDSUFFIX} ${HOST_LD_KERNEL_ARCH}"
# Where built kernel lies in the kernel tree
-KERNEL_OUTPUT = "arch/${ARCH}/boot/${KERNEL_IMAGETYPE}"
+KERNEL_OUTPUT ?= "arch/${ARCH}/boot/${KERNEL_IMAGETYPE}"
KERNEL_IMAGEDEST = "boot"
#
@@ -63,6 +63,10 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
UBOOT_ENTRYPOINT ?= "20008000"
UBOOT_LOADADDRESS ?= "${UBOOT_ENTRYPOINT}"
+# For the kernel, we don't want the '-e MAKEFLAGS=' in EXTRA_OEMAKE.
+# We don't want to override kernel Makefile variables from the environment
+EXTRA_OEMAKE = ""
+
kernel_do_compile() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE
oe_runmake include/linux/version.h CC="${KERNEL_CC}" LD="${KERNEL_LD}"
@@ -91,6 +95,7 @@ kernel_do_install() {
install -m 0644 System.map ${D}/boot/System.map-${KERNEL_VERSION}
install -m 0644 .config ${D}/boot/config-${KERNEL_VERSION}
install -m 0644 vmlinux ${D}/boot/vmlinux-${KERNEL_VERSION}
+ [ -e Module.symvers ] && install -m 0644 Module.symvers ${D}/boot/Module.symvers-${KERNEL_VERSION}
install -d ${D}/etc/modutils
if [ "${KERNEL_MAJOR_VERSION}" = "2.6" ]; then
install -d ${D}/etc/modprobe.d
@@ -106,7 +111,20 @@ kernel_do_install() {
mkdir -p $kerneldir/include/$ASMDIR
cp -fR include/$ASMDIR/* $kerneldir/include/$ASMDIR/
- rm -f $ASMDIR $kerneldir/include/asm
+ # Kernel 2.6.27 moved headers from includes/asm-${ARCH} to arch/${ARCH}/include/asm
+ if [ -e arch/${ARCH}/include/asm/ ] ; then
+ cp -fR arch/${ARCH}/include/asm/* $kerneldir/include/$ASMDIR/
+ install -d $kerneldir/arch/${ARCH}/include
+ cp -fR arch/${ARCH}/* $kerneldir/arch/${ARCH}/
+
+ # Check for arch/x86 on i386
+ elif [ -d arch/x86/include/asm/ ]; then
+ cp -fR arch/x86/include/asm/* $kerneldir/include/asm-x86/
+ install -d $kerneldir/arch/x86/include
+ cp -fR arch/x86/* $kerneldir/arch/x86/
+ fi
+
+ rm -f $kerneldir/include/asm
ln -sf $ASMDIR $kerneldir/include/asm
mkdir -p $kerneldir/include/asm-generic
@@ -121,7 +139,7 @@ kernel_do_install() {
mkdir -p $kerneldir/include/pcmcia
cp -fR include/pcmcia/* $kerneldir/include/pcmcia/
- for entry in drivers/crypto include/media include/acpi include/sound include/video; do
+ for entry in drivers/crypto drivers/media include/media include/acpi include/sound include/video include/scsi include/trace; do
if [ -d $entry ]; then
mkdir -p $kerneldir/$entry
cp -fR $entry/* $kerneldir/$entry/
@@ -201,7 +219,7 @@ EXPORT_FUNCTIONS do_compile do_install do_configure
PACKAGES = "kernel kernel-base kernel-image kernel-dev kernel-vmlinux"
FILES = ""
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
-FILES_kernel-dev = "/boot/System.map* /boot/config*"
+FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*"
FILES_kernel-vmlinux = "/boot/vmlinux*"
RDEPENDS_kernel = "kernel-base"
# Allow machines to override this dependency if kernel image files are
diff --git a/meta/packages/chrpath/chrpath_0.13.bb b/meta/packages/chrpath/chrpath_0.13.bb
new file mode 100644
index 00000000000..e843de6872a
--- /dev/null
+++ b/meta/packages/chrpath/chrpath_0.13.bb
@@ -0,0 +1,12 @@
+DESCRIPTION = "chrpath allows you to change the rpath (where the application \
+looks for libraries) in an application. It does not (yet) allow you to add an \
+rpath if there isn't one already."
+LICENSE = "GPL"
+
+SRC_URI = "${DEBIAN_MIRROR}/main/c/chrpath/chrpath_${PV}.orig.tar.gz"
+
+inherit autotools
+
+S = "${WORKDIR}/chrpath-${PV}"
+
+BBCLASSEXTEND = "native"
diff --git a/meta/packages/console-tools/console-tools_0.3.2.bb b/meta/packages/console-tools/console-tools_0.3.2.bb
index cd8021d9ef1..3c5067f1023 100644
--- a/meta/packages/console-tools/console-tools_0.3.2.bb
+++ b/meta/packages/console-tools/console-tools_0.3.2.bb
@@ -1,6 +1,7 @@
SECTION = "base"
LICENSE = "GPL"
DESCRIPTION = "Allows you to set-up and manipulate the Linux console."
+DEPENDS = "gettext"
PR = "r2"
SRC_URI = "${SOURCEFORGE_MIRROR}/lct/console-tools-${PV}.tar.gz \
diff --git a/scripts/poky-env-internal b/scripts/poky-env-internal
index edcc259c2c3..4bfcf63c595 100755
--- a/scripts/poky-env-internal
+++ b/scripts/poky-env-internal
@@ -119,4 +119,4 @@ echo
echo "### Shell environment set up for Poky builds. ###"
echo
-export BB_ENV_EXTRAWHITE="MACHINE DISTRO POKYMODE POKYLIBC OEROOT http_proxy ftp_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY SDKMACHINE"
+export BB_ENV_EXTRAWHITE="MACHINE DISTRO POKYMODE POKYLIBC OEROOT http_proxy ftp_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY SDKMACHINE BB_NUMBER_THREADS"