[OE-core] [PATCH] recipetool: add 'newappend' sub-command

2015-09-15 Thread Christopher Larson
This sub-command creates a bbappend for the specified target and prints the
path to the bbappend. The -w argument, as with some of the other recipetool
commands, will make a version-independent bbappend.

Example usage: recipetool newappend meta-mylayer virtual/kernel

[YOCTO #7964]

Signed-off-by: Christopher Larson 
---
 scripts/lib/recipetool/newappend.py | 126 
 1 file changed, 126 insertions(+)
 create mode 100644 scripts/lib/recipetool/newappend.py

diff --git a/scripts/lib/recipetool/newappend.py 
b/scripts/lib/recipetool/newappend.py
new file mode 100644
index 000..be9077c
--- /dev/null
+++ b/scripts/lib/recipetool/newappend.py
@@ -0,0 +1,126 @@
+# Recipe creation tool - newappend plugin
+#
+# This sub-command creates a bbappend for the specified target and prints the
+# path to the bbappend.
+#
+# Example: recipetool newappend meta-mylayer busybox
+#
+# Copyright (C) 2015 Christopher Larson 
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+import argparse
+import errno
+import logging
+import os
+import re
+
+
+logger = logging.getLogger('recipetool')
+tinfoil = None
+
+
+def plugin_init(pluginlist):
+# Don't need to do anything here right now, but plugins must have this 
function defined
+pass
+
+
+def tinfoil_init(instance):
+global tinfoil
+tinfoil = instance
+
+
+def _provide_to_pn(cooker, provide):
+"""Get the name of the preferred recipe for the specified provide."""
+import bb.providers
+filenames = cooker.recipecache.providers[provide]
+eligible, foundUnique = bb.providers.filterProviders(filenames, provide, 
cooker.expanded_data, cooker.recipecache)
+filename = eligible[0]
+pn = cooker.recipecache.pkg_fn[filename]
+return pn
+
+
+def _get_recipe_file(cooker, pn):
+import oe.recipeutils
+recipefile = oe.recipeutils.pn_to_recipe(cooker, pn)
+if not recipefile:
+skipreasons = oe.recipeutils.get_unavailable_reasons(cooker, pn)
+if skipreasons:
+logger.error('\n'.join(skipreasons))
+else:
+logger.error("Unable to find any recipe file matching %s" % pn)
+return recipefile
+
+
+def layer(layerpath):
+if not os.path.exists(os.path.join(layerpath, 'conf', 'layer.conf')):
+raise argparse.ArgumentTypeError('{0!r} must be a path to a valid 
layer'.format(layerpath))
+return layerpath
+
+
+def newappend(args):
+pn = _provide_to_pn(tinfoil.cooker, args.target)
+recipe_path = _get_recipe_file(tinfoil.cooker, pn)
+
+# Map recipe path to the layer it's in
+for layerpath in tinfoil.config_data.getVar('BBLAYERS', True).split():
+layerconf = os.path.join(layerpath, 'conf', 'layer.conf')
+l = bb.data.init()
+l.setVar('LAYERDIR', layerpath)
+l = bb.parse.handle(layerconf, l)
+l.expandVarref('LAYERDIR')
+
+for layername in l.getVar('BBFILE_COLLECTIONS', True).split():
+pattern = l.getVar('BBFILE_PATTERN_' + layername, True)
+if pattern and re.match(pattern, recipe_path):
+recipe_layer_path = layerpath
+break
+else:
+continue
+break
+else:
+recipe_layer_path = 
os.path.dirname(os.path.dirname(os.path.dirname(recipe_path)))
+
+recipe_relpath = os.path.relpath(recipe_path, recipe_layer_path)
+append_relpath = recipe_relpath + 'append'
+append_path = os.path.join(args.destlayer, append_relpath)
+
+if args.wildcard_version and '_' in os.path.basename(append_path):
+base, _ = os.path.splitext(append_path)
+base, _ = base.rsplit('_', 1)
+append_path = base + '_%.bbappend'
+
+if not os.path.exists(append_path):
+try:
+os.makedirs(os.path.dirname(append_path))
+except OSError as exc:
+if exc.errno != errno.EEXIST:
+raise
+
+try:
+open(append_path, 'a')
+except (OSError, IOError) as exc:
+logger.critical(str(exc))
+return 1
+
+print(append_path)
+
+
+def register_command(subparsers):
+parser = subparsers.add_parser('newappend',
+   help='Create a bbappend for the specified 
target in the specified layer')
+parser.add_argument('-w', '--wildcard-version', help='Use wildcard to 

[OE-core] [PATCH] devshell: symlink $TOPDIR to $WORKDIR/topdir

2015-09-15 Thread Christopher Larson
From: Christopher Larson 

It's quite common to need to copy files out of the devshell back to your
layers, but most of the variables referring to such paths are not exported
(and in some cases, should not be, as it'll affect buildsystems we run, e.g.
TOPDIR/BUILDDIR). To resolve this while still making it easier to get files
out of the devshell, create a ${WORKDIR}/topdir symlink to ${TOPDIR}, removing
it after exiting the devshell.

[YOCTO #7670]

Signed-off-by: Christopher Larson 
---
 meta/classes/devshell.bbclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/meta/classes/devshell.bbclass b/meta/classes/devshell.bbclass
index 4451436..e2c200c 100644
--- a/meta/classes/devshell.bbclass
+++ b/meta/classes/devshell.bbclass
@@ -12,7 +12,10 @@ python do_devshell () {
 d.appendVar("OE_TERMINAL_EXPORTS", " " + k[0])
d.delVarFlag("do_devshell", "fakeroot")
 
+topdir_link = os.path.join(d.getVar('WORKDIR', True), 'topdir')
+os.symlink(d.getVar('TOPDIR', True), topdir_link)
 oe_terminal(d.getVar('DEVSHELL', True), 'OpenEmbedded Developer Shell', d)
+os.unlink(topdir_link)
 }
 
 addtask devshell after do_patch
-- 
2.2.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 0/3] PRServer: Fixes daemon issues.

2015-09-15 Thread leonardo . sandoval . gonzalez
From: Leonardo Sandoval 

First two patches fix issues when using hostnames instead of IPs. Third patch
change the journal mode, allowing the DB to be hosted on a remote server and
network filesystems. Detail is given on each patch. Fixes 8258, 8560 and 8215

The following changes since commit 71b0568fa43285f0946fae93fb43cea5f3bbecec:

  rt-tests: drop unnecessary added-missing-dependencies.patch (2015-09-01 
11:44:04 +0100)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib 
lsandov1/Remote-PR-server-not-writing-PR-values-to-database
  
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=lsandov1/Remote-PR-server-not-writing-PR-values-to-database

Leonardo Sandoval (3):
  prserv/serv: Start/Stop daemon using ip instead of host
  prserv/serv.py: Better messaging when starting/stopping the server
with port=0
  prserv/db: Use DELETE instead of WAL journal mode

 bitbake/lib/prserv/db.py   |  2 +-
 bitbake/lib/prserv/serv.py | 36 +---
 2 files changed, 30 insertions(+), 8 deletions(-)

-- 
1.8.4.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/3] prserv/serv.py: Better messaging when starting/stopping the server with port=0

2015-09-15 Thread leonardo . sandoval . gonzalez
From: Leonardo Sandoval 

When starting the server using port=0, the server actually starts with a
different port, so print a message with this new value. When stopping the
server with port=0, advise the user which ports the server is listening to,
so next time it tries to close it, user can pick up the correct one.

[YOCTO #8560]

Signed-off-by: Leonardo Sandoval 
---
 bitbake/lib/prserv/serv.py | 23 +--
 1 file changed, 21 insertions(+), 2 deletions(-)

diff --git a/bitbake/lib/prserv/serv.py b/bitbake/lib/prserv/serv.py
index 0d96963..8b000e6 100644
--- a/bitbake/lib/prserv/serv.py
+++ b/bitbake/lib/prserv/serv.py
@@ -278,9 +278,16 @@ def start_daemon(dbfile, host, port, logfile):
 server = PRServer(os.path.abspath(dbfile), os.path.abspath(logfile), 
(ip,port))
 server.start()
 
+# Sometimes, the port (i.e. localhost:0) indicated by the user does not 
match with
+# the one the server actually is listening, so at least warn the user 
about it
+_,rport = server.getinfo()
+if port != rport:
+sys.stderr.write("WARNING: Server is listening at port %s instead of 
%s\n"
+ % (rport,port))
 return 0
 
 def stop_daemon(host, port):
+import glob
 ip = socket.gethostbyname(host)
 pidfile = PIDPREFIX % (ip, port)
 try:
@@ -291,8 +298,20 @@ def stop_daemon(host, port):
 pid = None
 
 if not pid:
-sys.stderr.write("pidfile %s does not exist. Daemon not running?\n"
-% pidfile)
+# when server starts at port=0 (i.e. localhost:0), server actually 
takes another port,
+# so at least advise the user which ports the corresponding server is 
listening
+ports = []
+portstr = ""
+for pf in glob.glob(PIDPREFIX % (ip,'*')):
+bn = os.path.basename(pf)
+root, _ = os.path.splitext(bn)
+ports.append(root.split('_')[-1])
+if len(ports):
+portstr = "Wrong port? Other ports listening at %s: %s" % (host, ' 
'.join(ports))
+
+sys.stderr.write("pidfile %s does not exist. Daemon not running? %s\n"
+ % (pidfile,portstr))
+return 1
 
 try:
 PRServerConnection(ip, port).terminate()
-- 
1.8.4.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 1/3] prserv/serv: Start/Stop daemon using ip instead of host

2015-09-15 Thread leonardo . sandoval . gonzalez
From: Leonardo Sandoval 

In cases where hostname is given instead of an IP (i.e. localhost
instead of 127.0.0.1) when stopping the server with bitbake-prserv --stop,
the server shows a misleading message indicating that the daemon was not
found, where it is actually stopped. This patch converts host to IP values
before starting/stopping the daemon, so it will always work on IP, not on
hostnames, avoiding problems like the latter.

[YOCTO #8258]

Signed-off-by: Leonardo Sandoval 
---
 bitbake/lib/prserv/serv.py | 13 -
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/bitbake/lib/prserv/serv.py b/bitbake/lib/prserv/serv.py
index 0507485..0d96963 100644
--- a/bitbake/lib/prserv/serv.py
+++ b/bitbake/lib/prserv/serv.py
@@ -3,6 +3,7 @@ import signal, time
 from SimpleXMLRPCServer import SimpleXMLRPCServer, SimpleXMLRPCRequestHandler
 import threading
 import Queue
+import socket
 
 try:
 import sqlite3
@@ -37,7 +38,6 @@ singleton = None
 class PRServer(SimpleXMLRPCServer):
 def __init__(self, dbfile, logfile, interface, daemon=True):
 ''' constructor '''
-import socket
 try:
 SimpleXMLRPCServer.__init__(self, interface,
 logRequests=False, allow_none=True)
@@ -261,7 +261,8 @@ class PRServerConnection(object):
 return self.host, self.port
 
 def start_daemon(dbfile, host, port, logfile):
-pidfile = PIDPREFIX % (host, port)
+ip = socket.gethostbyname(host)
+pidfile = PIDPREFIX % (ip, port)
 try:
 pf = file(pidfile,'r')
 pid = int(pf.readline().strip())
@@ -274,12 +275,14 @@ def start_daemon(dbfile, host, port, logfile):
 % pidfile)
 return 1
 
-server = PRServer(os.path.abspath(dbfile), os.path.abspath(logfile), 
(host,port))
+server = PRServer(os.path.abspath(dbfile), os.path.abspath(logfile), 
(ip,port))
 server.start()
+
 return 0
 
 def stop_daemon(host, port):
-pidfile = PIDPREFIX % (host, port)
+ip = socket.gethostbyname(host)
+pidfile = PIDPREFIX % (ip, port)
 try:
 pf = file(pidfile,'r')
 pid = int(pf.readline().strip())
@@ -292,7 +295,7 @@ def stop_daemon(host, port):
 % pidfile)
 
 try:
-PRServerConnection(host, port).terminate()
+PRServerConnection(ip, port).terminate()
 except:
 logger.critical("Stop PRService %s:%d failed" % (host,port))
 
-- 
1.8.4.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 3/3] prserv/db: Use DELETE instead of WAL journal mode

2015-09-15 Thread leonardo . sandoval . gonzalez
From: Leonardo Sandoval 

Disadvantages of WAL journal mode are explained on [1], but the
one affecting our case is "All processes using a database must be
on the same host computer; WAL does not work over a network filesystem".
Changing the Journal mode into DELETE which is the normal behavior for
rollback journal.

[YOCTO #8215]

[1] https://www.sqlite.org/wal.html

Signed-off-by: Leonardo Sandoval 
---
 bitbake/lib/prserv/db.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bitbake/lib/prserv/db.py b/bitbake/lib/prserv/db.py
index 4379580..b3e3a4f 100644
--- a/bitbake/lib/prserv/db.py
+++ b/bitbake/lib/prserv/db.py
@@ -245,7 +245,7 @@ class PRData(object):
 self.connection=sqlite3.connect(self.filename, 
isolation_level="EXCLUSIVE", check_same_thread = False)
 self.connection.row_factory=sqlite3.Row
 self.connection.execute("pragma synchronous = off;")
-self.connection.execute("PRAGMA journal_mode = WAL;")
+self.connection.execute("PRAGMA journal_mode = DELETE;")
 self._tables={}
 
 def __del__(self):
-- 
1.8.4.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 0/6] Fixes for mutilib SDK

2015-09-15 Thread Robert Yang



On 09/16/2015 10:04 AM, Robert Yang wrote:

* This fixed:
   MACHINE = "qemux86-64"
   require conf/multilib.conf
   MULTILIBS = "multilib:lib32"
   DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

   $ bitbake core-image-minimal -cpopulate_sdk
   Install 
poky-glibc-x86_64-core-image-minimal-core2-64-toolchain-1.8+snapshot.sh,
   then source environment-setup-core2-64-pokymllib32-linux or
   environment-setup-core2-64-poky-linux, both of them will compile hello.c
   well. (The 32bit was broken in the past)

   $ bitbake lib32-core-image-minimal -cpopulate_sdk
   Install 
poky-glibc-x86_64-lib32-core-image-minimal-core2-64-toolchain-1.8+snapshot.sh,
   then source environment-setup-core2-64-poky-linux or
   environment-setup-core2-64-pokymllib32-linux, both of them will compile
   hello.c well (neither of them worked in the past)

   This also fixed the problem that not all dependencies mutilib packages
   are installed, please see:
   https://bugzilla.yoctoproject.org/show_bug.cgi?id=4408


And also fixed this one:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=7610

Add IMAGE_INSTALL_append = " bash" to local.conf
$ bitbake lib32-core-image-minimal

32bit bash will be installed, but not 64bit.

Now 64 bit will be installed.

// Robert



Tested:
$ bitbake core-image-minimal core-image-sato -cpopulate_sdk && bitbake 
core-image-sato-sdk world core-image-minimal core-image-sato

// Robert

The following changes since commit f0189829498e30231d826c9f55aad73e622d076e:

   qemu: Update to upstream patches (2015-09-14 11:22:02 +0100)

are available in the git repository at:

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

Robert Yang (6):
   toolchain-shar-extract.sh: remove checkbashism
   oe-pkgdata-util: avoid returning skipped packages
   package_manager.py: make rpm install mutilib pkgs corectly
   multilib.bbclass: install all bits toochains when populate mlprefix
 SDK
   populate_sdk_base.bbclass: fix SDKTARGETSYSROOT when populate
 mlprefix SDK
   meta-environment.bb: fix environment-setup* when populate mlprefix
 SDK

  meta/classes/multilib.bbclass  |   15 +
  meta/classes/populate_sdk_base.bbclass |6 +-
  meta/files/toolchain-shar-extract.sh   |4 +-
  meta/lib/oe/package_manager.py |   83 +++-
  meta/recipes-core/meta/meta-environment.bb |4 ++
  scripts/oe-pkgdata-util|5 +-
  6 files changed, 111 insertions(+), 6 deletions(-)


--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 1/4] gtk+/cairo: enable x11 or directfb

2015-09-15 Thread Robert Yang
The gtk+2 requires whether x11 or directfb to build, so we need enable
either of them. The cairo can be built without x11 or directfb, but gtk+
requires cairo, so enable x11 or directfb for cairo, too.

Signed-off-by: Robert Yang 
---
 meta/recipes-gnome/gtk+/gtk+.inc  |5 ++---
 meta/recipes-graphics/cairo/cairo.inc |8 ++--
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/meta/recipes-gnome/gtk+/gtk+.inc b/meta/recipes-gnome/gtk+/gtk+.inc
index be5273d..9d697cdb 100644
--- a/meta/recipes-gnome/gtk+/gtk+.inc
+++ b/meta/recipes-gnome/gtk+/gtk+.inc
@@ -17,9 +17,8 @@ X11DEPENDS = "virtual/libx11 libxext libxcursor libxrandr 
libxdamage libxrender
 DEPENDS = "glib-2.0 pango atk jpeg libpng gdk-pixbuf-native 
docbook-utils-native \
  cairo gdk-pixbuf"
 
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', 
d)} \
-   ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', 
d)} \
-"
+# Requires x11 or directfb
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 
'directfb', d)}"
 
 PACKAGECONFIG[x11] = "--with-x=yes 
--with-gdktarget=x11,--with-x=no,${X11DEPENDS}"
 # without --with-gdktarget=directfb it will check for cairo-xlib which isn't 
available without X11 DISTRO_FEATURE
diff --git a/meta/recipes-graphics/cairo/cairo.inc 
b/meta/recipes-graphics/cairo/cairo.inc
index 1e45318..f6474bc 100644
--- a/meta/recipes-graphics/cairo/cairo.inc
+++ b/meta/recipes-graphics/cairo/cairo.inc
@@ -17,8 +17,12 @@ LICENSE_${PN}-perf-utils = "GPLv3+"
 X11DEPENDS = "virtual/libx11 libsm libxrender libxext"
 DEPENDS = "libpng fontconfig pixman glib-2.0 zlib"
 
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', 
'', d)} \
-   ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', 
d)}"
+# Build cairo-xlib or cairo-directfb for gtk+
+PACKAGECONFIG ??= " ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', 
'directfb', d)} \
+"
+
+# No directfb-native, so set PACKAGECONFIG to null when no x11
+PACKAGECONFIG_class-native ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 
'x11', '', d)}"
 
 PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no 
--disable-xlib,${X11DEPENDS}"
 PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 4/4] insane.bbclass: make package_qa_clean_path return a relative path

2015-09-15 Thread Robert Yang
Make package_qa_clean_path() return something like "work/path/to/file"
rather than "/work/path/to/file", the relative path is a little clear.

Signed-off-by: Robert Yang 
---
 meta/classes/insane.bbclass |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 943ada8..628b63f 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -166,7 +166,7 @@ def package_qa_get_machine_dict():
 
 def package_qa_clean_path(path,d):
 """ Remove the common prefix from the path. In this case it is the 
TMPDIR"""
-return path.replace(d.getVar('TMPDIR',True),"")
+return path.replace(d.getVar("TMPDIR", True) + "/", "")
 
 def package_qa_write_error(type, error, d):
 logfile = d.getVar('QA_LOGFILE', True)
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 3/4] insane.bbclass: fix package_qa_check_buildpaths

2015-09-15 Thread Robert Yang
* Ignore elf files because they usually contain build path:
  - The path of the source file such as .c, these are usually happen
when separate B and S since we use absolute path to run configure
script, and then VPATH in Makefile will be an absolute path and
contains build path, we can use relative path in autotools.bbclass
to fix the problem, but we don't have to since they are harmless.
  - The configure options such as "configure --with-libtool-sysroot"
  - The compile options such as "gcc --sysroot"
  These are harmless usually, so ignore elf files.

* Ignore "-dbg" and "-staticdev" package since symbols and .a files
  usually contain buildpath.

* Ignore .a files too since they contain buildpath, this mainly for
  ignoring:
  glibc-2.21: glibc-dev/usr/lib/libc_nonshared.a
  libgcc-4.9.3: libgcc-dev/usr/lib/x86_64-poky-linux/4.9.3/libgcc_eh.a
  gcc-runtime-4.9.3: libssp-dev/usr/lib/libssp_nonshared.a

* Use full path rather than package_qa_clean_path() when report issue,
  this makes it easier to find the file and fix the problem.

Then we will verify other warings and fix one be one.

Signed-off-by: Robert Yang 
---
 meta/classes/insane.bbclass |   12 +---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 5c8629a..943ada8 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -571,8 +571,14 @@ def package_qa_check_buildpaths(path, name, d, elf, 
messages):
 """
 Check for build paths inside target files and error if not found in the 
whitelist
 """
-# Ignore .debug files, not interesting
-if path.find(".debug") != -1:
+
+# Ignore staticdev and debug files since symbols and .a usually
+# contain buildpath.
+if name.endswith("-dbg") or name.endswith("-staticdev"):
+return
+
+# Ignore elf and .a files
+if elf or path.endswith('.a'):
 return
 
 # Ignore symlinks
@@ -583,7 +589,7 @@ def package_qa_check_buildpaths(path, name, d, elf, 
messages):
 with open(path) as f:
 file_content = f.read()
 if tmpdir in file_content:
-messages["buildpaths"] = "File %s in package contained reference 
to tmpdir" % package_qa_clean_path(path,d)
+messages["buildpaths"] = "File %s in package contained reference 
to tmpdir" % path
 
 
 QAPATHTEST[xorg-driver-abi] = "package_qa_check_xorg_driver_abi"
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/4] libsdl: depends on libglu when both x11 and opengl

2015-09-15 Thread Robert Yang
The libglu requires both opengl (depends on virtual/libgl) and x11
(needs libGL.so which is provided by mesa when x11 in DISTRO_FEATURES),
so let libsdl depends on libglu when both x11 and opengl in
DISTRO_FEATURES.

Signed-off-by: Robert Yang 
---
 meta/recipes-graphics/libsdl/libsdl_1.2.15.bb |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb 
b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
index 266bd42..c0d5c6a 100644
--- a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
+++ b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
@@ -13,8 +13,9 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=27818cd7fd83877a8e3ef82b82798ef4"
 PROVIDES = "virtual/libsdl"
 
 DEPENDS = "${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', 
d)} \
-   ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl 
libglu', '', d)} \
+   ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl', 
'', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 
libxext libxrandr libxrender', '', d)} \
+   ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'libglu', '', 
d)} \
tslib"
 DEPENDS_class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 
'virtual/nativesdk-libx11 nativesdk-libxrandr nativesdk-libxrender 
nativesdk-libxext', '', d)}"
 
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 0/4] meta: resend patches

2015-09-15 Thread Robert Yang
Hi RP and Ross,

I had sent these patches before, but didn't get any feedback, now send
again, would you please take a look at them ?

The following two patches would make oe-core can do world build well
without x11 in DISTRO_FEATURES:
gtk+/cairo: enable x11 or directfb
libsdl: depends on libglu when both x11 and opengl

And the patches for insane.bbclass will make package_qa_check_buildpaths
actually useful.

// Robert

The following changes since commit f0189829498e30231d826c9f55aad73e622d076e:

  qemu: Update to upstream patches (2015-09-14 11:22:02 +0100)

are available in the git repository at:

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

Robert Yang (4):
  gtk+/cairo: enable x11 or directfb
  libsdl: depends on libglu when both x11 and opengl
  insane.bbclass: fix package_qa_check_buildpaths
  insane.bbclass: make package_qa_clean_path return a relative path

 meta/classes/insane.bbclass   |   14 ++
 meta/recipes-gnome/gtk+/gtk+.inc  |5 ++---
 meta/recipes-graphics/cairo/cairo.inc |8 ++--
 meta/recipes-graphics/libsdl/libsdl_1.2.15.bb |3 ++-
 4 files changed, 20 insertions(+), 10 deletions(-)

-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] perf triggering a QA error

2015-09-15 Thread Rongqing Li



On 2015年09月16日 03:00, Otavio Salvador wrote:

Hello folks,

It seems the commit:


try this patch

http://patchwork.openembedded.org/patch/103239/

-Roy
--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 1/2] runqemu-internal: Fix qemu networking for qemuzynq an qemumicroblaze

2015-09-15 Thread Nathan Rossi
This patch brings the qemu networking setup for qemuzynq and
qemumicroblaze into feature parity with the other qemu machines.
Specifically enabling TAP interface attachcment and kernel command line
IP configuration.

Signed-off-by: Nathan Rossi 
---
 scripts/runqemu-internal | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index 1527268..2d2a839 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -587,20 +587,20 @@ fi
 
 if [ "$MACHINE" = "qemumicroblaze" ]; then
 QEMU=qemu-system-microblazeel
-QEMU_SYSTEM_OPTIONS="-M petalogix-ml605 -serial mon:stdio -dtb 
$KERNEL-$MACHINE.dtb"
+QEMU_SYSTEM_OPTIONS="$QEMU_NETWORK_CMD -M petalogix-ml605 -serial 
mon:stdio -dtb $KERNEL-$MACHINE.dtb"
 if [ "${FSTYPE:0:3}" = "ext" -o "${FSTYPE:0:4}" = "cpio" ]; then
-KERNCMDLINE="earlyprintk root=/dev/ram rw"
+KERNCMDLINE="earlyprintk root=/dev/ram rw $KERNEL_NETWORK_CMD 
mem=$QEMU_MEMORY"
 QEMUOPTIONS="$QEMU_SYSTEM_OPTIONS -initrd $ROOTFS"
 fi
 fi
 
 if [ "$MACHINE" = "qemuzynq" ]; then
 QEMU=qemu-system-arm
-QEMU_SYSTEM_OPTIONS="-M xilinx-zynq-a9 -serial null -serial mon:stdio -dtb 
$KERNEL-$MACHINE.dtb"
+QEMU_SYSTEM_OPTIONS="$QEMU_NETWORK_CMD -M xilinx-zynq-a9 -serial null 
-serial mon:stdio -dtb $KERNEL-$MACHINE.dtb"
 # zynq serial ports are named 'ttyPS0' and 'ttyPS1', fixup the default 
values
 SCRIPT_KERNEL_OPT=$(echo "$SCRIPT_KERNEL_OPT" | sed 
's/console=ttyS/console=ttyPS/g')
 if [ "${FSTYPE:0:3}" = "ext" -o "${FSTYPE:0:4}" = "cpio" ]; then
-KERNCMDLINE="earlyprintk root=/dev/ram rw"
+KERNCMDLINE="earlyprintk root=/dev/ram rw $KERNEL_NETWORK_CMD 
mem=$QEMU_MEMORY"
 QEMUOPTIONS="$QEMU_SYSTEM_OPTIONS -initrd $ROOTFS"
 fi
 fi
-- 
2.5.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 0/2] runqemu: Update qemuzynq and qemumicroblaze

2015-09-15 Thread Nathan Rossi
This patch set updates the runqemu scripts for qemuzynq and qemumicroblaze,
fixing support for network interfaces and configuing qemumicroblaze to use the
QEMU inbuilt device tree.

Nathan Rossi (2):
  runqemu-internal: Fix qemu networking for qemuzynq an qemumicroblaze
  runqemu-internal: For qemumicroblaze use the QEMU provided device tree

 scripts/runqemu-internal | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

-- 
2.5.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/2] runqemu-internal: For qemumicroblaze use the QEMU provided device tree

2015-09-15 Thread Nathan Rossi
Setup the qemumicroblaze machine to use the device tree provided by QEMU
instead of the device tree located in the images directory. Additionally
setup the default memory size to match the QEMU device tree.

Signed-off-by: Nathan Rossi 
---
 scripts/runqemu-internal | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index 2d2a839..d6b1102 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -54,7 +54,7 @@ else
 mem_size=512
 ;;
 "qemumicroblaze")
-mem_size=64
+mem_size=256
 ;;
 "qemumips"|"qemumips64")
 mem_size=256
@@ -587,7 +587,7 @@ fi
 
 if [ "$MACHINE" = "qemumicroblaze" ]; then
 QEMU=qemu-system-microblazeel
-QEMU_SYSTEM_OPTIONS="$QEMU_NETWORK_CMD -M petalogix-ml605 -serial 
mon:stdio -dtb $KERNEL-$MACHINE.dtb"
+QEMU_SYSTEM_OPTIONS="$QEMU_NETWORK_CMD -M petalogix-ml605 -serial 
mon:stdio"
 if [ "${FSTYPE:0:3}" = "ext" -o "${FSTYPE:0:4}" = "cpio" ]; then
 KERNCMDLINE="earlyprintk root=/dev/ram rw $KERNEL_NETWORK_CMD 
mem=$QEMU_MEMORY"
 QEMUOPTIONS="$QEMU_SYSTEM_OPTIONS -initrd $ROOTFS"
-- 
2.5.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] How to put a correct dependency with regards to gcc?

2015-09-15 Thread Randy MacLeod

On 2015-09-14 01:55 PM, Randy MacLeod wrote:

On 2015-09-09 12:09 PM, Reshetova, Elena wrote:

Maybe we have to fix gcc-source after all rather than use the
EXCLUDE_WORLD

change I made in:

https://bugzilla.yoctoproject.org/show_bug.cgi?id=7878


Should I file a bug about this for easy tracking? My problem really seems
that do_fetch on some related to gcc packages doesn't result in fetch of
sources.


I'll send a fix early this week.

../Randy




Does your scheme work for the kernel source? See:



Search for "kernel-devsrc" here:
  http://comments.gmane.org/gmane.comp.handhelds.openembedded.core/68352


There doesn't seem to be an issue with kernel source packages for my
task. I
think this is because the sources are correctly fetched by dependent
packages.

Best Regards,
Elena.





I haven't been able to come up with a scheme that works yet.
With the patch below, I get:

I'll need someone to explain the intent of the gcc-* pkgs
design or more time to dig though the files and history.

Robert tells me that my idea that I need a bitbake rule to:
 " call the parent implementation or
   if there isn't one, return success."
has been discussed before and it is not easy to do.

For me, this is "a nice to have" feature that could wait
for oe-core-2.1.

../Randy



diff --git a/meta/recipes-devtools/gcc/gcc-sanitizers.inc 
b/meta/recipes-devtools/gcc/gcc-sanitizers.inc

index c987ccb..1da7bda 100644
--- a/meta/recipes-devtools/gcc/gcc-sanitizers.inc
+++ b/meta/recipes-devtools/gcc/gcc-sanitizers.inc
@@ -5,12 +5,18 @@ LICENSE = "NCSA | MIT"
 LIC_FILES_CHKSUM = "\
 file://libsanitizer/LICENSE.TXT;md5=0249c37748936faf5b1efd5789587909 \
 "
+EXCLUDE_FROM_WORLD = "1"

 EXTRA_OECONF_PATHS = "\
 --with-sysroot=/not/exist \
 --with-build-sysroot=${STAGING_DIR_TARGET} \
 "

+# These stages are done by the sister gcc package:
+# do_unpack[noexec] = "1"
+# do_patch[noexec] = "1"
+
+
 do_configure () {
 mtarget=`echo ${TARGET_SYS} | sed -e s#-${SDKPKGSUFFIX}##`
 target=`echo ${TARGET_SYS} | sed -e s#-${SDKPKGSUFFIX}##`
diff --git a/meta/recipes-devtools/gcc/gcc-source.inc 
b/meta/recipes-devtools/gcc/gcc-source.inc

index 794fd4d..ef4ff60 100644
--- a/meta/recipes-devtools/gcc/gcc-source.inc
+++ b/meta/recipes-devtools/gcc/gcc-source.inc
@@ -1,15 +1,16 @@
-deltask do_configure
-deltask do_compile
-deltask do_package
-deltask do_package_write_rpm
-deltask do_package_write_ipk
-deltask do_package_write_deb
-deltask do_install
-deltask do_populate_sysroot
-deltask do_populate_lic
-deltask do_package_qa
-deltask do_packagedata
-deltask do_rm_work
+# gcc-source should only be fetched, unpacked and patched.
+do_configure[noexec] = "1"
+do_compile[noexec] = "1"
+do_package[noexec] = "1"
+do_package_write_rpm[noexec] = "1"
+do_package_write_ipk[noexec] = "1"
+do_package_write_deb[noexec] = "1"
+do_install[noexec] = "1"
+do_populate_sysroot[noexec] = "1"
+do_populate_lic[noexec] = "1"
+do_package_qa[noexec] = "1"
+do_packagedata[noexec] = "1"
+do_rm_work[noexec] = "1"

 PN = "gcc-source-${PV}"
 WORKDIR = "${TMPDIR}/work-shared/gcc-${PV}-${PR}"


--
# Randy MacLeod. SMTS, Linux, Wind River
Direct: 613.963.1350 | 350 Terry Fox Drive, Suite 200, Ottawa, ON, 
Canada, K2K 2W5

--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [oe-core][PATCH 0/3] flexible common utils

2015-09-15 Thread Alejandro Joya
this patch it will try to provide a virtual reference for the common utils.
instead of looking to hardcoded busybox, it wil be simple exchange between other
common utils like gnu core utils or toybox among others.

In order to enable its required to fill at the distro conf or local.conf

VIRTUAL-RUNTIME_login_manager ?= "busybox"
PREFERRED_PROVIDER_virtual/anybox ?= "busybox"
PREFERRED_RPROVIDER_virtual/anybox ?= "busybox"
VIRTUAL-RUNTIME_anybox ?= "busybox"
VIRTUAL-RUNTIME_anybox-hwclock ?= "busybox-hwclock"

The following changes since commit f0189829498e30231d826c9f55aad73e622d076e:

  qemu: Update to upstream patches (2015-09-14 11:22:02 +0100)

are available in the git repository at:

  git://github.com/Ajoyacr/openembedded-core anybox
  https://github.com/Ajoyacr/openembedded-core/tree/anybox

Alejandro Joya (3):
  core-mage-minimal-initramfs: overwrite hardcoded dependency to virtual
reference
  initramfs-framework: overwrite hardcoded dependency to virtual
reference
  packagegroup-core-boot: overwrite hardcoded dependency to virtual
reference

 meta/recipes-core/images/core-image-minimal-initramfs.bb   | 2 +-
 meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb | 2 +-
 meta/recipes-core/packagegroups/packagegroup-core-boot.bb  | 6 +++---
 3 files changed, 5 insertions(+), 5 deletions(-)

-- 
2.1.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [oe-core][PATCH 3/3] packagegroup-core-boot: overwrite hardcoded dependency to virtual reference

2015-09-15 Thread Alejandro Joya
This recipe have a hardcoded dependency to busybox, in order to be able to have 
a flexible selection,
instead of the hardcoded dependency,now is point to virtual reference anybox.

Signed-off-by: Alejandro Joya 
---
 meta/recipes-core/packagegroups/packagegroup-core-boot.bb | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-core/packagegroups/packagegroup-core-boot.bb 
b/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
index 09f5373..355631f 100644
--- a/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
+++ b/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
@@ -19,12 +19,12 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= ""
 
 # Distro can override the following VIRTUAL-RUNTIME providers:
 VIRTUAL-RUNTIME_dev_manager ?= "udev"
-VIRTUAL-RUNTIME_login_manager ?= "busybox"
+VIRTUAL-RUNTIME_login_manager ?= "${VIRTUAL-RUNTIME_anybox}"
 VIRTUAL-RUNTIME_init_manager ?= "sysvinit"
 VIRTUAL-RUNTIME_initscripts ?= "initscripts"
 VIRTUAL-RUNTIME_keymaps ?= "keymaps"
 
-SYSVINIT_SCRIPTS = "${@bb.utils.contains('MACHINE_FEATURES', 'rtc', 
'busybox-hwclock', '', d)} \
+SYSVINIT_SCRIPTS = "${@bb.utils.contains('MACHINE_FEATURES', 'rtc', 
'${VIRTUAL-RUNTIME_anybox-hwclock}', '', d)} \
 modutils-initscripts \
 init-ifupdown \
 ${VIRTUAL-RUNTIME_initscripts} \
@@ -33,7 +33,7 @@ SYSVINIT_SCRIPTS = "${@bb.utils.contains('MACHINE_FEATURES', 
'rtc', 'busybox-hwc
 RDEPENDS_${PN} = "\
 base-files \
 base-passwd \
-busybox \
+${VIRTUAL-RUNTIME_anybox} \
 ${@bb.utils.contains("DISTRO_FEATURES", "sysvinit", "${SYSVINIT_SCRIPTS}", 
"", d)} \
 ${@bb.utils.contains("MACHINE_FEATURES", "keyboard", 
"${VIRTUAL-RUNTIME_keymaps}", "", d)} \
 netbase \
-- 
2.1.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [oe-core][PATCH 1/3] core-mage-minimal-initramfs: overwrite hardcoded dependency to virtual reference

2015-09-15 Thread Alejandro Joya
This recipe have a hardcoded dependency to busybox, in order to be able to have 
a flexible selection,
instead of the hardcoded dependency,now is point to virtual reference anybox.

Signed-off-by: Alejandro Joya 
---
 meta/recipes-core/images/core-image-minimal-initramfs.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-core/images/core-image-minimal-initramfs.bb 
b/meta/recipes-core/images/core-image-minimal-initramfs.bb
index 1f0fa95..e2936ee 100644
--- a/meta/recipes-core/images/core-image-minimal-initramfs.bb
+++ b/meta/recipes-core/images/core-image-minimal-initramfs.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "Small image capable of booting a device. The 
kernel includes \
 the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \
 first 'init' program more efficiently."
 
-PACKAGE_INSTALL = "initramfs-live-boot initramfs-live-install 
initramfs-live-install-efi busybox udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}"
+PACKAGE_INSTALL = "initramfs-live-boot initramfs-live-install 
initramfs-live-install-efi virtual/anybox udev base-passwd 
${ROOTFS_BOOTSTRAP_INSTALL}"
 
 # Do not pollute the initrd image with rootfs features
 IMAGE_FEATURES = ""
-- 
2.1.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [oe-core][PATCH 2/3] initramfs-framework: overwrite hardcoded dependency to virtual reference

2015-09-15 Thread Alejandro Joya
This recipe have a hardcoded dependency to busybox, in order to be able to have 
a flexible selection,
instead of the hardcoded dependency,now is point to virtual reference anybox.

Signed-off-by: Alejandro Joya 
---
 meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb 
b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
index 6c37b9a..0704cb1 100644
--- a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
@@ -1,7 +1,7 @@
 SUMMARY = "Modular initramfs system"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = 
"file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-RDEPENDS_${PN} += "busybox"
+RDEPENDS_${PN} += "virtual/anybox"
 
 PR = "r2"
 
-- 
2.1.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 3/6] package_manager.py: make rpm install mutilib pkgs corectly

2015-09-15 Thread Robert Yang
When configure multilib, "bitbake  -c populate_sdk" should
install all arch toolchains (for example, 32 and 64bit), but rpm not
handle the multilib requires correctly, for example:
lib32-packagegroup-core-standalone-sdk-target requires lib32-libc6, rpm
may pull in libc6 rather than lib32-libc6, there are the similar issue
when:

IMAGE_INSTALL_append += "lib32-packagegroup-foo foo"

Use bitbake to expand the RDEPENDS will fix the problem since bitbake
knows mlprefix and handle it well, but rpm doesn't.

This patch only affects when:
IMAGE_INSTALL = "lib32-foo foo"
Doesn't affect:
IMAGE_INSTALL = "lib32-foo1 lib32-foo2"
Or:
IMAGE_INSTALL = "foo1 foo2"

[YOCTO #8089]

Signed-off-by: Robert Yang 
---
 meta/lib/oe/package_manager.py |   83 +++-
 1 file changed, 81 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 292ed44..c51e88b 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -605,12 +605,12 @@ class PackageManager(object):
 cmd.extend(['-x', exclude])
 try:
 bb.note("Installing complementary packages ...")
+bb.note('Running %s' % cmd)
 complementary_pkgs = subprocess.check_output(cmd, 
stderr=subprocess.STDOUT)
 except subprocess.CalledProcessError as e:
 bb.fatal("Could not compute complementary packages list. Command "
  "'%s' returned %d:\n%s" %
  (' '.join(cmd), e.returncode, e.output))
-
 self.install(complementary_pkgs.split(), attempt_only=True)
 
 def deploy_dir_lock(self):
@@ -1050,6 +1050,35 @@ class RpmPM(PackageManager):
 def update(self):
 self._invoke_smart('update rpmsys')
 
+def get_rdepends_recursively(self, pkgs):
+# pkgs will be changed during the loop, so use [:] to make a copy.
+for pkg in pkgs[:]:
+sub_data = oe.packagedata.read_subpkgdata(pkg, self.d)
+sub_rdep = sub_data.get("RDEPENDS_" + pkg)
+if not sub_rdep:
+continue
+done = bb.utils.explode_dep_versions2(sub_rdep).keys()
+next = done
+# Find all the rdepends on dependency chain
+while next:
+new = []
+for sub_pkg in next:
+sub_data = oe.packagedata.read_subpkgdata(sub_pkg, self.d)
+sub_pkg_rdep = sub_data.get("RDEPENDS_" + sub_pkg)
+if not sub_pkg_rdep:
+continue
+for p in bb.utils.explode_dep_versions2(sub_pkg_rdep):
+# Already handled, skip it.
+if p in done or p in pkgs:
+continue
+# It's a new dep
+if oe.packagedata.has_subpkgdata(p, self.d):
+done.append(p)
+new.append(p)
+next = new
+pkgs.extend(done)
+return pkgs
+
 '''
 Install pkgs with smart, the pkg name is oe format
 '''
@@ -1059,8 +1088,58 @@ class RpmPM(PackageManager):
 bb.note("There are no packages to install")
 return
 bb.note("Installing the following packages: %s" % ' '.join(pkgs))
+if not attempt_only:
+# Pull in multilib requires since rpm may not pull in them
+# correctly, for example,
+# lib32-packagegroup-core-standalone-sdk-target requires
+# lib32-libc6, but rpm may pull in libc6 rather than lib32-libc6
+# since it doesn't know mlprefix (lib32-), bitbake knows it and
+# can handle it well, find out the RDEPENDS on the chain will
+# fix the problem. Both do_rootfs and do_populate_sdk have this
+# issue.
+# The attempt_only packages don't need this since they are
+# based on the installed ones.
+#
+# Separate pkgs into two lists, one is multilib, the other one
+# is non-multilib.
+ml_pkgs = []
+non_ml_pkgs = pkgs[:]
+for pkg in pkgs:
+for mlib in (self.d.getVar("MULTILIB_VARIANTS", True) or 
"").split():
+if pkg.startswith(mlib + '-'):
+ml_pkgs.append(pkg)
+non_ml_pkgs.remove(pkg)
+
+if len(ml_pkgs) > 0 and len(non_ml_pkgs) > 0:
+# Found both foo and lib-foo
+ml_pkgs = self.get_rdepends_recursively(ml_pkgs)
+non_ml_pkgs = self.get_rdepends_recursively(non_ml_pkgs)
+# Longer list makes smart slower, so only keep the pkgs
+# which have the same BPN, and smart can handle others
+# correctly.
+pkgs_new = []
+for pkg in non_ml_pkgs:
+

[OE-core] [PATCH 2/6] oe-pkgdata-util: avoid returning skipped packages

2015-09-15 Thread Robert Yang
The skipped packages may be pulled in by another package, for example,
when libc6-dbg is already installed and should be skipped, but it would
be pulled in by libsegfault, this patch fixes the issue.

Signed-off-by: Robert Yang 
---
 scripts/oe-pkgdata-util |5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/scripts/oe-pkgdata-util b/scripts/oe-pkgdata-util
index b075775..116cfae 100755
--- a/scripts/oe-pkgdata-util
+++ b/scripts/oe-pkgdata-util
@@ -60,6 +60,7 @@ def glob(args):
 skipval += "|" + args.exclude
 skipregex = re.compile(skipval)
 
+skippedpkgs = set()
 mappedpkgs = set()
 with open(args.pkglistfile, 'r') as f:
 for line in f:
@@ -73,6 +74,7 @@ def glob(args):
 # Skip packages for which there is no point applying globs
 if skipregex.search(pkg):
 logger.debug("%s -> !!" % pkg)
+skippedpkgs.add(pkg)
 continue
 
 # Skip packages that already match the globs, so if e.g. a dev 
package
@@ -84,6 +86,7 @@ def glob(args):
 already = True
 break
 if already:
+skippedpkgs.add(pkg)
 logger.debug("%s -> !" % pkg)
 continue
 
@@ -152,7 +155,7 @@ def glob(args):
 
 logger.debug("--")
 
-print("\n".join(mappedpkgs))
+print("\n".join(mappedpkgs - skippedpkgs))
 
 def read_value(args):
 # Handle both multiple arguments and multiple values within an arg (old 
syntax)
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 4/6] multilib.bbclass: install all bits toochains when populate mlprefix SDK

2015-09-15 Thread Robert Yang
Fixed when:
$ bitbake lib32-core-image-minimal  -cpopulate_sdk

Only 32 bit toolchain was installed but there were both
environment-setup-core2-64-poky-linux and
environment-setup-core2-64-pokymllib32-linux in extracted sdk, this was
becase multilib.bbclass mapped TOOLCHAIN_TARGET_TASK into only lib32-
ones, and dropped 64 bit ones. This patches fixes the problem.

[YOCTO #8089]

Signed-off-by: Robert Yang 
---
 meta/classes/multilib.bbclass |   14 ++
 1 file changed, 14 insertions(+)

diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass
index 8f61d8d..465e208 100644
--- a/meta/classes/multilib.bbclass
+++ b/meta/classes/multilib.bbclass
@@ -94,8 +94,22 @@ python __anonymous () {
 d.setVar("PACKAGE_INSTALL_ATTEMPTONLY", "")
 
 if bb.data.inherits_class('populate_sdk_base', d):
+orig_task = (d.getVar('TOOLCHAIN_TARGET_TASK', True) or "").split()
+orig_task_attemptonly = (d.getVar('TOOLCHAIN_TARGET_TASK_ATTEMPTONLY', 
True) or "").split()
 clsextend.map_depends_variable("TOOLCHAIN_TARGET_TASK")
 clsextend.map_depends_variable("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY")
+# Append original tasks since all bits (such as 32 and 64)
+# toolchains should be installed when mutilib.
+task = (d.getVar('TOOLCHAIN_TARGET_TASK', True) or "").split()
+task_attemptonly = (d.getVar('TOOLCHAIN_TARGET_TASK_ATTEMPTONLY', 
True) or "").split()
+for t in orig_task:
+if t not in task:
+task.append(t)
+for t in orig_task_attemptonly:
+if t not in task_attemptonly:
+task_attemptonly.append(t)
+d.setVar("TOOLCHAIN_TARGET_TASK", " ".join(task))
+d.setVar("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY", " 
".join(task_attemptonly))
 
 if bb.data.inherits_class('image', d):
 return
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 6/6] meta-environment.bb: fix environment-setup* when populate mlprefix SDK

2015-09-15 Thread Robert Yang
Fixed when extract mutilib SDK like
poky-glibc-x86_64-lib32-core-image-minimal-core2-64-toolchain-1.8+snapshot.sh:

Each time you wish to use the SDK in a new shell session, you need to
source the environment setup script e.g.
 $ ./path/to/environment-setup-core2-64-pokymllib32-linux

There was no environment-setup-core2-64-pokymllib32-linux, but
environment-setup-x86-pokymllib32-linux, this was because image recipe
didn't upgrade TUNE_PKGARCH from core2-64 to x86, but meta-environment
did, let meta-environment not upgrade TUNE_PKGARCH will fix the
problem.

Signed-off-by: Robert Yang 
---
 meta/recipes-core/meta/meta-environment.bb |4 
 1 file changed, 4 insertions(+)

diff --git a/meta/recipes-core/meta/meta-environment.bb 
b/meta/recipes-core/meta/meta-environment.bb
index 49d45f6..c671c13 100644
--- a/meta/recipes-core/meta/meta-environment.bb
+++ b/meta/recipes-core/meta/meta-environment.bb
@@ -42,6 +42,10 @@ python do_generate_content() {
 localdata.setVar("OVERRIDES", overrides)
 localdata.setVar("MLPREFIX", item + "-")
 bb.data.update_data(localdata)
+# Don't upgrade TUNE_PKGARCH since image doesn't upgrade it,
+# otherwise the siteconfig, env_script and version would
+# mismatch image's REAL_MULTIMACH_TARGET_SYS.
+localdata.setVar('TUNE_PKGARCH', d.getVar('TUNE_PKGARCH', True))
 bb.build.exec_func("create_sdk_files", localdata)
 }
 addtask generate_content before do_install after do_compile
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 1/6] toolchain-shar-extract.sh: remove checkbashism

2015-09-15 Thread Robert Yang
Fixed when sh is bash:
$ sh 
./tmp/deploy/sdk/poky-glibc-x86_64-core-image-minimal-core2-64-toolchain-1.8+snapshot.sh
Poky (Yocto Project Reference Distro) SDK installer version 1.8+snapshot
===
./tmp/deploy/sdk/poky-glibc-x86_64-core-image-minimal-core2-64-toolchain-1.8+snapshot.sh:
 77: read: Illegal option -e
You are about to install the SDK to "/opt/poky/1.8+snapshot". Proceed[Y/n]? 
../SDK2
Installation aborted!

There is ony one bashism "read -e" in toolchain-shar-extract.sh, but
'-e' is useless here, so remove it and use /bin/sh.

Signed-off-by: Robert Yang 
---
 meta/files/toolchain-shar-extract.sh |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/files/toolchain-shar-extract.sh 
b/meta/files/toolchain-shar-extract.sh
index cd0a547..b56bab0 100644
--- a/meta/files/toolchain-shar-extract.sh
+++ b/meta/files/toolchain-shar-extract.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
 
 INST_ARCH=$(uname -m | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/")
 SDK_ARCH=$(echo @SDK_ARCH@ | sed -e "s/i[3-6]86/ix86/" -e 
"s/x86[-_]64/x86_64/")
@@ -86,7 +86,7 @@ if [ "$target_sdk_dir" = "" ]; then
if [ "$answer" = "Y" ]; then
target_sdk_dir="$DEFAULT_INSTALL_DIR"
else
-   read -e -p "Enter target directory for SDK (default: 
$DEFAULT_INSTALL_DIR): " target_sdk_dir
+   read -p "Enter target directory for SDK (default: 
$DEFAULT_INSTALL_DIR): " target_sdk_dir
[ "$target_sdk_dir" = "" ] && 
target_sdk_dir=$DEFAULT_INSTALL_DIR
fi
 fi
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 5/6] populate_sdk_base.bbclass: fix SDKTARGETSYSROOT when populate mlprefix SDK

2015-09-15 Thread Robert Yang
Fixed when populate multlib sdk:
$ bitbake lib32-core-image-minimal -cpopulate_sdk

When extract sdk, there was a sysroots/core2-64-pokymllib32-linux, but the
SDKTARGETSYSROOT path in environment-setup-x86-pokymllib32-linux was
sysroots/core2-64-poky-linux, so it was incorrect, install sysroot to
sysroots/core2-64-poky-linux would fix the problem since:
1) We install both 32 and 64 bit toolchains
2) The meta-environment is a nativesdk recipe which doesn't have
   multilib extend, so we can't or hard to fix from meta-environment.

[YOCTO #8089]

Signed-off-by: Robert Yang 
---
 meta/classes/multilib.bbclass  |1 +
 meta/classes/populate_sdk_base.bbclass |6 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass
index 465e208..fd54b69 100644
--- a/meta/classes/multilib.bbclass
+++ b/meta/classes/multilib.bbclass
@@ -28,6 +28,7 @@ python multilib_virtclass_handler () {
 e.data.setVar("PN", variant + "-" + e.data.getVar("PN", False))
 target_vendor = e.data.getVar("TARGET_VENDOR_" + "virtclass-multilib-" 
+ variant, False)
 if target_vendor:
+e.data.setVar("TARGET_VENDOR_MULTILIB_ORIGINAL", 
e.data.getVar("TARGET_VENDOR", True))
 e.data.setVar("TARGET_VENDOR", target_vendor)
 return
 
diff --git a/meta/classes/populate_sdk_base.bbclass 
b/meta/classes/populate_sdk_base.bbclass
index aa7a9a5..9c5a360 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -28,7 +28,11 @@ SDK_DEPLOY = "${DEPLOY_DIR}/sdk"
 
 B_task-populate-sdk = "${SDK_DIR}"
 
-SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${REAL_MULTIMACH_TARGET_SYS}"
+# Install toolchain to the path with TARGET_VENDOR_MULTILIB_ORIGINAL since:
+# 1) Both toolchains (32 and 64 bits) are installed
+# 2) The environment-setup-* doesn't contain mllib
+TARGET_VENDOR_MULTILIB_ORIGINAL ??= "${TARGET_VENDOR}"
+SDKTARGETSYSROOT = 
"${SDKPATH}/sysroots/${TUNE_PKGARCH}${TARGET_VENDOR_MULTILIB_ORIGINAL}-${TARGET_OS}"
 
 TOOLCHAIN_HOST_TASK ?= "nativesdk-packagegroup-sdk-host 
packagegroup-cross-canadian-${MACHINE}"
 TOOLCHAIN_HOST_TASK_ATTEMPTONLY ?= ""
-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 0/6] Fixes for mutilib SDK

2015-09-15 Thread Robert Yang
* This fixed:
  MACHINE = "qemux86-64"
  require conf/multilib.conf
  MULTILIBS = "multilib:lib32"
  DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

  $ bitbake core-image-minimal -cpopulate_sdk
  Install 
poky-glibc-x86_64-core-image-minimal-core2-64-toolchain-1.8+snapshot.sh,
  then source environment-setup-core2-64-pokymllib32-linux or
  environment-setup-core2-64-poky-linux, both of them will compile hello.c
  well. (The 32bit was broken in the past)

  $ bitbake lib32-core-image-minimal -cpopulate_sdk
  Install 
poky-glibc-x86_64-lib32-core-image-minimal-core2-64-toolchain-1.8+snapshot.sh,
  then source environment-setup-core2-64-poky-linux or
  environment-setup-core2-64-pokymllib32-linux, both of them will compile
  hello.c well (neither of them worked in the past)

  This also fixed the problem that not all dependencies mutilib packages
  are installed, please see:
  https://bugzilla.yoctoproject.org/show_bug.cgi?id=4408

Tested:
$ bitbake core-image-minimal core-image-sato -cpopulate_sdk && bitbake 
core-image-sato-sdk world core-image-minimal core-image-sato

// Robert

The following changes since commit f0189829498e30231d826c9f55aad73e622d076e:

  qemu: Update to upstream patches (2015-09-14 11:22:02 +0100)

are available in the git repository at:

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

Robert Yang (6):
  toolchain-shar-extract.sh: remove checkbashism
  oe-pkgdata-util: avoid returning skipped packages
  package_manager.py: make rpm install mutilib pkgs corectly
  multilib.bbclass: install all bits toochains when populate mlprefix
SDK
  populate_sdk_base.bbclass: fix SDKTARGETSYSROOT when populate
mlprefix SDK
  meta-environment.bb: fix environment-setup* when populate mlprefix
SDK

 meta/classes/multilib.bbclass  |   15 +
 meta/classes/populate_sdk_base.bbclass |6 +-
 meta/files/toolchain-shar-extract.sh   |4 +-
 meta/lib/oe/package_manager.py |   83 +++-
 meta/recipes-core/meta/meta-environment.bb |4 ++
 scripts/oe-pkgdata-util|5 +-
 6 files changed, 111 insertions(+), 6 deletions(-)

-- 
1.7.9.5

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] perf: fix the install-python_ext on upstream kernel

2015-09-15 Thread rongqing.li
From: Roy Li 

The Perf source code between Yocto and upstream are different, like below
commit is not in upstream, so broaden the "--root" replacement to Makefile*

   commit 33e96fb1e2d77541e81eb341ccd3fbe9419e4c9a
   Author: Tom Zanussi 
   Date:   Tue Jul 3 13:07:23 2012 -0500

  perf: change --root to --prefix for python install

  Otherwise we get the sysroot path appended to the build path, not what
  we want.

  Signed-off-by: Tom Zanussi 

Signed-off-by: Roy Li 
---
 meta/recipes-kernel/perf/perf.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb
index adb3a2c..241cca9 100644
--- a/meta/recipes-kernel/perf/perf.bb
+++ b/meta/recipes-kernel/perf/perf.bb
@@ -148,7 +148,7 @@ do_configure_prepend () {
 ${S}/tools/perf/Makefile.perf
 fi
 sed -i -e "s,--root='/\$(DESTDIR_SQ)',--prefix='\$(DESTDIR_SQ)/usr' 
--install-lib='\$(DESTDIR)\$(PYTHON_SITEPACKAGES_DIR)',g" \
-${S}/tools/perf/Makefile
+${S}/tools/perf/Makefile*
 
 if [ -e "${S}/tools/build/Makefile.build" ]; then
 sed -i -e 's,\ .config-detected, $(OUTPUT)/config-detected,g' \
-- 
1.9.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 02/12] hostap-utils: Use C99 stddefs in defining local typedefs

2015-09-15 Thread Mikko.Rapeli
On Mon, Sep 14, 2015 at 04:31:17PM +, Khem Raj wrote:
> The code is creating more abstract types which is nice however it should
> be using standard defines from stdint.h and not random defines to base
> its own type system

These types are not random. They are standard Linux kernel types used by headers
exported to userspace and their definitions come from .
These headers should not depend on libc headers like stdint.h.

Also, this file is actually a convenience copy of  which 
should
be used directly instead.

-Mikko

> Signed-off-by: Khem Raj 
> ---
>  ...-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch | 36 
> ++
>  meta/recipes-bsp/hostap/hostap-utils.inc   |  4 ++-
>  2 files changed, 39 insertions(+), 1 deletion(-)
>  create mode 100644 
> meta/recipes-bsp/hostap/hostap-utils-0.4.7/0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch
> 
> diff --git 
> a/meta/recipes-bsp/hostap/hostap-utils-0.4.7/0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch
>  
> b/meta/recipes-bsp/hostap/hostap-utils-0.4.7/0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch
> new file mode 100644
> index 000..b44dca3
> --- /dev/null
> +++ 
> b/meta/recipes-bsp/hostap/hostap-utils-0.4.7/0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch
> @@ -0,0 +1,36 @@
> +From 742fb110d9841a04b3ced256b0bf80ff304dcaff Mon Sep 17 00:00:00 2001
> +From: Khem Raj 
> +Date: Mon, 31 Aug 2015 05:45:08 +
> +Subject: [PATCH] Define _u32/__s32/__u16/__s16/__u8 in terms of c99 types
> +
> +Signed-off-by: Khem Raj 
> +---
> +Upstream-Status: Pending
> +
> + wireless_copy.h | 10 +-
> + 1 file changed, 5 insertions(+), 5 deletions(-)
> +
> +diff --git a/wireless_copy.h b/wireless_copy.h
> +index 8208258..1171a35 100644
> +--- a/wireless_copy.h
>  b/wireless_copy.h
> +@@ -86,11 +86,11 @@
> + #else
> + #include 
> + #include 
> +-typedef __uint32_t __u32;
> +-typedef __int32_t __s32;
> +-typedef __uint16_t __u16;
> +-typedef __int16_t __s16;
> +-typedef __uint8_t __u8;
> ++typedef u_int32_t __u32;
> ++typedef int32_t __s32;
> ++typedef u_int16_t __u16;
> ++typedef int16_t __s16;
> ++typedef u_int8_t __u8;
> + #ifndef __user
> + #define __user
> + #endif /* __user */
> +-- 
> +2.5.1
> +
> diff --git a/meta/recipes-bsp/hostap/hostap-utils.inc 
> b/meta/recipes-bsp/hostap/hostap-utils.inc
> index 89d977a..140321d 100644
> --- a/meta/recipes-bsp/hostap/hostap-utils.inc
> +++ b/meta/recipes-bsp/hostap/hostap-utils.inc
> @@ -10,7 +10,9 @@ SECTION = "kernel/userland"
>  PR = "r4"
>  
>  SRC_URI = "http://hostap.epitest.fi/releases/hostap-utils-${PV}.tar.gz \
> -file://hostap-fw-load.patch"
> +   file://hostap-fw-load.patch \
> +   
> file://0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch \
> +"
>  S = "${WORKDIR}/hostap-utils-${PV}"
>  
>  BINARIES = "hostap_crypt_conf hostap_diag hostap_fw_load hostap_io_debug \
> -- 
> 2.5.2
> 
> -- 
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] Removes --with-wctype-functions configure option

2015-09-15 Thread Erkka Kääriä
This option is causing issues with python unicode support. Several unicode 
related regression tests are currently failing (test_re and test_codecs for 
example) and removing this option fixes these.

This configure option mostly seems to be historical. Discussion related to 
python issue 9210 (https://bugs.python.org/issue9210) indicates its original 
goal was to save memory and that the option should have been deprecated ages 
ago.

Signed-off-by: Erkka Kääriä 
---
 meta/recipes-devtools/python/python.inc | 1 -
 1 file changed, 1 deletion(-)

diff --git a/meta/recipes-devtools/python/python.inc 
b/meta/recipes-devtools/python/python.inc
index e18ab8e..4d428f3 100644
--- a/meta/recipes-devtools/python/python.inc
+++ b/meta/recipes-devtools/python/python.inc
@@ -16,7 +16,6 @@ PYTHON_MAJMIN = "2.7"
 
 inherit autotools
 
-PYTHONLSBOPTS = "--with-wctype-functions"
 PYTHONLSBOPTS_linuxstdbase = "ac_cv_sizeof_off_t=8"
 
 EXTRA_OECONF = "\
-- 
2.1.4

-
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] perf triggering a QA error

2015-09-15 Thread Otavio Salvador
Hello folks,

It seems the commit:

commit 43f965061f8af4c4537e9d9c0257253e613a616d
Author: Roy Li 
Date:   Wed Aug 26 13:58:17 2015 +0800

perf: fix the install-python_ext

1. $(grep xxx xxx) never returns 0, it maybe return empty or string, and
can not compare with 0, this fixes that python module never are installed.

2. python library is installed into /usr/lib/ by default, but we expect
it is installed into ${libdir}, so add --install-lib parameter for python
setup.py to set the library dir;
this fixes not shipped warning, since python modules are installed into
/usr/lib/, but FILE_${PN}-python expects it is under ${libdir}, which is
/usr/lib64/ for 64bit machine

3. the makefile target install-python_ext is moved from Makefile to
Makefile.perf from linux v3.13, so match install-python_ext in Makefile.*
and --root='/\$(DESTDIR_SQ)' before linux v3.13 will install the target
python library to native sysroot, so replace it with --prefix as after linux
3.13;
this fixes not shipped warning, and install target files to native dir, like
below:
ERROR: QA Issue: perf: Files/directories were installed but not
shipped in any package:
  /home
  /home/pokybuild
  /home/pokybuild/yocto-autobuilder
  /home/pokybuild/yocto-autobuilder/yocto-worker
  /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb
  /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp/sysroots
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp/sysroots/x86_64-linux
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp/sysroots/x86_64-linux/usr
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp/sysroots/x86_64-linux/usr/lib
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/perf.so
  
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-fsl-ppc-lsb/build/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/perf-0.1-py2.7.egg-info

Signed-off-by: Roy Li 
Signed-off-by: Ross Burton 


did not address the issue.

I am capable of reproduce the issue in kernel 3.14. See the log below:

NOTE: make -j 2 -C $S/tools/perf O=$B
CROSS_COMPILE=arm-oel-linux-gnueabi- ARCH=arm
CC=arm-oel-linux-gnueabi-gcc  -march=armv7-a -marm  -mthumb-interwork
-mfloat-abi=hard -mfpu=neon -mtune=cortex-a9
--sysroot=$TMPDIR/sysroots/imx6sxsabresd AR=arm-oel-linux-gnueabi-ar
EXTRA_CFLAGS=-ldw perfexecdir=/usr/lib/perf NO_GTK2=1 NO_DWARF=1
NO_LIBUNWIND=1 NO_LIBDW_DWARF_UNWIND=1 NO_LIBNUMA=1 prefix=/usr
bindir=/usr/bin sharedir=/usr/share sysconfdir=/etc
perfexecdir=/usr/lib/perf/perf-core ETC_PERFCONFIG=../etc
sharedir=share mandir=share/man infodir=share/info
DESTDIR=$WORKDIR/image install-python_ext
make: Entering directory '$S/tools/perf'
  BUILD:   Doing 'make -j8' parallel build
Auto-detecting system features:
... backtrace: [ on  ]
... dwarf: [ on  ]
...fortify-source: [ on  ]
... glibc: [ on  ]
...  gtk2: [ OFF ]
...  gtk2-infobar: [ OFF ]
...  libaudit: [ OFF ]
...libbfd: [ on  ]
...libelf: [ on  ]
... libelf-getphdrnum: [ on  ]
...   libelf-mmap: [ on  ]
...   libnuma: [ OFF ]
...   libperl: [ on  ]
... libpython: [ on  ]
... libpython-version: [ on  ]
...  libslang: [ on  ]
... libunwind: [ OFF ]
...   on-exit: [ on  ]
...stackprotector-all: [ on  ]
...   timerfd: [ on  ]
config/Makefile:350: No libaudit.h found, disables 'trace' tool,
please install audit-libs-devel or libaudit-dev
'$TMPDIR/sysroots/x86_64-linux/usr/bin/python-native/python'
util/setup.py --quiet install --root='/$WORKDIR/image'
make: Leaving directory '$S/tools/perf'
DEBUG: Shell function do_install finished

and the error:

ERROR: QA Issue: perf: Files/directories were installed but not
shipped in any package:
  /home
  /home/otavio
  /home/otavio/src
  

[OE-core] Multilib build support by single toolchain generated by Yocto

2015-09-15 Thread Luo Zhenhua
Hello all,

Currently to support 32b and 64b build for same core in Yocto, two separated 
compilers need to be generated. Is there plan to support multilib build(32b and 
64b) by single toolchain which is generated by Yocto in future?


Best Regards,

Zhenhua
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] image_types.bbclass: Don't try to create ubi symlink twice

2015-09-15 Thread Mike Looijmans
Fixes b6e64de541b37 "Restore compatibility with previous UBI filesystems"

The multivolume UBI code creates symlinks for each volume. If the volume name
is empty, it will create a symlink that the rootfs code will attempt to
create again later, resulting in a crash like this (unless IMAGE_LINK_NAME
is blank):
  ERROR: Error executing a python function in 
.../recipes-core/images/my-image.bb:
  File: '.../oe-core/meta/lib/oe/image.py', lineno: 203, function: 
_create_symlinks
   *** 0203:os.symlink(src, dst)
  Exception: OSError: [Errno 17] File exists

To prevent this from happening, only create symlinks to volumes that have
a name, and let the rootfs script create the default symlink later.

Signed-off-by: Mike Looijmans 
---
 meta/classes/image_types.bbclass | 22 --
 1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index 306403e..afa2e8e 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -139,17 +139,19 @@ multiubi_mkfs() {
# Cleanup cfg file
mv ubinize${vname}.cfg ${DEPLOY_DIR_IMAGE}/
 
-   # Create own symlink
-   cd ${DEPLOY_DIR_IMAGE}
-   if [ -e ${IMAGE_NAME}${vname}.rootfs.ubifs ]; then
-   ln -sf ${IMAGE_NAME}${vname}.rootfs.ubifs \
-   ${IMAGE_LINK_NAME}${vname}.ubifs
-   fi
-   if [ -e ${IMAGE_NAME}${vname}.rootfs.ubi ]; then
-   ln -sf ${IMAGE_NAME}${vname}.rootfs.ubi \
-   ${IMAGE_LINK_NAME}${vname}.ubi
+   # Create own symlinks for 'named' volumes
+   if [ -n "$vname" ]; then
+   cd ${DEPLOY_DIR_IMAGE}
+   if [ -e ${IMAGE_NAME}${vname}.rootfs.ubifs ]; then
+   ln -sf ${IMAGE_NAME}${vname}.rootfs.ubifs \
+   ${IMAGE_LINK_NAME}${vname}.ubifs
+   fi
+   if [ -e ${IMAGE_NAME}${vname}.rootfs.ubi ]; then
+   ln -sf ${IMAGE_NAME}${vname}.rootfs.ubi \
+   ${IMAGE_LINK_NAME}${vname}.ubi
+   fi
+   cd -
fi
-   cd -
 }
 
 IMAGE_CMD_multiubi () {
-- 
1.9.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 00/22] Update webkitgtk to latest stable upstream; replace midori with epiphany

2015-09-15 Thread Alexander Kanavin

On 08/19/2015 11:50 PM, akuster808 wrote:

If you happen to need to repost this series again, Ruby version has just
been updated. It includes: CVE-2015-3900 Request hijacking vulnerability
in RubyGems 2.4.6 and earlier.

Do we have any idea how long this will be before hitting master-next?

I am leaning towards sending an update to meta-ruby while this patches
series makes it way through the process.


The ruby recipe has finally made it into oe-core master, so please 
review and send any necessary followup patches, if it's become out of 
sync with what was in meta-ruby. I've already sent a patch to remove 
ruby from meta-oe.


Alex

--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH][fido] wic: fix path parsing, use last occurrence

2015-09-15 Thread Joshua Lock
On Thu, 2015-09-10 at 12:30 -0500, George McCollister wrote:
> If the path contains 'scripts' more than once the first occurrence
> will be
> incorrectly used. Use rfind instead of find to find the last
> occurrence.
> 
> Signed-off-by: George McCollister 

Patch queued in my joshuagl/fido-next tree - thanks!

Joshua

http://cgit.openembedded.org/openembedded-core-contrib/log/?h=joshuagl/
fido-next

> ---
>  scripts/lib/wic/plugin.py | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/scripts/lib/wic/plugin.py b/scripts/lib/wic/plugin.py
> index 41a8017..3acd5b4 100644
> --- a/scripts/lib/wic/plugin.py
> +++ b/scripts/lib/wic/plugin.py
> @@ -42,7 +42,7 @@ class PluginMgr(object):
>  
>  def __init__(self):
>  wic_path = os.path.dirname(__file__)
> -eos = wic_path.find('scripts') + len('scripts')
> +eos = wic_path.rfind('scripts') + len('scripts')
>  scripts_path = wic_path[:eos]
>  self.scripts_path = scripts_path
>  self.plugin_dir = scripts_path + PLUGIN_DIR
> -- 
> 2.4.5
> 
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH][fido] openssh: CVE-2015-6563 CVE-2015-6564 CVE-2015-6565

2015-09-15 Thread Joshua Lock
On Tue, 2015-09-08 at 17:22 -0700, Armin Kuster wrote:
> From: Armin Kuster 
> 
> three security fixes.
> 
> CVE-2015-6563 (Low) openssh: Privilege separation weakness related to
> PAM support
> CVE-2015-6564 (medium)  openssh: Use-after-free bug related to PAM
> support
> CVE-2015-6565 (High)  openssh: Incorrectly set TTYs to be world
> -writable
> 
> Signed-off-by: Armin Kuster 

Patch queued in my joshuagl/fido-next tree - thanks!

Joshua

http://cgit.openembedded.org/openembedded-core-contrib/log/?h=joshuagl/
fido-next

> ---
>  .../openssh/openssh/CVE-2015-6563.patch| 36
> ++
>  .../openssh/openssh/CVE-2015-6564.patch| 34
> 
>  .../openssh/openssh/CVE-2015-6565.patch| 35
> +
>  meta/recipes-connectivity/openssh/openssh_6.7p1.bb |  6 +++-
>  4 files changed, 110 insertions(+), 1 deletion(-)
>  create mode 100644 meta/recipes-connectivity/openssh/openssh/CVE
> -2015-6563.patch
>  create mode 100644 meta/recipes-connectivity/openssh/openssh/CVE
> -2015-6564.patch
>  create mode 100644 meta/recipes-connectivity/openssh/openssh/CVE
> -2015-6565.patch
> 
> diff --git a/meta/recipes-connectivity/openssh/openssh/CVE-2015
> -6563.patch b/meta/recipes-connectivity/openssh/openssh/CVE-2015
> -6563.patch
> new file mode 100644
> index 000..19cea41
> --- /dev/null
> +++ b/meta/recipes-connectivity/openssh/openssh/CVE-2015-6563.patch
> @@ -0,0 +1,36 @@
> +CVE-2015-6563
> +
> +Don't resend username to PAM; it already has it. 
> +Pointed out by Moritz Jodeit; ok dtucker@
> +
> +Upstream-Status: Backport
> +https://github.com/openssh/openssh-portable/commit/d4697fe9a28dab725
> 5c60433e4dd23cf7fce8a8b
> +
> +Signed-off-by: Armin Kuster 
> +
> +Index: openssh-6.7p1/monitor.c
> +===
> +--- openssh-6.7p1.orig/monitor.c
>  openssh-6.7p1/monitor.c
> +@@ -1046,9 +1046,7 @@ extern KbdintDevice sshpam_device;
> + int
> + mm_answer_pam_init_ctx(int sock, Buffer *m)
> + {
> +-
> + debug3("%s", __func__);
> +-authctxt->user = buffer_get_string(m, NULL);
> + sshpam_ctxt = (sshpam_device.init_ctx)(authctxt);
> + sshpam_authok = NULL;
> + buffer_clear(m);
> +Index: openssh-6.7p1/monitor_wrap.c
> +===
> +--- openssh-6.7p1.orig/monitor_wrap.c
>  openssh-6.7p1/monitor_wrap.c
> +@@ -826,7 +826,6 @@ mm_sshpam_init_ctx(Authctxt *authctxt)
> + 
> + debug3("%s", __func__);
> + buffer_init();
> +-buffer_put_cstring(, authctxt->user);
> + mm_request_send(pmonitor->m_recvfd,
> MONITOR_REQ_PAM_INIT_CTX, );
> + debug3("%s: waiting for MONITOR_ANS_PAM_INIT_CTX",
> __func__);
> + mm_request_receive_expect(pmonitor->m_recvfd,
> MONITOR_ANS_PAM_INIT_CTX, );
> diff --git a/meta/recipes-connectivity/openssh/openssh/CVE-2015
> -6564.patch b/meta/recipes-connectivity/openssh/openssh/CVE-2015
> -6564.patch
> new file mode 100644
> index 000..588d42d
> --- /dev/null
> +++ b/meta/recipes-connectivity/openssh/openssh/CVE-2015-6564.patch
> @@ -0,0 +1,34 @@
> +CVE-2015-6564
> +
> + set sshpam_ctxt to NULL after free
> +
> + Avoids use-after-free in monitor when privsep child is compromised.
> + Reported by Moritz Jodeit; ok dtucker@
> +
> +Upstream-Status: Backport
> +https://github.com/openssh/openssh-portable/commit/5e75f519876905608
> 9fb06c4d738ab0e5abc66f7
> +
> +Signed-off-by: Armin Kuster 
> +
> +Index: openssh-6.7p1/monitor.c
> +===
> +--- openssh-6.7p1.orig/monitor.c
>  openssh-6.7p1/monitor.c
> +@@ -1128,14 +1128,16 @@ mm_answer_pam_respond(int sock, Buffer *
> + int
> + mm_answer_pam_free_ctx(int sock, Buffer *m)
> + {
> ++int r = sshpam_authok != NULL && sshpam_authok == sshpam_ctxt;
> + 
> + debug3("%s", __func__);
> + (sshpam_device.free_ctx)(sshpam_ctxt);
> ++sshpam_ctxt = sshpam_authok = NULL;
> + buffer_clear(m);
> + mm_request_send(sock, MONITOR_ANS_PAM_FREE_CTX, m);
> + auth_method = "keyboard-interactive";
> + auth_submethod = "pam";
> +-return (sshpam_authok == sshpam_ctxt);
> ++return r;
> + }
> + #endif
> + 
> diff --git a/meta/recipes-connectivity/openssh/openssh/CVE-2015
> -6565.patch b/meta/recipes-connectivity/openssh/openssh/CVE-2015
> -6565.patch
> new file mode 100644
> index 000..42667b0
> --- /dev/null
> +++ b/meta/recipes-connectivity/openssh/openssh/CVE-2015-6565.patch
> @@ -0,0 +1,35 @@
> +CVE-2015-6565 openssh: Incorrectly set TTYs to be world-writable
> +
> +fix pty permissions; patch from Nikolay Edigaryev; ok deraadt
> +
> +Upstream-Status: Backport
> +
> +merged two changes into one.
> +[1] https://anongit.mindrot.org/openssh.git/commit/sshpty.c?id=a5883
> d4eccb94b16c355987f58f86a7dee17a0c2
> +tighten permissions on pty when the "tty" group does not 

Re: [OE-core] [PATCH][fido] bind: CVE-2015-1349 CVE-2015-4620 CVE-2015-5722

2015-09-15 Thread Joshua Lock
On Mon, 2015-09-07 at 16:21 -0700, Armin Kuster wrote:
> From: Armin Kuster 
> 
> three security fixes.
> 
> Signed-off-by: Armin Kuster 

Patch queued in my joshuagl/fido-next tree - thanks!

Joshua

http://cgit.openembedded.org/openembedded-core-contrib/log/?h=joshuagl/
fido-next

> ---
>  .../bind/bind/CVE-2015-1349.patch  |  60 +++
>  .../bind/bind/CVE-2015-4620.patch  |  36 ++
>  .../bind/bind/CVE-2015-5722.patch  | 490
> +
>  meta/recipes-connectivity/bind/bind_9.9.5.bb   |   3 +
>  4 files changed, 589 insertions(+)
>  create mode 100644 meta/recipes-connectivity/bind/bind/CVE-2015
> -1349.patch
>  create mode 100644 meta/recipes-connectivity/bind/bind/CVE-2015
> -4620.patch
>  create mode 100644 meta/recipes-connectivity/bind/bind/CVE-2015
> -5722.patch
> 
> diff --git a/meta/recipes-connectivity/bind/bind/CVE-2015-1349.patch
> b/meta/recipes-connectivity/bind/bind/CVE-2015-1349.patch
> new file mode 100644
> index 000..dea7aae
> --- /dev/null
> +++ b/meta/recipes-connectivity/bind/bind/CVE-2015-1349.patch
> @@ -0,0 +1,60 @@
> +CVE-2015-1349 bind: issue in trust anchor management can cause named
> to crash
> +
> +commit 2e9d79f169663c9aff5f0dcdc626a2cd2dbb5892
> +Author: Evan Hunt 
> +Date:   Tue Feb 3 18:30:38 2015 -0800
> +
> +[v9_9_6_patch] avoid crash due to managed-key rollover
> +
> +4053.[security]  Revoking a managed trust anchor
> and supplying
> + an untrusted replacement could cause
> named
> + to crash with an assertion failure.
> + (CVE-2015-1349) [RT #38344]
> +
> +Upstream Status: Backport from Redhat
> +
> +https://bugzilla.redhat.com/attachment.cgi?id=993045
> +
> +Signed-off-by: Armin Kuster 
> +
> +Index: bind-9.9.5/CHANGES
> +===
> +--- bind-9.9.5.orig/CHANGES
>  bind-9.9.5/CHANGES
> +@@ -1,3 +1,10 @@
> ++--- 9.9.6-P2 released ---
> ++
> ++4053.   [security]  Revoking a managed trust anchor and
> supplying
> ++an untrusted replacement could cause named
> ++to crash with an assertion failure.
> ++(CVE-2015-1349) [RT #38344]
> ++
> + --- 9.9.5 released ---
> + 
> + --- 9.9.5rc2 released ---
> +Index: bind-9.9.5/lib/dns/zone.c
> +===
> +--- bind-9.9.5.orig/lib/dns/zone.c
>  bind-9.9.5/lib/dns/zone.c
> +@@ -8496,6 +8496,12 @@ keyfetch_done(isc_task_t *task, isc_even
> +  namebuf, tag);
> + trustkey = ISC_TRUE;
> + }
> ++} else {
> ++/*
> ++ * No previously known key, and the key is
> not
> ++ * secure, so skip it.
> ++ */
> ++continue;
> + }
> + 
> + /* Delete old version */
> +@@ -8544,7 +8550,7 @@ keyfetch_done(isc_task_t *task, isc_even
> + trust_key(zone, keyname, , mctx);
> + }
> + 
> +-if (!deletekey)
> ++if (secure && !deletekey) 
> + set_refreshkeytimer(zone, , now);
> + }
> + 
> diff --git a/meta/recipes-connectivity/bind/bind/CVE-2015-4620.patch
> b/meta/recipes-connectivity/bind/bind/CVE-2015-4620.patch
> new file mode 100644
> index 000..1a5051e
> --- /dev/null
> +++ b/meta/recipes-connectivity/bind/bind/CVE-2015-4620.patch
> @@ -0,0 +1,36 @@
> +CVE-2015-4620 bind: abort DoS caused by uninitialized value use in
> isselfsigned()
> +
> +issue introduced by git commit
> +
> +https://source.isc.org/cgi-bin/gitweb.cgi?p=bind9.git;a=commitdiff;h
> =44f175a90a855326725439b2f1178f0dcca8f67d
> +
> +which is in this version of bind.
> +
> +Upstream Status: Backport from Redhat
> +
> +https://bugzilla.redhat.com/attachment.cgi?id=1044719
> +
> +Signed-off-by: Armin Kuster 
> +
> +Index: bind-9.9.5/lib/dns/validator.c
> +===
> +--- bind-9.9.5.orig/lib/dns/validator.c
>  bind-9.9.5/lib/dns/validator.c
> +@@ -1406,7 +1406,6 @@ compute_keytag(dns_rdata_t *rdata, dns_r
> +  */
> + static isc_boolean_t
> + isselfsigned(dns_validator_t *val) {
> +-dns_fixedname_t fixed;
> + dns_rdataset_t *rdataset, *sigrdataset;
> + dns_rdata_t rdata = DNS_RDATA_INIT;
> + dns_rdata_t sigrdata = DNS_RDATA_INIT;
> +@@ -1462,8 +1461,7 @@ isselfsigned(dns_validator_t *val) {
> + result = dns_dnssec_verify3(name, rdataset,
> dstkey,
> + ISC_TRUE,
> + val->view
> ->maxbits,
> +-mctx,
> ,
> +-

Re: [OE-core] [PATCH][fido][dizzy] libtasn1: CVE-2015-3622

2015-09-15 Thread Joshua Lock
On Mon, 2015-09-14 at 12:04 +0200, Sona Sarmadi wrote:
> _asn1_extract_der_octet: prevent past of boundary access
> 
> References:
> https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-3622
> http://git.savannah.gnu.org/gitweb/?p=libtasn1.git;a=patch;
> h=f979435823a02f842c41d49cd41cc81f25b5d677
> 
> Signed-off-by: Sona Sarmadi 

Patch queued in my joshuagl/fido-next tree - thanks!

Joshua

http://cgit.openembedded.org/openembedded-core-contrib/log/?h=joshuagl/
fido-next

> ---
>  .../gnutls/libtasn1/libtasn1-CVE-2015-3622.patch   | 44
> ++
>  meta/recipes-support/gnutls/libtasn1_4.0.bb|  1 +
>  2 files changed, 45 insertions(+)
>  create mode 100644 meta/recipes-support/gnutls/libtasn1/libtasn1-CVE
> -2015-3622.patch
> 
> diff --git a/meta/recipes-support/gnutls/libtasn1/libtasn1-CVE-2015
> -3622.patch b/meta/recipes-support/gnutls/libtasn1/libtasn1-CVE-2015
> -3622.patch
> new file mode 100644
> index 000..0989ef6
> --- /dev/null
> +++ b/meta/recipes-support/gnutls/libtasn1/libtasn1-CVE-2015
> -3622.patch
> @@ -0,0 +1,44 @@
> +From f979435823a02f842c41d49cd41cc81f25b5d677 Mon Sep 17 00:00:00
> 2001
> +From: Nikos Mavrogiannopoulos 
> +Date: Mon, 20 Apr 2015 14:56:27 +0200
> +Subject: [PATCH] _asn1_extract_der_octet: prevent past of boundary
> access
> +
> +Fixes CVE-2015-3622.
> +Upstream-Status: Backport
> +
> +Reported by Hanno Böck.
> +---
> + lib/decoding.c |3 ++-
> + 1 files changed, 2 insertions(+), 1 deletions(-)
> +
> +diff --git a/lib/decoding.c b/lib/decoding.c
> +index 7fbd931..42ddc6b 100644
> +--- a/lib/decoding.c
>  b/lib/decoding.c
> +@@ -732,6 +732,7 @@ _asn1_extract_der_octet (asn1_node node, const
> unsigned char *der,
> + return ASN1_DER_ERROR;
> + 
> +   counter = len3 + 1;
> ++  DECR_LEN(der_len, len3);
> + 
> +   if (len2 == -1)
> + counter_end = der_len - 2;
> +@@ -740,6 +741,7 @@ _asn1_extract_der_octet (asn1_node node, const
> unsigned char *der,
> + 
> +   while (counter < counter_end)
> + {
> ++  DECR_LEN(der_len, 1);
> +   len2 = asn1_get_length_der (der + counter, der_len, );
> + 
> +   if (IS_ERR(len2, flags))
> +@@ -764,7 +766,6 @@ _asn1_extract_der_octet (asn1_node node, const
> unsigned char *der,
> +   len2 = 0;
> + }
> + 
> +-  DECR_LEN(der_len, 1);
> +   counter += len2 + len3 + 1;
> + }
> + 
> +-- 
> +1.7.2.5
> +
> diff --git a/meta/recipes-support/gnutls/libtasn1_4.0.bb
> b/meta/recipes-support/gnutls/libtasn1_4.0.bb
> index 289833ec..16cf4d6 100644
> --- a/meta/recipes-support/gnutls/libtasn1_4.0.bb
> +++ b/meta/recipes-support/gnutls/libtasn1_4.0.bb
> @@ -11,6 +11,7 @@ LIC_FILES_CHKSUM = "
> file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
>  SRC_URI = "${GNU_MIRROR}/libtasn1/libtasn1-${PV}.tar.gz \
> file://libtasn1_fix_for_automake_1.12.patch \
> file://dont-depend-on-help2man.patch \
> +   file://libtasn1-CVE-2015-3622.patch \
> "
>  
>  SRC_URI[md5sum] = "d3d2d9bce3b6668b9827a9df52635be1"
> -- 
> 1.9.1
> 
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [RFC][PATCH 1/3] rootfs.py: Allow to override postinst-intercepts location

2015-09-15 Thread Joshua Lock
On Fri, 2015-09-04 at 14:22 +0200, Martin Jansa wrote:
> * useful when we need to overlay/extend intercept scripts from oe
> -core
> 
> Signed-off-by: Martin Jansa 

Patch queued in my joshuagl/fido-next tree - thanks!

Joshua

http://cgit.openembedded.org/openembedded-core-contrib/log/?h=joshuagl/
fido-next

> ---
>  meta/lib/oe/rootfs.py | 6 --
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
> index c29843b..76950ec 100644
> --- a/meta/lib/oe/rootfs.py
> +++ b/meta/lib/oe/rootfs.py
> @@ -164,6 +164,9 @@ class Rootfs(object):
>  pre_process_cmds =
> self.d.getVar("ROOTFS_PREPROCESS_COMMAND", True)
>  post_process_cmds =
> self.d.getVar("ROOTFS_POSTPROCESS_COMMAND", True)
>  
> +postinst_intercepts_dir =
> self.d.getVar("POSTINST_INTERCEPTS_DIR", True)
> +if not postinst_intercepts_dir:
> +postinst_intercepts_dir =
> self.d.expand("${COREBASE}/scripts/postinst-intercepts")
>  intercepts_dir = os.path.join(self.d.getVar('WORKDIR',
> True),
>"intercept_scripts")
>  
> @@ -173,8 +176,7 @@ class Rootfs(object):
>  
>  bb.utils.mkdirhier(self.deploy_dir_image)
>  
> -shutil.copytree(self.d.expand("${COREBASE}/scripts/postinst
> -intercepts"),
> -intercepts_dir)
> +shutil.copytree(postinst_intercepts_dir, intercepts_dir)
>  
> 
>  shutil.copy(self.d.expand("${COREBASE}/meta/files/deploydir_readme.t
> xt"),
>  self.deploy_dir_image +
> -- 
> 2.5.0
> 
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] libgcc.inc: package baremetal multilib libraries

2015-09-15 Thread Bystricky, Juro
Thanks, I see what you mean. I'll repost a new patch after I've tested it.

> -Original Message-
> From: Phil Blundell [mailto:p...@pbcl.net]
> Sent: Monday, September 14, 2015 12:53 PM
> To: Khem Raj
> Cc: Bystricky, Juro; Purdie, Richard; openembedded-
> c...@lists.openembedded.org
> Subject: Re: [OE-core] [PATCH] libgcc.inc: package baremetal multilib 
> libraries
> 
> On Mon, 2015-09-14 at 09:38 -0700, Khem Raj wrote:
> > > On Sep 14, 2015, at 9:22 AM, Juro Bystricky 
> wrote:
> > >
> > > When building libgcc for baremetal cross-compilers, some files and
> > > libraries may be built but not packaged. This patch fixes errors such as
> these:
> > >
> > > ERROR: QA Issue: libgcc: Files/directories were installed but not shipped
> in any package:
> > >  /usr/lib/arm-poky-eabi/4.9.3/thumb
> > >  /usr/lib/arm-poky-eabi/4.9.3/fpu
> > >  /usr/lib/arm-poky-eabi/4.9.3/thumb/libgcov.a
> > >  /usr/lib/arm-poky-eabi/4.9.3/thumb/crtn.o
> > >  /usr/lib/arm-poky-eabi/4.9.3/thumb/crtend.o
> > >  /usr/lib/arm-poky-eabi/4.9.3/thumb/crtbegin.o
> > >  /usr/lib/arm-poky-eabi/4.9.3/thumb/libgcc.a
> > >  /usr/lib/arm-poky-eabi/4.9.3/thumb/crti.o
> > >  /usr/lib/arm-poky-eabi/4.9.3/fpu/libgcov.a
> > >  /usr/lib/arm-poky-eabi/4.9.3/fpu/crtn.o
> > >  /usr/lib/arm-poky-eabi/4.9.3/fpu/crtend.o
> > >  /usr/lib/arm-poky-eabi/4.9.3/fpu/crtbegin.o
> > >  /usr/lib/arm-poky-eabi/4.9.3/fpu/libgcc.a
> > >  /usr/lib/arm-poky-eabi/4.9.3/fpu/crti.o
> > > Please set FILES such that these items are packaged. Alternatively
> > > if they are unneeded, avoid installing them or delete them within
> > > do_install. [installed-vs-shipped]
> > >
> > > Signed-off-by: Juro Bystricky 
> > > ---
> > > meta/recipes-devtools/gcc/libgcc.inc | 6 ++
> > > 1 file changed, 6 insertions(+)
> > >
> > > diff --git a/meta/recipes-devtools/gcc/libgcc.inc
> > > b/meta/recipes-devtools/gcc/libgcc.inc
> > > index 739adbd..95709e4 100644
> > > --- a/meta/recipes-devtools/gcc/libgcc.inc
> > > +++ b/meta/recipes-devtools/gcc/libgcc.inc
> > > @@ -28,6 +28,12 @@ FILES_${PN}-dev = "\
> > > ${libdir}/${TARGET_SYS}/${BINV}/libgcov.a \ "
> > >
> > > +FILES_${PN}-dev_libc-baremetal = "\
> > > +${base_libdir}/ \
> > > +${libdir}/* \
> > > +${libdir}/${TARGET_SYS}/* \
> > > +”
> >
> > why not put it into libgcc-dev itself
> 
> Agreed.  I think the real issue here is nothing really to do with baremetal, 
> it's
> just that the existing FILES_${PN}-dev pattern doesn't consider multilib for
> anything other than IA and mips.
> 
> p.
> 

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [fido][PATCH 3/3] postinst_intercept: allow to pass variables with spaces

2015-09-15 Thread Joshua Lock
On Thu, 2015-09-10 at 13:54 +0200, Martin Jansa wrote:
> * trying to pass foo="a b" through postinst_intercept ends
>   with the actual script header to containing:
>   b
>   foo=a
>   which fails because "b" command doesn't exist.
> 
> Signed-off-by: Martin Jansa 

Patch queued in my joshuagl/fido-next tree - thanks!

Joshua

http://cgit.openembedded.org/openembedded-core-contrib/log/?h=joshuagl/
fido-next

> ---
>  scripts/postinst-intercepts/postinst_intercept | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/scripts/postinst-intercepts/postinst_intercept
> b/scripts/postinst-intercepts/postinst_intercept
> index a257198..b18e806 100755
> --- a/scripts/postinst-intercepts/postinst_intercept
> +++ b/scripts/postinst-intercepts/postinst_intercept
> @@ -48,7 +48,7 @@ if [ -n "$pkgs_line" ]; then
>   sed -i -e "s/##PKGS:.*/\0${package_name} /"
> $intercept_script
>   fi
>  else
> - for var in $@; do
> + for var in "$@"; do
>   sed -i -e "\%^#\!/bin/.*sh%a $var" $intercept_script
>   done
>   echo "##PKGS: ${package_name} " >> $intercept_script
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [fido][PATCH 2/3] rootfs.py: show intercept script output in log.do_rootfs

2015-09-15 Thread Joshua Lock
On Thu, 2015-09-10 at 13:54 +0200, Martin Jansa wrote:
> * without this the output wasn't shown anywhere even when the bb.warn
>   says:
>   "See log for details!"
> 
> Signed-off-by: Martin Jansa 

Patch queued in my joshuagl/fido-next tree - thanks!

Joshua

http://cgit.openembedded.org/openembedded-core-contrib/log/?h=joshuagl/
fido-next

> ---
>  meta/lib/oe/rootfs.py | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
> index d2de2c6..15ad642 100644
> --- a/meta/lib/oe/rootfs.py
> +++ b/meta/lib/oe/rootfs.py
> @@ -229,7 +229,7 @@ class Rootfs(object):
>  bb.note("> Executing %s intercept ..." % script)
>  
>  try:
> -subprocess.check_output(script_full)
> +subprocess.check_call(script_full)
>  except subprocess.CalledProcessError as e:
>  bb.warn("The postinstall intercept hook '%s' failed
> (exit code: %d)! See log for details!" %
>  (script, e.returncode))
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH v3 1/2] dbus: add user sessions support

2015-09-15 Thread Tanu Kaskinen
On Mon, 2015-09-14 at 12:41 +0200, Andrew Shadura wrote:
> ---
>  meta/recipes-core/dbus/dbus_1.10.0.bb | 5 -
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/recipes-core/dbus/dbus_1.10.0.bb 
> b/meta/recipes-core/dbus/dbus_1.10.0.bb
> index 31cbef0..e099f4b 100644
> --- a/meta/recipes-core/dbus/dbus_1.10.0.bb
> +++ b/meta/recipes-core/dbus/dbus_1.10.0.bb
> @@ -68,7 +68,9 @@ FILES_${PN} = "${bindir}/dbus-daemon* \
> ${datadir}/dbus-1/session.conf \
> ${datadir}/dbus-1/system.d \
> ${datadir}/dbus-1/system.conf \
> -   ${systemd_unitdir}/system/"
> +   ${systemd_system_unitdir} \
> +   ${systemd_user_unitdir} \
> +"
>  FILES_${PN}-lib = "${libdir}/lib*.so.*"
>  RRECOMMENDS_${PN}-lib = "${PN}"
>  FILES_${PN}-dev += "${libdir}/dbus-1.0/include ${bindir}/dbus-glib-tool 
> ${bindir}/dbus-test-tool"
> @@ -105,6 +107,7 @@ PACKAGECONFIG_class-nativesdk = ""
>  PACKAGECONFIG[systemd] = 
> "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--without-systemdsystemunitdir"
>  PACKAGECONFIG[x11] = "--with-x --enable-x11-autolaunch,--without-x 
> --disable-x11-autolaunch, virtual/libx11 libsm"
>  PACKAGECONFIG[apparmor] = "--enable-apparmor,--disable-apparmor,libapparmor"
> +PACKAGECONFIG[user-session] = "--enable-user-session,--disable-user-session"

I think user-session should be enabled by default when systemd is in
DISTRO_FEATURES. Some services, e.g. PulseAudio, can fully enable their
systemd integration only if dbus is compiled with --enable-user
-session.

-- 
Tanu
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH v3 1/2] dbus: add user sessions support

2015-09-15 Thread Pau Espin Pedrol
Hi,

I agree with Tanu. +1 enabling for user-session by default if systemd is
used.

Pau Espin Pedrol
mail/jabber: pespin.s...@gmail.com
http://blog.espeweb.net

2015-09-15 13:36 GMT+02:00 Tanu Kaskinen :

> On Mon, 2015-09-14 at 12:41 +0200, Andrew Shadura wrote:
> > ---
> >  meta/recipes-core/dbus/dbus_1.10.0.bb | 5 -
> >  1 file changed, 4 insertions(+), 1 deletion(-)
> >
> > diff --git a/meta/recipes-core/dbus/dbus_1.10.0.bb
> b/meta/recipes-core/dbus/dbus_1.10.0.bb
> > index 31cbef0..e099f4b 100644
> > --- a/meta/recipes-core/dbus/dbus_1.10.0.bb
> > +++ b/meta/recipes-core/dbus/dbus_1.10.0.bb
> > @@ -68,7 +68,9 @@ FILES_${PN} = "${bindir}/dbus-daemon* \
> > ${datadir}/dbus-1/session.conf \
> > ${datadir}/dbus-1/system.d \
> > ${datadir}/dbus-1/system.conf \
> > -   ${systemd_unitdir}/system/"
> > +   ${systemd_system_unitdir} \
> > +   ${systemd_user_unitdir} \
> > +"
> >  FILES_${PN}-lib = "${libdir}/lib*.so.*"
> >  RRECOMMENDS_${PN}-lib = "${PN}"
> >  FILES_${PN}-dev += "${libdir}/dbus-1.0/include ${bindir}/dbus-glib-tool
> ${bindir}/dbus-test-tool"
> > @@ -105,6 +107,7 @@ PACKAGECONFIG_class-nativesdk = ""
> >  PACKAGECONFIG[systemd] =
> "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--without-systemdsystemunitdir"
> >  PACKAGECONFIG[x11] = "--with-x --enable-x11-autolaunch,--without-x
> --disable-x11-autolaunch, virtual/libx11 libsm"
> >  PACKAGECONFIG[apparmor] =
> "--enable-apparmor,--disable-apparmor,libapparmor"
> > +PACKAGECONFIG[user-session] =
> "--enable-user-session,--disable-user-session"
>
> I think user-session should be enabled by default when systemd is in
> DISTRO_FEATURES. Some services, e.g. PulseAudio, can fully enable their
> systemd integration only if dbus is compiled with --enable-user
> -session.
>
> --
> Tanu
> --
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] oeqa/decorators: Added decorator to restart the DUT in case of test hang.

2015-09-15 Thread Lucian Musat
Once the DUT is hanged during testing, currently all the following test
cases have to wait for default timeout to exit. Using this decorator the
user can choose a timeout at case by case basis and what happens when the
timeout is reached by overwriting the self.target.restart method.

[YOCTO #7853]

Signed-off-by: Lucian Musat 
---
 meta/lib/oeqa/oetest.py   |  6 ++
 meta/lib/oeqa/utils/decorators.py | 25 +
 2 files changed, 31 insertions(+)

diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py
index 0fe68d4..a6f89b6 100644
--- a/meta/lib/oeqa/oetest.py
+++ b/meta/lib/oeqa/oetest.py
@@ -151,6 +151,12 @@ class oeRuntimeTest(oeTest):
 elif (type(self.target).__name__ == "QemuTarget"):
 self.assertTrue(self.target.check(), msg = "Qemu not running?")
 
+self.setUpLocal()
+
+# a setup method before tests but after the class instantiation
+def setUpLocal(self):
+pass
+
 def tearDown(self):
 # If a test fails or there is an exception
 if not exc_info() == (None, None, None):
diff --git a/meta/lib/oeqa/utils/decorators.py 
b/meta/lib/oeqa/utils/decorators.py
index 162a88f..b6adcb1 100644
--- a/meta/lib/oeqa/utils/decorators.py
+++ b/meta/lib/oeqa/utils/decorators.py
@@ -220,3 +220,28 @@ def getAllTags(obj):
 ret = __gettags(obj)
 ret.update(__gettags(tc_method))
 return ret
+
+def timeout_handler(seconds):
+def decorator(fn):
+if hasattr(signal, 'alarm'):
+@wraps(fn)
+def wrapped_f(self, *args, **kw):
+current_frame = sys._getframe()
+def raiseTimeOut(signal, frame):
+if frame is not current_frame:
+try:
+self.target.restart()
+raise TimeOut('%s seconds' % seconds)
+except:
+raise TimeOut('%s seconds' % seconds)
+prev_handler = signal.signal(signal.SIGALRM, raiseTimeOut)
+try:
+signal.alarm(seconds)
+return fn(self, *args, **kw)
+finally:
+signal.alarm(0)
+signal.signal(signal.SIGALRM, prev_handler)
+return wrapped_f
+else:
+return fn
+return decorator
-- 
2.1.4

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 02/12] hostap-utils: Use C99 stddefs in defining local typedefs

2015-09-15 Thread Khem Raj
On Mon, Sep 14, 2015 at 11:33 PM,   wrote:
> On Mon, Sep 14, 2015 at 04:31:17PM +, Khem Raj wrote:
>> The code is creating more abstract types which is nice however it should
>> be using standard defines from stdint.h and not random defines to base
>> its own type system
>
> These types are not random. They are standard Linux kernel types used by 
> headers
> exported to userspace and their definitions come from .
> These headers should not depend on libc headers like stdint.h.

Right they are not random in general but they are randomly being
redefined by the application,
if it should be using linux/types.h those are different types than
what is being defined here. I have just
made the semantics of existing logic to be more c99 compliant.

>
> Also, this file is actually a convenience copy of  which 
> should
> be used directly instead.

There must be a reason to make own copy. May be hostap-utils want to
be portable to more than linux

>
> -Mikko
>
>> Signed-off-by: Khem Raj 
>> ---
>>  ...-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch | 36 
>> ++
>>  meta/recipes-bsp/hostap/hostap-utils.inc   |  4 ++-
>>  2 files changed, 39 insertions(+), 1 deletion(-)
>>  create mode 100644 
>> meta/recipes-bsp/hostap/hostap-utils-0.4.7/0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch
>>
>> diff --git 
>> a/meta/recipes-bsp/hostap/hostap-utils-0.4.7/0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch
>>  
>> b/meta/recipes-bsp/hostap/hostap-utils-0.4.7/0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch
>> new file mode 100644
>> index 000..b44dca3
>> --- /dev/null
>> +++ 
>> b/meta/recipes-bsp/hostap/hostap-utils-0.4.7/0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch
>> @@ -0,0 +1,36 @@
>> +From 742fb110d9841a04b3ced256b0bf80ff304dcaff Mon Sep 17 00:00:00 2001
>> +From: Khem Raj 
>> +Date: Mon, 31 Aug 2015 05:45:08 +
>> +Subject: [PATCH] Define _u32/__s32/__u16/__s16/__u8 in terms of c99 types
>> +
>> +Signed-off-by: Khem Raj 
>> +---
>> +Upstream-Status: Pending
>> +
>> + wireless_copy.h | 10 +-
>> + 1 file changed, 5 insertions(+), 5 deletions(-)
>> +
>> +diff --git a/wireless_copy.h b/wireless_copy.h
>> +index 8208258..1171a35 100644
>> +--- a/wireless_copy.h
>>  b/wireless_copy.h
>> +@@ -86,11 +86,11 @@
>> + #else
>> + #include 
>> + #include 
>> +-typedef __uint32_t __u32;
>> +-typedef __int32_t __s32;
>> +-typedef __uint16_t __u16;
>> +-typedef __int16_t __s16;
>> +-typedef __uint8_t __u8;
>> ++typedef u_int32_t __u32;
>> ++typedef int32_t __s32;
>> ++typedef u_int16_t __u16;
>> ++typedef int16_t __s16;
>> ++typedef u_int8_t __u8;
>> + #ifndef __user
>> + #define __user
>> + #endif /* __user */
>> +--
>> +2.5.1
>> +
>> diff --git a/meta/recipes-bsp/hostap/hostap-utils.inc 
>> b/meta/recipes-bsp/hostap/hostap-utils.inc
>> index 89d977a..140321d 100644
>> --- a/meta/recipes-bsp/hostap/hostap-utils.inc
>> +++ b/meta/recipes-bsp/hostap/hostap-utils.inc
>> @@ -10,7 +10,9 @@ SECTION = "kernel/userland"
>>  PR = "r4"
>>
>>  SRC_URI = "http://hostap.epitest.fi/releases/hostap-utils-${PV}.tar.gz \
>> -file://hostap-fw-load.patch"
>> +   file://hostap-fw-load.patch \
>> +   
>> file://0001-Define-_u32-__s32-__u16-__s16-__u8-in-terms-of-c99-t.patch \
>> +"
>>  S = "${WORKDIR}/hostap-utils-${PV}"
>>
>>  BINARIES = "hostap_crypt_conf hostap_diag hostap_fw_load hostap_io_debug \
>> --
>> 2.5.2
>>
>> --
>> ___
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] Removes --with-wctype-functions configure option

2015-09-15 Thread Christopher Larson
On Tue, Sep 15, 2015 at 12:42 AM, Erkka Kääriä 
wrote:

> This option is causing issues with python unicode support. Several unicode
> related regression tests are currently failing (test_re and test_codecs for
> example) and removing this option fixes these.
>
> This configure option mostly seems to be historical. Discussion related to
> python issue 9210 (https://bugs.python.org/issue9210) indicates its
> original goal was to save memory and that the option should have been
> deprecated ages ago.
>
> Signed-off-by: Erkka Kääriä 
>

The commit message subject line is missing the recipe or filename. See
http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines for
details.
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH v3 1/2] dbus: add user sessions support

2015-09-15 Thread Tanu Kaskinen
On Tue, 2015-09-15 at 14:53 +0200, Andrew Shadura wrote:
> On 15/09/15 13:36, Tanu Kaskinen wrote:
> > I think user-session should be enabled by default when systemd is in
> > DISTRO_FEATURES. Some services, e.g. PulseAudio, can fully enable their
> > systemd integration only if dbus is compiled with --enable-user
> > -session.
> 
> I think so too, but I think it's worth a separate patch, right?

I think this patch could already have it "right", but I don't really
mind either way.

-- 
Tanu
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] oeqa/testimage: Enhance -v switch in testimage

2015-09-15 Thread Lucian Musat
When testimage is run with -v switch now individual
test progress can be seen directly in bitbake console.

[YOCTO #6841]

Signed-off-by: Lucian Musat 
---
 meta/lib/oeqa/oetest.py | 13 +
 1 file changed, 13 insertions(+)

diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py
index 0fe68d4..99da20d 100644
--- a/meta/lib/oeqa/oetest.py
+++ b/meta/lib/oeqa/oetest.py
@@ -106,6 +106,17 @@ def loadTests(tc, type="runtime"):
 suites.sort(cmp=lambda a,b: cmp((a.depth, a.index), (b.depth, b.index)))
 return testloader.suiteClass(suites)
 
+_buffer = ""
+
+def custom_verbose(msg, *args, **kwargs):
+global _buffer
+if msg[-1] != "\n":
+_buffer += msg
+else:
+_buffer += msg
+bb.plain(_buffer.rstrip("\n"), *args, **kwargs)
+_buffer = ""
+
 def runTests(tc, type="runtime"):
 
 suite = loadTests(tc, type)
@@ -114,6 +125,8 @@ def runTests(tc, type="runtime"):
 bb.note("Filter test cases by tags: %s" % tc.tagexp)
 bb.note("Found %s tests" % suite.countTestCases())
 runner = unittest.TextTestRunner(verbosity=2)
+if bb.msg.loggerDefaultVerbose:
+runner.stream.write = custom_verbose
 result = runner.run(suite)
 
 return result
-- 
2.1.4

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] rpm: search for gpg if gpg2 is not found

2015-09-15 Thread Mark Hatle
On 9/15/15 8:05 AM, Markus Lehtonen wrote:
> Some (host) systems only have a binary named 'gpg' (e.g. Fedora) while
> some only have 'gpg2' (Ubuntu) and others have both of them (openSUSE).
> Currently the behavior of rpm-native with regards to GnuPG depends on
> the host platform: rpm(-native) is configured to use GnuPG binary of the
> host system if 'gpg2' is found in $PATH. Otherwise, rpm(-native) will
> default to using '%{_bindir}/gpg2' which will be pointing to a sysroot
> binary which usually does not exist.
> 
> This patch changes rpm to look for both 'gpg' and 'gpg2' when searching
> for the GnuPG binary in PATH. This makes possible to create signed RPM
> packages on different host platforms, using the GnuPG binary of the
> host, without the need to explicitly define the gpg binary in bitbake
> configuration (via GPG_BIN variable).
> 
> [YOCTO #8134]

The only concern I have with this change is that it may affect both native and
target RPM.  Please verify that the target RPM settings are still correct.

FYI, the value isn't used for anything but the initial setup of some RPM macro
scripts.  Typically I tell uses that they are responsible for providing the
proper ~/.oerpmmacros file in order to instruct RPM where some of these types of
tools are present.  My file for instance:

%__gpg gpg2
%_gpg_name Test RPM Signing Key

--Mark

> Signed-off-by: Markus Lehtonen 
> ---
>  .../configure.ac-check-for-both-gpg2-and-gpg.patch | 29 
> ++
>  meta/recipes-devtools/rpm/rpm_5.4.14.bb|  1 +
>  2 files changed, 30 insertions(+)
>  create mode 100644 
> meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch
> 
> diff --git 
> a/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch
>  
> b/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch
> new file mode 100644
> index 000..f5db167
> --- /dev/null
> +++ 
> b/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch
> @@ -0,0 +1,29 @@
> +configure.ac: search for both gpg2 and gpg
> +
> +On some platforms the GnuPG binary is named 'gpg2' whereas others have 'gpp'.
> +This patch increases compatibility by searching for 'gpg' in addition to
> +'gpg2'.
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Markus Lehtonen 
> +---
> + configure.ac | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/configure.ac b/configure.ac
> +index 6746b4c..f6922ae 100644
> +--- a/configure.ac
>  b/configure.ac
> +@@ -562,7 +562,7 @@ AC_PATH_PROG(__DIFF, diff, /bin/diff, $MYPATH)
> + AC_PATH_PROG(__DITTO, ditto, %{_bindir}/ditto, $MYPATH)
> + AC_PATH_PROG(__FILE, file, %{_bindir}/file, $MYPATH)
> + AC_PATH_PROG(__GIT, git, %{_bindir}/git, $MYPATH)
> +-AC_PATH_PROG(__GPG, gpg2, %{_bindir}/gpg2, $MYPATH)
> ++AC_PATH_PROGS(__GPG, [gpg2 gpg], %{_bindir}/gpg2, $MYPATH)
> + AC_PATH_PROG(__GSR, gsr, %{_bindir}/gsr, $MYPATH)
> + AC_PATH_PROG(__GST_INSPECT, gst-inspect-0.10, %{_bindir}/gst-inspect-0.10, 
> $MYPATH)
> + AC_PATH_PROG(__GZIP, gzip, /bin/gzip, $MYPATH)
> +-- 
> +2.1.4
> +
> diff --git a/meta/recipes-devtools/rpm/rpm_5.4.14.bb 
> b/meta/recipes-devtools/rpm/rpm_5.4.14.bb
> index 1f9a4bd..b450c6f 100644
> --- a/meta/recipes-devtools/rpm/rpm_5.4.14.bb
> +++ b/meta/recipes-devtools/rpm/rpm_5.4.14.bb
> @@ -98,6 +98,7 @@ SRC_URI = 
> "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.14-0.20131024.src.rpm;e
>  file://rpm-check-rootpath-reasonableness.patch \
>  file://rpm-macros.in-disable-external-key-server.patch \
>  file://rpm-opendb-before-verifyscript-to-avoid-null-point.patch \
> +file://configure.ac-check-for-both-gpg2-and-gpg.patch \
> "
>  
>  # Uncomment the following line to enable platform score debugging
> 

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH v3 1/2] dbus: add user sessions support

2015-09-15 Thread Andrew Shadura
On 15/09/15 13:36, Tanu Kaskinen wrote:
> I think user-session should be enabled by default when systemd is in
> DISTRO_FEATURES. Some services, e.g. PulseAudio, can fully enable their
> systemd integration only if dbus is compiled with --enable-user
> -session.

I think so too, but I think it's worth a separate patch, right?

-- 
Cheers,
  Andrew



signature.asc
Description: OpenPGP digital signature
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] rpm: search for gpg if gpg2 is not found

2015-09-15 Thread Markus Lehtonen
Some (host) systems only have a binary named 'gpg' (e.g. Fedora) while
some only have 'gpg2' (Ubuntu) and others have both of them (openSUSE).
Currently the behavior of rpm-native with regards to GnuPG depends on
the host platform: rpm(-native) is configured to use GnuPG binary of the
host system if 'gpg2' is found in $PATH. Otherwise, rpm(-native) will
default to using '%{_bindir}/gpg2' which will be pointing to a sysroot
binary which usually does not exist.

This patch changes rpm to look for both 'gpg' and 'gpg2' when searching
for the GnuPG binary in PATH. This makes possible to create signed RPM
packages on different host platforms, using the GnuPG binary of the
host, without the need to explicitly define the gpg binary in bitbake
configuration (via GPG_BIN variable).

[YOCTO #8134]

Signed-off-by: Markus Lehtonen 
---
 .../configure.ac-check-for-both-gpg2-and-gpg.patch | 29 ++
 meta/recipes-devtools/rpm/rpm_5.4.14.bb|  1 +
 2 files changed, 30 insertions(+)
 create mode 100644 
meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch

diff --git 
a/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch 
b/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch
new file mode 100644
index 000..f5db167
--- /dev/null
+++ 
b/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch
@@ -0,0 +1,29 @@
+configure.ac: search for both gpg2 and gpg
+
+On some platforms the GnuPG binary is named 'gpg2' whereas others have 'gpp'.
+This patch increases compatibility by searching for 'gpg' in addition to
+'gpg2'.
+
+Upstream-Status: Pending
+
+Signed-off-by: Markus Lehtonen 
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 6746b4c..f6922ae 100644
+--- a/configure.ac
 b/configure.ac
+@@ -562,7 +562,7 @@ AC_PATH_PROG(__DIFF, diff, /bin/diff, $MYPATH)
+ AC_PATH_PROG(__DITTO, ditto, %{_bindir}/ditto, $MYPATH)
+ AC_PATH_PROG(__FILE, file, %{_bindir}/file, $MYPATH)
+ AC_PATH_PROG(__GIT, git, %{_bindir}/git, $MYPATH)
+-AC_PATH_PROG(__GPG, gpg2, %{_bindir}/gpg2, $MYPATH)
++AC_PATH_PROGS(__GPG, [gpg2 gpg], %{_bindir}/gpg2, $MYPATH)
+ AC_PATH_PROG(__GSR, gsr, %{_bindir}/gsr, $MYPATH)
+ AC_PATH_PROG(__GST_INSPECT, gst-inspect-0.10, %{_bindir}/gst-inspect-0.10, 
$MYPATH)
+ AC_PATH_PROG(__GZIP, gzip, /bin/gzip, $MYPATH)
+-- 
+2.1.4
+
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.14.bb 
b/meta/recipes-devtools/rpm/rpm_5.4.14.bb
index 1f9a4bd..b450c6f 100644
--- a/meta/recipes-devtools/rpm/rpm_5.4.14.bb
+++ b/meta/recipes-devtools/rpm/rpm_5.4.14.bb
@@ -98,6 +98,7 @@ SRC_URI = 
"http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.14-0.20131024.src.rpm;e
   file://rpm-check-rootpath-reasonableness.patch \
   file://rpm-macros.in-disable-external-key-server.patch \
   file://rpm-opendb-before-verifyscript-to-avoid-null-point.patch \
+  file://configure.ac-check-for-both-gpg2-and-gpg.patch \
  "
 
 # Uncomment the following line to enable platform score debugging
-- 
2.1.4

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] Add python-misc as rdependency to python-modules

2015-09-15 Thread Erkka Kääriä
Currently python-misc is not included even if python-modules is. This means 
some python scripts fail even if python-modules is included in the image (for 
example, get-pip.py at bootrap.pypa.io/get-pip.py). This patch adds python-misc 
as runtime dependency for python-modules.

Signed-off-by: Erkka Kääriä 
---
 meta/recipes-devtools/python/python_2.7.9.bb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-devtools/python/python_2.7.9.bb 
b/meta/recipes-devtools/python/python_2.7.9.bb
index ae45577..f7e2f27 100644
--- a/meta/recipes-devtools/python/python_2.7.9.bb
+++ b/meta/recipes-devtools/python/python_2.7.9.bb
@@ -161,7 +161,8 @@ FILES_${PN}-dbg += 
"${libdir}/python${PYTHON_MAJMIN}/lib-dynload/.debug"
 # catch all the rest (unsorted)
 PACKAGES += "${PN}-misc"
 FILES_${PN}-misc = "${libdir}/python${PYTHON_MAJMIN}"
-RDEPENDS_${PN}-ptest = "${PN}-modules ${PN}-misc"
+RDEPENDS_${PN}-modules += "${PN}-misc"
+RDEPENDS_${PN}-ptest = "${PN}-modules"
 #inherit ptest after "require python-${PYTHON_MAJMIN}-manifest.inc" so 
PACKAGES doesn't get overwritten
 inherit ptest
 
-- 
2.1.4

-
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] Multilib build support by single toolchain generated by Yocto

2015-09-15 Thread Mark Hatle
On 9/15/15 3:23 AM, Luo Zhenhua wrote:
> Hello all,
> 
>  
> 
> Currently to support 32b and 64b build for same core in Yocto, two separated
> compilers need to be generated. Is there plan to support multilib build(32b 
> and
> 64b) by single toolchain which is generated by Yocto in future?
> 

The requirements for multilib compilers depend on architecture, configuration
and GNU GCC limitations.  Some architects will work fine with a single compiler,
others may require multiple compilers.

If you can assist with this effort, I believe the work would be appreciated.

--Mark

> 
>  
> 
> Best Regards,
> 
>  
> 
> Zhenhua
> 
> 
> 

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] rpm: search for gpg if gpg2 is not found

2015-09-15 Thread Gary Thomas

On 2015-09-15 07:05, Markus Lehtonen wrote:

Some (host) systems only have a binary named 'gpg' (e.g. Fedora) while
some only have 'gpg2' (Ubuntu) and others have both of them (openSUSE).
Currently the behavior of rpm-native with regards to GnuPG depends on
the host platform: rpm(-native) is configured to use GnuPG binary of the
host system if 'gpg2' is found in $PATH. Otherwise, rpm(-native) will
default to using '%{_bindir}/gpg2' which will be pointing to a sysroot
binary which usually does not exist.

This patch changes rpm to look for both 'gpg' and 'gpg2' when searching
for the GnuPG binary in PATH. This makes possible to create signed RPM
packages on different host platforms, using the GnuPG binary of the
host, without the need to explicitly define the gpg binary in bitbake
configuration (via GPG_BIN variable).

[YOCTO #8134]

Signed-off-by: Markus Lehtonen 
---
  .../configure.ac-check-for-both-gpg2-and-gpg.patch | 29 ++
  meta/recipes-devtools/rpm/rpm_5.4.14.bb|  1 +
  2 files changed, 30 insertions(+)
  create mode 100644 
meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch

diff --git 
a/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch 
b/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch
new file mode 100644
index 000..f5db167
--- /dev/null
+++ 
b/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch
@@ -0,0 +1,29 @@
+configure.ac: search for both gpg2 and gpg
+
+On some platforms the GnuPG binary is named 'gpg2' whereas others have 'gpp'.

   ^^^
Typo?


+This patch increases compatibility by searching for 'gpg' in addition to
+'gpg2'.
+
+Upstream-Status: Pending
+
+Signed-off-by: Markus Lehtonen 
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 6746b4c..f6922ae 100644
+--- a/configure.ac
 b/configure.ac
+@@ -562,7 +562,7 @@ AC_PATH_PROG(__DIFF, diff, /bin/diff, $MYPATH)
+ AC_PATH_PROG(__DITTO, ditto, %{_bindir}/ditto, $MYPATH)
+ AC_PATH_PROG(__FILE, file, %{_bindir}/file, $MYPATH)
+ AC_PATH_PROG(__GIT, git, %{_bindir}/git, $MYPATH)
+-AC_PATH_PROG(__GPG, gpg2, %{_bindir}/gpg2, $MYPATH)
++AC_PATH_PROGS(__GPG, [gpg2 gpg], %{_bindir}/gpg2, $MYPATH)
+ AC_PATH_PROG(__GSR, gsr, %{_bindir}/gsr, $MYPATH)
+ AC_PATH_PROG(__GST_INSPECT, gst-inspect-0.10, %{_bindir}/gst-inspect-0.10, 
$MYPATH)
+ AC_PATH_PROG(__GZIP, gzip, /bin/gzip, $MYPATH)
+--
+2.1.4
+
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.14.bb 
b/meta/recipes-devtools/rpm/rpm_5.4.14.bb
index 1f9a4bd..b450c6f 100644
--- a/meta/recipes-devtools/rpm/rpm_5.4.14.bb
+++ b/meta/recipes-devtools/rpm/rpm_5.4.14.bb
@@ -98,6 +98,7 @@ SRC_URI = 
"http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.14-0.20131024.src.rpm;e
   file://rpm-check-rootpath-reasonableness.patch \
   file://rpm-macros.in-disable-external-key-server.patch \
   file://rpm-opendb-before-verifyscript-to-avoid-null-point.patch \
+  file://configure.ac-check-for-both-gpg2-and-gpg.patch \
  "

  # Uncomment the following line to enable platform score debugging



--

Gary Thomas |  Consulting for the
MLB Associates  |Embedded world

--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core