[OE-core] [PATCH v2 1/3] devtool: second fix for running from a different directory

2015-09-23 Thread Paul Eggleton
From: Markus Lehtonen 

Do not change change current working directory permanently, but, only
for the duration of tinfoil initialization instead. The previous fix
caused very unintuitive behavior where using relative paths were solved
with respect to the builddir instead of the current working directory.
E.g. calling "devtool extract zlib ./zlib" would always create create
srctree in ${TOPDIR}/zlib, independent of the users cwd.

(From OE-Core rev: 4c7f159b0e17a0475a4a4e9dc4dd012e3d2e6a1f)

Signed-off-by: Markus Lehtonen 
Signed-off-by: Ross Burton 
Signed-off-by: Paul Eggleton 
---
 scripts/devtool|  5 +
 scripts/lib/devtool/__init__.py|  6 +-
 scripts/lib/devtool/build-image.py |  2 +-
 scripts/lib/devtool/deploy.py  |  2 +-
 scripts/lib/devtool/package.py |  2 +-
 scripts/lib/devtool/runqemu.py |  2 +-
 scripts/lib/devtool/search.py  |  2 +-
 scripts/lib/devtool/standard.py| 10 +-
 scripts/lib/devtool/upgrade.py |  2 +-
 9 files changed, 17 insertions(+), 16 deletions(-)

diff --git a/scripts/devtool b/scripts/devtool
index 87df951..e4d9db3 100755
--- a/scripts/devtool
+++ b/scripts/devtool
@@ -221,9 +221,6 @@ def main():
 if not config.read():
 return -1
 
-# We need to be in this directory or we won't be able to initialise tinfoil
-os.chdir(basepath)
-
 bitbake_subdir = config.get('General', 'bitbake_subdir', '')
 if bitbake_subdir:
 # Normally set for use within the SDK
@@ -244,7 +241,7 @@ def main():
 scriptutils.logger_setup_color(logger, global_args.color)
 
 if global_args.bbpath is None:
-tinfoil = setup_tinfoil(config_only=True)
+tinfoil = setup_tinfoil(config_only=True, basepath=basepath)
 global_args.bbpath = tinfoil.config_data.getVar('BBPATH', True)
 else:
 tinfoil = None
diff --git a/scripts/lib/devtool/__init__.py b/scripts/lib/devtool/__init__.py
index f815ef2..7b1ab11 100644
--- a/scripts/lib/devtool/__init__.py
+++ b/scripts/lib/devtool/__init__.py
@@ -96,9 +96,12 @@ def exec_fakeroot(d, cmd, **kwargs):
 newenv[splitval[0]] = splitval[1]
 return subprocess.call("%s %s" % (fakerootcmd, cmd), env=newenv, **kwargs)
 
-def setup_tinfoil(config_only=False):
+def setup_tinfoil(config_only=False, basepath=None):
 """Initialize tinfoil api from bitbake"""
 import scriptpath
+orig_cwd = os.path.abspath(os.curdir)
+if basepath:
+os.chdir(basepath)
 bitbakepath = scriptpath.add_bitbake_lib_path()
 if not bitbakepath:
 logger.error("Unable to find bitbake by searching parent directory of 
this script or PATH")
@@ -108,6 +111,7 @@ def setup_tinfoil(config_only=False):
 tinfoil = bb.tinfoil.Tinfoil()
 tinfoil.prepare(config_only)
 tinfoil.logger.setLevel(logger.getEffectiveLevel())
+os.chdir(orig_cwd)
 return tinfoil
 
 def get_recipe_file(cooker, pn):
diff --git a/scripts/lib/devtool/build-image.py 
b/scripts/lib/devtool/build-image.py
index 05c1d75..e53239d 100644
--- a/scripts/lib/devtool/build-image.py
+++ b/scripts/lib/devtool/build-image.py
@@ -59,7 +59,7 @@ def build_image(args, config, basepath, workspace):
 if os.path.isfile(appendfile):
 os.unlink(appendfile)
 
-tinfoil = setup_tinfoil()
+tinfoil = setup_tinfoil(basepath=basepath)
 rd = parse_recipe(config, tinfoil, image, True)
 if not rd:
 # Error already shown
diff --git a/scripts/lib/devtool/deploy.py b/scripts/lib/devtool/deploy.py
index 41b666f..c90c6b1 100644
--- a/scripts/lib/devtool/deploy.py
+++ b/scripts/lib/devtool/deploy.py
@@ -40,7 +40,7 @@ def deploy(args, config, basepath, workspace):
 deploy_dir = os.path.join(basepath, 'target_deploy', args.target)
 deploy_file = os.path.join(deploy_dir, args.recipename + '.list')
 
-tinfoil = setup_tinfoil()
+tinfoil = setup_tinfoil(basepath=basepath)
 try:
 rd = oe.recipeutils.parse_recipe_simple(tinfoil.cooker, 
args.recipename, tinfoil.config_data)
 except Exception as e:
diff --git a/scripts/lib/devtool/package.py b/scripts/lib/devtool/package.py
index 28ecfed..b8d8423 100644
--- a/scripts/lib/devtool/package.py
+++ b/scripts/lib/devtool/package.py
@@ -34,7 +34,7 @@ def package(args, config, basepath, workspace):
 
 image_pkgtype = config.get('Package', 'image_pkgtype', '')
 if not image_pkgtype:
-tinfoil = setup_tinfoil()
+tinfoil = setup_tinfoil(basepath=basepath)
 try:
 tinfoil.prepare(config_only=True)
 image_pkgtype = tinfoil.config_data.getVar('IMAGE_PKGTYPE', True)
diff --git a/scripts/lib/devtool/runqemu.py b/scripts/lib/devtool/runqemu.py
index e7f26ab..4d08d8c 100644
--- a/scripts/lib/devtool/runqemu.py
+++ b/scripts/lib/devtool/runqemu.py
@@ -29,7 +29,7 @@ logger = logging.getLogger('devtool')
 def runqemu(args, 

[OE-core] [PATCH v2 3/3] devtool: upgrade: use shutil.move instead of os.rename

2015-09-23 Thread Paul Eggleton
From: Markus Lehtonen 

Rename fails over filesystem boundaries.

Signed-off-by: Markus Lehtonen 
Signed-off-by: Paul Eggleton 
---
 scripts/lib/devtool/upgrade.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/lib/devtool/upgrade.py b/scripts/lib/devtool/upgrade.py
index aa53c8e..4f850cf 100644
--- a/scripts/lib/devtool/upgrade.py
+++ b/scripts/lib/devtool/upgrade.py
@@ -53,7 +53,7 @@ def _copy_source_code(orig, dest):
 dest_dir = os.path.join(dest, os.path.dirname(path))
 bb.utils.mkdirhier(dest_dir)
 dest_path = os.path.join(dest, path)
-os.rename(os.path.join(orig, path), dest_path)
+shutil.move(os.path.join(orig, path), dest_path)
 
 def _get_checksums(rf):
 import re
-- 
2.1.0

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


[OE-core] [PATCH v2 0/3] devtool fixes

2015-09-23 Thread Paul Eggleton
A couple of patches Markus previously sent rebased on top of master
(also applicable on top of poky master-next) to fix some minor issues in
devtool, plus one minor optimisation from me.


The following changes since commit 2ad7308ee7166641eff99f3b9fe6794de143f6bc:

  oeqa/utils/qemurunner.py: Remove duplicate message on LoggingThread start 
(2015-09-22 18:13:02 +0100)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib paule/devtool-fixes6
  
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/devtool-fixes6

Markus Lehtonen (2):
  devtool: second fix for running from a different directory
  devtool: upgrade: use shutil.move instead of os.rename

Paul Eggleton (1):
  devtool: runqemu: avoid recipe parse

 scripts/devtool|  5 +
 scripts/lib/devtool/__init__.py|  6 +-
 scripts/lib/devtool/build-image.py |  2 +-
 scripts/lib/devtool/deploy.py  |  2 +-
 scripts/lib/devtool/package.py |  2 +-
 scripts/lib/devtool/runqemu.py |  2 +-
 scripts/lib/devtool/search.py  |  2 +-
 scripts/lib/devtool/standard.py| 10 +-
 scripts/lib/devtool/upgrade.py |  4 ++--
 9 files changed, 18 insertions(+), 17 deletions(-)

-- 
2.1.0

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


Re: [OE-core] State of bitbake world, Failed tasks 2015-09-13

2015-09-23 Thread Martin Jansa
On Fri, Sep 18, 2015 at 01:54:58PM +0200, Martin Jansa wrote:
> On Wed, Aug 26, 2015 at 03:56:04PM +0200, Martin Jansa wrote:
> > Time for even more PNBLACKLISTs..
> 
> And it got even worse.
> 
> This run was built without sstate, so QA issues should be more complete.
> I need to update the report script to show new types of QA issues (and some
> old ones which weren't parsed before, because they were all fixed).

Another run without sstate with QA message improvements.

http://www.openembedded.org/wiki/Bitbake_World_Status

== Failed tasks 2015-09-21 ==

INFO: jenkins-job.sh-1.3.1 Complete log available at 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.report.20150923_015309.log

=== common (17) ===
* /meta-openembedded/meta-efl/recipes-efl/efl/azy_svn.bb, do_compile
* /meta-openembedded/meta-efl/recipes-efl/efl/epdf_svn.bb, do_compile
* 
/meta-openembedded/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager_2.32.0.bb,
 do_compile
* /meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus3_3.2.1.bb, 
do_configure
* /meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot_0.6.bb, 
do_compile
* 
/meta-openembedded/meta-multimedia/recipes-mkv/mkvtoolnix/mkvtoolnix_git.bb, 
do_compile
* 
/meta-openembedded/meta-networking/recipes-support/sshguard/sshguard_git.bb, 
do_compile
* 
/meta-openembedded/meta-oe/recipes-connectivity/libimobiledevice/libimobiledevice_1.1.4.bb,
 do_compile
* 
/meta-openembedded/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb, 
do_compile
* /meta-openembedded/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb, 
do_compile
* /meta-openembedded/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb, 
do_compile
* /meta-openembedded/meta-oe/recipes-graphics/gerbil/gerbil_git.bb, 
do_compile
* /meta-openembedded/meta-oe/recipes-graphics/xorg-app/sessreg_1.1.0.bb, 
do_compile
* /meta-openembedded/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb, 
do_compile
* /meta-openembedded/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb, 
do_compile
* 
/meta-openembedded/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb, 
do_compile
* /meta-openembedded/meta-perl/recipes-perl/libnet/libnet-dns-perl_0.81.bb, 
do_configure

=== common-x86 (3) ===
* /meta-browser/recipes-browser/chromium/chromium_40.0.2214.91.bb, 
do_compile
* /meta-openembedded/meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb, 
do_compile
* /openembedded-core/meta/recipes-gnome/gcr/gcr_3.16.0.bb, 
do_populate_sysroot

=== qemuarm (5) ===
* /meta-openembedded/meta-oe/recipes-extended/efivar/efivar_git.bb, 
do_compile
* /meta-openembedded/meta-oe/recipes-qt/qt-creator/qt-creator_2.8.1.bb, 
do_compile
* /openembedded-core/meta/recipes-gnome/gcr/gcr_3.16.0.bb, do_compile
* /openembedded-core/meta/recipes-gnome/libsecret/libsecret_0.18.2.bb, 
do_compile
* /openembedded-core/meta/recipes-support/libunwind/libunwind_1.1.bb, 
do_compile

=== qemux86 (2) ===
* /meta-browser/recipes-browser/chromium/cef3_280796.bb, do_compile
* 
/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb,
 do_compile

=== qemux86_64 (1) ===
* /meta-browser/recipes-browser/chromium/cef3_280796.bb, do_configure

=== Number of failed tasks (66) ===
{| class=wikitable
|-
|| qemuarm  || 22|| 
http://logs.nslu2-linux.org/buildlogs/oe/world//log.world.20150919_132450.log// 
|| http://errors.yoctoproject.org:80/Errors/Build/8754/
|-
|| qemux86  || 22|| 
http://logs.nslu2-linux.org/buildlogs/oe/world//log.world.20150920_191342.log// 
|| http://errors.yoctoproject.org:80/Errors/Build/8763/
|-
|| qemux86_64   || 22|| 
http://logs.nslu2-linux.org/buildlogs/oe/world//log.world.20150921_223757.log// 
|| http://errors.yoctoproject.org:80/Errors/Build/8776/
|}

=== PNBLACKLISTs (65) ===

=== QA issues (145) ===
{| class=wikitable
!| Count||Issue
|-
||0 ||libdir
|-
||1 ||installed-vs-shipped
|-
||1 ||symlink-to-sysroot
|-
||1 ||unknown-configure-option
|-
||18||textrel
|-
||18||version-going-backwards
|-
||3 ||already-stripped
|-
||3 ||invalid-pkgconfig
|-
||30||build-deps
|-
||31||file-rdeps
|-
||33||host-user-contaminated
|-
||6 ||pkgname
|}


PNBLACKLISTs:
openembedded-core/:
meta-browser:
meta-openembedded:
meta-efl/recipes-efl/e17/diskio_svn.bb:PNBLACKLIST[diskio] ?= "broken: switch 
to https://git.enlightenment.org/enlightenment/modules/diskio.git/ and fix 
0.0.1+svnr82070-r0.0/E-MODULES-EXTRA/diskio/e-module-diskio.edc:58. invalid 
state name: 'off'. "default" state must always be first."
meta-efl/recipes-efl/efl/entrance_svn.bb:PNBLACKLIST[entrance] ?= "broken: 
switch to https://git.enlightenment.org/misc/entrance.git and fix 
0.0.4+svnr82070-r7/entrance/data/themes/old/default.edc:678. invalid state 
name: 'defaault'. "default" state must always be first."

[OE-core] [PATCH v2 2/3] devtool: runqemu: avoid recipe parse

2015-09-23 Thread Paul Eggleton
We only need the base configuration to get the variable values we want
to get here, there's no need to parse recipes / load the cache.

Signed-off-by: Paul Eggleton 
---
 scripts/lib/devtool/runqemu.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/lib/devtool/runqemu.py b/scripts/lib/devtool/runqemu.py
index 4d08d8c..5282afb 100644
--- a/scripts/lib/devtool/runqemu.py
+++ b/scripts/lib/devtool/runqemu.py
@@ -29,7 +29,7 @@ logger = logging.getLogger('devtool')
 def runqemu(args, config, basepath, workspace):
 """Entry point for the devtool 'runqemu' subcommand"""
 
-tinfoil = setup_tinfoil(basepath=basepath)
+tinfoil = setup_tinfoil(config_only=True, basepath=basepath)
 machine = tinfoil.config_data.getVar('MACHINE', True)
 bindir_native = tinfoil.config_data.getVar('STAGING_BINDIR_NATIVE', True)
 tinfoil.shutdown()
-- 
2.1.0

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


Re: [OE-core] Error building gdk-pixbuf-native

2015-09-23 Thread Burton, Ross
On 22 September 2015 at 16:28, Gary Thomas  wrote:

> | g_module_open() failed for
> /home/local/rpi2_2015-03-05/tmp/sysroots/i686-linux/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so:
> libharfbuzz.so.0: cannot open shared object file: No such file or directory
>

Here's my guess at what happened.  Starting state was a complete sysroot
with at least gdk-pixbuf, harfbuzz, librsvg installed.  Yhen you did a new
build.  At least harfbuzz and gdk-pixbuf were being rebuilt, so purged from
the sysroot.  gdk-pixbuf rebuilt, installed into sysroot, ran the
update-cache script which then found the rsvg loader from the previous
sysroot that was not (yet?) removed that links to harfbuzz.  Harfbuzz still
isn't reinstall yet, linkage fails.

Is this with master or a release? There are changes in master compared to
fido to improve situations like this.

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


[OE-core] [PATCHv2 1/2] oeqa/oetest: Remove bb as requirement for oetest.

2015-09-23 Thread Lucian Musat
In order for the test export runner to work oetest needs to be
separated from bitbake environment. There is no need to use bb
import here so we can use a logger instead.

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

diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py
index 3816c1a..0be61c2 100644
--- a/meta/lib/oeqa/oetest.py
+++ b/meta/lib/oeqa/oetest.py
@@ -11,10 +11,16 @@ import os, re, mmap
 import unittest
 import inspect
 import subprocess
-import bb
+try:
+import bb
+except ImportError:
+pass
+import logging
 from oeqa.utils.decorators import LogResults, gettag
 from sys import exc_info, exc_clear
 
+logger = logging.getLogger("BitBake")
+
 def getVar(obj):
 #extend form dict, if a variable didn't exists, need find it in testcase
 class VarDict(dict):
@@ -89,7 +95,7 @@ def loadTests(tc, type="runtime"):
 suite.dependencies.append(dep_suite)
 break
 else:
-bb.warn("Test %s was declared as 
@skipUnlessPassed('%s') but that test is either not defined or not active. Will 
run the test anyway." %
+logger.warning("Test %s was declared as 
@skipUnlessPassed('%s') but that test is either not defined or not active. Will 
run the test anyway." %
 (test, depends_on))
 # Use brute-force topological sort to determine ordering. Sort by
 # depth (higher depth = must run later), with original ordering to
@@ -114,19 +120,26 @@ def custom_verbose(msg, *args, **kwargs):
 _buffer += msg
 else:
 _buffer += msg
-bb.plain(_buffer.rstrip("\n"), *args, **kwargs)
+try:
+bb.plain(_buffer.rstrip("\n"), *args, **kwargs)
+except NameError:
+logger.info(_buffer.rstrip("\n"), *args, **kwargs)
 _buffer = ""
 
 def runTests(tc, type="runtime"):
 
 suite = loadTests(tc, type)
-bb.note("Test modules  %s" % tc.testslist)
+logger.info("Test modules  %s" % tc.testslist)
 if hasattr(tc, "tagexp") and tc.tagexp:
-bb.note("Filter test cases by tags: %s" % tc.tagexp)
-bb.note("Found %s tests" % suite.countTestCases())
+logger.info("Filter test cases by tags: %s" % tc.tagexp)
+logger.info("Found %s tests" % suite.countTestCases())
 runner = unittest.TextTestRunner(verbosity=2)
-if bb.msg.loggerDefaultVerbose:
-runner.stream.write = custom_verbose
+try:
+if bb.msg.loggerDefaultVerbose:
+runner.stream.write = custom_verbose
+except NameError:
+# Not in bb environment?
+pass
 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 v2 1/3] devtool: second fix for running from a different directory

2015-09-23 Thread Christopher Larson
On Wed, Sep 23, 2015 at 3:05 AM, Paul Eggleton <
paul.eggle...@linux.intel.com> wrote:

> -def setup_tinfoil(config_only=False):
> +def setup_tinfoil(config_only=False, basepath=None):
>  """Initialize tinfoil api from bitbake"""
>  import scriptpath
> +orig_cwd = os.path.abspath(os.curdir)
> +if basepath:
> +os.chdir(basepath)
>  bitbakepath = scriptpath.add_bitbake_lib_path()
>  if not bitbakepath:
>  logger.error("Unable to find bitbake by searching parent
> directory of this script or PATH")
> @@ -108,6 +111,7 @@ def setup_tinfoil(config_only=False):
>  tinfoil = bb.tinfoil.Tinfoil()
>  tinfoil.prepare(config_only)
>  tinfoil.logger.setLevel(logger.getEffectiveLevel())
> +os.chdir(orig_cwd)
>  return tinfoil
>

Just from a correctness standpoint, this will not go back to orig_cwd if an
exception is raised. We should be using a try/finally block for things like
this.
-- 
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


[OE-core] [PATCH] gcc-5.2: disable isl

2015-09-23 Thread Richard Tollerton
We presently don't package isl. Unfortunately, if the host is already
using gcc-5.2 (as is presently the case on Arch Linux), configure will
autodetect the host's libisl, and do_compile will break because the
system isl headers aren't pulled in. In lieu of packaging isl, disable
it for now.

[YOCTO #8376]

Signed-off-by: Richard Tollerton 
---
 meta/recipes-devtools/gcc/gcc-5.2.inc | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-devtools/gcc/gcc-5.2.inc 
b/meta/recipes-devtools/gcc/gcc-5.2.inc
index f691f58..f6673e6 100644
--- a/meta/recipes-devtools/gcc/gcc-5.2.inc
+++ b/meta/recipes-devtools/gcc/gcc-5.2.inc
@@ -98,6 +98,7 @@ EXTRA_OECONF_BASE = "\
 --with-cloog=no \
 --enable-checking=release \
 --enable-cheaders=c_global \
+--without-isl \
 "
 
 EXTRA_OECONF_INITIAL = "\
@@ -109,6 +110,7 @@ EXTRA_OECONF_INITIAL = "\
 --disable-lto \
 --disable-plugin \
 --enable-decimal-float=no \
+--without-isl \
 "
 
 EXTRA_OECONF_append_libc-uclibc = " --disable-decimal-float "
-- 
2.5.2

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


Re: [OE-core] [PATCH 2/2] oeqa/runexported: Removed DEPLOY_DIR as mandatory.

2015-09-23 Thread Christopher Larson
On Wed, Sep 23, 2015 at 2:02 AM, Lucian Musat 
wrote:

> We don't need DEPLOY_DIR for every runtime test so there is no
> need for it to be mandatory.
>
> Signed-off-by: Lucian Musat 
> ---
>  meta/lib/oeqa/runexported.py | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/lib/oeqa/runexported.py b/meta/lib/oeqa/runexported.py
> index 96442b1..7d68965 100755
> --- a/meta/lib/oeqa/runexported.py
> +++ b/meta/lib/oeqa/runexported.py
> @@ -112,7 +112,7 @@ def main():
>  d["DEPLOY_DIR"] = options.deploy_dir
>  else:
>  if not os.path.isdir(d["DEPLOY_DIR"]):
> -raise Exception("The path to DEPLOY_DIR does not exists: %s"
> % d["DEPLOY_DIR"])
> +print "WARNING: The path to DEPLOY_DIR does not exist: %s" %
> d["DEPLOY_DIR"]
>

First, we generally use loggers / the bb messaging commands instead of
print. Assuming that's not appropriate here for some reason, at least use
the print function, not the print command, to make the python more forward
portable. The command no longer works in future versions of python.
-- 
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 2/2] oeqa/runexported: Removed DEPLOY_DIR as mandatory.

2015-09-23 Thread Musat, George L


From: kerg...@gmail.com [mailto:kerg...@gmail.com] On Behalf Of Christopher 
Larson
Sent: Wednesday, September 23, 2015 6:12 PM
To: Musat, George L
Cc: Patches and discussions about the oe-core layer
Subject: Re: [OE-core] [PATCH 2/2] oeqa/runexported: Removed DEPLOY_DIR as 
mandatory.

Sorry, didn’t know that. Cannot use bb here because the test export system is 
outside the bitbake environment. Will send v2 of the patch with the print 
function.

On Wed, Sep 23, 2015 at 2:02 AM, Lucian Musat 
> wrote:
We don't need DEPLOY_DIR for every runtime test so there is no
need for it to be mandatory.

Signed-off-by: Lucian Musat 
>
---
 meta/lib/oeqa/runexported.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/runexported.py b/meta/lib/oeqa/runexported.py
index 96442b1..7d68965 100755
--- a/meta/lib/oeqa/runexported.py
+++ b/meta/lib/oeqa/runexported.py
@@ -112,7 +112,7 @@ def main():
 d["DEPLOY_DIR"] = options.deploy_dir
 else:
 if not os.path.isdir(d["DEPLOY_DIR"]):
-raise Exception("The path to DEPLOY_DIR does not exists: %s" % 
d["DEPLOY_DIR"])
+print "WARNING: The path to DEPLOY_DIR does not exist: %s" % 
d["DEPLOY_DIR"]

First, we generally use loggers / the bb messaging commands instead of print. 
Assuming that's not appropriate here for some reason, at least use the print 
function, not the print command, to make the python more forward portable. The 
command no longer works in future versions of python.
--
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] gcc-5.2: disable isl

2015-09-23 Thread Khem Raj
This is ok
On Sep 23, 2015 7:36 AM, "Richard Tollerton"  wrote:

> We presently don't package isl. Unfortunately, if the host is already
> using gcc-5.2 (as is presently the case on Arch Linux), configure will
> autodetect the host's libisl, and do_compile will break because the
> system isl headers aren't pulled in. In lieu of packaging isl, disable
> it for now.
>
> [YOCTO #8376]
>
> Signed-off-by: Richard Tollerton 
> ---
>  meta/recipes-devtools/gcc/gcc-5.2.inc | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/meta/recipes-devtools/gcc/gcc-5.2.inc
> b/meta/recipes-devtools/gcc/gcc-5.2.inc
> index f691f58..f6673e6 100644
> --- a/meta/recipes-devtools/gcc/gcc-5.2.inc
> +++ b/meta/recipes-devtools/gcc/gcc-5.2.inc
> @@ -98,6 +98,7 @@ EXTRA_OECONF_BASE = "\
>  --with-cloog=no \
>  --enable-checking=release \
>  --enable-cheaders=c_global \
> +--without-isl \
>  "
>
>  EXTRA_OECONF_INITIAL = "\
> @@ -109,6 +110,7 @@ EXTRA_OECONF_INITIAL = "\
>  --disable-lto \
>  --disable-plugin \
>  --enable-decimal-float=no \
> +--without-isl \
>  "
>
>  EXTRA_OECONF_append_libc-uclibc = " --disable-decimal-float "
> --
> 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] [PATCHv2 2/2] oeqa/runexported: Removed DEPLOY_DIR as mandatory.

2015-09-23 Thread Lucian Musat
We don't need DEPLOY_DIR for every runtime test so there is no
need for it to be mandatory.

Signed-off-by: Lucian Musat 
---
 meta/lib/oeqa/runexported.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/runexported.py b/meta/lib/oeqa/runexported.py
index 96442b1..4213cab 100755
--- a/meta/lib/oeqa/runexported.py
+++ b/meta/lib/oeqa/runexported.py
@@ -112,7 +112,7 @@ def main():
 d["DEPLOY_DIR"] = options.deploy_dir
 else:
 if not os.path.isdir(d["DEPLOY_DIR"]):
-raise Exception("The path to DEPLOY_DIR does not exists: %s" % 
d["DEPLOY_DIR"])
+print("WARNING: The path to DEPLOY_DIR does not exist: %s" % 
d["DEPLOY_DIR"])
 
 
 target = FakeTarget(d)
-- 
2.1.4

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


[OE-core] [PATCH] sanity.bbclass: show warning when chmod fails

2015-09-23 Thread Martin Jansa
From: Alex Franco 

* for some reason this part of:
  http://patchwork.openembedded.org/patch/102561/
  wasn't ever merged.

[YOCTO #7669]

Signed-off-by: Alex Franco 
Signed-off-by: Martin Jansa 
---
 meta/classes/sanity.bbclass | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 2eb744f..34f8618 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -839,9 +839,12 @@ def check_sanity_everybuild(status, d):
 else:
 bb.utils.mkdirhier(tmpdir)
 # Remove setuid, setgid and sticky bits from TMPDIR
-os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISUID)
-os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISGID)
-os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISVTX)
+try:
+os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISUID)
+os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISGID)
+os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISVTX)
+except OSError:
+bb.warn("Unable to chmod TMPDIR: %s" % tmpdir)
 with open(checkfile, "w") as f:
 f.write(tmpdir)
 
-- 
2.5.3

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


Re: [OE-core] [PATCH v2 1/3] devtool: second fix for running from a different directory

2015-09-23 Thread Paul Eggleton
On Wednesday 23 September 2015 08:09:37 Christopher Larson wrote:
> On Wed, Sep 23, 2015 at 3:05 AM, Paul Eggleton <
> 
> paul.eggle...@linux.intel.com> wrote:
> > -def setup_tinfoil(config_only=False):
> > 
> > +def setup_tinfoil(config_only=False, basepath=None):
> >  """Initialize tinfoil api from bitbake"""
> >  import scriptpath
> > 
> > +orig_cwd = os.path.abspath(os.curdir)
> > +if basepath:
> > +os.chdir(basepath)
> > 
> >  bitbakepath = scriptpath.add_bitbake_lib_path()
> >  
> >  if not bitbakepath:
> >  logger.error("Unable to find bitbake by searching parent
> > 
> > directory of this script or PATH")
> > 
> > @@ -108,6 +111,7 @@ def setup_tinfoil(config_only=False):
> >  tinfoil = bb.tinfoil.Tinfoil()
> >  tinfoil.prepare(config_only)
> >  tinfoil.logger.setLevel(logger.getEffectiveLevel())
> > 
> > +os.chdir(orig_cwd)
> > 
> >  return tinfoil
> 
> Just from a correctness standpoint, this will not go back to orig_cwd if an
> exception is raised. We should be using a try/finally block for things like
> this.

That is a good point yes. I can send out a v3.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [oe-commits] Ross Burton : Revert "systemd: disable problematic GCC 5.2 optimizations"

2015-09-23 Thread Martin Jansa
On Wed, Sep 23, 2015 at 09:46:27PM +, g...@git.openembedded.org wrote:
> Module: openembedded-core.git
> Branch: master-next
> Commit: e5e69130c3cf20a95bab1561716d7e54db0fe1ee
> URL:
> http://git.openembedded.org/?p=openembedded-core.git=commit;h=e5e69130c3cf20a95bab1561716d7e54db0fe1ee
> 
> Author: Ross Burton 
> Date:   Tue Sep 22 10:05:23 2015 +0100
> 
> Revert "systemd: disable problematic GCC 5.2 optimizations"

Please put at least some explanation why it was reverted.

> This reverts commit d347bd8b672fbd614a6267f640133cf399b9645f.
> 
> Signed-off-by: Richard Purdie 
> 
> ---
> 
>  meta/recipes-core/systemd/systemd_225.bb | 3 ---
>  1 file changed, 3 deletions(-)
> 
> diff --git a/meta/recipes-core/systemd/systemd_225.bb 
> b/meta/recipes-core/systemd/systemd_225.bb
> index 4a19ff4..f7d4c7d 100644
> --- a/meta/recipes-core/systemd/systemd_225.bb
> +++ b/meta/recipes-core/systemd/systemd_225.bb
> @@ -123,9 +123,6 @@ EXTRA_OECONF = " --with-rootprefix=${rootprefix} \
>  # uclibc does not have NSS
>  EXTRA_OECONF_append_libc-uclibc = " --disable-myhostname "
>  
> -# disable problematic GCC 5.2 optimizations [YOCTO #8291]
> -FULL_OPTIMIZATION += "-fno-schedule-insns -fno-schedule-insns2"
> -
>  do_configure_prepend() {
>   export NM="${HOST_PREFIX}gcc-nm"
>   export AR="${HOST_PREFIX}gcc-ar"
> 
> -- 
> ___
> Openembedded-commits mailing list
> openembedded-comm...@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-commits

-- 
Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com


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


[OE-core] [PATCH 2/3] oe.scriptutils: add logger_setup_filters

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

This function sets up the default bb.msg formatter and log filters, which by
default sends ERROR messages to stderr rather than stdout.

Signed-off-by: Christopher Larson 
---
 scripts/lib/scriptutils.py | 15 +++
 1 file changed, 15 insertions(+)

diff --git a/scripts/lib/scriptutils.py b/scripts/lib/scriptutils.py
index 3c165eb..db0394a 100644
--- a/scripts/lib/scriptutils.py
+++ b/scripts/lib/scriptutils.py
@@ -20,6 +20,7 @@ import os
 import logging
 import glob
 
+
 def logger_create(name):
 logger = logging.getLogger(name)
 loggerhandler = logging.StreamHandler()
@@ -28,6 +29,20 @@ def logger_create(name):
 logger.setLevel(logging.INFO)
 return logger
 
+
+def logger_setup_filters(logger):
+import bb.msg
+
+console = logging.StreamHandler(sys.stdout)
+errconsole = logging.StreamHandler(sys.stderr)
+bb.msg.addDefaultlogFilter(console, bb.msg.BBLogFilterStdOut)
+bb.msg.addDefaultlogFilter(errconsole, bb.msg.BBLogFilterStdErr)
+format_str = "%(levelname)s: %(message)s"
+console.setFormatter(bb.msg.BBLogFormatter(format_str))
+errconsole.setFormatter(bb.msg.BBLogFormatter(format_str))
+logger.handlers = [console, errconsole]
+
+
 def logger_setup_color(logger, color='auto'):
 from bb.msg import BBLogFormatter
 
-- 
2.2.1

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


[OE-core] [PATCH 1/3] oe.scriptutils: enable color in a more flexible way

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

Rather than recreating handlers and forcing them, iterate over the handlers
and enable color on ones we can handle. This makes it easier to handle color
properly when we introduce the bb.msg default log filters.

Signed-off-by: Christopher Larson 
---
 scripts/lib/scriptutils.py | 14 --
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/scripts/lib/scriptutils.py b/scripts/lib/scriptutils.py
index 3366882..3c165eb 100644
--- a/scripts/lib/scriptutils.py
+++ b/scripts/lib/scriptutils.py
@@ -30,12 +30,12 @@ def logger_create(name):
 
 def logger_setup_color(logger, color='auto'):
 from bb.msg import BBLogFormatter
-console = logging.StreamHandler(sys.stdout)
-formatter = BBLogFormatter("%(levelname)s: %(message)s")
-console.setFormatter(formatter)
-logger.handlers = [console]
-if color == 'always' or (color=='auto' and console.stream.isatty()):
-formatter.enable_color()
+
+for handler in logger.handlers:
+if (isinstance(handler, logging.StreamHandler) and
+isinstance(handler.formatter, BBLogFormatter)):
+if color == 'always' or (color == 'auto' and 
handler.stream.isatty()):
+handler.formatter.enable_color()
 
 
 def load_plugins(logger, plugins, pluginpath):
@@ -59,6 +59,7 @@ def load_plugins(logger, plugins, pluginpath):
 plugin.plugin_init(plugins)
 plugins.append(plugin)
 
+
 def git_convert_standalone_clone(repodir):
 """If specified directory is a git repository, ensure it's a standalone 
clone"""
 import bb.process
@@ -70,6 +71,7 @@ def git_convert_standalone_clone(repodir):
 bb.process.run('git repack -a', cwd=repodir)
 os.remove(alternatesfile)
 
+
 def fetch_uri(d, uri, destdir, srcrev=None):
 """Fetch a URI to a local directory"""
 import bb.data
-- 
2.2.1

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


[OE-core] [PATCH 3/3] recipetool, devtool: set up the logging filters

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

We want errors going to stderr, the way they do in bitbake itself.

Signed-off-by: Christopher Larson 
---
 scripts/devtool| 1 +
 scripts/recipetool | 1 +
 2 files changed, 2 insertions(+)

diff --git a/scripts/devtool b/scripts/devtool
index 87df951..5146538 100755
--- a/scripts/devtool
+++ b/scripts/devtool
@@ -241,6 +241,7 @@ def main():
 logger.debug('Using standard bitbake path %s' % bitbakepath)
 scriptpath.add_oe_lib_path()
 
+scriptutils.logger_setup_filters(logger)
 scriptutils.logger_setup_color(logger, global_args.color)
 
 if global_args.bbpath is None:
diff --git a/scripts/recipetool b/scripts/recipetool
index 87fb35e..a1fc6e6 100755
--- a/scripts/recipetool
+++ b/scripts/recipetool
@@ -72,6 +72,7 @@ def main():
 sys.exit(1)
 logger.debug('Found bitbake path: %s' % bitbakepath)
 
+scriptutils.logger_setup_filters(logger)
 scriptutils.logger_setup_color(logger, global_args.color)
 
 tinfoil = tinfoil_init(False)
-- 
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] recipetool/devtool: send errors to stderr

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

This aligns with the behavior of bitbake proper. There is a bit of code
duplication between knotty and scriptutils, but that's not new -- that was the
case before as well. We should consider moving these logger configuration
functions into bb.msg.

The following changes since commit 2ad7308ee7166641eff99f3b9fe6794de143f6bc:

  oeqa/utils/qemurunner.py: Remove duplicate message on LoggingThread start 
(2015-09-22 18:13:02 +0100)

are available in the git repository at:

  git://github.com/kergoth/openembedded-core scriptutils-log-improvements
  https://github.com/kergoth/openembedded-core/tree/scriptutils-log-improvements

Christopher Larson (3):
  oe.scriptutils: enable color in a more flexible way
  oe.scriptutils: add logger_setup_filters
  recipetool, devtool: set up the logging filters

 scripts/devtool|  1 +
 scripts/lib/scriptutils.py | 29 +++--
 scripts/recipetool |  1 +
 3 files changed, 25 insertions(+), 6 deletions(-)

-- 
2.2.1

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


[OE-core] [PATCH v2 1/1] gmp: Use __gnu_inline__ attribute in 4.2.1

2015-09-23 Thread Jussi Kukkonen
gcc 5 defaults to C11 rules about "extern inline": this breaks
any code that includes gmp.h header from gmp 4.2.1 with 'multiple
definition' errors.

disable-stdc patch is no longer required because of this.

Signed-off-by: Jussi Kukkonen 
---


Changes since v1: I was rightly reminded backporting things from
incompatible licenses would be The Most Wrong Thing. This patch
is not quite as complete (as it changes behaviour for all gcc
versions) but it is all my work and should work fine for us.

Thanks/Sorry,
  Jussi


 .../gmp-4.2.1/Use-__gnu_inline__-attribute.patch   | 36 
 .../gmp/gmp-4.2.1/disable-stdc.patch   | 39 --
 meta/recipes-support/gmp/gmp_4.2.1.bb  |  2 +-
 3 files changed, 37 insertions(+), 40 deletions(-)
 create mode 100644 
meta/recipes-support/gmp/gmp-4.2.1/Use-__gnu_inline__-attribute.patch
 delete mode 100644 meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch

diff --git 
a/meta/recipes-support/gmp/gmp-4.2.1/Use-__gnu_inline__-attribute.patch 
b/meta/recipes-support/gmp/gmp-4.2.1/Use-__gnu_inline__-attribute.patch
new file mode 100644
index 000..627d71a
--- /dev/null
+++ b/meta/recipes-support/gmp/gmp-4.2.1/Use-__gnu_inline__-attribute.patch
@@ -0,0 +1,36 @@
+From 3cb33502bafd04b8ad4ca3454fab16d5ff313297 Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen 
+Date: Tue, 22 Sep 2015 13:16:23 +0300
+Subject: [PATCH]  Use __gnu_inline__ attribute
+
+gcc5 uses C11 inline rules. This means the old "extern inline"
+semantics are not available without a special attribute.
+
+See: https://gcc.gnu.org/gcc-5/porting_to.html
+
+Upstream-Status: Inappropriate [Fixed in current versions]
+Signed-off-by: Jussi Kukkonen 
+---
+ gmp-h.in | 5 -
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/gmp-h.in b/gmp-h.in
+index eed6fe4..361dd1d 100644
+--- a/gmp-h.in
 b/gmp-h.in
+@@ -419,8 +419,11 @@ typedef __mpq_struct *mpq_ptr;
+ /* gcc has __inline__ in all modes, including strict ansi.  Give a prototype
+for an inline too, so as to correctly specify "dllimport" on windows, in
+case the function is called rather than inlined.  */
++
++/* Use __gnu_inline__ attribute: later gcc uses different "extern inline"
++   behaviour */
+ #ifdef __GNUC__
+-#define __GMP_EXTERN_INLINE  extern __inline__
++#define __GMP_EXTERN_INLINE  extern __inline__ __attribute__ 
((__gnu_inline__))
+ #define __GMP_INLINE_PROTOTYPES  1
+ #endif
+ 
+-- 
+2.1.4
+
diff --git a/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch 
b/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch
deleted file mode 100644
index 5decb1c..000
--- a/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-This patch was removed in f181c6ce8b3 when gmp 4.2.1 was mistakenly
-dropped.
-
-Upstream is not interested in patches for ancient versions.
-
-Upstream-Status: Inappropriate
-Signed-off-by: Jussi Kukkonen 
-
-# "extern inline" in traditional gcc means that the function should be 
-# inlined wherever it's seen, while in C99, "extern inline" means that i
-# the function should only be inlined where the inline definition is 
-# seen while in other places it's not inlined:
-# http://gcc.gnu.org/ml/gcc/2006-11/msg6.html
-#
-# gmp checks "--std=gnu99" to use C99 convention however it internally 
-# defines some "extern inline" functions in gmp.h, which is included
-# by mainly .c files and finally lead a flood of redefinition function
-# errors when linking objects together.
-#
-# So disable C99/ANSI detection to stick to tranditional gcc behavior
-#
-# by Kevin Tian , 2010-08-13
-#
-# (this patch is licensed under GPLv2+)
-
-diff --git a/configure.in b/configure.in
-index 450cc92..aab0b59 100644
 a/configure.in
-+++ b/configure.in
-@@ -1869,9 +1869,7 @@ AC_SUBST(DEFN_LONG_LONG_LIMB)
- 
- # The C compiler and preprocessor, put into ANSI mode if possible.
- AC_PROG_CC
--AC_PROG_CC_STDC
- AC_PROG_CPP
--GMP_H_ANSI
- 
- 
- # The C compiler on the build system, and associated tests.
diff --git a/meta/recipes-support/gmp/gmp_4.2.1.bb 
b/meta/recipes-support/gmp/gmp_4.2.1.bb
index 928c01a..bfc6a38 100644
--- a/meta/recipes-support/gmp/gmp_4.2.1.bb
+++ b/meta/recipes-support/gmp/gmp_4.2.1.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a \
 file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24 \
 
file://gmp-h.in;beginline=6;endline=21;md5=e056f74a12c3277d730dbcfb85d2ca34"
 
-SRC_URI += "file://disable-stdc.patch \
+SRC_URI += "file://Use-__gnu_inline__-attribute.patch \
 file://gmp_fix_for_automake-1.12.patch \
 "
 
-- 
2.1.4

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org

[OE-core] [PATCH] guile: cleanup buildpaths and add RDEPENDS on pkgconfig

2015-09-23 Thread jackie.huang
From: Jackie Huang 

* fix the path for "define %pkg-config-program" in guile-config
* clean the --sysroot in guile-snarf
* add RDEPENDS on pkgconfig

Signed-off-by: Jackie Huang 
---
 meta/recipes-devtools/guile/guile_2.0.11.bb | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-devtools/guile/guile_2.0.11.bb 
b/meta/recipes-devtools/guile/guile_2.0.11.bb
index a485fe3..00553b5 100644
--- a/meta/recipes-devtools/guile/guile_2.0.11.bb
+++ b/meta/recipes-devtools/guile/guile_2.0.11.bb
@@ -39,7 +39,11 @@ DEPENDS = "libunistring bdwgc gmp libtool libffi ncurses 
readline"
 # add guile-native only to the target recipe's DEPENDS
 DEPENDS_append_class-target = " guile-native libatomic-ops"
 
-RDEPENDS_${PN}_append_libc-glibc_class-target = "glibc-gconv-iso8859-1"
+# The comment of the script guile-config said it has been deprecated but we 
should
+# at least add the required dependency to make it work since we still provide 
the script.
+RDEPENDS_${PN} = "pkgconfig"
+
+RDEPENDS_${PN}_append_libc-glibc_class-target = " glibc-gconv-iso8859-1"
 
 # Workaround when DEBUG_BUILD = "1"
 CFLAGS_append_arm = " -O2"
@@ -80,6 +84,12 @@ do_install_append_class-native() {

GUILE_LOAD_COMPILED_PATH=${STAGING_LIBDIR_NATIVE}/guile/2.0/ccache
 }
 
+do_install_append_class-target() {
+   # cleanup buildpaths in scripts
+   sed -i -e 's:${STAGING_DIR_NATIVE}::' ${D}/usr/bin/guile-config
+   sed -i -e 's:${STAGING_DIR_HOST}::' ${D}/usr/bin/guile-snarf
+}
+
 SYSROOT_PREPROCESS_FUNCS = "guile_cross_config"
 
 guile_cross_config() {
-- 
2.3.5

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


[OE-core] [PATCH 2/2] oeqa/runexported: Removed DEPLOY_DIR as mandatory.

2015-09-23 Thread Lucian Musat
We don't need DEPLOY_DIR for every runtime test so there is no
need for it to be mandatory.

Signed-off-by: Lucian Musat 
---
 meta/lib/oeqa/runexported.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/runexported.py b/meta/lib/oeqa/runexported.py
index 96442b1..7d68965 100755
--- a/meta/lib/oeqa/runexported.py
+++ b/meta/lib/oeqa/runexported.py
@@ -112,7 +112,7 @@ def main():
 d["DEPLOY_DIR"] = options.deploy_dir
 else:
 if not os.path.isdir(d["DEPLOY_DIR"]):
-raise Exception("The path to DEPLOY_DIR does not exists: %s" % 
d["DEPLOY_DIR"])
+print "WARNING: The path to DEPLOY_DIR does not exist: %s" % 
d["DEPLOY_DIR"]
 
 
 target = FakeTarget(d)
-- 
2.1.4

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


[OE-core] [PATCH 1/2] oeqa/oetest: Remove bb as requirement for oetest.

2015-09-23 Thread Lucian Musat
In order for the test export runner to work oetest needs to be
separated from bitbake environment. There is no need to use bb
import here so we can use a logger instead.

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

diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py
index a6f89b6..1e10c6c 100644
--- a/meta/lib/oeqa/oetest.py
+++ b/meta/lib/oeqa/oetest.py
@@ -11,10 +11,12 @@ import os, re, mmap
 import unittest
 import inspect
 import subprocess
-import bb
+import logging
 from oeqa.utils.decorators import LogResults, gettag
 from sys import exc_info, exc_clear
 
+logger = logging.getLogger("BitBake")
+
 def getVar(obj):
 #extend form dict, if a variable didn't exists, need find it in testcase
 class VarDict(dict):
@@ -89,7 +91,7 @@ def loadTests(tc, type="runtime"):
 suite.dependencies.append(dep_suite)
 break
 else:
-bb.warn("Test %s was declared as 
@skipUnlessPassed('%s') but that test is either not defined or not active. Will 
run the test anyway." %
+logger.warning("Test %s was declared as 
@skipUnlessPassed('%s') but that test is either not defined or not active. Will 
run the test anyway." %
 (test, depends_on))
 # Use brute-force topological sort to determine ordering. Sort by
 # depth (higher depth = must run later), with original ordering to
@@ -109,10 +111,10 @@ def loadTests(tc, type="runtime"):
 def runTests(tc, type="runtime"):
 
 suite = loadTests(tc, type)
-bb.note("Test modules  %s" % tc.testslist)
+logger.info("Test modules  %s" % tc.testslist)
 if hasattr(tc, "tagexp") and tc.tagexp:
-bb.note("Filter test cases by tags: %s" % tc.tagexp)
-bb.note("Found %s tests" % suite.countTestCases())
+logger.info("Filter test cases by tags: %s" % tc.tagexp)
+logger.info("Found %s tests" % suite.countTestCases())
 runner = unittest.TextTestRunner(verbosity=2)
 result = runner.run(suite)
 
-- 
2.1.4

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


Re: [OE-core] [PATCH] hand the TEMPLATECONF local over to setup-builddir

2015-09-23 Thread Marcus Müller
Hello Lee,

wow, thanks for clearing testing this; actually, to trigger my personal
need for a patch, variant # A was used.

Cheers,
Marcus

On 22.09.2015 22:25, Lee Nipper wrote:
> On Tue, Sep 22, 2015 at 1:45 PM, Marcus Müller
> > wrote:
>
> Hello,
> > If I understand correctly it allows a user prepared $TEMPLATECONF
> > directory
> > to be used by oe-setup-builddir.
> Indeed; the point is that oe-setup-builddir was definitely meant to be
> used with a TEMPLATECONF set by the user; in bash, the TEMPLATECONF
> local variable is automatically passed on from oe-init-build-env to
> oe-setup-builddir¹, but in zsh, this doesn't work without explicitely
> declaring that should happen (which is the only thing my patch does).
>
> Best regards,
> Marcus
>
> ¹ not quite sure how; it's a local to the calling script and shouldn't
> be a local or env variable to the callee, IMHO.
>
>
>
> Hello Marcus,
>
> FWIW, I did some test cases to understand the differences.
>
> With bash 4.3.11, and the examples below,
> cases A and B will pass along TEMPLATECONF, but case C does not.
> Your patch makes case C work as well.
>
> # A:
>
> TEMPLATECONF=$HOME/my-template-dir source
> ~/openembedded-core/oe-init-build-env $HOME/my-build-dir
>
> # B:
> export TEMPLATECONF=$HOME/my-template-dir; source
> ~/openembedded-core/oe-init-build-env $HOME/my-build-dir
>
> # C:
> TEMPLATECONF=$HOME/my-template-dir; source
> ~/openembedded-core/oe-init-build-env $HOME/my-build-dir
>
>
> And with zsh 5.0.2, case B will pass along TEMPLATECONF, but cases A
> and C do not.
> Your patch makes cases A and C work as well with zsh.
>
> I did not expect case A to be different than case C for bash, but it
> apparently works differently than I thought.
>
> Best regards,
> Lee
>

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


[OE-core] [PATCH 1/1] p11-kit: configure without trust-paths

2015-09-23 Thread kai.kang
From: Kai Kang 

Configure option --with-trust-paths is only used for test scripts
trust/test-extract which is not packaged by default. If the option is
not provided, it checks 4 files on build machine. If the files don't
exist, configure fails.

Add configure option '--without-trust-paths' to fix this issue.

Signed-off-by: Kai Kang 
---
 meta/recipes-support/p11-kit/p11-kit_0.22.1.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-support/p11-kit/p11-kit_0.22.1.bb 
b/meta/recipes-support/p11-kit/p11-kit_0.22.1.bb
index 7ad9626..ee77951 100644
--- a/meta/recipes-support/p11-kit/p11-kit_0.22.1.bb
+++ b/meta/recipes-support/p11-kit/p11-kit_0.22.1.bb
@@ -10,6 +10,8 @@ SRC_URI = 
"http://p11-glue.freedesktop.org/releases/${BP}.tar.gz;
 SRC_URI[md5sum] = "4e9bea1106628ffb820bdad24a819fac"
 SRC_URI[sha256sum] = 
"ef3a339fcf6aa0e32c8c23f79ba7191e57312be2bda8b24e6d121c2670539a5c"
 
+EXTRA_OECONF = "--without-trust-paths"
+
 FILES_${PN}-dev += " \
 ${libdir}/p11-kit-proxy.so \
 ${libdir}/pkcs11/p11-kit-trust.so \
-- 
2.6.0.rc2.10.gf4d9753

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


[OE-core] [PATCH 0/1] Configure p11-kit without trust-paths

2015-09-23 Thread kai.kang
From: Kai Kang 

The following changes since commit 7b86c771c80d0759c2ca0e57c46c4c966f89c49e:

  bitbake: bitbake: bb.fetch2.git: Import errno module (2015-09-19 22:38:44 
+0100)

are available in the git repository at:

  git://git.pokylinux.org/poky-contrib kangkai/p11
  http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=kangkai/p11

Kai Kang (1):
  p11-kit: configure without trust-paths

 meta/recipes-support/p11-kit/p11-kit_0.22.1.bb | 2 ++
 1 file changed, 2 insertions(+)

-- 
2.6.0.rc2.10.gf4d9753

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


[OE-core] [PATCH] gcc-shared-source: Set empty SRC_URI

2015-09-23 Thread Richard Purdie
gcc-source is the only gcc recipe meant to handle the fetch/unpack/patch
tasks, the other gcc recipes then depend on this.

This approach has been creating some confusion for tools like the archiver.
The simplest way to signal to these processes that there is no source
is to empty SRC_URI at the same time we disable the other tasks.

Signed-off-by: Richard Purdie 

diff --git a/meta/recipes-devtools/gcc/gcc-shared-source.inc 
b/meta/recipes-devtools/gcc/gcc-shared-source.inc
index 9acffb1..aac4b49 100644
--- a/meta/recipes-devtools/gcc/gcc-shared-source.inc
+++ b/meta/recipes-devtools/gcc/gcc-shared-source.inc
@@ -5,5 +5,7 @@ do_fetch[noexec] = "1"
 deltask do_unpack
 deltask do_patch
 
+SRC_URI = ""
+
 do_configure[depends] += "gcc-source-${PV}:do_preconfigure"
 do_populate_lic[depends] += "gcc-source-${PV}:do_unpack"


-- 
___
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-23 Thread Richard Purdie
On Tue, 2015-09-22 at 10:45 +0800, Robert Yang wrote:
> Hi RP and Ross,
> 
> These patches are required by multilib's do_rootfs and do_populate_sdk,
> otherwise they are broken or partly broken. These patches don't affect
> do_rootfs or do_populate_sdk without multilib are to be installed.

Thanks for these. Patches 1-4 look ok, we can try them in -next however
I do worry about 5 and 6. Could you confirm if you tested those before
or after the recent data store changes? Its possible the OVERRIDE fixes
there may have fixed the issues 5 and 6 were trying to fix so I'd like
to confirm if they're still needed or not.

If they are, they don't look like the right solution so I'll need to
look further at the exact issue there.

Cheers,

Richard

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


Re: [OE-core] [PATCH] systemd: fix tmpfiles location when multilib in use

2015-09-23 Thread Burton, Ross
On 23 September 2015 at 22:20, Chatre, Reinette 
wrote:

> [Reinette] At the moment the rest of this recipe uses ${exec_prefix}/lib
> instead of the new ${nonarch_libdir}. I chose to use ${exec_prefix}/lib to
> remain consistent with the rest of the recipe since doing so makes it clear
> that the files being checked for matches _exactly_ (same  variable name)
> with where they are installed. If you would like to transition this recipe
> to using ${nonarch_libdir} then I think it will be more appropriate to do
> so with a different patch in addition to this one. If this is what you
> prefer to see then I can submit a new patch to do so. Even when doing so I
> would prefer to see this fix go in first so that we can do an easier
> backport of it to fido since cleanups are not appropriate there (and
> ${nonarch_libdir} does not exist there). Considering this, could you please
> reconsider taking this patch and I will submit an additional one to be
> applied afterwards to do the transition to ${nonarch_libdir}.
>

That's a good argument, agreed.

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


[OE-core] [PATCH 1/2] oeqa/runtime/parselogs.py: Fix dmesg log retrieve in sato

2015-09-23 Thread Aníbal Limón
Sato uses busybox that fails to write log using echo "" because
dmesg output can contain special characters.

[YOCTO #8377]

Signed-off-by: Aníbal Limón 
---
 meta/lib/oeqa/runtime/parselogs.py | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/meta/lib/oeqa/runtime/parselogs.py 
b/meta/lib/oeqa/runtime/parselogs.py
index e20947b..e2dd3eb 100644
--- a/meta/lib/oeqa/runtime/parselogs.py
+++ b/meta/lib/oeqa/runtime/parselogs.py
@@ -233,8 +233,7 @@ class ParseLogsTest(oeRuntimeTest):
 
 #get the output of dmesg and write it in a file. This file is added to 
log_locations.
 def write_dmesg(self):
-(status, dmesg) = self.target.run("dmesg")
-(status, dmesg2) = self.target.run("echo \""+str(dmesg)+"\" > 
/tmp/dmesg_output.log")
+(status, dmesg) = self.target.run("dmesg > /tmp/dmesg_output.log")
 
 @testcase(1059)
 @skipUnlessPassed('test_ssh')
-- 
1.9.1

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


[OE-core] [PATCH 2/2] kmod: Change SRCREV to fix return code in error path

2015-09-23 Thread Aníbal Limón
Systemd is failing trying to load kdbus [1] because kmod have
an error in return code when try to insert module [2].

This change of SRCREV is a MINOR one only include the fix
described.

[YOCTO #8377]

[1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=8377#c0
[2] http://lists.freedesktop.org/archives/systemd-devel/2015-July/033549.html

Signed-off-by: Aníbal Limón 
---
 meta/recipes-kernel/kmod/kmod.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-kernel/kmod/kmod.inc 
b/meta/recipes-kernel/kmod/kmod.inc
index e9aa67d..71ffdf8 100644
--- a/meta/recipes-kernel/kmod/kmod.inc
+++ b/meta/recipes-kernel/kmod/kmod.inc
@@ -16,7 +16,7 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
"
 inherit autotools gtk-doc
 
-SRCREV = "0d833715eaa65636dda2705b89359a1e0154dc58"
+SRCREV = "114ec87c85c35a2bd3682f9f891e494127be6fb5"
 # Lookout for PV bump too when SRCREV is changed
 PV = "21+git${SRCPV}"
 
-- 
1.9.1

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


[OE-core] [PATCH] archiver: stamp-base is dead, remove it

2015-09-23 Thread Richard Purdie
stamp-base was only ever used by the shared workdir code in gcc. This 
turned out to be problematic and has been replaced by other approaches
which don't need specialist bitbake knowledge.

stamp-base will likely get removed from bitbake but for now, remove it
from archiver to simplfy the code since gcc no longer uses it.

This stops people getting confused by the obsolete code paths which I'm
getting a lot of questions about.

Signed-off-by: Richard Purdie 

diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
index 089d707..eec8024 100644
--- a/meta/classes/archiver.bbclass
+++ b/meta/classes/archiver.bbclass
@@ -99,27 +99,6 @@ python () {
 d.appendVarFlag('do_package_write_rpm', 'depends', ' 
%s:do_ar_patched' % pn)
 elif ar_src == "configured":
 d.appendVarFlag('do_package_write_rpm', 'depends', ' 
%s:do_ar_configured' % pn)
-
-# The gcc staff uses shared source
-flag = d.getVarFlag("do_unpack", "stamp-base", True)
-if flag:
-if ar_src in [ 'original', 'patched' ]:
-ar_outdir = os.path.join(d.getVar('ARCHIVER_TOPDIR', True), 
'work-shared')
-d.setVar('ARCHIVER_OUTDIR', ar_outdir)
-d.setVarFlag('do_ar_original', 'stamp-base', flag)
-d.setVarFlag('do_ar_patched', 'stamp-base', flag)
-d.setVarFlag('do_unpack_and_patch', 'stamp-base', flag)
-d.setVarFlag('do_ar_original', 'vardepsexclude', 'PN PF 
ARCHIVER_OUTDIR WORKDIR')
-d.setVarFlag('do_unpack_and_patch', 'vardepsexclude', 'PN PF 
ARCHIVER_OUTDIR WORKDIR')
-d.setVarFlag('do_ar_patched', 'vardepsexclude', 'PN PF ARCHIVER_OUTDIR 
WORKDIR')
-d.setVarFlag('create_diff_gz', 'vardepsexclude', 'PF')
-d.setVarFlag('create_tarball', 'vardepsexclude', 'PF')
-
-flag_clean = d.getVarFlag('do_unpack', 'stamp-base-clean', True)
-if flag_clean:
-d.setVarFlag('do_ar_original', 'stamp-base-clean', flag_clean)
-d.setVarFlag('do_ar_patched', 'stamp-base-clean', flag_clean)
-d.setVarFlag('do_unpack_and_patch', 'stamp-base-clean', flag_clean)
 }
 
 # Take all the sources for a recipe and puts them in WORKDIR/archiver-work/.
@@ -179,12 +158,7 @@ python do_ar_patched() {
 ar_outdir = d.getVar('ARCHIVER_OUTDIR', True)
 bb.note('Archiving the patched source...')
 d.setVar('WORKDIR', d.getVar('ARCHIVER_WORKDIR', True))
-# The gcc staff uses shared source
-flag = d.getVarFlag('do_unpack', 'stamp-base', True)
-if flag:
-create_tarball(d, d.getVar('S', True), 'patched', ar_outdir, 'gcc')
-else:
-create_tarball(d, d.getVar('S', True), 'patched', ar_outdir)
+create_tarball(d, d.getVar('S', True), 'patched', ar_outdir)
 }
 
 python do_ar_configured() {
@@ -222,17 +196,14 @@ python do_ar_configured() {
 create_tarball(d, srcdir, 'configured', ar_outdir)
 }
 
-def create_tarball(d, srcdir, suffix, ar_outdir, pf=None):
+def create_tarball(d, srcdir, suffix, ar_outdir):
 """
 create the tarball from srcdir
 """
 import tarfile
 
 bb.utils.mkdirhier(ar_outdir)
-if pf:
-tarname = os.path.join(ar_outdir, '%s-%s.tar.gz' % (pf, suffix))
-else:
-tarname = os.path.join(ar_outdir, '%s-%s.tar.gz' % \
+tarname = os.path.join(ar_outdir, '%s-%s.tar.gz' % \
 (d.getVar('PF', True), suffix))
 
 srcdir = srcdir.rstrip('/')


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


Re: [OE-core] [PATCH] systemd: fix tmpfiles location when multilib in use

2015-09-23 Thread Chatre, Reinette

From: Burton, Ross [mailto:ross.bur...@intel.com]
Sent: Wednesday, September 23, 2015 2:08 PM
To: Chatre, Reinette
Cc: OE-core
Subject: Re: [OE-core] [PATCH] systemd: fix tmpfiles location when multilib in 
use


On 23 September 2015 at 21:49, Reinette Chatre 
> wrote:
${exec_prefix}/lib

For neatness in master there's a variable for this - ${nonarch_libdir}.  Can 
you change the patch to use that variable instead?

[Reinette] At the moment the rest of this recipe uses ${exec_prefix}/lib 
instead of the new ${nonarch_libdir}. I chose to use ${exec_prefix}/lib to 
remain consistent with the rest of the recipe since doing so makes it clear 
that the files being checked for matches _exactly_ (same  variable name) with 
where they are installed. If you would like to transition this recipe to using 
${nonarch_libdir} then I think it will be more appropriate to do so with a 
different patch in addition to this one. If this is what you prefer to see then 
I can submit a new patch to do so. Even when doing so I would prefer to see 
this fix go in first so that we can do an easier backport of it to fido since 
cleanups are not appropriate there (and ${nonarch_libdir} does not exist 
there). Considering this, could you please reconsider taking this patch and I 
will submit an additional one to be applied afterwards to do the transition to 
${nonarch_libdir}.

Thank you very much

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


Re: [OE-core] Error building gdk-pixbuf-native

2015-09-23 Thread Richard Purdie
On Tue, 2015-09-22 at 21:28 -0300, Otavio Salvador wrote:
> On Tue, Sep 22, 2015 at 8:30 PM, Khem Raj  wrote:
> >
> >> On Sep 22, 2015, at 4:28 PM, Otavio Salvador 
> >>  wrote:
> >>
> >> On Tue, Sep 22, 2015 at 8:23 PM, Khem Raj  wrote:
> >>> its normal for build to use libraries from build host for native tools. 
> >>> If we want to abstract that
> >>> from host deps then creating a dependency on package-native is the way
> >>
> >> The point is this seems to be not deterministic. Sometimes this works,
> >> others it does not.
> >
> >
> > you can debug it by moving the dependency from default task to earlier or 
> > later task and see where its failing sometimes
> > some configure might run where we do not expect it to.
> 
> I cannot reproduce it locally, just in my autobuilder and now it does
> not fail anymore. Gary is the only one seeing it.

I think the way to reproduce this is to build gdk-pixbuf-native along
with harfbuzz-native and librsvg-native, then make a small change to the
gdk-pixbuf recipe that would cause it to rebuild, clean harfbuzz-native
and then build gdk-pixbuf.

I'm going to send out a patch which at least unblocked my own builds
when I ran into this locally.

Cheers,

Richard

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


Re: [OE-core] [PATCH] sanity.bbclass: show warning when chmod fails

2015-09-23 Thread Christopher Larson
On Wed, Sep 23, 2015 at 9:13 AM, Martin Jansa 
wrote:

> From: Alex Franco 
>
> * for some reason this part of:
>   http://patchwork.openembedded.org/patch/102561/
>   wasn't ever merged.
>
> [YOCTO #7669]
>
> Signed-off-by: Alex Franco 
> Signed-off-by: Martin Jansa 
> ---
>  meta/classes/sanity.bbclass | 9 ++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
> index 2eb744f..34f8618 100644
> --- a/meta/classes/sanity.bbclass
> +++ b/meta/classes/sanity.bbclass
> @@ -839,9 +839,12 @@ def check_sanity_everybuild(status, d):
>  else:
>  bb.utils.mkdirhier(tmpdir)
>  # Remove setuid, setgid and sticky bits from TMPDIR
> -os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISUID)
> -os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISGID)
> -os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISVTX)
> +try:
> +os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISUID)
> +os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISGID)
> +os.chmod(tmpdir, os.stat(tmpdir).st_mode & ~ stat.S_ISVTX)
> +except OSError:
> +bb.warn("Unable to chmod TMPDIR: %s" % tmpdir)
>

I'd suggest showing the actual error, here. E.g. "Unable to chmod TMPDIR:
%s" % exc. (The error message from the exception usually includes the path
on disk already, so probably don't need both tmpdir and exc).
-- 
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


[OE-core] [PATCH] systemd: fix tmpfiles location when multilib in use

2015-09-23 Thread Reinette Chatre
Systemd's configuration files for creation, deletion and cleaning
of volatile and temporary files are installed in /usr/lib even when
multilib is in use (when /usr/lib64 is available). In this check the
systemd.conf file will not be found if libdir is /usr/lib64 so we fix the
path to match this file's installation path to look for it in
${exec_prefix}/lib

Signed-off-by: Reinette Chatre 
---
 meta/recipes-core/systemd/systemd_225.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/systemd/systemd_225.bb 
b/meta/recipes-core/systemd/systemd_225.bb
index 4a19ff4..be0cc45 100644
--- a/meta/recipes-core/systemd/systemd_225.bb
+++ b/meta/recipes-core/systemd/systemd_225.bb
@@ -189,8 +189,8 @@ do_install() {
sed -i -e 's/.*ForwardToSyslog.*/ForwardToSyslog=yes/' 
${D}${sysconfdir}/systemd/journald.conf
# this file is needed to exist if networkd is disabled but timesyncd is 
still in use since timesyncd checks it
# for existence else it fails
-   if [ -s ${D}${libdir}/tmpfiles.d/systemd.conf ]; then
-   ${@bb.utils.contains('PACKAGECONFIG', 'networkd', ':', 'sed -i 
-e "\$ad /run/systemd/netif/links 0755 root root -" 
${D}${libdir}/tmpfiles.d/systemd.conf', d)}
+   if [ -s ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf ]; then
+   ${@bb.utils.contains('PACKAGECONFIG', 'networkd', ':', 'sed -i 
-e "\$ad /run/systemd/netif/links 0755 root root -" 
${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf', d)}
fi
install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON 
${D}${systemd_unitdir}/systemd-sysv-install
 }
-- 
2.4.3

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


Re: [OE-core] [PATCH] systemd: fix tmpfiles location when multilib in use

2015-09-23 Thread Burton, Ross
On 23 September 2015 at 21:49, Reinette Chatre 
wrote:

> ${exec_prefix}/lib
>

For neatness in master there's a variable for this - ${nonarch_libdir}.
Can you change the patch to use that variable instead?

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


[OE-core] [PATCH] gdk-pixbuf: Avoid rebuild failures

2015-09-23 Thread Richard Purdie
If gdkpixbuf-native rebuilds and there are stale (broken) modules lying around,
it can fail to run the postinst. E.g. svg links to harfbuzz and if harfbuzz is
removed from the sysroot but the svg loader isn't, we get a symbol linking 
issue.

The reproducer is along the lines of build gdk-pixbuf-native along
with harfbuzz-native and librsvg-native, then make a small change to the
gdk-pixbuf recipe that would cause it to rebuild, clean harfbuzz-native
and then build gdk-pixbuf.

To fix this, when we install gdk-pixbuf, we wipe out any previous loaders.
The idea is that gdk would always come first and anything else installing
itself will come later and rerun the postinst if needed. We can therefore
just remove any other loaders.

Signed-off-by: Richard Purdie 

diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb 
b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb
index bdf173a..35bb192 100644
--- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb
@@ -94,3 +94,12 @@ do_install_append_class-native() {

GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders
 }
 BBCLASSEXTEND = "native"
+
+SSTATEPREINSTFUNCS_append_class-native = " gdkpixbuf_sstate_preinst"
+SYSROOT_PREPROCESS_FUNCS_append_class-native = " gdkpixbuf_sstate_preinst"
+
+gdkpixbuf_sstate_preinst() {
+   if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = 
"populate_sysroot_setscene" ]; then
+   rm -rf ${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/*
+   fi
+}


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


Re: [OE-core] [PATCH] gdk-pixbuf: Avoid rebuild failures

2015-09-23 Thread Gary Thomas

On 2015-09-23 16:32, Richard Purdie wrote:

If gdkpixbuf-native rebuilds and there are stale (broken) modules lying around,
it can fail to run the postinst. E.g. svg links to harfbuzz and if harfbuzz is
removed from the sysroot but the svg loader isn't, we get a symbol linking 
issue.

The reproducer is along the lines of build gdk-pixbuf-native along
with harfbuzz-native and librsvg-native, then make a small change to the
gdk-pixbuf recipe that would cause it to rebuild, clean harfbuzz-native
and then build gdk-pixbuf.

To fix this, when we install gdk-pixbuf, we wipe out any previous loaders.
The idea is that gdk would always come first and anything else installing
itself will come later and rerun the postinst if needed. We can therefore
just remove any other loaders.


Does the analogue of this problem exist for the non-native packages?  I've
not seen it, but it seems that it might based on your analysis.



Signed-off-by: Richard Purdie 

diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb 
b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb
index bdf173a..35bb192 100644
--- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb
@@ -94,3 +94,12 @@ do_install_append_class-native() {

GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders
  }
  BBCLASSEXTEND = "native"
+
+SSTATEPREINSTFUNCS_append_class-native = " gdkpixbuf_sstate_preinst"
+SYSROOT_PREPROCESS_FUNCS_append_class-native = " gdkpixbuf_sstate_preinst"
+
+gdkpixbuf_sstate_preinst() {
+   if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = 
"populate_sysroot_setscene" ]; then
+   rm -rf ${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/*
+   fi
+}




--

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


[OE-core] Including machine specific mesa-driver

2015-09-23 Thread Nicolas Dechesne
hi,

in the qemu reference machine we see this pattern:

XSERVER = "xserver-xorg
\

   ${@bb.utils.contains('DISTRO_FEATURES', 'opengl',
'mesa-driver-swrast', '', d)}
\


Which is what I had done for my BSP layer as well. However this doesn't
take into account non X11 based graphics config, such as when building a
wayland/weston image. The mesa-driver should be conditionally pulled when
'mesa' is pulled in.

I cannot find a satisfying way of specifying this better to take both cases
into account.

we could move

${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'mesa-driver-swrast', '',
d)}

into MACHINE_RRDEPENS, but that's not quite right, since that driver is
only needed when any of the mesa binary packages is in the image, and non
graphics image wouldnt' need that.

Since mesa produces a lot of binary packages , using RDEPENDS_xxx for all
of them doesn't seem very nice neither..

What would you recommend we do? I think we need to fix the qemu images
anyways.

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