Skip to contentSkip to conversation

Kernel Updates and other fixes

GIT PULL Saul Wold 4 participants 25 messages Jun 27, 2012 – Jul 2, 2012

lore
Share & tools
lore

Saul Wold

author
#0 lore raw

Richard,

Another set of pulls with various fixes and updates.

Of note:
* Ross's gconf also needs to get into the denzil branch for 1.2.1 build it and it resolved the gthumb build issue.
* Robert's change for disabling CCACHE
* Zhenhua's linux-dtb work

The following changes since commit f4b5afe46ff018570c1949653eb6995428827f6f:

sanity.bbclass: Increase LAYER_CONF_VERSION to match bblayers change (2012-06-25 17:20:06 +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

Andrea Adami (1):
mtd-utils: do not stage headers in sysroot

Bruce Ashfield (6):
kern-tools: add buildall and robustness fixes linux-yocto/3.4: update and categorize configuration options linux-yocto/3.4: update to v3.4.3
linux-yocto-rt/3.4: update qemuppc branch linux-yocto/3.4: -rt build fixes + configuration audit (part2) linux-yocto/3.0: update BSP descriptions to new kern-tools format

Lianhao Lu (3):
classes/image: Allow openssh empty passwords login. image/core-image: Handle conflicting IMAGE_FEATURES.
task-core-tools-debug: Added openssh-sftp-server.

Marcin Juszkiewicz (1):
libxml: disable lzma

Robert Yang (1):
bitbake.conf: disable ccache explicitly if it is not enabled

Ross Burton (1):
gconf.bbclass: don't register schemas in the install stage

Saul Wold (3):
mx: Upgrade to 1.4.6
busybox: add correct ALTERNATIVE_TARGET for init.d/syslog native.bbclass: correct PATH to have native-intercept be prepended

Wade Farnsworth (1):
systemtap: update to version 1.8

Xiaofeng Yan (2):
archiver.bbclass: Add the function of filtering packages local.conf.sample.extended: Add filtering function to
archiver.bbclass

Zhenhua Luo (1):
linux-dtb: add multi-dtb build support

 meta/classes/archiver.bbclass                      |   71 +++++++++++++-
 meta/classes/ccache.bbclass                        |    1 +
 meta/classes/core-image.bbclass                    |   13 ++-
 meta/classes/gconf.bbclass                         |   12 ++-
 meta/classes/image.bbclass                         |   24 +++++
 meta/classes/kernel-yocto.bbclass                  |    2 +-
 meta/classes/native.bbclass                        |    2 +-
 meta/conf/bitbake.conf                             |    8 ++
 meta/conf/local.conf.sample.extended               |   14 ++-
 meta/recipes-core/busybox/busybox.inc              |    3 +-
 meta/recipes-core/busybox/busybox_1.19.4.bb        |    2 +-
 meta/recipes-core/libxml/libxml2.inc               |    8 +-
 meta/recipes-core/libxml/libxml2_2.8.0.bb          |    2 +-
 meta/recipes-core/tasks/task-core-tools-debug.bb   |    3 +
 meta/recipes-devtools/mtd/mtd-utils_1.5.0.bb       |    6 +-
 .../mx/files/introspection-m4.patch                |  106 --------------------
 .../mx/{mx_1.4.2.bb => mx_1.4.6.bb}                |    9 +-
 .../kern-tools/kern-tools-native_git.bb            |    2 +-
 meta/recipes-kernel/linux/linux-dtb.inc            |   36 ++++++--
 meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb    |    2 +-
 meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb    |   10 +-
 meta/recipes-kernel/linux/linux-yocto_3.0.bb       |    2 +-
 meta/recipes-kernel/linux/linux-yocto_3.4.bb       |   16 ++--
 ...prun-configure.ac-support-without-nss-for.patch |   50 ---------
 .../systemtap_fix_for_automake_1.12.patch          |   23 ----
 meta/recipes-kernel/systemtap/systemtap_git.bb     |    2 +-
 meta/recipes-kernel/systemtap/systemtap_git.inc    |    6 +-
 meta/recipes-sato/images/core-image-sato-sdk.bb    |    2 +
 28 files changed, 205 insertions(+), 232 deletions(-)
 delete mode 100644 meta/recipes-graphics/mx/files/introspection-m4.patch
 rename meta/recipes-graphics/mx/{mx_1.4.2.bb => mx_1.4.6.bb} (71%)
 delete mode 100644 meta/recipes-kernel/systemtap/systemtap/runtime-staprun-configure.ac-support-without-nss-for.patch
 delete mode 100644 meta/recipes-kernel/systemtap/systemtap/systemtap_fix_for_automake_1.12.patch
Signature · 1 line
1.7.7.6
author
#1 lore raw

[CONSOLIDATED PULL 02/20] mtd-utils: do not stage headers in sysroot

From: Andrea Adami <[email protected]>

* Headers are included in the package for compatibility
* but have not yet been synched with linux 3.0
* The actual issue was that ubi-user.h in sysroot
* was overwritten by the older version.
* Unfortunately one ioctl was renamed:
* http://lists.infradead.org/pipermail/linux-mtd/
* 2011-March/034419.html
* Note: the recipe will still use its own older header,
* following upstream.

---
 meta/recipes-devtools/mtd/mtd-utils_1.5.0.bb |    6 +-----
 1 files changed, 1 insertions(+), 5 deletions(-)
meta/recipes-devtools/mtd/mtd-utils_1.5.0.bb +1 -5
index daa3554..1a9d4d3 100644
@@ -11,16 +11,12 @@ SRC_URI = "git://git.infradead.org/mtd-utils.git;protocol=git;tag=ca39eb1d98e736
 
 S = "${WORKDIR}/git/"
 
-PR = "r0"
+PR = "r1"
 
 EXTRA_OEMAKE = "'CC=${CC}' 'RANLIB=${RANLIB}' 'AR=${AR}' 'CFLAGS=${CFLAGS} -I${S}/include -DWITHOUT_XATTR' 'BUILDDIR=${S}'"
 
 do_install () {
 	oe_runmake install DESTDIR=${D} SBINDIR=${sbindir} MANDIR=${mandir} INCLUDEDIR=${includedir}
-	install -d ${D}${includedir}/mtd/
-	for f in ${S}/include/mtd/*.h; do
-		install -m 0644 $f ${D}${includedir}/mtd/
-	done
 }
 
 PARALLEL_MAKE = ""
Signature · 1 line
1.7.7.6
author
#2 lore raw

[CONSOLIDATED PULL 01/20] mx: Upgrade to 1.4.6

In reply to Saul Wold

Remove patch as introspection.m4 is now included with the upstream

---
 .../mx/files/introspection-m4.patch                |  106 --------------------
 .../mx/{mx_1.4.2.bb => mx_1.4.6.bb}                |    9 +-
 2 files changed, 4 insertions(+), 111 deletions(-)
 delete mode 100644 meta/recipes-graphics/mx/files/introspection-m4.patch
 rename meta/recipes-graphics/mx/{mx_1.4.2.bb => mx_1.4.6.bb} (71%)
meta/recipes-graphics/mx/files/introspection-m4.patch deleted +0 -106
deleted file mode 100644
index 2dcb62a..0000000
@@ -1,106 +0,0 @@
-A copy of introspection.m4 from upstream gobject-introspection so that
-we can use the GOBJECT_INTROSPECTION_CHECK([0.6.4]) and --disable-introspection
-
-Signed-off-by: Joshua Lock <[email protected]>
-
-Upstream-Status: Inappropriate (build system specific).
-
-Index: mx-1.4.2/m4/introspection.m4
-===================================================================
---- /dev/null
-+++ mx-1.4.2/m4/introspection.m4
-@@ -0,0 +1,94 @@
-+dnl -*- mode: autoconf -*-
-+dnl Copyright 2009 Johan Dahlin
-+dnl
-+dnl This file is free software; the author(s) gives unlimited
-+dnl permission to copy and/or distribute it, with or without
-+dnl modifications, as long as this notice is preserved.
-+dnl
-+
-+# serial 1
-+
-+m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL],
-+[
-+    AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
-+    AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
-+    AC_BEFORE([LT_INIT],[$0])dnl setup libtool first
-+
-+    dnl enable/disable introspection
-+    m4_if([$2], [require],
-+    [dnl
-+        enable_introspection=yes
-+    ],[dnl
-+        AC_ARG_ENABLE(introspection,
-+                  AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]],
-+                                 [Enable introspection for this build]),, 
-+                                 [enable_introspection=auto])
-+    ])dnl
-+
-+    AC_MSG_CHECKING([for gobject-introspection])
-+
-+    dnl presence/version checking
-+    AS_CASE([$enable_introspection],
-+    [no], [dnl
-+        found_introspection="no (disabled, use --enable-introspection to enable)"
-+    ],dnl
-+    [yes],[dnl
-+        PKG_CHECK_EXISTS([gobject-introspection-1.0],,
-+                         AC_MSG_ERROR([gobject-introspection-1.0 is not installed]))
-+        PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1],
-+                         found_introspection=yes,
-+                         AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME]))
-+    ],dnl
-+    [auto],[dnl
-+        PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no)
-+    ],dnl
-+    [dnl	
-+        AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@])
-+    ])dnl
-+
-+    AC_MSG_RESULT([$found_introspection])
-+
-+    INTROSPECTION_SCANNER=
-+    INTROSPECTION_COMPILER=
-+    INTROSPECTION_GENERATE=
-+    INTROSPECTION_GIRDIR=
-+    INTROSPECTION_TYPELIBDIR=
-+    if test "x$found_introspection" = "xyes"; then
-+       INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
-+       INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
-+       INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
-+       INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
-+       INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
-+       INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
-+       INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
-+       INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
-+    fi
-+    AC_SUBST(INTROSPECTION_SCANNER)
-+    AC_SUBST(INTROSPECTION_COMPILER)
-+    AC_SUBST(INTROSPECTION_GENERATE)
-+    AC_SUBST(INTROSPECTION_GIRDIR)
-+    AC_SUBST(INTROSPECTION_TYPELIBDIR)
-+    AC_SUBST(INTROSPECTION_CFLAGS)
-+    AC_SUBST(INTROSPECTION_LIBS)
-+    AC_SUBST(INTROSPECTION_MAKEFILE)
-+
-+    AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes")
-+])
-+
-+
-+dnl Usage:
-+dnl   GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version])
-+
-+AC_DEFUN([GOBJECT_INTROSPECTION_CHECK],
-+[
-+  _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1])
-+])
-+
-+dnl Usage:
-+dnl   GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version])
-+
-+
-+AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE],
-+[
-+  _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require])
-+])
meta/recipes-graphics/mx/mx_1.4.6.bb renamed from meta/recipes-graphics/mx/mx_1.4.2.bb +4 -5
similarity index 71%
rename from meta/recipes-graphics/mx/mx_1.4.2.bb
rename to meta/recipes-graphics/mx/mx_1.4.6.bb
index bee65f6..81bc5b9 100644
@@ -1,17 +1,16 @@
 DESCRIPTION = "Clutter based widget library"
 LICENSE = "LGPLv2.1"
 
-PR = "r1"
+PR = "r0"
 
 DEPENDS = "clutter-1.8 dbus-glib libxrandr gdk-pixbuf startup-notification"
 
 inherit autotools gettext
 
-SRC_URI = "http://source.clutter-project.org/sources/mx/1.4/mx-${PV}.tar.bz2 \
-	   file://introspection-m4.patch"
+SRC_URI = "http://source.clutter-project.org/sources/mx/1.4/mx-${PV}.tar.bz2"
 
-SRC_URI[md5sum] = "faf8d97ad9995f54cc91f90bc90c8f9d"
-SRC_URI[sha256sum] = "9d40dd48a8e3d098cc75c05163f77305ffb83439783dc91be50681c9502660ce"
+SRC_URI[md5sum] = "c7192ca7c43bb1a39adc2fafdc012f49"
+SRC_URI[sha256sum] = "a3c7ffaf29b282144c982757b450d145cd85867183dfafef4750a00a0d406672"
 
 LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24 \
                     file://mx/mx-widget.c;beginline=8;endline=20;md5=13bba3c973a72414a701e1e87b5ee879"
Signature · 1 line
1.7.7.6
author
#3 lore raw

[CONSOLIDATED PULL 03/20] classes/image: Allow openssh empty passwords login.

In reply to Saul Wold

From: Lianhao Lu <[email protected]>

Allow empty passwords login so that the default root user can login in through openssh.

---
 meta/classes/core-image.bbclass |    2 ++
 meta/classes/image.bbclass      |    7 +++++++
 2 files changed, 9 insertions(+), 0 deletions(-)
meta/classes/core-image.bbclass +2 -0
index e2ad0fc..25f5c5a 100644
@@ -69,4 +69,6 @@ ROOTFS_POSTPROCESS_COMMAND += "rootfs_update_timestamp ; "
 
 # Zap the root password if debug-tweaks feature is not enabled
 ROOTFS_POSTPROCESS_COMMAND += '${@base_contains("IMAGE_FEATURES", "debug-tweaks", "", "zap_root_password ; ",d)}'
+# Allow openssh accept empty password login if both debug-tweaks and ssh-server-openssh are enabled
+ROOTFS_POSTPROCESS_COMMAND += '${@base_contains("IMAGE_FEATURES", "debug-tweaks ssh-server-openssh", "openssh_allow_empty_password; ", "",d)}'
 
meta/classes/image.bbclass +7 -0
index fb932b9..0772363 100644
@@ -318,6 +318,13 @@ zap_root_password () {
 	mv ${IMAGE_ROOTFS}/etc/passwd.new ${IMAGE_ROOTFS}/etc/passwd
 } 
 
+# allow openssh accept login with empty password string
+openssh_allow_empty_password () {
+	if [ -e ${IMAGE_ROOTFS}${sysconfdir}/ssh/sshd_config ]; then
+		sed -i 's#.*PermitEmptyPasswords.*#PermitEmptyPasswords yes#' ${IMAGE_ROOTFS}${sysconfdir}/ssh/sshd_config
+	fi
+}
+
 # Turn any symbolic /sbin/init link into a file
 remove_init_link () {
 	if [ -h ${IMAGE_ROOTFS}/sbin/init ]; then
Signature · 1 line
1.7.7.6
author
#4 lore raw

[CONSOLIDATED PULL 04/20] image/core-image: Handle conflicting IMAGE_FEATURES.

In reply to Saul Wold

From: Lianhao Lu <[email protected]>

IMAGE_FEATURES such as 'ssh-server-dropbear' and 'ssh-server-openssh' can't be both enabled. User can use the following variables to define the relationship of image features:

IMAGE_FEATURES_REPLACES_foo = "bar" means including image feature "foo" would replace the image feature "bar".

IMAGE_FEATURES_CONFLICTS_foo = "bar" means including both image features "foo" and "bar" would cause an parsing error.

---
 meta/classes/core-image.bbclass                 |   11 ++++++++++-
 meta/classes/image.bbclass                      |   17 +++++++++++++++++
 meta/recipes-sato/images/core-image-sato-sdk.bb |    2 ++
 3 files changed, 29 insertions(+), 1 deletions(-)
meta/classes/core-image.bbclass +10 -1
index 25f5c5a..6b207d7 100644
@@ -47,6 +47,14 @@ PACKAGE_GROUP_ssh-server-openssh = "task-core-ssh-openssh"
 PACKAGE_GROUP_package-management = "${ROOTFS_PKGMANAGE}"
 PACKAGE_GROUP_qt4-pkgs = "task-core-qt-demos"
 
+
+# IMAGE_FEAETURES_REPLACES_foo = 'bar1 bar2'
+# Including image feature foo would replace the image features bar1 and bar2
+IMAGE_FEATURES_REPLACES_ssh-server-openssh = "ssh-server-dropbear"
+
+# IMAGE_FEATURES_CONFLICTS_foo = 'bar1 bar2'
+# An error exception would be raised if both image features foo and bar1(or bar2) are included
+
 CORE_IMAGE_BASE_INSTALL = '\
     task-core-boot \
     task-base-extended \
@@ -60,7 +68,8 @@ IMAGE_INSTALL ?= "${CORE_IMAGE_BASE_INSTALL}"
 
 X11_IMAGE_FEATURES  = "x11-base apps-x11-core package-management"
 ENHANCED_IMAGE_FEATURES = "${X11_IMAGE_FEATURES} apps-x11-games apps-x11-pimlico package-management"
-SATO_IMAGE_FEATURES = "${ENHANCED_IMAGE_FEATURES} x11-sato ssh-server-dropbear"
+SSHSERVER_IMAGE_FEATURES ??= "ssh-server-dropbear"
+SATO_IMAGE_FEATURES = "${ENHANCED_IMAGE_FEATURES} x11-sato ${SSHSERVER_IMAGE_FEATURES}"
 
 inherit image
 
meta/classes/image.bbclass +17 -0
index 0772363..6fac974 100644
@@ -87,6 +87,23 @@ python () {
         deps += " %s:do_populate_sysroot" % dep
     d.setVarFlag('do_rootfs', 'depends', deps)
 
+    #process IMAGE_FEATURES, we must do this before runtime_mapping_rename
+    #Check for replaces image features
+    features = set(oe.data.typed_value('IMAGE_FEATURES', d))
+    remain_features = features.copy()
+    for feature in features:
+        replaces = set((d.getVar("IMAGE_FEATURES_REPLACES_%s" % feature, True) or "").split())
+        remain_features -= replaces
+
+    #Check for conflict image features
+    for feature in remain_features:
+        conflicts = set((d.getVar("IMAGE_FEATURES_CONFLICTS_%s" % feature, True) or "").split())
+        temp = conflicts & remain_features
+        if temp:
+            raise bb.parse.SkipPackage("%s contains conflicting IMAGE_FEATURES %s %s" % (d.getVar('PN', True), feature, ' '.join(list(temp))))
+
+    d.setVar('IMAGE_FEATURES', ' '.join(list(remain_features)))
+
     # 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 d.getVar('BB_WORKERCONTEXT', True) is not None:
meta/recipes-sato/images/core-image-sato-sdk.bb +2 -0
index eed1698..5bb9469 100644
@@ -8,6 +8,8 @@ form a standalone SDK."
 IMAGE_FEATURES += "apps-console-core ${SATO_IMAGE_FEATURES} dev-pkgs tools-sdk qt4-pkgs"
 EXTRA_IMAGE_FEATURES += "tools-debug tools-profile tools-testapps debug-tweaks"
 
+SSHSERVER_IMAGE_FEATURES = "ssh-server-openssh"
+
 LICENSE = "MIT"
 
 inherit core-image
Signature · 1 line
1.7.7.6
#5 lore raw

Re: [CONSOLIDATED PULL 04/20] image/core-image: Handle conflicting IMAGE_FEATURES.

is that possible to have a virtual/ssh-server mechanism, provide either openssh or dropbear would server this dependency, quite similiar with what gentoo linux handle this, instead of override foo with bar

Quoted 113 lines · 在 2012-6-27 下午11:43,"Saul Wold" <[email protected]>写道:

From: Lianhao Lu <[email protected]>

IMAGE_FEATURES such as 'ssh-server-dropbear' and 'ssh-server-openssh' can't be both enabled. User can use the following variables to define the relationship of image features:

IMAGE_FEATURES_REPLACES_foo = "bar" means including image feature "foo" would replace the image feature "bar".

IMAGE_FEATURES_CONFLICTS_foo = "bar" means including both image features "foo" and "bar" would cause an parsing error.

---
 meta/classes/core-image.bbclass                 |   11 ++++++++++-
 meta/classes/image.bbclass                      |   17 +++++++++++++++++
 meta/recipes-sato/images/core-image-sato-sdk.bb |    2 ++
 3 files changed, 29 insertions(+), 1 deletions(-)
meta/classes/core-image.bbclass +0 -0
index 25f5c5a..6b207d7 100644
@@ -47,6 +47,14 @@ PACKAGE_GROUP_ssh-server-openssh =

"task-core-ssh-openssh"
PACKAGE_GROUP_package-management = "${ROOTFS_PKGMANAGE}" PACKAGE_GROUP_qt4-pkgs = "task-core-qt-demos"

meta/classes/core-image.bbclass +3 -0
+
+# IMAGE_FEAETURES_REPLACES_foo = 'bar1 bar2'
+# Including image feature foo would replace the image features bar1 and

bar2

meta/classes/core-image.bbclass +4 -0
+IMAGE_FEATURES_REPLACES_ssh-server-openssh = "ssh-server-dropbear"
+
+# IMAGE_FEATURES_CONFLICTS_foo = 'bar1 bar2'
+# An error exception would be raised if both image features foo and

bar1(or bar2) are included

meta/classes/core-image.bbclass +1 -0
+
 CORE_IMAGE_BASE_INSTALL = '\
     task-core-boot \
     task-base-extended \
@@ -60,7 +68,8 @@ IMAGE_INSTALL ?= "${CORE_IMAGE_BASE_INSTALL}"
 
 X11_IMAGE_FEATURES  = "x11-base apps-x11-core package-management"
 ENHANCED_IMAGE_FEATURES = "${X11_IMAGE_FEATURES} apps-x11-games

apps-x11-pimlico package-management" -SATO_IMAGE_FEATURES = "${ENHANCED_IMAGE_FEATURES} x11-sato ssh-server-dropbear"

meta/classes/core-image.bbclass +2 -0
+SSHSERVER_IMAGE_FEATURES ??= "ssh-server-dropbear"
+SATO_IMAGE_FEATURES = "${ENHANCED_IMAGE_FEATURES} x11-sato

${SSHSERVER_IMAGE_FEATURES}"

inherit image

meta/classes/image.bbclass +14 -0
index 0772363..6fac974 100644
@@ -87,6 +87,23 @@ python () {
         deps += " %s:do_populate_sysroot" % dep
     d.setVarFlag('do_rootfs', 'depends', deps)
 
+    #process IMAGE_FEATURES, we must do this before runtime_mapping_rename
+    #Check for replaces image features
+    features = set(oe.data.typed_value('IMAGE_FEATURES', d))
+    remain_features = features.copy()
+    for feature in features:
+        replaces = set((d.getVar("IMAGE_FEATURES_REPLACES_%s" % feature,
 True) or "").split())
+        remain_features -= replaces
+
+    #Check for conflict image features
+    for feature in remain_features:
+        conflicts = set((d.getVar("IMAGE_FEATURES_CONFLICTS_%s" %
 feature, True) or "").split())
+        temp = conflicts & remain_features
+        if temp:
+            raise bb.parse.SkipPackage("%s contains conflicting

IMAGE_FEATURES %s %s" % (d.getVar('PN', True), feature, ' '.join(list(temp))))

meta/classes/image.bbclass +3 -0
+
+    d.setVar('IMAGE_FEATURES', ' '.join(list(remain_features)))
+
     # 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 d.getVar('BB_WORKERCONTEXT', True) is not None:
(quoted diff) +0 -0

core-image-sato-sdk.bb
index eed1698..5bb9469 100644

meta/recipes-sato/images/core-image-sato-sdk.bb +0 -0
@@ -8,6 +8,8 @@ form a standalone SDK."
 IMAGE_FEATURES += "apps-console-core ${SATO_IMAGE_FEATURES} dev-pkgs

tools-sdk qt4-pkgs"
EXTRA_IMAGE_FEATURES += "tools-debug tools-profile tools-testapps
debug-tweaks"

meta/recipes-sato/images/core-image-sato-sdk.bb +2 -1
+SSHSERVER_IMAGE_FEATURES = "ssh-server-openssh"
+
 LICENSE = "MIT"
 
 inherit core-image
--

1.7.7.6

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

#6 lore raw

Re: [CONSOLIDATED PULL 04/20] image/core-image: Handle conflicting IMAGE_FEATURES.

The problem is that the REPLACES/CONFLICTS method which defined in debian polocy is not supported by the ipk backend.

-lianhao

"Dennis.Yxun" <[email protected]>编写:

is that possible to have a virtual/ssh-server mechanism, provide either openssh or dropbear would server this dependency, quite similiar with what gentoo linux handle this, instead of override foo with bar

在 2012-6-27 下午11:43,"Saul Wold" <[email protected]<mailto:[email protected]>>写道:
From: Lianhao Lu <[email protected]<mailto:[email protected]>>

IMAGE_FEATURES such as 'ssh-server-dropbear' and 'ssh-server-openssh' can't be both enabled. User can use the following variables to define the relationship of image features:

IMAGE_FEATURES_REPLACES_foo = "bar" means including image feature "foo" would replace the image feature "bar".

IMAGE_FEATURES_CONFLICTS_foo = "bar" means including both image features "foo" and "bar" would cause an parsing error.

---
 meta/classes/core-image.bbclass                 |   11 ++++++++++-
 meta/classes/image.bbclass                      |   17 +++++++++++++++++
 meta/recipes-sato/images/core-image-sato-sdk.bb<http://core-image-sato-sdk.bb> |    2 ++
 3 files changed, 29 insertions(+), 1 deletions(-)
meta/classes/core-image.bbclass +10 -1
index 25f5c5a..6b207d7 100644
@@ -47,6 +47,14 @@ PACKAGE_GROUP_ssh-server-openssh = "task-core-ssh-openssh"
 PACKAGE_GROUP_package-management = "${ROOTFS_PKGMANAGE}"
 PACKAGE_GROUP_qt4-pkgs = "task-core-qt-demos"
 
+
+# IMAGE_FEAETURES_REPLACES_foo = 'bar1 bar2'
+# Including image feature foo would replace the image features bar1 and bar2
+IMAGE_FEATURES_REPLACES_ssh-server-openssh = "ssh-server-dropbear"
+
+# IMAGE_FEATURES_CONFLICTS_foo = 'bar1 bar2'
+# An error exception would be raised if both image features foo and bar1(or bar2) are included
+
 CORE_IMAGE_BASE_INSTALL = '\
     task-core-boot \
     task-base-extended \
@@ -60,7 +68,8 @@ IMAGE_INSTALL ?= "${CORE_IMAGE_BASE_INSTALL}"
 
 X11_IMAGE_FEATURES  = "x11-base apps-x11-core package-management"
 ENHANCED_IMAGE_FEATURES = "${X11_IMAGE_FEATURES} apps-x11-games apps-x11-pimlico package-management"
-SATO_IMAGE_FEATURES = "${ENHANCED_IMAGE_FEATURES} x11-sato ssh-server-dropbear"
+SSHSERVER_IMAGE_FEATURES ??= "ssh-server-dropbear"
+SATO_IMAGE_FEATURES = "${ENHANCED_IMAGE_FEATURES} x11-sato ${SSHSERVER_IMAGE_FEATURES}"
 
 inherit image
 
meta/classes/image.bbclass +17 -0
index 0772363..6fac974 100644
@@ -87,6 +87,23 @@ python () {
         deps += " %s:do_populate_sysroot" % dep
     d.setVarFlag('do_rootfs', 'depends', deps)
 
+    #process IMAGE_FEATURES, we must do this before runtime_mapping_rename
+    #Check for replaces image features
+    features = set(oe.data.typed_value('IMAGE_FEATURES', d))
+    remain_features = features.copy()
+    for feature in features:
+        replaces = set((d.getVar("IMAGE_FEATURES_REPLACES_%s" % feature, True) or "").split())
+        remain_features -= replaces
+
+    #Check for conflict image features
+    for feature in remain_features:
+        conflicts = set((d.getVar("IMAGE_FEATURES_CONFLICTS_%s" % feature, True) or "").split())
+        temp = conflicts & remain_features
+        if temp:
+            raise bb.parse.SkipPackage("%s contains conflicting IMAGE_FEATURES %s %s" % (d.getVar('PN', True), feature, ' '.join(list(temp))))
+
+    d.setVar('IMAGE_FEATURES', ' '.join(list(remain_features)))
+
     # 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 d.getVar('BB_WORKERCONTEXT', True) is not None:
meta/recipes-sato/images/core-image-sato-sdk.bb<http://core-image-sato-sdk.bb> +2 -0
index eed1698..5bb9469 100644
@@ -8,6 +8,8 @@ form a standalone SDK."
 IMAGE_FEATURES += "apps-console-core ${SATO_IMAGE_FEATURES} dev-pkgs tools-sdk qt4-pkgs"
 EXTRA_IMAGE_FEATURES += "tools-debug tools-profile tools-testapps debug-tweaks"
 
+SSHSERVER_IMAGE_FEATURES = "ssh-server-openssh"
+
 LICENSE = "MIT"
 
 inherit core-image

--
1.7.7.6

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

author
#7 lore raw

[CONSOLIDATED PULL 05/20] task-core-tools-debug: Added openssh-sftp-server.

In reply to Saul Wold

From: Lianhao Lu <[email protected]>

Added openssh-sftp-server to the tools-debug IMAGE_FEATURE.

---
 meta/recipes-core/tasks/task-core-tools-debug.bb |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
meta/recipes-core/tasks/task-core-tools-debug.bb +3 -0
index 1dddbb8..b7eff21 100644
@@ -13,6 +13,8 @@ PACKAGES = "\
     ${PN}-dev \
     "
 
+PR = "r1"
+
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
 ALLOW_EMPTY = "1"
@@ -24,6 +26,7 @@ RDEPENDS_${PN} = "\
     gdb \
     gdbserver \
     tcf-agent \
+    openssh-sftp-server \
     rsync \
     strace \
     ${MTRACE} \
Signature · 1 line
1.7.7.6
author
#8 lore raw

[CONSOLIDATED PULL 07/20] linux-yocto/3.4: update and categorize configuration options

In reply to Saul Wold

From: Bruce Ashfield <[email protected]>

Updating the 3.4 kernel tree with some initial results of the 3.4 kernel configuration audit and refresh. This is the start of the 3.4 kernel configuration policy update and includes a refresh / update with respect to kernel.org defaults and new categorization of configuration fragments.

0f6975b Sched: Import base BFS-423 for v3.4
c517c5c cfg: strip off redundant path prefixes
689fd20 cfg: create timer subdir for HZ and HPET related settings 5367b46 cfg: add a fs dir for filesystem related configs
67a784b x86/x86_64: disable MTRR sanitizer
5da51ea x86/x86_64: consolidate ACPI and EFI settings
7627402 x86/x86_64: enable CONFIG_NO_HZ=y by default.
9ca6026 mips: select HZ=100 by default.
149efc6 arm: select HZ=100 by default.
29c9fc7 x86/x86_64: use HZ=1000
700b8b5 x86/x86_64: enable boot mem corruption checks; align with korg defaults bbd054d x86: enable CONFIG_HIGHPTE=y by default.
2569871 x86: align to korg defconfig on IRQ fixups and microcode ec5cdc2 x86/x86_64: enable SMP by default
b9932fa cfg: relocate/add a frag for HPET / RTC enablement
f9645f5 8250: separate out the 8250 configuration from feature dir 5e8fea0 bsp: tie cfg/x86.scc into all "KARCH i386" boards
4020ade cfg: make a common landing ground for ARCH=x86
e126316 cfg: add basic HZ fragments
4a8627b cfg: delete instances of any reference to dmesg buf size. 0794c16 routerstationpro: lib/kobject_uevent: switch to uevent_sock_mutex

[YOCTO #1694]

---
 meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb |    2 +-
 meta/recipes-kernel/linux/linux-yocto_3.4.bb    |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb +1 -1
index 52f2dd1..bd6f222 100644
@@ -11,7 +11,7 @@ KMETA = "meta"
 
 SRCREV_machine ?= "9dc5e97d144abb03deec411acb9c64883602cff9"
 SRCREV_machine_qemuppc ?= "241a41d6104df6916280f1273894bbd7fa7cdd71"
-SRCREV_meta ?= "aa226dcc5a1351fae49da40d77b718c4c3a76e7c"
+SRCREV_meta ?= "0f6975b8d01ffba0cd5f3548812e763c8610965b"
 
 PR = "r0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_3.4.bb +1 -1
index eb5e888..0ff40be 100644
@@ -16,7 +16,7 @@ SRCREV_machine_qemuppc ?= "4988a7e34bccd531b511c57f93358de9fcc672a0"
 SRCREV_machine_qemux86 ?= "a8291fa6f723b0182d2b7033b5d59f412ba7cf72"
 SRCREV_machine_qemux86-64 ?= "a8291fa6f723b0182d2b7033b5d59f412ba7cf72"
 SRCREV_machine ?= "a8291fa6f723b0182d2b7033b5d59f412ba7cf72"
-SRCREV_meta ?= "aa226dcc5a1351fae49da40d77b718c4c3a76e7c"
+SRCREV_meta ?= "0f6975b8d01ffba0cd5f3548812e763c8610965b"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"
 
Signature · 1 line
1.7.7.6
author
#9 lore raw

[CONSOLIDATED PULL 06/20] kern-tools: add buildall and robustness fixes

In reply to Saul Wold

From: Bruce Ashfield <[email protected]>

Updating the kern-tools SRCREV to pickup the following functionality:

- buildall: provides the ability to build all kernel branches without a build system, only a cross compiler and configme are required.

- robustness/cleanups: obselete/unused code removal and general robustness fixes from Paul Gortmaker and Bruce Ashfield

The following kern-tools commits are part of this series:

b8dfd3d buildall: add whitelist/blacklist support
0ef039c configme: catch errors found during fragment sanitization 5b6498c buildall: remove all instances of it using/reading scc files 2e57550 buildall: support semi seamless restarts
4b5dd4d kconf_check: simplify cmdline args, dont store data per branch 58fbb6e configme: relieve it of all knowledge of scc files a03e291 configme: strip out alternative meta series logic. 96d2bcf kgit-init: check for valid branchpoint
5598db6 buildall: allow a max cap on the number of builds done b46abec buildall: add support for randomizing build order 68a04e9 buildall: dont copy failed build logs into main build dir 5575d85 buildall: script to independently build all board kernels 86d6200 configme: delete unused variable
8d4e29d configme: delete unused KPROFILE setting
7e15436 configme: ensure we have a valid machine type set 152b9cb scc: remove depreciated/unused commands
bb4e96a scc: allow includes within conditional statements 7da7951 configme: derive path to tools from $0
152dc45 configme: test for BUILD_DIR != ""
129f7b0 kgit-scc: add warnings about bad input args. e977662 kgit-scc: add text for no arg and invalid arg case.

[YOCTO #843]

---
 meta/classes/kernel-yocto.bbclass                  |    2 +-
 .../kern-tools/kern-tools-native_git.bb            |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
meta/classes/kernel-yocto.bbclass +1 -1
index 2a3373c..48c8974 100644
@@ -193,7 +193,7 @@ python do_kernel_configcheck() {
     bb.plain("NOTE: validating kernel configuration")
 
     pathprefix = "export PATH=%s:%s; " % (d.getVar('PATH', True), "${S}/scripts/util/")
-    cmd = d.expand("cd ${B}/..; kconf_check -config- ${B} ${S} ${B} ${KBRANCH}")
+    cmd = d.expand("cd ${S}; kconf_check -config- ${KMETA}/meta-series ${S} ${B}")
     ret, result = commands.getstatusoutput("%s%s" % (pathprefix, cmd))
 
     bb.plain( "%s" % result )
meta/recipes-kernel/kern-tools/kern-tools-native_git.bb +1 -1
index 2329ab9..f47262f 100644
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://git/tools/kgit;beginline=5;endline=9;md5=d8d1d729a70c
 
 DEPENDS = "git-native guilt-native"
 
-SRCREV = "4b1fef0a85db38bad6db7f14d44ea59713a64fdb"
+SRCREV = "b8dfd3d641400a8dfbf16868ee64f524508c80b7"
 PR = "r12"
 PV = "0.1+git${SRCPV}"
 
Signature · 1 line
1.7.7.6
author
#10 lore raw

[CONSOLIDATED PULL 08/20] linux-yocto/3.4: update to v3.4.3

In reply to Saul Wold

From: Bruce Ashfield <[email protected]>

Bumping the linux-yocto 3.4 SRCREV to import the -stable update to v3.4.3.

---
 meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb |    8 ++++----
 meta/recipes-kernel/linux/linux-yocto_3.4.bb    |   16 ++++++++--------
 2 files changed, 12 insertions(+), 12 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb +4 -4
index bd6f222..fabbb97 100644
@@ -4,14 +4,14 @@ require recipes-kernel/linux/linux-yocto.inc
 KBRANCH = "standard/preempt-rt/base"
 KBRANCH_qemuppc = "standard/preempt-rt/qemu-ppc32"
 
-LINUX_VERSION ?= "3.4.1"
+LINUX_VERSION ?= "3.4.3"
 LINUX_KERNEL_TYPE = "preempt-rt"
 
 KMETA = "meta"
 
-SRCREV_machine ?= "9dc5e97d144abb03deec411acb9c64883602cff9"
-SRCREV_machine_qemuppc ?= "241a41d6104df6916280f1273894bbd7fa7cdd71"
-SRCREV_meta ?= "0f6975b8d01ffba0cd5f3548812e763c8610965b"
+SRCREV_machine ?= "e1247309cd90fbdb17479f909a7172e4b0b622d0"
+SRCREV_machine_qemuppc ?= "10ba85000bd4e32ea9e5557bf6d9166b12651c02"
+SRCREV_meta ?= "ef03644fe33f7fd6f50a36b85701fdc6d73e2c96"
 
 PR = "r0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_3.4.bb +8 -8
index 0ff40be..d859c29 100644
@@ -10,17 +10,17 @@ KBRANCH_qemumips64 = "standard/mti-malta64"
 KBRANCH_qemumips64el = "standard/mti-malta64"
 KBRANCH_qemuarm  = "standard/arm-versatile-926ejs"
 
-SRCREV_machine_qemuarm ?= "1b83eb1b99e937b67dafa4dedba9440d596cbd9f"
-SRCREV_machine_qemumips ?= "c6104a63aae262ff4238b45905ab1c57145334bc"
-SRCREV_machine_qemuppc ?= "4988a7e34bccd531b511c57f93358de9fcc672a0"
-SRCREV_machine_qemux86 ?= "a8291fa6f723b0182d2b7033b5d59f412ba7cf72"
-SRCREV_machine_qemux86-64 ?= "a8291fa6f723b0182d2b7033b5d59f412ba7cf72"
-SRCREV_machine ?= "a8291fa6f723b0182d2b7033b5d59f412ba7cf72"
-SRCREV_meta ?= "0f6975b8d01ffba0cd5f3548812e763c8610965b"
+SRCREV_machine_qemuarm ?= "5a282e8b7138174389b64846ea993240c8b1f869"
+SRCREV_machine_qemumips  ?= "7db36332a033ab89988dfcb7b563cbcd83b93663"
+SRCREV_machine_qemuppc ?= "74f0e62044042a7e7abdbac83c6bf160b0c12c58"
+SRCREV_machine_qemux86 ?= "aa9621f0955723c71821cc25e711a6d8fe80caf9"
+SRCREV_machine_qemux86-64 ?= "aa9621f0955723c71821cc25e711a6d8fe80caf9"
+SRCREV_machine ?= "aa9621f0955723c71821cc25e711a6d8fe80caf9"
+SRCREV_meta ?= "ef03644fe33f7fd6f50a36b85701fdc6d73e2c96"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"
 
-LINUX_VERSION ?= "3.4.1"
+LINUX_VERSION ?= "3.4.3"
 
 PR = "r0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
Signature · 1 line
1.7.7.6
author
#11 lore raw

[CONSOLIDATED PULL 10/20] linux-yocto/3.4: -rt build fixes + configuration audit (part2)

In reply to Saul Wold

From: Bruce Ashfield <[email protected]>

Updating the 3.4 SRCREVs to pickup build fixes for -rt, feature backports, and a second set of 3.4 configuration audit results.

d65afd9 profiling: delete reference of obsolete CONFIG_X86_UP_APIC 9431490 meta: fix net_sched.cfg include
242149d meta: add CONFIG_VIRTIO_CONSOLE to virtio configuration 671a822 meta: resync series -> branches
e044ee1 rt: integrate patch to fix compile fail on certain configs edac822 ktest: update with v3.5 content
182b8da net_sched: Add CODEL queue management algorithm.
c6adcd9 net_sched: move content out of cgroups dir
c8edb3e sys940x: branch before merge
6d06257 ext3: delete duplicate enablement settings.
6a5a2f8 ipv6: build in the core support vs. it being modular
e106230 ipv6: make standard and RT share a common config block 42996fb netfilter: coalesce bridge settings for standard and RT into a common file. 2b62fea netfilter: coalesce IPv6 settings for standard and RT into a common file. d1c38c8 netfilter: coalesce IPv4 settings for standard and RT into a common file. b5f9c7c preempt-rt: align with standard kernel type for basic cfg ea33e01 cfg: move devtmpfs cfg/scc to cfg/fs dir
517eda4 preempt-rt: combine two config fragments into one
171a30a cgroups: re-enable net_traffic config fragment
86a599d cgroups: delete old blkio patches
8be6e5b netfilter: add comment documenting external bb use case 90e06bf x86[_64]: align with korg on HOTPLUG_PCI, HOTPLUG_PCI_PCIE and PCI_MSI e103f7c seccomp: backport of BPF syscall filtering from v3.5

[YOCTO #1694]

---
 meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb |    6 +++---
 meta/recipes-kernel/linux/linux-yocto_3.4.bb    |   14 +++++++-------
 2 files changed, 10 insertions(+), 10 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb +3 -3
index 295fe27..9b77186 100644
@@ -9,9 +9,9 @@ LINUX_KERNEL_TYPE = "preempt-rt"
 
 KMETA = "meta"
 
-SRCREV_machine ?= "e1247309cd90fbdb17479f909a7172e4b0b622d0"
-SRCREV_machine_qemuppc ?= "10ba85000bd4e32ea9e5557bf6d9166b12651c02"
-SRCREV_meta ?= "ef03644fe33f7fd6f50a36b85701fdc6d73e2c96"
+SRCREV_machine ?= "4a688295a1c6d44f3eea409d51a0344c8830d829"
+SRCREV_machine_qemuppc ?= "83843542dd524007547eddba507690cd4bab393b"
+SRCREV_meta ?= "d65afd9e42230a3ef4cc1f9ad62d0aa84a533cd0"
 
 PR = "r0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_3.4.bb +7 -7
index d859c29..7d14967 100644
@@ -10,13 +10,13 @@ KBRANCH_qemumips64 = "standard/mti-malta64"
 KBRANCH_qemumips64el = "standard/mti-malta64"
 KBRANCH_qemuarm  = "standard/arm-versatile-926ejs"
 
-SRCREV_machine_qemuarm ?= "5a282e8b7138174389b64846ea993240c8b1f869"
-SRCREV_machine_qemumips  ?= "7db36332a033ab89988dfcb7b563cbcd83b93663"
-SRCREV_machine_qemuppc ?= "74f0e62044042a7e7abdbac83c6bf160b0c12c58"
-SRCREV_machine_qemux86 ?= "aa9621f0955723c71821cc25e711a6d8fe80caf9"
-SRCREV_machine_qemux86-64 ?= "aa9621f0955723c71821cc25e711a6d8fe80caf9"
-SRCREV_machine ?= "aa9621f0955723c71821cc25e711a6d8fe80caf9"
-SRCREV_meta ?= "ef03644fe33f7fd6f50a36b85701fdc6d73e2c96"
+SRCREV_machine_qemuarm ?= "4e354f7fa345464f284525a27eb1544cbc60968d"
+SRCREV_machine_qemumips  ?= "c65bc98cd501459bb6ffc7b5ec5a7e72c41dceef"
+SRCREV_machine_qemuppc ?= "ee3475b4ca8c9e26f55f6e107101d832e7dec7ac"
+SRCREV_machine_qemux86 ?= "a1cdb60720c452c3965eaec3ec2cd10f06261cc5"
+SRCREV_machine_qemux86-64 ?= "a1cdb60720c452c3965eaec3ec2cd10f06261cc5"
+SRCREV_machine ?= "a1cdb60720c452c3965eaec3ec2cd10f06261cc5"
+SRCREV_meta ?= "d65afd9e42230a3ef4cc1f9ad62d0aa84a533cd0"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"
 
Signature · 1 line
1.7.7.6
author
#12 lore raw

[CONSOLIDATED PULL 09/20] linux-yocto-rt/3.4: update qemuppc branch

In reply to Saul Wold

From: Bruce Ashfield <[email protected]>

The 3.4 kernel adopted the qemu machine name for the kernel branches, so the 3.4-rt recipe needs to be updated to reflect that.

---
 meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb +1 -1
index fabbb97..295fe27 100644
@@ -2,7 +2,7 @@ inherit kernel
 require recipes-kernel/linux/linux-yocto.inc
 
 KBRANCH = "standard/preempt-rt/base"
-KBRANCH_qemuppc = "standard/preempt-rt/qemu-ppc32"
+KBRANCH_qemuppc = "standard/preempt-rt/qemuppc"
 
 LINUX_VERSION ?= "3.4.3"
 LINUX_KERNEL_TYPE = "preempt-rt"
Signature · 1 line
1.7.7.6
author
#13 lore raw

[CONSOLIDATED PULL 12/20] busybox: add correct ALTERNATIVE_TARGET for init.d/syslog

In reply to Saul Wold

[YOCTO #2535]

---
 meta/recipes-core/busybox/busybox.inc       |    3 ++-
 meta/recipes-core/busybox/busybox_1.19.4.bb |    2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)
meta/recipes-core/busybox/busybox.inc +2 -1
index a9a58e2..82137a3 100644
@@ -210,11 +210,12 @@ ALTERNATIVE_PRIORITY = "50"
 ALTERNATIVE_${PN}-syslog = "syslog-init syslog-startup-conf"
 
 ALTERNATIVE_LINK_NAME[syslog-init] = "${sysconfdir}/init.d/syslog"
+ALTERNATIVE_TARGET[syslog-init] = "${sysconfdir}/init.d/syslog.${BPN}"
 
 ALTERNATIVE_LINK_NAME[syslog-startup-conf] = "${sysconfdir}/syslog-startup.conf"
+ALTERNATIVE_TARGET[syslog-startup-conf] = "${sysconfdir}/syslog-startup.conf.${BPN}"
 
 ALTERNATIVE_TARGET = "/bin/busybox"
-ALTERNATIVE_TARGET[syslog-startup-conf] = "${sysconfdir}/syslog-startup.conf.${BPN}"
 
 python do_package_prepend () {
 	# We need to load the full set of busybox provides from the /etc/busybox.links
meta/recipes-core/busybox/busybox_1.19.4.bb +1 -1
index 5b3f356..de331ad 100644
@@ -1,5 +1,5 @@
 require busybox.inc
-PR = "r7"
+PR = "r8"
 
 SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://B921600.patch \
Signature · 1 line
1.7.7.6
author
#14 lore raw

[CONSOLIDATED PULL 13/20] linux-dtb: add multi-dtb build support

In reply to Saul Wold

From: Zhenhua Luo <[email protected]>

including following enhancement:
* support multi-dtb build
* skip dtb build and install when KERNEL_DEVICETREE is empty
* print a warning message when specified dts file is not available

---
 meta/recipes-kernel/linux/linux-dtb.inc |   36 +++++++++++++++++++++++++------
 1 files changed, 29 insertions(+), 7 deletions(-)
meta/recipes-kernel/linux/linux-dtb.inc +29 -7
index 9188cee..8aa1458 100644
@@ -15,13 +15,35 @@ python __anonymous () {
 
 do_install_append() {
     if test -n "${KERNEL_DEVICETREE}"; then
-	dtc -I dts -O dtb ${KERNEL_DEVICETREE_FLAGS} -o devicetree ${KERNEL_DEVICETREE}
-	install -m 0644 devicetree ${D}/boot/devicetree-${KERNEL_VERSION}
-	install -d ${DEPLOYDIR}
-	install -m 0644 devicetree ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.dtb
-	cd ${DEPLOYDIR}
-	rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.dtb
-	ln -sf ${KERNEL_IMAGE_BASE_NAME}.dtb ${KERNEL_IMAGE_SYMLINK_NAME}.dtb
+        for DTS_FILE in ${KERNEL_DEVICETREE}; do
+            if [ ! -f ${DTS_FILE} ]; then
+                echo "Warning: ${DTS_FILE} is not available!"
+                continue
+            fi
+            DTS_BASE_NAME=`basename ${DTS_FILE} | awk -F "." '{print $1}'`
+            DTB_NAME=`echo ${KERNEL_IMAGE_BASE_NAME} | sed "s/${MACHINE}/${DTS_BASE_NAME}/g"`
+            DTB_SYMLINK_NAME=`echo ${KERNEL_IMAGE_SYMLINK_NAME} | sed "s/${MACHINE}/${DTS_BASE_NAME}/g"`
+            dtc -I dts -O dtb ${KERNEL_DEVICETREE_FLAGS} -o ${DTS_BASE_NAME} ${DTS_FILE}
+            install -m 0644 ${DTS_BASE_NAME} ${D}/boot/devicetree-${DTB_SYMLINK_NAME}.dtb
+        done
     fi
 }
 
+do_deploy_append() {
+    if test -n "${KERNEL_DEVICETREE}"; then
+        for DTS_FILE in ${KERNEL_DEVICETREE}; do
+            if [ ! -f ${DTS_FILE} ]; then
+                echo "Warning: ${DTS_FILE} is not available!"
+                continue
+            fi
+            DTS_BASE_NAME=`basename ${DTS_FILE} | awk -F "." '{print $1}'`
+            DTB_NAME=`echo ${KERNEL_IMAGE_BASE_NAME} | sed "s/${MACHINE}/${DTS_BASE_NAME}/g"`
+            DTB_SYMLINK_NAME=`echo ${KERNEL_IMAGE_SYMLINK_NAME} | sed "s/${MACHINE}/${DTS_BASE_NAME}/g"`
+            install -d ${DEPLOYDIR}
+            install -m 0644 ${B}/${DTS_BASE_NAME} ${DEPLOYDIR}/${DTB_NAME}.dtb
+            cd ${DEPLOYDIR}
+            ln -sf ${DTB_NAME}.dtb ${DTB_SYMLINK_NAME}.dtb
+            cd -
+        done
+    fi
+}
Signature · 1 line
1.7.7.6
author
#15 lore raw

[CONSOLIDATED PULL 11/20] systemtap: update to version 1.8

In reply to Saul Wold

From: Wade Farnsworth <[email protected]>

Update the systemtap recipes to the recently released 1.8. Remove a couple patches whose changes are already present in the new version.

---
 ...prun-configure.ac-support-without-nss-for.patch |   50 --------------------
 .../systemtap_fix_for_automake_1.12.patch          |   23 ---------
 meta/recipes-kernel/systemtap/systemtap_git.bb     |    2 +-
 meta/recipes-kernel/systemtap/systemtap_git.inc    |    6 +--
 4 files changed, 3 insertions(+), 78 deletions(-)
 delete mode 100644 meta/recipes-kernel/systemtap/systemtap/runtime-staprun-configure.ac-support-without-nss-for.patch
 delete mode 100644 meta/recipes-kernel/systemtap/systemtap/systemtap_fix_for_automake_1.12.patch
meta/recipes-kernel/systemtap/systemtap/runtime-staprun-configure.ac-support-without-nss-for.patch deleted +0 -50
deleted file mode 100644
index eef414a..0000000
@@ -1,50 +0,0 @@
-From fa81ccd4f92e5cb15a11a81a7e656bfe01745afb Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <[email protected]>
-Date: Tue, 5 Jun 2012 10:22:23 +0200
-Subject: [PATCH] runtime/staprun/configure.ac: support --without-nss for
- staprun
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Submitted
-
-Signed-off-by: Andreas Müller <[email protected]>
----
- runtime/staprun/configure.ac |   20 +++++++++++++++-----
- 1 files changed, 15 insertions(+), 5 deletions(-)
-
-diff --git a/runtime/staprun/configure.ac b/runtime/staprun/configure.ac
-index 8fd1b42..7b05f73 100644
---- a/runtime/staprun/configure.ac
-+++ b/runtime/staprun/configure.ac
-@@ -67,11 +67,21 @@ AS_IF([test "x$enable_sdt_probes" != xno], [
-             [Define to 1 to enable process.mark probes in staprun, stapio.])
- ])
- 
--PKG_CHECK_MODULES([nss], [nss >= 3], [have_nss=yes], [have_nss=no])
--AM_CONDITIONAL([HAVE_NSS], [test $have_nss = yes])
--AS_IF([test $have_nss = yes], [
--  AC_DEFINE([HAVE_NSS], [1], [Define to 1 if you have the nss libraries.])
--])
-+dnl See if we have the nss/nspr headers and libraries
-+AC_ARG_WITH([nss],
-+  AS_HELP_STRING([--without-nss],
-+    [Do not use NSS even if present]))
-+
-+AS_IF([test "x$with_nss" != "xno"], [
-+  PKG_CHECK_MODULES([nss], [nss >= 3],
-+    [have_nss=yes
-+     AC_DEFINE([HAVE_NSS], [1], [Define to 1 if you have the nss libraries.])
-+    ], [have_nss=no])
-+], [have_nss=no])
-+
-+AM_CONDITIONAL([HAVE_NSS], [test "${have_nss}" = "yes"])
-+
-+
- AC_ARG_ENABLE([nls], [AS_HELP_STRING([--enable-nls], [enable translating program messages])])
- AS_IF([test "x$enable_nls" != xno], [
- AC_DEFINE([ENABLE_NLS], [1], [Define to 1 if program messages should be translated.])
--- 
-1.7.6.5
-
meta/recipes-kernel/systemtap/systemtap/systemtap_fix_for_automake_1.12.patch deleted +0 -23
deleted file mode 100644
index ef74a09..0000000
@@ -1,23 +0,0 @@
-Upstream-Status: Pending 
-
-Automake 1.12 has deprecated automatic de-ANSI-fication support
-
-Fix this issue with automake 1.12:
-
-| configure.ac:23: error: automatic de-ANSI-fication support has been removed
-
-Signed-Off-by: Nitin A Kamble <[email protected]>
-2012/05/02
-
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac
-+++ git/configure.ac
-@@ -20,7 +20,6 @@ AC_PROG_CXX
- AC_PROG_CPP
- AM_PROG_CC_STDC
- AM_PROG_CC_C_O
--AM_C_PROTOTYPES
- AC_PROG_RANLIB
- AC_OBJEXT
- AC_EXEEXT
meta/recipes-kernel/systemtap/systemtap_git.bb +1 -1
index 7ed5fcd..059aca7 100644
@@ -6,7 +6,7 @@ DEPENDS = "elfutils sqlite3 systemtap-native"
 DEPENDS_virtclass-native = "elfutils-native sqlite3-native gettext-native"
 DEPENDS_virtclass-nativesdk = "elfutils-nativesdk sqlite3-nativesdk gettext-nativesdk"
 
-PR = "r5"
+PR = "r0"
 
 export CC_FOR_BUILD = "${BUILD_CC}"
 export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
meta/recipes-kernel/systemtap/systemtap_git.inc +2 -4
index 5f2987b..093e62d 100644
@@ -1,13 +1,11 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
-SRCREV = "83bd2699d8cff2f2d6b9eaf5ea254e4cb6b33e81"
-PV = "1.7+git${SRCPV}"
+SRCREV = "48fa6b5e1d3e636c34cbd5650370e6f634efc294"
+PV = "1.8+git${SRCPV}"
 
 SRC_URI = "git://sources.redhat.com/git/systemtap.git;protocol=git \
            file://docproc-build-fix.patch \
-           file://systemtap_fix_for_automake_1.12.patch \
-           file://runtime-staprun-configure.ac-support-without-nss-for.patch \
           "
 
 FILESPATH = "${FILE_DIRNAME}/systemtap"
Signature · 1 line
1.7.7.6
author
#16 lore raw

[CONSOLIDATED PULL 16/20] libxml: disable lzma

In reply to Saul Wold

From: Marcin Juszkiewicz <[email protected]>

On my system libxml-native got linked with host copy of liblzma and as a result libxslt-native was not linkable:

| x86_64-linux-libtool: link: gcc -isystem/home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/include -O2 -pipe -Wall -Wl,-rpath-link -Wl,/home/hrw /HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib -Wl,-rpath-link -Wl,/home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64- linux/lib -Wl,-rpath -Wl,/home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib -Wl,-rpath -Wl,/home/hrw/HDD/devel/canonical/ci-linaro/oecore/buil d/tmp-eglibc/sysroots/x86_64-linux/lib -Wl,-O1 -o .libs/xsltproc xsltproc.o -L/home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib -L/home/hrw/ HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/lib ../libxslt/.libs/libxslt.so ../libexslt/.libs/libexslt.so /home/hrw/HDD/devel/canonical/ci-linaro/oecore/ build/tmp-eglibc/work/x86_64-linux/libxslt-native-1.1.26-r8/libxslt-1.1.26/libxslt/.libs/libxslt.so /home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux /usr/lib/libxml2.so -ldl /home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/liblzma.so -lrt -lz -lm -pthread -Wl,-rpath -Wl,/home/hrw/HDD/deve l/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib

| /home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/libxml2.so: undefined reference to `lzma_code@XZ_5.0'
| /home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/libxml2.so: undefined reference to `lzma_auto_decoder@XZ_5.0'
| /home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/libxml2.so: undefined reference to `lzma_end@XZ_5.0'
| /home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/libxml2.so: undefined reference to `lzma_properties_decode@XZ_5.0'
| collect2: error: ld returned 1 exit status
| make[2]: *** [xsltproc] Error 1
| make[2]: Leaving directory `/home/hrw/HDD/devel/canonical/ci-linaro/oecore/build/tmp-eglibc/work/x86_64-linux/libxslt-native-1.1.26-r8/libxslt-1.1.26/xsltproc'
---
 meta/recipes-core/libxml/libxml2.inc      |    8 ++++----
 meta/recipes-core/libxml/libxml2_2.8.0.bb |    2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)
meta/recipes-core/libxml/libxml2.inc +4 -4
index 7d8cc16..9433631 100644
@@ -23,10 +23,10 @@ do_configure_prepend () {
 	sed -i -e '/.*ansidecl.h.*/d' ${S}/configure.in
 }
 
-EXTRA_OECONF = "--without-python --without-debug --without-legacy --without-catalog --without-docbook --with-c14n"
-EXTRA_OECONF_virtclass-native = "--with-python=${STAGING_BINDIR}/python --without-legacy --with-catalog --without-docbook --with-c14n"
-EXTRA_OECONF_virtclass-nativesdk = "--with-python=${STAGING_BINDIR}/python --without-legacy --with-catalog --without-docbook --with-c14n"
-EXTRA_OECONF_linuxstdbase = "--without-python --with-debug --with-legacy --with-catalog --with-docbook --with-c14n"
+EXTRA_OECONF = "--without-python --without-debug --without-legacy --without-catalog --without-docbook --with-c14n --without-lzma"
+EXTRA_OECONF_virtclass-native = "--with-python=${STAGING_BINDIR}/python --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma"
+EXTRA_OECONF_virtclass-nativesdk = "--with-python=${STAGING_BINDIR}/python --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma"
+EXTRA_OECONF_linuxstdbase = "--without-python --with-debug --with-legacy --with-catalog --with-docbook --with-c14n --without-lzma"
 
 # required for pythong binding
 export HOST_SYS
meta/recipes-core/libxml/libxml2_2.8.0.bb +1 -1
index 243789c..fe9ec05 100644
@@ -1,6 +1,6 @@
 require libxml2.inc
 
-PR = "r0"
+PR = "r1"
 
 SRC_URI[md5sum] = "c62106f02ee00b6437f0fb9d370c1093"
 SRC_URI[sha256sum] = "f2e2d0e322685193d1affec83b21dc05d599e17a7306d7b90de95bb5b9ac622a"
Signature · 1 line
1.7.7.6
author
#17 lore raw

[CONSOLIDATED PULL 14/20] native.bbclass: correct PATH to have native-intercept be prepended

In reply to Saul Wold

This was needed since it was after the sysroots and thus in some cases the native sysroot chown was being found and used instead of the script provided by native-intercept/chown. This was noticed by the non-gplv3 build since it's coreutils depends on coreutils-native.

---
 meta/classes/native.bbclass |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/classes/native.bbclass +1 -1
index bca48d4..eb30b5a 100644
@@ -99,7 +99,7 @@ PKG_CONFIG_SYSROOT_DIR = ""
 LIBCOVERRIDE = ""
 CLASSOVERRIDE = "class-native"
 
-PATH =. "${COREBASE}/scripts/native-intercept:"
+PATH_prepend = "${COREBASE}/scripts/native-intercept:"
 
 python native_virtclass_handler () {
     if not isinstance(e, bb.event.RecipePreFinalise):
Signature · 1 line
1.7.7.6
author
#18 lore raw

[CONSOLIDATED PULL 15/20] gconf.bbclass: don't register schemas in the install stage

In reply to Saul Wold

From: Ross Burton <[email protected]>

Previously this was installing schemas in the sysroot, which is wrong for native packages as nothing should touch the sysroot directly, and even more wrong for non-native packages as the sysroot is irrelevant.

So, export the environment variable that stops the registration happening at install time. The postinst script will handle the non-native case, and for the sysroot I've opened #2648. This isn't a massive problem as nothing to my knowledge actually installs schemas to the sysroot.

[YOCTO #2245]

---
 meta/classes/gconf.bbclass |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)
meta/classes/gconf.bbclass +10 -2
index a966c26..fb9f701 100644
@@ -1,10 +1,18 @@
 DEPENDS += "gconf gconf-native"
 
-# This is referenced by the gconf m4 macros and would default to the value hardcoded
-# into gconf at compile time otherwise
+# These are for when gconftool is used natively and the prefix isn't necessarily
+# the sysroot.  TODO: replicate the postinst logic for -native packages going
+# into sysroot as they won't be running their own install-time schema
+# registration (disabled below) nor the postinst script (as they don't happen).
 export GCONF_SCHEMA_INSTALL_SOURCE = "xml:merged:${STAGING_DIR_NATIVE}${sysconfdir}/gconf/gconf.xml.defaults"
 export GCONF_BACKEND_DIR = "${STAGING_LIBDIR_NATIVE}/GConf/2"
 
+# Disable install-time schema registration as we're a packaging system so this
+# happens in the postinst script, not at install time.  Set both the configure
+# script option and the traditional envionment variable just to make sure.
+EXTRA_OECONF += "--disable-schemas-install"
+export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL = "1"
+
 gconf_postinst() {
 if [ "x$D" != "x" ]; then
 	exit 1
Signature · 1 line
1.7.7.6
author
#19 lore raw

[CONSOLIDATED PULL 17/20] archiver.bbclass: Add the function of filtering packages

In reply to Saul Wold

From: Xiaofeng Yan <[email protected]>

This function can miss packages whose license is in "COPYLEFT_LICENSE_EXCLUDE" and tarball packages with license in "COPYLEFT_LICENSE_INCLUDE".

[YOCTO #2473]

---
 meta/classes/archiver.bbclass |   71 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 70 insertions(+), 1 deletions(-)
meta/classes/archiver.bbclass +70 -1
index 083bb1d..2b5404f 100644
@@ -10,6 +10,68 @@ SOURCE_ARCHIVE_LOG_WITH_SCRIPTS ?= '${@d.getVarFlag('ARCHIVER_MODE', 'log_type')
                                     if d.getVarFlag('ARCHIVER_MODE', 'log_type') != 'none' else 'logs_with_scripts'}'
 SOURCE_ARCHIVE_PACKAGE_TYPE ?= '${@d.getVarFlag('ARCHIVER_MODE','type') \
                                  if d.getVarFlag('ARCHIVER_MODE', 'log_type')!= 'none' else 'tar'}'
+FILTER ?= '${@d.getVarFlag('ARCHIVER_MODE','filter') \
+           if d.getVarFlag('ARCHIVER_MODE', 'filter')!= 'none' else 'no'}'
+
+
+COPYLEFT_LICENSE_INCLUDE ?= 'GPL* LGPL*'
+COPYLEFT_LICENSE_INCLUDE[type] = 'list'
+COPYLEFT_LICENSE_INCLUDE[doc] = 'Space separated list of globs which include licenses'
+
+COPYLEFT_LICENSE_EXCLUDE ?= 'CLOSED Proprietary'
+COPYLEFT_LICENSE_EXCLUDE[type] = 'list'
+COPYLEFT_LICENSE_INCLUDE[doc] = 'Space separated list of globs which exclude licenses'
+
+COPYLEFT_RECIPE_TYPE ?= '${@copyleft_recipe_type(d)}'
+COPYLEFT_RECIPE_TYPE[doc] = 'The "type" of the current recipe (e.g. target, native, cross)'
+
+COPYLEFT_RECIPE_TYPES ?= 'target'
+COPYLEFT_RECIPE_TYPES[type] = 'list'
+COPYLEFT_RECIPE_TYPES[doc] = 'Space separated list of recipe types to include'
+
+COPYLEFT_AVAILABLE_RECIPE_TYPES = 'target native nativesdk cross crosssdk cross-canadian'
+COPYLEFT_AVAILABLE_RECIPE_TYPES[type] = 'list'
+COPYLEFT_AVAILABLE_RECIPE_TYPES[doc] = 'Space separated list of available recipe types'
+
+def copyleft_recipe_type(d):
+    for recipe_type in oe.data.typed_value('COPYLEFT_AVAILABLE_RECIPE_TYPES', d):
+        if oe.utils.inherits(d, recipe_type):
+            return recipe_type
+    return 'target'
+
+def copyleft_should_include(d):
+    """Determine if this recipe's sources should be deployed for compliance"""
+    import ast
+    import oe.license
+    from fnmatch import fnmatchcase as fnmatch
+
+    recipe_type = d.getVar('COPYLEFT_RECIPE_TYPE', True)
+    if recipe_type not in oe.data.typed_value('COPYLEFT_RECIPE_TYPES', d):
+        return False, 'recipe type "%s" is excluded' % recipe_type
+
+    include = oe.data.typed_value('COPYLEFT_LICENSE_INCLUDE', d)
+    exclude = oe.data.typed_value('COPYLEFT_LICENSE_EXCLUDE', d)
+
+    try:
+        is_included, reason = oe.license.is_included(d.getVar('LICENSE', True), include, exclude)
+    except oe.license.LicenseError as exc:
+        bb.fatal('%s: %s' % (d.getVar('PF', True), exc))
+    else:
+        if is_included:
+            return True, 'recipe has included licenses: %s' % ', '.join(reason)
+        else:
+            return False, 'recipe has excluded licenses: %s' % ', '.join(reason)
+
+def tar_filter(d):
+    """Only tarball the packages belonging to COPYLEFT_LICENSE_INCLUDE and miss packages in COPYLEFT_LICENSE_EXCLUDE. Don't tarball any packages when \"FILTER\" is \"no\""""
+    if d.getVar('FILTER', True).upper() == "YES":
+        included, reason = copyleft_should_include(d)
+        if not included:
+                return False
+        else:
+                return True
+    else:
+        return False
 
 def get_bb_inc(d):
 	'''create a directory "script-logs" including .bb and .inc file in ${WORKDIR}'''
@@ -293,7 +355,7 @@ def archive_sources_patches(d,stage_name):
 	import shutil
 
 	check_archiving_type(d)	
-	if not_tarball(d):
+	if not_tarball(d) or tar_filter(d):
 		return
 	
 	source_tar_name = archive_sources(d,stage_name)
@@ -320,6 +382,8 @@ def archive_sources_patches(d,stage_name):
 def archive_scripts_logs(d):
 	'''archive scripts and logs. scripts include .bb and .inc files and logs include stuff in "temp".'''
 
+        if tar_filter(d):
+                return
 	work_dir = d.getVar('WORKDIR', True)
 	temp_dir = os.path.join(work_dir,'temp')
 	source_archive_log_with_scripts = d.getVar('SOURCE_ARCHIVE_LOG_WITH_SCRIPTS', True)
@@ -340,6 +404,9 @@ def archive_scripts_logs(d):
 
 def dumpdata(d):
 	'''dump environment to "${P}-${PR}.showdata.dump" including all kinds of variables and functions when running a task'''
+
+        if tar_filter(d):
+                return
 	workdir = bb.data.getVar('WORKDIR', d, 1)
 	distro = bb.data.getVar('DISTRO', d, 1)
 	s = d.getVar('S', True)
@@ -367,6 +434,8 @@ def create_diff_gz(d):
 	import shutil
 	import subprocess
 
+        if tar_filter(d):
+                return
 	work_dir = d.getVar('WORKDIR', True)
 	exclude_from = d.getVar('ARCHIVE_EXCLUDE_FROM', True).split()
 	pf = d.getVar('PF', True)
Signature · 1 line
1.7.7.6
author
#20 lore raw

[CONSOLIDATED PULL 18/20] local.conf.sample.extended: Add filtering function to archiver.bbclass

In reply to Saul Wold

From: Xiaofeng Yan <[email protected]>

Add the option to filter packages according to license.

[YOCTO #2473]

---
 meta/conf/local.conf.sample.extended |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)
meta/conf/local.conf.sample.extended +12 -2
index 1f84ac7..1d19386 100644
@@ -162,5 +162,15 @@
 # Whether to include WORKDIR/temp, .bb and .inc files:
 # 'logs_with_scripts' include WORKDIR/temp directory and .bb and .inc files
 # 'logs' only include WORKDIR/temp
-# SOURCE_ARCHIVE_LOG_WITH_SCRIPTS ?= 'logs'
-#SOURCE_ARCHIVE_LOG_WITH_SCRIPTS ?= 'logs_with_scripts'
+# ARCHIVER_MODE[log_type] = "logs logs_with_scripts"
+# There are three basic class defintions of common operations 
+# that might be desired and these can be enabled by 
+# uncommenting five of the following lines:
+# ARCHIVER_MODE[filter] ?= "yes no"
+# Filter packages according to license
+#ARCHIVER_MODE ?= "original"
+#ARCHIVER_MODE[type] ?= "tar"
+#ARCHIVER_MODE[log_type] ?= "logs_with_scripts"
+#ARCHIVER_MODE[filter] ?= "no"
+#ARCHIVER_CLASS = "${@'archive-${ARCHIVER_MODE}-source' if ARCHIVER_MODE != 'none' else ''}"
+#INHERIT += "${ARCHIVER_CLASS}"
Signature · 1 line
1.7.7.6
author
#21 lore raw

[CONSOLIDATED PULL 19/20] bitbake.conf: disable ccache explicitly if it is not enabled

In reply to Saul Wold

From: Robert Yang <[email protected]>

The autogen-native built error on FC17:

ccache: failed to create /dev/null/.ccache

This is because the default gcc command of FC17 is a symlink to ccache, so the ccache will always be used regardless to the setting of CCACHE, ccache uses $HOME/.ccache as the CACHE_DIR by default, but autogen set HOME=/dev/null, so the error happens.

Disable ccache explicitly if it is not enabled would fix the problem, otherwise it would always use ccache regardless to the setting of CCACHE on Fedora 17.

The ccache 3.1.7 has a bug, it would always create $CCCHE_DIR/.ccache even CCACHE_DISABLE=1.

Unset CCACHE_DISABLE in ccache.bbclass, since ccache only checks whether there is a CCACHE_DISABLE in the environment or not, it doesn't care about its value, so we need unset it explicitly when enable ccache.

[YOCTO #2554]

---
 meta/classes/ccache.bbclass |    1 +
 meta/conf/bitbake.conf      |    8 ++++++++
 2 files changed, 9 insertions(+), 0 deletions(-)
meta/classes/ccache.bbclass +1 -0
index 10f9b9f..5aa2da2 100644
@@ -1,5 +1,6 @@
 CCACHE = "${@bb.which(d.getVar('PATH', True), 'ccache') and 'ccache '}"
 export CCACHE_DIR = "${TMPDIR}/ccache/${MULTIMACH_HOST_SYS}/${PN}"
+CCACHE_DISABLE[unexport] = "1"
 
 do_configure[dirs] =+ "${CCACHE_DIR}"
 do_kernel_configme[dirs] =+ "${CCACHE_DIR}"
meta/conf/bitbake.conf +8 -0
index fbc0ca2..9b26580 100644
@@ -414,6 +414,14 @@ export PATH
 ##################################################################
 
 CCACHE ??= ""
+# Disable ccache explicitly if CCACHE is null since gcc may be a symlink
+# of ccache some distributions (e.g., Fedora 17).
+export CCACHE_DISABLE ??= "${@[0,1][d.getVar('CCACHE', True) == '']}"
+# Assign CCACHE_DIR a default vaule to fix a bug of ccache 3.1.7,
+# since it would always create CCACHE_DIR/.ccache even if
+# CCACHE_DISABLE = 1.
+export CCACHE_DIR ??= "${@os.getenv('HOME')}"
+
 TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TARGET}"
 
 export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
Signature · 1 line
1.7.7.6
author
#22 lore raw

[CONSOLIDATED PULL 20/20] linux-yocto/3.0: update BSP descriptions to new kern-tools format

In reply to Saul Wold

From: Bruce Ashfield <[email protected]>

In tree linux-yocto 3.0 boards indicate that they are BSPs via the older/obsolete syntax "scc_leaf". This line in their board description is detected by the build process and is used to find the BSP description and the kernel type they use as their base.

To work with the latest kern tools, the BSP descriptions should be updated to "include <ktype> branch <machine>" to acheive the same result.

All trees newer than 3.0 already have this change and do not need to be updated.

---
 meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb |    2 +-
 meta/recipes-kernel/linux/linux-yocto_3.0.bb    |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb +1 -1
index 971d1a8..1de0411 100644
@@ -10,7 +10,7 @@ KMETA = "meta"
 
 SRCREV_machine ?= "e67428d9966eecec4c081993dc64ceb5c0e64643"
 SRCREV_machine_qemuppc ?= "dcca458cb92cc287f70e4062f02460f36a881b16"
-SRCREV_meta ?= "46e8fc2bbbe73514e8d99101adaaa373f760ffa7"
+SRCREV_meta ?= "d282029891bba5440630a885b940dea5e34e3e2c"
 
 PR = "r2"
 PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_3.0.bb +1 -1
index 5cdff95..362e65a 100644
@@ -18,7 +18,7 @@ SRCREV_machine_qemuppc ?= "bd9a3c4c066bd4b9f52b51aaaec9b029a7abe793"
 SRCREV_machine_qemux86 ?= "70342faea067476774eb55f4e3098af0bcc48782"
 SRCREV_machine_qemux86-64 ?= "cba836a545fbeb96f6f2392c3ecbac9d7735fa65"
 SRCREV_machine ?= "bd6ad607c754dea30d91502a237870b4c45e0f1b"
-SRCREV_meta ?= "46e8fc2bbbe73514e8d99101adaaa373f760ffa7"
+SRCREV_meta ?= "d282029891bba5440630a885b940dea5e34e3e2c"
 
 PR = "r4"
 PV = "${LINUX_VERSION}+git${SRCPV}"
Signature · 1 line
1.7.7.6
#23 lore raw
In reply to Saul Wold

Hi Richard,

Quoted 4 lines

Lianhao Lu (3):
classes/image: Allow openssh empty passwords login. image/core-image: Handle conflicting IMAGE_FEATURES.
task-core-tools-debug: Added openssh-sftp-server.

I saw only the first patch "openssh empty password" was merged. What's the status of the other 2 patches?

Best Regards,
-Lianhao

Saul Wold wrote on 2012-06-27:

Quoted 47 lines

Richard,

Another set of pulls with various fixes and updates.

Of note:
* Ross's gconf also needs to get into the denzil branch for 1.2.1 build it and it resolved the gthumb build issue.
* Robert's change for disabling CCACHE
* Zhenhua's linux-dtb work

The following changes since commit f4b5afe46ff018570c1949653eb6995428827f6f:

sanity.bbclass: Increase LAYER_CONF_VERSION to match bblayers change (2012-06-25 17:20:06 +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
Andrea Adami (1):
mtd-utils: do not stage headers in sysroot
Bruce Ashfield (6):
kern-tools: add buildall and robustness fixes
linux-yocto/3.4: update and categorize configuration options
linux-yocto/3.4: update to v3.4.3
linux-yocto-rt/3.4: update qemuppc branch
linux-yocto/3.4: -rt build fixes + configuration audit (part2)
linux-yocto/3.0: update BSP descriptions to new kern-tools format
Lianhao Lu (3):
classes/image: Allow openssh empty passwords login.
image/core-image: Handle conflicting IMAGE_FEATURES.
task-core-tools-debug: Added openssh-sftp-server.
Marcin Juszkiewicz (1):
libxml: disable lzma
Robert Yang (1):
bitbake.conf: disable ccache explicitly if it is not enabled
Ross Burton (1):
gconf.bbclass: don't register schemas in the install stage
Saul Wold (3):
mx: Upgrade to 1.4.6
busybox: add correct ALTERNATIVE_TARGET for init.d/syslog
native.bbclass: correct PATH to have native-intercept be prepended
Wade Farnsworth (1):
systemtap: update to version 1.8
Xiaofeng Yan (2):
archiver.bbclass: Add the function of filtering packages local.conf.sample.extended: Add filtering function to
archiver.bbclass
Zhenhua Luo (1):
linux-dtb: add multi-dtb build support

#24 lore raw
Quoted 8 lines · Lianhao

Hi Richard,

Quoted 4 lines

Lianhao Lu (3):
classes/image: Allow openssh empty passwords login. image/core-image: Handle conflicting IMAGE_FEATURES.
task-core-tools-debug: Added openssh-sftp-server.

I saw only the first patch "openssh empty password" was merged. What's the status of the other 2 patches?

Sorry, I'd meant to reply about this. We need to use something other than SkipPackage when there are conflicting options. I've replied to the patch.

Cheers,

Richard