Skip to contentSkip to conversation

Pending patches

PATCH In review Martin Jansa 2 participants 12 messages Dec 14, 2012 – Dec 15, 2012

lore
Share & tools
lore
#0 lore raw

cover Pending patches

The following changes since commit a24a5e5c9ede4275f7188935a9410b84d406ed19:

libacpi: Remove QA warning: No GNU_HASH in the elf binary (2012-12-13 14:48:13 +0000)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib jansa/pull
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=jansa/pull

Martin Jansa (9):
scripts/sstate-diff-machines.sh: add simple script to compare sstate
checksums between MACHINEs
scripts/sstate-sysroot-cruft.sh: add simple script to find files in
sysroots not tracked by sstate
rootfs_*.bbclass: exclude BUILDNAME var dependency from do_rootfs bitbake.conf: exclude DATETIME var dependency from IMAGE_NAME kernel.bbclass: include PE in KERNEL_IMAGE_BASE_NAME kernel.bbclass: use the same versioning schema for modules.tgz and
provide link to latest
autotools: copy also remove-potcdate.sin from

    ${STAGING_DATADIR_NATIVE}/gettext/po

gettext: move remove-potcdate.sin from gettext-native to
gettext-minimal-native
iptables: include /usr/share/xtables/pf.os in PN if it's build

Phil Blundell (1):
kernel.bbclass: Allow modules*.tar.gz generation to be inhibited

 meta/classes/autotools.bbclass                     |   3 +
 meta/classes/kernel.bbclass                        |  12 ++-
 meta/classes/rootfs_deb.bbclass                    |   1 +
 meta/classes/rootfs_ipk.bbclass                    |   1 +
 meta/classes/rootfs_rpm.bbclass                    |   1 +
 meta/conf/bitbake.conf                             |   1 +
 .../gettext-minimal-0.18.1.1/remove-potcdate.sin   |  19 ++++
 .../gettext/gettext-minimal-native_0.18.1.1.bb     |   4 +-
 meta/recipes-core/gettext/gettext_0.18.1.1.bb      |   3 +-
 meta/recipes-extended/iptables/iptables_1.4.15.bb  |   4 +-
 scripts/sstate-diff-machines.sh                    | 107 +++++++++++++++++++++
 scripts/sstate-sysroot-cruft.sh                    |  78 +++++++++++++++
 12 files changed, 227 insertions(+), 7 deletions(-)
 create mode 100644 meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin
 create mode 100755 scripts/sstate-diff-machines.sh
 create mode 100755 scripts/sstate-sysroot-cruft.sh
Signature · 1 line
1.8.0.2
#1 lore raw

PATCH 1/10 scripts/sstate-diff-machines.sh: add simple script to compare sstate checksums between MACHINEs

* takes tmpdir, machines and targets from command arguments or env variables

---
 scripts/sstate-diff-machines.sh | 107 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 107 insertions(+)
 create mode 100755 scripts/sstate-diff-machines.sh
scripts/sstate-diff-machines.sh new file +107 -0
new file mode 100755
index 0000000..931f9d7
@@ -0,0 +1,107 @@
+#!/bin/sh
+
+# Used to compare sstate checksums between MACHINES
+# Execute script and compare generated list.M files
+
+# It's also usefull to keep older sstate checksums
+# to be able to find out why something is rebuilding
+# after updating metadata
+
+# $ diff \
+#     sstate-diff/1349348392/fake-cortexa8/list.M \
+#     sstate-diff/1349348392/fake-cortexa9/list.M \
+#     | wc -l
+# 538
+
+# Then to compare sigdata use something like:
+# $ ls sstate-diff/1349348392/*/armv7a-vfp-neon*/linux-libc-headers/*do_configure*sigdata*
+#   sstate-diff/1349348392/fake-cortexa8/armv7a-vfp-neon-oe-linux-gnueabi/linux-libc-headers/3.4.3-r0.do_configure.sigdata.cb73b3630a7b8191e72fc469c5137025
+#   sstate-diff/1349348392/fake-cortexa9/armv7a-vfp-neon-oe-linux-gnueabi/linux-libc-headers/3.4.3-r0.do_configure.sigdata.f37ada177bf99ce8af85914df22b5a0b
+# $ bitbake-diffsigs stamps.1349348392/*/armv7a-vfp-neon*/linux-libc-headers/*do_configure*sigdata*
+#   basehash changed from 8d0bd67bb1da6f68717760fc3ef43171 to e869fa61426e88e9c30726ba88a1216a
+#   Variable TUNE_CCARGS value changed from  -march=armv7-a     -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a8 to  -march=armv7-a     -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a9
+
+# Global vars
+tmpdir=
+machines=
+targets=
+default_machines="qemuarm qemux86 qemux86-64"
+default_targets="core-image-base"
+
+usage () {
+  cat << EOF
+Welcome to utility to compare sstate checksums between different MACHINEs.
+$0 <OPTION>
+
+Options:
+  -h, --help
+        Display this help and exit.
+
+  --tmpdir=<tmpdir>
+        Specify tmpdir, will use the environment variable TMPDIR if it is not specified.
+        Something like /OE/oe-core/tmp-eglibc (no / at the end).
+
+  --machines=<machines>
+        List of MACHINEs separated by space, will use the environment variable MACHINES if it is not specified.
+        Default value is "qemuarm qemux86 qemux86-64".
+
+  --targets=<targets>
+        List of targets separated by space, will use the environment variable TARGETS if it is not specified.
+        Default value is "core-image-base".
+EOF
+}
+
+# Print error information and exit.
+echo_error () {
+  echo "ERROR: $1" >&2
+  exit 1
+}
+
+while [ -n "$1" ]; do
+  case $1 in
+    --tmpdir=*)
+      tmpdir=`echo $1 | sed -e 's#^--tmpdir=##' | xargs readlink -e`
+      [ -d "$tmpdir" ] || echo_error "Invalid argument to --tmpdir"
+      shift
+        ;;
+    --machines=*)
+      machines=`echo $1 | sed -e 's#^--machines="*\([^"]*\)"*#\1#'`
+      shift
+        ;;
+    --targets=*)
+      targets=`echo $1 | sed -e 's#^--targets="*\([^"]*\)"*#\1#'`
+      shift
+        ;;
+    --help|-h)
+      usage
+      exit 0
+        ;;
+    *)
+      echo "Invalid arguments $*"
+      echo_error "Try '$0 -h' for more information."
+        ;;
+  esac
+done
+
+# tmpdir directory, use environment variable TMPDIR
+# if it was not specified, otherwise, error.
+[ -n "$tmpdir" ] || tmpdir=$TMPDIR
+[ -n "$tmpdir" ] || echo_error "No tmpdir found!"
+[ -d "$tmpdir" ] || echo_error "Invalid tmpdir \"$tmpdir\""
+[ -n "$machines" ] || machines=$MACHINES
+[ -n "$machines" ] || machines=$default_machines
+[ -n "$targets" ] || targets=$TARGETS
+[ -n "$targets" ] || targets=$default_targets
+
+OUTPUT=${tmpdir}/sstate-diff/`date "+%s"`
+
+for M in ${machines}; do
+  find ${tmpdir}/stamps/ -name \*sigdata\* | xargs rm -f
+  mkdir -p ${OUTPUT}/${M}
+  export MACHINE=${M}; bitbake -S ${targets} | tee -a ${OUTPUT}/${M}/log;
+  cp -ra ${tmpdir}/stamps/* ${OUTPUT}/${M}
+  find ${OUTPUT}/${M} -name \*sigdata\* | sed "s#${OUTPUT}/${M}/##g" | sort > ${OUTPUT}/${M}/list
+  M_UNDERSCORE=`echo ${M} | sed 's/-/_/g'`
+  sed "s/${M_UNDERSCORE}/MACHINE/g; s/${M}/MACHINE/g" ${OUTPUT}/${M}/list | sort > ${OUTPUT}/${M}/list.M
+  find ${tmpdir}/stamps/ -name \*sigdata\* | xargs rm -f
+done
Signature · 1 line
1.8.0.2
#2 lore raw

PATCH 2/10 scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate

In reply to Martin Jansa
---
 scripts/sstate-sysroot-cruft.sh | 78 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 78 insertions(+)
 create mode 100755 scripts/sstate-sysroot-cruft.sh
scripts/sstate-sysroot-cruft.sh new file +78 -0
new file mode 100755
index 0000000..ca2316c
@@ -0,0 +1,78 @@
+#!/bin/sh
+
+# Used to find files installed in sysroot which are not tracked by sstate manifest
+
+# Global vars
+tmpdir=
+
+usage () {
+  cat << EOF
+Welcome to sysroot cruft finding utility.
+$0 <OPTION>
+
+Options:
+  -h, --help
+        Display this help and exit.
+
+  --tmpdir=<tmpdir>
+        Specify tmpdir, will use the environment variable TMPDIR if it is not specified.
+	Something like /OE/oe-core/tmp-eglibc (no / at the end).
+EOF
+}
+
+# Print error information and exit.
+echo_error () {
+  echo "ERROR: $1" >&2
+  exit 1
+}
+
+while [ -n "$1" ]; do
+  case $1 in
+    --tmpdir=*)
+      tmpdir=`echo $1 | sed -e 's#^--tmpdir=##' | xargs readlink -e`
+      [ -d "$tmpdir" ] || echo_error "Invalid argument to --tmpdir"
+      shift
+        ;;
+    --help|-h)
+      usage
+      exit 0
+        ;;
+    *)
+      echo "Invalid arguments $*"
+      echo_error "Try '$0 -h' for more information."
+        ;;
+  esac
+done
+
+# sstate cache directory, use environment variable TMPDIR
+# if it was not specified, otherwise, error.
+[ -n "$tmpdir" ] || tmpdir=$TMPDIR
+[ -n "$tmpdir" ] || echo_error "No tmpdir found!"
+[ -d "$tmpdir" ] || echo_error "Invalid tmpdir \"$tmpdir\""
+
+OUTPUT=${tmpdir}/sysroot.cruft.`date "+%s"`
+WHITELIST="\/var\/pseudo\($\|\/[^\/]*$\) \/shlibs$ \.pyc$ \.pyo$"
+
+mkdir ${OUTPUT}
+find ${tmpdir}/sstate-control -name \*.populate-sysroot\* -o -name \*.package\* | xargs cat | grep sysroots | \
+  sed 's#/$##g; s#///*#/#g' | \
+  # work around for paths ending with / for directories and multiplied // (e.g. paths to native sysroot)
+  sort > ${OUTPUT}/master.list.all
+sort -u ${OUTPUT}/master.list.all > ${OUTPUT}/master.list # -u because some directories are listed for more recipes
+find ${tmpdir}/sysroots/ | \
+  sort > ${OUTPUT}/sysroot.list
+
+diff ${OUTPUT}/master.list.all ${OUTPUT}/master.list > ${OUTPUT}/duplicates
+diff ${OUTPUT}/master.list ${OUTPUT}/sysroot.list > ${OUTPUT}/diff.all
+
+cp ${OUTPUT}/diff.all ${OUTPUT}/diff
+for item in ${WHITELIST}; do
+  sed -i "/${item}/d" ${OUTPUT}/diff;
+done
+
+# too many false positives for directories
+# echo "Following files are installed in sysroot at least twice"
+# cat ${OUTPUT}/duplicates
+
+echo "Following files are installed in sysroot, but not tracked by sstate"
+cat ${OUTPUT}/diff
Signature · 1 line
1.8.0.2
#3 lore raw

PATCH 3/10 rootfs_*.bbclass: exclude BUILDNAME var dependency from do_rootfs

In reply to Martin Jansa

* I have kernel recipe which depends on other recipe to build tiny initramfs
image, without this change it rebuilds not only that initramfs image
but also whole kernel when DATE or TIME is changed and OEBasicHash enabled
* also resolves ERROR shown when bitbake -S is used for image:
ERROR: Bitbake's cached basehash does not match the one we just generated (/OE/oe-core/openembedded-core/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)!
ERROR: The mismatched hashes were 8c35cdf8a5d09c03941f081dd9f6d8dc and b5d6e2e5952770557c48c5779ddb73fc

---
 meta/classes/rootfs_deb.bbclass | 1 +
 meta/classes/rootfs_ipk.bbclass | 1 +
 meta/classes/rootfs_rpm.bbclass | 1 +
 3 files changed, 3 insertions(+)
meta/classes/rootfs_deb.bbclass +1 -0
index 955382f..293953d 100644
@@ -7,6 +7,7 @@ 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[vardepsexclude] += "BUILDNAME"
 
 do_rootfs[lockfiles] += "${DEPLOY_DIR_DEB}/deb.lock"
 
meta/classes/rootfs_ipk.bbclass +1 -0
index 02b1d57..5c962de 100644
@@ -11,6 +11,7 @@ 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[vardepsexclude] += "BUILDNAME"
 
 do_rootfs[lockfiles] += "${WORKDIR}/ipk.lock"
 
meta/classes/rootfs_rpm.bbclass +1 -0
index 2bb1b08..91bf108 100644
@@ -20,6 +20,7 @@ do_rootfs[depends] += "opkg-native:do_populate_sysroot"
 do_rootfs[depends] += "createrepo-native:do_populate_sysroot"
 
 do_rootfs[recrdeptask] += "do_package_write_rpm"
+do_rootfs[vardepsexclude] += "BUILDNAME"
 
 RPM_PREPROCESS_COMMANDS = "package_update_index_rpm; package_generate_rpm_conf; "
 RPM_POSTPROCESS_COMMANDS = ""
Signature · 1 line
1.8.0.2
#4 lore raw

PATCH 4/10 bitbake.conf: exclude DATETIME var dependency from IMAGE_NAME

In reply to Martin Jansa

* resolves ERROR shown when bitbake -S is used for image:
ERROR: Bitbake's cached basehash does not match the one we just generated (/OE/oe-core/openembedded-core/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)!
ERROR: The mismatched hashes were 8c35cdf8a5d09c03941f081dd9f6d8dc and b5d6e2e5952770557c48c5779ddb73fc

---
 meta/conf/bitbake.conf | 1 +
 1 file changed, 1 insertion(+)
meta/conf/bitbake.conf +1 -0
index be3bfc2..578c29f 100644
@@ -407,6 +407,7 @@ STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/usr/src/kernel"
 IMAGE_ROOTFS = "${WORKDIR}/rootfs"
 IMAGE_BASENAME = "${PN}"
 IMAGE_NAME = "${IMAGE_BASENAME}-${MACHINE}-${DATETIME}"
+IMAGE_NAME[vardepsexclude] += "DATETIME"
 IMAGE_LINK_NAME = "${IMAGE_BASENAME}-${MACHINE}"
 
 # This option allows for a percentage overage of the actual image size rather than a
Signature · 1 line
1.8.0.2
#5 lore raw

PATCH 5/10 kernel.bbclass: include PE in KERNEL_IMAGE_BASE_NAME

In reply to Martin Jansa

* without this you it's harder to see which kernel is newer version
e.g. after branch change LOCALCOUNT in SRCPV is reset to 0, so it needs PE bump for upgrade path but then it's clear why gitr1+HASH has newer DATETIME then gitrN+HASH, so include PE in name
* it will sort alphabetically wrong in deploy dir for a while until old images are removed

---
 meta/classes/kernel.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/classes/kernel.bbclass +1 -1
index 8e13662..ee59aaf 100644
@@ -493,7 +493,7 @@ do_sizecheck() {
 
 addtask sizecheck before do_install after do_compile
 
-KERNEL_IMAGE_BASE_NAME ?= "${KERNEL_IMAGETYPE}-${PV}-${PR}-${MACHINE}-${DATETIME}"
+KERNEL_IMAGE_BASE_NAME ?= "${KERNEL_IMAGETYPE}-${PE}-${PV}-${PR}-${MACHINE}-${DATETIME}"
 # Don't include the DATETIME variable in the sstate package signatures
 KERNEL_IMAGE_BASE_NAME[vardepsexclude] = "DATETIME"
 KERNEL_IMAGE_SYMLINK_NAME ?= "${KERNEL_IMAGETYPE}-${MACHINE}"
Signature · 1 line
1.8.0.2
#6 lore raw

PATCH 6/10 kernel.bbclass: use the same versioning schema for modules.tgz and provide link to latest

In reply to Martin Jansa

* so it will work look KERNEL_IMAGE
* also we were recreating modules.tgz with every kernel build, but overwritting the same output file

---
 meta/classes/kernel.bbclass | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
meta/classes/kernel.bbclass +6 -1
index ee59aaf..9c70e70 100644
@@ -497,6 +497,10 @@ KERNEL_IMAGE_BASE_NAME ?= "${KERNEL_IMAGETYPE}-${PE}-${PV}-${PR}-${MACHINE}-${DA
 # Don't include the DATETIME variable in the sstate package signatures
 KERNEL_IMAGE_BASE_NAME[vardepsexclude] = "DATETIME"
 KERNEL_IMAGE_SYMLINK_NAME ?= "${KERNEL_IMAGETYPE}-${MACHINE}"
+MODULE_TARBALL_BASE_NAME ?= "modules-${PE}-${PV}-${PR}-${MACHINE}-${DATETIME}.tgz"
+# Don't include the DATETIME variable in the sstate package signatures
+MODULE_TARBALL_BASE_NAME[vardepsexclude] = "DATETIME"
+MODULE_TARBALL_SYMLINK_NAME ?= "modules-${MACHINE}.tgz"
 
 do_uboot_mkimage() {
 	if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then 
@@ -526,7 +530,8 @@ addtask uboot_mkimage before do_install after do_compile
 kernel_do_deploy() {
 	install -m 0644 ${KERNEL_OUTPUT} ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
 	if (grep -q -i -e '^CONFIG_MODULES=y$' .config); then
-		tar -cvzf ${DEPLOYDIR}/modules-${KERNEL_VERSION}-${PR}-${MACHINE}.tgz -C ${D} lib
+		tar -cvzf ${DEPLOYDIR}/${MODULE_TARBALL_BASE_NAME} -C ${D} lib
+		ln -sf ${MODULE_TARBALL_BASE_NAME}.bin ${MODULE_TARBALL_SYMLINK_NAME}
 	fi
 
 	cd ${DEPLOYDIR}
Signature · 1 line
1.8.0.2
#8 lore raw

PATCH 7/10 kernel.bbclass: Allow modules*.tar.gz generation to be inhibited

In reply to Martin Jansa

From: Phil Blundell <[email protected]>

The modules.tar.gz archive is sometimes of no value and it can take a noticeable time to build if many modules were enabled in the kernel configuration. The extraneous file also contributes to deploy/ clutter and is a waste of disk space.

Allow it to be suppressed by setting MODULE_TARBALL_DEPLOY="0".

---
 meta/classes/kernel.bbclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
meta/classes/kernel.bbclass +2 -1
index 9c70e70..96b23bc 100644
@@ -501,6 +501,7 @@ MODULE_TARBALL_BASE_NAME ?= "modules-${PE}-${PV}-${PR}-${MACHINE}-${DATETIME}.tg
 # Don't include the DATETIME variable in the sstate package signatures
 MODULE_TARBALL_BASE_NAME[vardepsexclude] = "DATETIME"
 MODULE_TARBALL_SYMLINK_NAME ?= "modules-${MACHINE}.tgz"
+MODULE_TARBALL_DEPLOY ?= "1"
 
 do_uboot_mkimage() {
 	if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then 
@@ -529,7 +530,7 @@ addtask uboot_mkimage before do_install after do_compile
 
 kernel_do_deploy() {
 	install -m 0644 ${KERNEL_OUTPUT} ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
-	if (grep -q -i -e '^CONFIG_MODULES=y$' .config); then
+	if [ ${MODULE_TARBALL_DEPLOY} = "1" ] && (grep -q -i -e '^CONFIG_MODULES=y$' .config); then
 		tar -cvzf ${DEPLOYDIR}/${MODULE_TARBALL_BASE_NAME} -C ${D} lib
 		ln -sf ${MODULE_TARBALL_BASE_NAME}.bin ${MODULE_TARBALL_SYMLINK_NAME}
 	fi
Signature · 1 line
1.8.0.2
#9 lore raw

PATCH 8/10 autotools: copy also remove-potcdate.sin from ${STAGING_DATADIR_NATIVE}/gettext/po

In reply to Martin Jansa

* some packages (e.g. uptime, cpu, forecasts, news from meta-efl) don't have remove-potcdate.sin in po subdirectory, but Makefile.in.in supplied by autotools.bbclass depends on it and fails without like this:

  | make[3]: Entering directory `/OE/shr-core/tmp-eglibc/work/x86_64-oe-linux/uptime/0.0.2+svnr80477-r0.0/E-MODULES-EXTRA/uptime/po'
  | make[3]: *** No rule to make target `remove-potcdate.sin', needed by `remove-potcdate.sed'.  Stop.
  | make[3]: Leaving directory `/OE/shr-core/tmp-eglibc/work/x86_64-oe-linux/uptime/0.0.2+svnr80477-r0.0/E-MODULES-EXTRA/uptime/po'
  | make[2]: *** [uptime.pot] Error 2
---
 meta/classes/autotools.bbclass | 3 +++
 1 file changed, 3 insertions(+)
meta/classes/autotools.bbclass +3 -0
index ca981ec..9d1a299 100644
@@ -193,6 +193,9 @@ autotools_do_configure() {
 				cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${AUTOTOOLS_AUXDIR}/
 				if [ -d ${S}/po/ ]; then
 					cp ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/po/
+					if [ ! -e ${S}/po/remove-potcdate.sin ]; then
+						cp ${STAGING_DATADIR_NATIVE}/gettext/po/remove-potcdate.sin ${S}/po/
+					fi
 				fi
 				for i in gettext.m4 iconv.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 nls.m4 po.m4 progtest.m4; do
 					for j in `find ${S} -name $i | grep -v aclocal-copy`; do
Signature · 1 line
1.8.0.2
#10 lore raw

PATCH 9/10 gettext: move remove-potcdate.sin from gettext-native to gettext-minimal-native

In reply to Martin Jansa

* now autotools.bbclass are copying not only Makefile.in.in but also remove-potcdate.sin which is used by Makefile.in.in, so we need to provide this file already in gettext-minimal-native otherwise build can fail, when autotools.bbclass is used before gettext-native (full) is built.

* Please be aware that this needs one manual step. clean gettext-native before upgrading gettext-minimal-native or
clean gettext-minimal-native after gettext-native was rebuilt

Without this manual step it will cause missing remove-potcdate.sin in native sysroot, because

1) gettext-minimal-native_0.18.1.1.bb installs it with warning:
WARNING: The recipe gettext-minimal-native is trying to install files into a shared area when those files already exist. Those files and their manifest location are:
/OE/oe-core/tmp-eglibc/sysroots/x86_64-linux/usr/share/gettext/po/remove-potcdate.sin Matched in manifest-x86_64-gettext-native
Please verify which package should provide the above files.

2) building gettext-native will clean its own sstate data from sysroot including remove-potcdate.sin because it was part of gettext-native before, then installs without error, but also without remove-potcdate.sin

It's the same problem as with config.rpath before:
http://lists.linuxtogo.org/pipermail/openembedded-core/2012-October/031120.html

---
 .../gettext-minimal-0.18.1.1/remove-potcdate.sin      | 19 +++++++++++++++++++
 .../gettext/gettext-minimal-native_0.18.1.1.bb        |  4 +++-
 meta/recipes-core/gettext/gettext_0.18.1.1.bb         |  3 ++-
 3 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin
meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin new file +19 -0
new file mode 100644
index 0000000..2436c49
@@ -0,0 +1,19 @@
+# Sed script that remove the POT-Creation-Date line in the header entry
+# from a POT file.
+#
+# The distinction between the first and the following occurrences of the
+# pattern is achieved by looking at the hold space.
+/^"POT-Creation-Date: .*"$/{
+x
+# Test if the hold space is empty.
+s/P/P/
+ta
+# Yes it was empty. First occurrence. Remove the line.
+g
+d
+bb
+:a
+# The hold space was nonempty. Following occurrences. Do nothing.
+x
+:b
+}
meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb +3 -1
index a46a40d..f008a79 100644
@@ -1,6 +1,7 @@
 SRC_URI = "file://aclocal.tgz \
            file://config.rpath \
            file://Makefile.in.in \
+           file://remove-potcdate.sin \
            file://COPYING"
 
 INHIBIT_DEFAULT_DEPS = "1"
@@ -11,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0854da868a929923087141d9d7aba7d5"
 
 inherit native
 
-PR = "r4"
+PR = "r5"
 
 S = "${WORKDIR}"
 
@@ -21,4 +22,5 @@ do_install () {
 	install -d ${D}${datadir}/gettext/po/
 	cp ${WORKDIR}/config.rpath ${D}${datadir}/gettext/
 	cp ${WORKDIR}/Makefile.in.in ${D}${datadir}/gettext/po/
+	cp ${WORKDIR}/remove-potcdate.sin ${D}${datadir}/gettext/po/
 }
meta/recipes-core/gettext/gettext_0.18.1.1.bb +2 -1
index c3265e1..4639481 100644
@@ -5,7 +5,7 @@ SECTION = "libs"
 LICENSE = "GPLv3+ & LGPL-2.1+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
-PR = "r18"
+PR = "r19"
 DEPENDS = "gettext-native virtual/libiconv ncurses expat"
 DEPENDS_class-native = "gettext-minimal-native"
 PROVIDES = "virtual/libintl virtual/gettext"
@@ -104,6 +104,7 @@ do_install_append_class-native () {
 	rm ${D}${datadir}/aclocal/*
 	rm ${D}${datadir}/gettext/config.rpath
 	rm ${D}${datadir}/gettext/po/Makefile.in.in
+	rm ${D}${datadir}/gettext/po/remove-potcdate.sin
 }
 
 BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
1.8.0.2
#11 lore raw

PATCH 10/10 iptables: include /usr/share/xtables/pf.os in PN if it's build

In reply to Martin Jansa

* when libnfnetlink is available (provided by meta-networking/recipes-filter/libnfnetlink/libnfnetlink_1.0.1.bb it's autodetected and utils subdirectory with pf.os is used.
* unfortunately there isn't configure switch to explicitly disable libnfnetlink and it's also in different layer so we cannot add it to DEPENDS
* it's undeterminitic, but pf.os is the only difference AFAIK, so not worth patching configure switch
* fixes:
iptables-1.4.15: iptables: Files/directories were installed but not shipped
/usr/share/xtables
/usr/share/xtables/pf.os

---
 meta/recipes-extended/iptables/iptables_1.4.15.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
meta/recipes-extended/iptables/iptables_1.4.15.bb +2 -2
index a6297f3..d556c77 100644
@@ -7,7 +7,7 @@ LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263\
                     file://iptables/iptables.c;firstline=13;endline=25;md5=f1028f2401da1c120df27594b2be50ef"
 
-PR = "r0"
+PR = "r1"
 
 RRECOMMENDS_${PN} = "kernel-module-x-tables \
                      kernel-module-ip-tables \
@@ -18,7 +18,7 @@ RRECOMMENDS_${PN} = "kernel-module-x-tables \
                      kernel-module-nf-conntrack-ipv4 \
                      kernel-module-nf-nat \
                      kernel-module-ipt-masquerade"
-FILES_${PN} =+ "${libdir}/xtables/"
+FILES_${PN} =+ "${libdir}/xtables/ ${datadir}/xtables"
 FILES_${PN}-dbg =+ "${libdir}/xtables/.debug"
 
 SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.bz2 \
Signature · 1 line
1.8.0.2
#7 lore raw

Re: [PATCH 06/10] kernel.bbclass: use the same versioning schema for modules.tgz and provide link to latest

In reply to Martin Jansa
Quoted 4 lines · Martin Jansa

* so it will work look KERNEL_IMAGE
* also we were recreating modules.tgz with every kernel build, but overwritting the same output file

And I recall that no one ever showed a strong preference for keeping the old name around via a symlink. So I know that I don't have any objections to changing
the naming.

Cheers,

Bruce

Quoted 47 lines
---
 meta/classes/kernel.bbclass | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
meta/classes/kernel.bbclass +0 -0
index ee59aaf..9c70e70 100644
@@ -497,6 +497,10 @@ KERNEL_IMAGE_BASE_NAME ?=

"${KERNEL_IMAGETYPE}-${PE}-${PV}-${PR}-${MACHINE}-${DA
# Don't include the DATETIME variable in the sstate package signatures KERNEL_IMAGE_BASE_NAME[vardepsexclude] = "DATETIME" KERNEL_IMAGE_SYMLINK_NAME ?= "${KERNEL_IMAGETYPE}-${MACHINE}"
+MODULE_TARBALL_BASE_NAME ?= "modules-${PE}-${PV}-${PR}-${MACHINE}-${DATETIME}.tgz"

meta/classes/kernel.bbclass +3 -0
+# Don't include the DATETIME variable in the sstate package signatures
+MODULE_TARBALL_BASE_NAME[vardepsexclude] = "DATETIME"
+MODULE_TARBALL_SYMLINK_NAME ?= "modules-${MACHINE}.tgz"
 
 do_uboot_mkimage() {
        if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then
@@ -526,7 +530,8 @@ addtask uboot_mkimage before do_install after

do_compile

 kernel_do_deploy() {
        install -m 0644 ${KERNEL_OUTPUT}

${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
if (grep -q -i -e '^CONFIG_MODULES=y$' .config); then
- tar -cvzf
${DEPLOYDIR}/modules-${KERNEL_VERSION}-${PR}-${MACHINE}.tgz -C ${D} lib
+ tar -cvzf ${DEPLOYDIR}/${MODULE_TARBALL_BASE_NAME} -C ${D}
lib
+ ln -sf ${MODULE_TARBALL_BASE_NAME}.bin
${MODULE_TARBALL_SYMLINK_NAME}

        fi

        cd ${DEPLOYDIR}

--
1.8.0.2

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end"