[OE-core] [PATCH 00/45] Move recipes to use Python 3 whenever possible

2016-05-24 Thread Alexander Kanavin
This patchset updates recipes to use Python 3 whenever possible. A few items
cannot be moved at the moment for various reasons, here they are:

1) Smartpm package manager has not been ported to Python 3 and it is unlikely
to happen:
https://github.com/smartpm/smart/issues/4
We need to look into alternatives such as yum or dnf (the 'next generation' 
fork of yum).

Consequently, rpm's python bindings (required by smartpm) stay at python 2 as 
well
for now, even tough python 3 seems to be supported.

2) Scons build system is python 2 only, due to lack of resources.

3) createrepo recipe is using an upstream version from 2007, before createrepo 
was
rewritten on top of yum's python modules.

We need to look into adding yum recipe which will allow updating createrepo to 
latest upstream.
Also, libxml2 is currently a createrepo dependency, and so stays at Python 2 
for now.

4) varous recipes that haven't been ported: kconfig-frontends, mklibs, 
opkg-utils,
ltp, mc, parted, libepoxy, mesa, perf, rt-tests, webkitgtk.

5) LSB spec is implicitly requiring Python 2 (via requirement for 
'/usr/bin/python').

6) gobject introspection has been ported to Python 3 in release 1.48. I'll send 
this
update separately, as a part of normal version update patches.

7) piglit has been ported to Python 3 as well in the latest upstream releases, 
Jussi
Kukkonen should take care of it. I've added piglit's python dependencies in 
their
Python 3 versions - python3-mako and python3-numpy, so that the task should be 
a little
easier.

The following changes since commit c7e614c438706fb3ed7520b4990ebb3973366942:

  useradd: Fix infinite build loop (2016-05-23 10:33:45 +0100)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib akanavin/deprecate-python2
  
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=akanavin/deprecate-python2

Alexander Kanavin (45):
  python-native, python3-native: remove the use of exported HOST_SYS and
BUILD_SYS variables
  distutils-native-base.bbclass, distutils3-native-base.bbclass: remove
  python3-dir.bbclass: add a separate class for Python 3
  default-versions.inc: drop python-related defaults
  sip.bbclass: remove
  avahi-ui: remove support for building a python module
  bind: switch Python dependency to Python 3.x
  python-dbus: update to 1.2.4, port to python 3
  python3: manipulate all of the config*/Makefile files, not just
config/Makefile
  python3: drop 110-enable-zlib.patch
  glib: move to Python 3
  dbus-test: remove unneeded pygobject dependency
  python-pygobject: port to Python 3
  neard: do not package python test scripts
  bluez5: switch to Python 3
  connman: do not install Python test scripts
  ofono: drop the custom-made revert to Python 2 from Python 3
  packagegroup-core-full-cmdline: drop python-dbus from the list of
services
  nfs-utils: switch to Python 3
  systemd: drop python dependency for ptests
  util-linux: move to Python 3
  python-pycairo: move to Python 3
  bootchart2: move to Python 3
  gdb: move to Python 3
  git: remove Python package (to which nothing was packaged)
  qemu: remove runtime python dependency
  subversion: remove unnecessary python dependency
  swig: move to Python 3
  python-pyrex: remove unused recipe
  python-imaging: remove unused recipe
  python-docutils: move to Python 3
  cracklib: disable building the python module
  libuser: move to Python 3
  libnewt-python: move to Python 3
  gnome-doc-utils: remove recipe
  lttng-tools: move to Python 3
  lttng-ust: move to Python 3
  systemtap: move to Python 3
  libcap-ng: move to Python 3
  hwlatdetect: move to Python 3
  python3-mako: add a Python 3 recipe
  python3-nose: add a recipe
  python3: add = to -L linking option only when the path is absolute
  python-numpy: move recipe to own directory
  python3-numpy: add a recipe

 meta/classes/distutils-common-base.bbclass |2 -
 meta/classes/distutils-native-base.bbclass |3 -
 meta/classes/distutils-tools.bbclass   |4 -
 meta/classes/distutils.bbclass |4 -
 meta/classes/distutils3-base.bbclass   |3 -
 meta/classes/distutils3-native-base.bbclass|4 -
 meta/classes/distutils3.bbclass|   24 -
 meta/classes/gobject-introspection.bbclass |2 -
 meta/classes/python-dir.bbclass|6 +-
 meta/classes/python3-dir.bbclass   |5 +
 meta/classes/python3native.bbclass |4 +-
 meta/classes/sip.bbclass   |   61 -
 meta/conf/distro/include/default-versions.inc  |5 -
 meta/conf/distro/include/distro_alias.inc  |2 -
 meta/conf/distro/include/security_flags.inc|1 -
 meta/recipes-connectivity/avahi/avahi-ui_0.6.32.bb |   11 +-
 meta/recipes-connectivity/bind/bind_9.10.3-P3.bb   |4 +-
 meta/recipes-connectivity/bluez5/bluez5.inc|6 +-
 meta/recipes-connectivity/connman/connman.inc

[OE-core] [PATCH 01/45] python-native, python3-native: remove the use of exported HOST_SYS and BUILD_SYS variables

2016-05-24 Thread Alexander Kanavin
The code that utilized them was superseded by the code (in the same patch!)
that is utilizing STAGING_LIBDIR/STAGING_INCDIR, and wasn't correct in the
first place as HOST_SYS is not necessarily the same as the sysroot directory
name.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/distutils-tools.bbclass   |  4 --
 meta/classes/distutils.bbclass |  4 --
 meta/classes/distutils3.bbclass| 24 
 meta/classes/gobject-introspection.bbclass |  2 -
 meta/recipes-core/libxml/libxml2_2.9.3.bb  |  2 -
 meta/recipes-devtools/gdb/gdb-cross.inc|  2 -
 meta/recipes-devtools/python/python-dbus_1.2.0.bb  |  3 -
 ...2-distutils-prefix-is-inside-staging-area.patch | 65 --
 .../python/python-native_2.7.11.bb |  4 +-
 .../recipes-devtools/python/python-numpy_1.10.4.bb |  1 -
 .../python/python-pycairo_1.10.0.bb|  2 +-
 ...et-the-prefix-to-be-inside-staging-direct.patch | 51 +
 .../python/python3-native_3.5.1.bb |  2 -
 ...2-distutils-prefix-is-inside-staging-area.patch | 49 +++-
 meta/recipes-devtools/python/python3_3.5.1.bb  |  4 --
 meta/recipes-devtools/python/python_2.7.11.bb  |  3 -
 meta/recipes-extended/newt/libnewt_0.52.18.bb  |  3 -
 .../gobject-introspection_1.46.0.bb|  2 -
 meta/recipes-kernel/perf/perf.bb   |  2 -
 19 files changed, 62 insertions(+), 167 deletions(-)
 delete mode 100644 
meta/recipes-devtools/python/python-native/12-distutils-prefix-is-inside-staging-area.patch
 create mode 100644 
meta/recipes-devtools/python/python/0001-distutils-set-the-prefix-to-be-inside-staging-direct.patch

diff --git a/meta/classes/distutils-tools.bbclass 
b/meta/classes/distutils-tools.bbclass
index 8d9b3f7..3ef9cc5 100644
--- a/meta/classes/distutils-tools.bbclass
+++ b/meta/classes/distutils-tools.bbclass
@@ -8,14 +8,12 @@ DISTUTILS_INSTALL_ARGS ?= "--prefix=${D}/${prefix} \
 distutils_do_compile() {
  STAGING_INCDIR=${STAGING_INCDIR} \
  STAGING_LIBDIR=${STAGING_LIBDIR} \
- BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
  ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py 
build ${DISTUTILS_BUILD_ARGS} || \
  bbfatal_log "${PYTHON_PN} setup.py build_ext execution failed."
 }
 
 distutils_stage_headers() {
 install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
-BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py 
install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \
 bbfatal_log "${PYTHON_PN} setup.py install_headers execution failed."
 }
@@ -25,7 +23,6 @@ distutils_stage_all() {
 STAGING_LIBDIR=${STAGING_LIBDIR} \
 install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
 PYTHONPATH=${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} \
-BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py 
install ${DISTUTILS_STAGE_ALL_ARGS} || \
 bbfatal_log "${PYTHON_PN} setup.py install (stage) execution failed."
 }
@@ -37,7 +34,6 @@ distutils_do_install() {
 STAGING_INCDIR=${STAGING_INCDIR} \
 STAGING_LIBDIR=${STAGING_LIBDIR} \
 PYTHONPATH=${D}/${PYTHON_SITEPACKAGES_DIR} \
-BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py 
install --install-lib=${D}/${PYTHON_SITEPACKAGES_DIR} ${DISTUTILS_INSTALL_ARGS} 
|| \
 bbfatal_log "${PYTHON_PN} setup.py install execution failed."
 
diff --git a/meta/classes/distutils.bbclass b/meta/classes/distutils.bbclass
index da48a2e..857572d 100644
--- a/meta/classes/distutils.bbclass
+++ b/meta/classes/distutils.bbclass
@@ -10,14 +10,12 @@ DISTUTILS_INSTALL_ARGS ?= "--prefix=${D}/${prefix} \
 distutils_do_compile() {
  STAGING_INCDIR=${STAGING_INCDIR} \
  STAGING_LIBDIR=${STAGING_LIBDIR} \
- BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
  ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py 
build ${DISTUTILS_BUILD_ARGS} || \
  bbfatal_log "${PYTHON_PN} setup.py build execution failed."
 }
 
 distutils_stage_headers() {
 install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
-BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py 
install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \
 bbfatal_log "${PYTHON_PN} setup.py install_headers execution failed."
 }
@@ -27,7 +25,6 @@ distutils_stage_all() {
 STAGING_LIBDIR=${STAGING_LIBDIR} \
 install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
 PYTHONPATH=${STAGING_DIR_HOST}${PY

[OE-core] [PATCH 05/45] sip.bbclass: remove

2016-05-24 Thread Alexander Kanavin
Nothing is requiring it in oe-core or meta-oe.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/sip.bbclass | 61 
 1 file changed, 61 deletions(-)
 delete mode 100644 meta/classes/sip.bbclass

diff --git a/meta/classes/sip.bbclass b/meta/classes/sip.bbclass
deleted file mode 100644
index 6ed2a13..000
--- a/meta/classes/sip.bbclass
+++ /dev/null
@@ -1,61 +0,0 @@
-# Build Class for Sip based Python Bindings
-# (C) Michael 'Mickey' Lauer <mic...@vanille.de>
-#
-STAGING_SIPDIR ?= "${STAGING_DATADIR_NATIVE}/sip"
-
-DEPENDS  =+ "sip-native"
-RDEPENDS_${PN} += "python-sip"
-
-# default stuff, do not uncomment
-# EXTRA_SIPTAGS = "-tWS_X11 -tQt_4_3_0"
-
-# do_generate is before do_configure so ensure that sip_native is populated in 
sysroot before executing it
-do_generate[depends] += "sip-native:do_populate_sysroot"
-
-sip_do_generate() {
-   if [ -z "${SIP_MODULES}" ]; then 
-   MODULES="`ls sip/*mod.sip`"
-   else
-   MODULES="${SIP_MODULES}"
-   fi
-
-   if [ -z "$MODULES" ]; then
-   die "SIP_MODULES not set and no modules found in $PWD"
-else
-   bbnote "using modules '${SIP_MODULES}' and tags 
'${EXTRA_SIPTAGS}'"
-   fi
-
-   if [ -z "${EXTRA_SIPTAGS}" ]; then
-   die "EXTRA_SIPTAGS needs to be set!"
-   else
-   SIPTAGS="${EXTRA_SIPTAGS}"
-   fi
-
-   if [ ! -z "${SIP_FEATURES}" ]; then
-   FEATURES="-z ${SIP_FEATURES}"
-   bbnote "sip feature file: ${SIP_FEATURES}"
-   fi
-
-   for module in $MODULES
-   do
-   install -d ${module}/
-   echo "calling 'sip4 -I sip -I ${STAGING_SIPDIR} ${SIPTAGS} 
${FEATURES} -c ${module} -b ${module}/${module}.pro.in 
sip/${module}/${module}mod.sip'"
-   sip4 -I ${STAGING_SIPDIR} -I sip ${SIPTAGS} ${FEATURES} -c 
${module} -b ${module}/${module}.sbf \
-   sip/${module}/${module}mod.sip || die "Error calling 
sip on ${module}"
-   sed -e 's,target,TARGET,' -e 's,sources,SOURCES,' -e 
's,headers,HEADERS,' \
-   ${module}/${module}.sbf | sed s,"moc_HEADERS 
=","HEADERS +=", \
-   >${module}/${module}.pro
-   echo "TEMPLATE=lib" >>${module}/${module}.pro
-   [ "${module}" = "qt" ]  && echo ""  
>>${module}/${module}.pro
-   [ "${module}" = "qtcanvas" ]&& echo ""  
>>${module}/${module}.pro
-   [ "${module}" = "qttable" ] && echo ""  
>>${module}/${module}.pro
-   [ "${module}" = "qwt" ] && echo ""  
>>${module}/${module}.pro
-   [ "${module}" = "qtpe" ]&& echo ""  
>>${module}/${module}.pro
-   [ "${module}" = "qtpe" ]&& echo "LIBS+=-lqpe"   
>>${module}/${module}.pro
-   true
-   done
-}
-
-EXPORT_FUNCTIONS do_generate
-
-addtask generate after do_unpack do_patch before do_configure
-- 
2.8.1

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


[OE-core] [PATCH 07/45] bind: switch Python dependency to Python 3.x

2016-05-24 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-connectivity/bind/bind_9.10.3-P3.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-connectivity/bind/bind_9.10.3-P3.bb 
b/meta/recipes-connectivity/bind/bind_9.10.3-P3.bb
index 1e3a20f..a99f0dd 100644
--- a/meta/recipes-connectivity/bind/bind_9.10.3-P3.bb
+++ b/meta/recipes-connectivity/bind/bind_9.10.3-P3.bb
@@ -56,7 +56,7 @@ SYSTEMD_SERVICE_${PN} = "named.service"
 
 PARALLEL_MAKE = ""
 
-RDEPENDS_${PN} = "python-core"
+RDEPENDS_${PN} = "python3-core"
 RDEPENDS_${PN}-dev = ""
 
 PACKAGE_BEFORE_PN += "${PN}-utils"
@@ -81,7 +81,7 @@ do_install_append() {
install -d "${D}${sysconfdir}/init.d"
install -m 644 ${S}/conf/* "${D}${sysconfdir}/bind/"
install -m 755 "${S}/init.d" "${D}${sysconfdir}/init.d/bind"
-   sed -i -e '1s,#!.*python,#! /usr/bin/env python,' 
${D}${sbindir}/dnssec-coverage ${D}${sbindir}/dnssec-checkds
+   sed -i -e '1s,#!.*python,#! /usr/bin/python3,' 
${D}${sbindir}/dnssec-coverage ${D}${sbindir}/dnssec-checkds
 
# Install systemd related files
install -d ${D}${sbindir}
-- 
2.8.1

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


[OE-core] [PATCH 34/45] libnewt-python: move to Python 3

2016-05-24 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-extended/newt/libnewt-python_0.52.18.bb | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-extended/newt/libnewt-python_0.52.18.bb 
b/meta/recipes-extended/newt/libnewt-python_0.52.18.bb
index ba04757..20369ef 100644
--- a/meta/recipes-extended/newt/libnewt-python_0.52.18.bb
+++ b/meta/recipes-extended/newt/libnewt-python_0.52.18.bb
@@ -1,10 +1,10 @@
 require recipes-extended/newt/libnewt_${PV}.bb
 
 SUMMARY .= " - python"
-DEPENDS = "libnewt python"
-RDEPENDS_${PN} += "python-core"
+DEPENDS = "libnewt python3"
+RDEPENDS_${PN} += "python3-core"
 
-inherit pythonnative python-dir
+inherit python3native python3-dir
 
 EXTRA_OECONF += "--with-python"
 EXTRA_OEMAKE += "PYTHONVERS=${PYTHON_DIR}"
-- 
2.8.1

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


[OE-core] [PATCH 43/45] python3: add = to -L linking option only when the path is absolute

2016-05-24 Thread Alexander Kanavin
Previously it was added also when the path was relative and not
prefixed with ./, which was causing issues with building numpy.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-devtools/python/python3/unixccompiler.patch | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-devtools/python/python3/unixccompiler.patch 
b/meta/recipes-devtools/python/python3/unixccompiler.patch
index 7b90f13..3e2b1d1 100644
--- a/meta/recipes-devtools/python/python3/unixccompiler.patch
+++ b/meta/recipes-devtools/python/python3/unixccompiler.patch
@@ -18,9 +18,9 @@ Index: Python-3.3.2/Lib/distutils/unixccompiler.py
  
  def library_dir_option(self, dir):
 -return "-L" + dir
-+if dir.startswith("."):
-+return "-L" + dir
-+return "-L=" + dir
++if dir.startswith("/"):
++return "-L=" + dir
++return "-L" + dir
  
  def _is_gcc(self, compiler_name):
  return "gcc" in compiler_name or "g++" in compiler_name
-- 
2.8.1

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


Re: [OE-core] [PATCH 1/3] ofono: update to 1.18

2016-05-16 Thread Alexander Kanavin

On 05/16/2016 02:54 PM, Maxin B. John wrote:


Maxin can cherry-pick one of my patches, or just postpone the version update
until the py3 patchset is merged:

https://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=akanavin/deprecate-python2=6f7eac37a25f1ab55a28cac7b15674dcd6962404


I have tried this patch before sending the upgrades and had to abandon the
attempt because of the newly introduced dependency on python3-pygobject.

Guess the best way forward will be to wait till py3 patchset is merged :)


That's right; oe-core will move python-pygobject to python 3, all 
dependent oe-core recipes will be moved to use that, and original 
py2-based python-pygobject will be added to meta-oe to avoid breakage in 
3rd party layers (and it needs fixing because it installs same files in 
same locations as py3 based version).


The whole thing snowballs pretty quickly, and I'm not even attempting to 
move meta-oe to python 3.


Alex

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


Re: [OE-core] [PATCH 1/3] ofono: update to 1.18

2016-05-16 Thread Alexander Kanavin

On 05/14/2016 09:23 AM, Richard Purdie wrote:

On Thu, 2016-05-12 at 16:16 +0300, Maxin B. John wrote:

1.17 -> 1.18

Signed-off-by: Maxin B. John 


This results in:

http://errors.yoctoproject.org/Errors/Details/62886/

which Alexander would probably be quite pleased about but isn't good
for the autobuilder.


Maxin can cherry-pick one of my patches, or just postpone the version 
update until the py3 patchset is merged:


https://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=akanavin/deprecate-python2=6f7eac37a25f1ab55a28cac7b15674dcd6962404

Alex

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


Re: [OE-core] [PATCH] arch-powerpc64.inc: disable the use of qemu usermode on ppc64

2016-05-03 Thread Alexander Kanavin

On 05/02/2016 06:46 PM, Khem Raj wrote:


should we replace qemu-ppc with qemu-ppc64 instead of disabling it


qemu-ppc64 is already used on 64 bit powerpc, the problem is that it always 
crashes.


Do we need to adjust the emulated machine parameter ?


I don't see how. The CPU list produced by 'qemu-ppc64 -cpu help' does 
not include anything that resembles e5500/6500 or Power5/6/7 (the 64 bit 
ppc chips that oe-core has definitions for), and I'm not a powerpc 
expert by any measure, so I can't investigate the problem any further. 
It needs to be looked at by someone who is actually working with that 
hardware.


The best we can do now is disable use of qemu, so that builds that 
target ppc64 don't fail.


Alex

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


Re: [OE-core] [master][krogoth][PATCH 1/2] qemu: Security fix CVE-2016-2857

2016-05-04 Thread Alexander Kanavin

On 05/04/2016 12:52 PM, Joshua G Lock wrote:

I've been seeing:

"qemu: uncaught target signal 11 (Segmentation fault) - core dumped"

when trying to build gobject-introspection for qemux86 recently and
narrowed it down to this change, if I revert this patch the use of
qemu-native by gobject-introspection no longer causes a segmentation
fault.

Are we missing some related patches for this CVE fix? I haven't dug
into the details, but noticed that Fedora's CVE-2016-2857 diffstat[1]
is much larger than ours[2].


Also this patch is included in qemu 2.5.1 release that happened several 
weeks ago, so maybe we should update master to that instead.


Also 2.6.0 will appear any day now.


Alex

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


Re: [OE-core] [master][krogoth][PATCH 1/2] qemu: Security fix CVE-2016-2857

2016-05-06 Thread Alexander Kanavin

On 05/06/2016 06:47 PM, akuster808 wrote:


I can not reproduce this issue. I have used two different build systems.
I have another I will try.

so the testcase be?

1) bitbake core-image-sato
2) runqemu qemux86


3) verify that you have a bunch of .gir and .typelib files on that image 
(or in target sysroot)



Alex

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


[OE-core] [PATCH] gobject-introspection.bbclass: disable introspection for -native recipes

2016-05-02 Thread Alexander Kanavin
It is not necessary for native, adds to the build time, and pulls
in the unneeded qemu-native dependency.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/gobject-introspection.bbclass | 12 ++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/meta/classes/gobject-introspection.bbclass 
b/meta/classes/gobject-introspection.bbclass
index 2d73e40..d320b5b 100644
--- a/meta/classes/gobject-introspection.bbclass
+++ b/meta/classes/gobject-introspection.bbclass
@@ -3,13 +3,21 @@
 # This sets up autoconf-based recipes to build introspection data (or not),
 # depending on distro and machine features (see gobject-introspection-data 
class).
 inherit gobject-introspection-data
-EXTRA_OECONF_prepend = "${@bb.utils.contains('GI_DATA_ENABLED', 'True', 
'--enable-introspection', '--disable-introspection', d)} "
+EXTRA_OECONF_prepend_class-target = "${@bb.utils.contains('GI_DATA_ENABLED', 
'True', '--enable-introspection', '--disable-introspection', d)} "
+
+# When building native recipes, disable introspection, as it is not necessary,
+# pulls in additional dependencies, and makes build times longer
+EXTRA_OECONF_prepend_class-native = "--disable-introspection "
 
 UNKNOWN_CONFIGURE_WHITELIST_append = " --enable-introspection 
--disable-introspection"
 
 # Generating introspection data depends on a combination of native and target
 # introspection tools, and qemu to run the target tools.
-DEPENDS_append = " gobject-introspection gobject-introspection-native 
qemu-native"
+DEPENDS_append_class-target = " gobject-introspection 
gobject-introspection-native qemu-native"
+
+# Even though introspection is disable on -native, gobject-introspection 
package is still
+# needed for m4 macros.
+DEPENDS_append_class-native = " gobject-introspection-native"
 
 # This is necessary for python scripts to succeed - distutils fails if these
 # are not set
-- 
2.8.1

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


Re: [OE-core] [PATCH] arch-powerpc64.inc: disable the use of qemu usermode on ppc64

2016-05-02 Thread Alexander Kanavin

On 04/29/2016 11:34 PM, Khem Raj wrote:

should we replace qemu-ppc with qemu-ppc64 instead of disabling it


qemu-ppc64 is already used on 64 bit powerpc, the problem is that it 
always crashes.


Alex

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


Re: [OE-core] moving OpenEmbedded-core to Python 3

2016-05-02 Thread Alexander Kanavin

On 04/29/2016 11:43 PM, Khem Raj wrote:


Can you clarify the scope, are you addressing the case where target
images would prefer python3
and you are making sure that packages that use python on target are
ready for using it.


There is no way to set a 'preference' for Python 3. Either version of 
Python is pulled into images either through dependencies, or explicit 
inclusion into some package list.


I'm going to move recipes that are dependent on Python 2 to Python 3, 
whenever possible. I'm not porting the upstream code from Python 2 from 
Python 3, just configuring the recipes to use Python 3, when the Python 
code in them has already been ported.



bitbake itself is a separate task but then we do write scriptlets that
are executed as part of
build, are you addressing those too ?


Not sure what you mean here exactly, but if the scriptlets are executed 
by bitbake, then I'm not addressing that.



Thirdly, there is general pythonic code in metadata meant to control
build policies


Again, can you provide an example?


Which of these are you addressing specifically.


Please start using the question mark (?), so I can see more easily what 
is a question when responding.


Thanks,
Alex

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


[OE-core] [PATCH] git: update to 2.7.4

2016-04-19 Thread Alexander Kanavin
This should also fix recent CVEs:
https://ma.ttias.be/remote-code-execution-git-versions-client-server-2-7-1-cve-2016-2324-cve-2016-2315/

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-devtools/git/git_2.7.2.bb | 11 ---
 meta/recipes-devtools/git/git_2.7.4.bb | 11 +++
 2 files changed, 11 insertions(+), 11 deletions(-)
 delete mode 100644 meta/recipes-devtools/git/git_2.7.2.bb
 create mode 100644 meta/recipes-devtools/git/git_2.7.4.bb

diff --git a/meta/recipes-devtools/git/git_2.7.2.bb 
b/meta/recipes-devtools/git/git_2.7.2.bb
deleted file mode 100644
index 3fd7151..000
--- a/meta/recipes-devtools/git/git_2.7.2.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require git.inc
-
-EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
- 
ac_cv_fread_reads_directories=${ac_cv_fread_reads_directories=yes} \
- "
-EXTRA_OEMAKE += "NO_GETTEXT=1"
-
-SRC_URI[tarball.md5sum] = "162ddc6c9b243899ad67ebd6b1c166b1"
-SRC_URI[tarball.sha256sum] = 
"58959e3ef3046403216a157dfc683c4d7f0dd83365463b8dd87063ded940a0df"
-SRC_URI[manpages.md5sum] = "7bb067d6363f537b92c3b8b813ff9ed6"
-SRC_URI[manpages.sha256sum] = 
"e6b5481fd6e24a1d1b155ef17363b313d47025bf6da880737fa872ab78e24f15"
diff --git a/meta/recipes-devtools/git/git_2.7.4.bb 
b/meta/recipes-devtools/git/git_2.7.4.bb
new file mode 100644
index 000..bc72793
--- /dev/null
+++ b/meta/recipes-devtools/git/git_2.7.4.bb
@@ -0,0 +1,11 @@
+require git.inc
+
+EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
+ 
ac_cv_fread_reads_directories=${ac_cv_fread_reads_directories=yes} \
+ "
+EXTRA_OEMAKE += "NO_GETTEXT=1"
+
+SRC_URI[tarball.md5sum] = "c64012d491e24c7d65cd389f75383d91"
+SRC_URI[tarball.sha256sum] = 
"7104c4f5d948a75b499a954524cb281fe30c6649d8abe20982936f75ec1f275b"
+SRC_URI[manpages.md5sum] = "58020dc13a5801c49f7986fef7027535"
+SRC_URI[manpages.sha256sum] = 
"0dfe1931ad302873470e0280248e3aa50502b5edd00dcc3e9c9173667b6fea6a"
-- 
2.8.0.rc3

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


Re: [OE-core] [PATCH 09/45] python3: manipulate all of the config*/Makefile files, not just config/Makefile

2016-05-25 Thread alexander . kanavin
>>  install -m 0644 Makefile.sysroot
>> ${D}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile
>> +install -m 0644 Makefile.sysroot
>> ${D}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}m/Makefile
>
> Shouldn't it use "PYTHON_ABI" variable instead of "m"?

Thanks, I fixed it in the repo (will push a bit later).

Alex

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


Re: [OE-core] [PATCH 0/6] remove unneeded python2 recipes

2016-05-25 Thread alexander . kanavin
> * Robert Yang  [160524 05:25]:
>
>> They were required by buildtools-tarball, now replaced by python3 ones.
>
> Do you plan to add those recipes to meta-python?
>
> I think quite a few of them are usefull for quite some situations.

Oe-core does provide Python 3 versions of these recipes. Does meta-python
really need to add more Python 2 stuff which may not be actually used by
anyone? Maybe it's time to draw the line?

Alex

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


Re: [OE-core] [PATCH 00/45] Move recipes to use Python 3 whenever possible

2016-05-25 Thread alexander . kanavin
>> Please create one (or three) defects and assign them to me for smartpm,
>> createrepo, and rpm python3 support.  (I doubt I'll be the one doing the
>> work,
>> but I'll do my best to find someone to do the work.)
>
> Yes, I'll do that now.

Filed at https://bugzilla.yoctoproject.org/show_bug.cgi?id=9675

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


Re: [OE-core] [PATCH 00/45] Move recipes to use Python 3 whenever possible

2016-05-25 Thread alexander . kanavin
>> Consequently, rpm's python bindings (required by smartpm) stay at python
>> 2 as well
>> for now, even tough python 3 seems to be supported.
>
> Is there a porting guide or similar that can used to help identify what
> types of
> changes are needed.  I am not at all familiar with what python 3 needs
> specifically, but I do expect we will need to port these items.

Of course, there's a ton of such guides on the net. Here's the official one:
https://docs.python.org/3/howto/pyporting.html

> The yum version of createrepo will not work.  We need to port forward the
> component as appropriate -- or modify smartpm to use a newer version --
> assuming
> we can add missing pieces, as necessary.  (key is smartpm and createrepo
> need to
> be kept in sync.)

Can you say why it won't work, specifically, if we also replace smartpm
with yum or dnf at the same time? The only alternative I see is that we
have to fork the old version of createrepo and the abandoned upstream of
smartpm, port them to Python 3, and maintain them going forward - not a
light undertaking.

> Please create one (or three) defects and assign them to me for smartpm,
> createrepo, and rpm python3 support.  (I doubt I'll be the one doing the
> work,
> but I'll do my best to find someone to do the work.)

Yes, I'll do that now.

>> 5) LSB spec is implicitly requiring Python 2 (via requirement for
>> '/usr/bin/python').
>
> I expect the LSB will require python 2 for a while.  So we will need to
> continue
> to ensure that python 2 works, as well as python3.

Of course, Python 2 will be supported by upstream at least until 2020, and
so it'll be provided by oe-core at least until then. 2.7.12 should appear
soon.

Alex

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


Re: [OE-core] [PATCH 05/45] sip.bbclass: remove

2016-05-25 Thread alexander . kanavin
> The pyqt recipe in meta-qt4 uses sip.

It's using the sip recipe, but not the sip class. I don't see anything in
meta-qt4 that is using the class, do you?


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


Re: [OE-core] sip.bbclass?

2016-05-25 Thread alexander . kanavin
> Nothing in OE-Core uses extrenalsrc directly but we'd still want
> something like that in the core so I don't think the rule is absolute.
> What we wouldn't want to see is multiple layers maintaining different
> and potentially incompatible versions of a class file.
>
> That said, I think there are a few that we probably could clean up.

As for sip.bblclass, nothing is using it in oe-core or meta-oe. So I just
removed it as a part of oe-core py3 patchset, because it's doing some
python 2 based magic, and I can't figure out what exactly without any
recipes to test with.

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


Re: [OE-core] [PATCH 28/45] swig: move to Python 3

2016-05-25 Thread alexander . kanavin
> I'm trying to get my head around how this change will impact python2
> based programs that use swig, such as gnuradio.
>
> Does this mean all programs that use swig will need to move to python3
> now?

Probably. At least nothing in meta-oe or oe-core was impacted by this, as
far as I see, but if GNU radio isn't building properly anymore, then
copy-paste the error, and we'll work out a solution.

Alex

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


Re: [OE-core] [PATCH 6/7] gnupg.org-hosted recipes: Change SRC_URI to https site

2016-05-25 Thread alexander . kanavin
> Change gnutls to use GNUPG_MIRROR as well: they have their own domain
> but the ftp site is the slow, unreliable gnupg.org one.

Doesn't work for gnutls I'm afraid:

https://www.gnupg.org/ftp/gcrypt/gnutls/v3.4/

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


Re: [OE-core] [PATCH 1/5] python-six: Add to oe-core

2016-07-12 Thread Alexander Kanavin

On 07/12/2016 01:38 PM, Jussi Kukkonen wrote:

Interestingly  python-cryptography does not have six in "setup_requires"
so I still don't understand why it would do this. I'll do a few tests on
that before sending the updated patch set.


Maybe it simply used to have that in the past, and no longer does.


Alex

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


Re: [OE-core] [PATCH] security_flags.inc: libidn fails to build w/ -Wformat-security

2016-06-27 Thread Alexander Kanavin

On 06/27/2016 12:10 PM, Burton, Ross wrote:

../../libidn-1.32/src/idn.c: In function 'main':
../../libidn-1.32/src/idn.c:172:7: error: format not a string
literal and no format arguments [-Werror=format-security]
   error (0, 0, _("only one of -s, -e, -d, -a, -u or -n can be
specified"));


As libidn will be dealing with data from the network it seems like the
sort of package that should be built with format-security enabled.
Wouldn't it be better to fix up the calls to error() instead?


Also, in general the point of adding this check was that we try to fix 
the problems in the code. Adding packages to the list of exceptions is 
missing the point :)


Please write a patch - I'd say we should accept new exceptions only if 
fixing the code is shown to be too difficult.



Alex

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


Re: [OE-core] [PATCH 0/4] musl/glibc/binutils updates

2016-07-08 Thread Alexander Kanavin

On 07/08/2016 05:07 PM, Khem Raj wrote:

Fix gcc5 hang in SDK with -mmusl
Update musl to 1.1.15 release
Update binutils to 2.26.1
Update glibc to latest on 2.24 freeze tree



What about uclibc? It should be updated as well.


I do not test it regularly. If there are users who want it we can continue


Maybe we should reassign the recipes to André Draszik then?

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


Re: [OE-core] [PATCH 0/4] musl/glibc/binutils updates

2016-07-08 Thread Alexander Kanavin

On 07/07/2016 09:08 PM, Khem Raj wrote:

Fix gcc5 hang in SDK with -mmusl
Update musl to 1.1.15 release
Update binutils to 2.26.1
Update glibc to latest on 2.24 freeze tree


What about uclibc? It should be updated as well.

Alex

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


Re: [OE-core] [PATCH 1/5] python-six: Add to oe-core

2016-07-11 Thread Alexander Kanavin

On 07/11/2016 02:46 PM, Jussi Kukkonen wrote:


Not sure where a URL like that comes from or why it would be accessed
during build? Li Xin, any comment?


A few recipes in meta-oe have this issue, for example python-mccabe:

DEBUG: Executing shell function do_compile
Download error on https://pypi.python.org/simple/pytest-runner/: [Errno 
110] Connection timed out -- Some packages may not be found!

Couldn't find index page for 'pytest-runner' (maybe misspelled?)
Download error on https://pypi.python.org/simple/: [Errno 110] 
Connection timed out -- Some packages may not be found!

No local packages or download links found for pytest-runner
Traceback (most recent call last):
  File "setup.py", line 57, in 
'Topic :: Software Development :: Quality Assurance',
  File 
"/home/ak/development/poky/build-meta-openembedded/tmp/sysroots/x86_64-linux/usr/lib/python2.7/distutils/core.py", 
line 111, in setup

_setup_distribution = dist = klass(attrs)
  File 
"/home/ak/development/poky/build-meta-openembedded/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/setuptools-22.0.5-py2.7.egg/setuptools/dist.py", 
line 269, in __init__
  File 
"/home/ak/development/poky/build-meta-openembedded/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/setuptools-22.0.5-py2.7.egg/setuptools/dist.py", 
line 313, in fetch_build_eggs
  File 
"/home/ak/development/poky/build-meta-openembedded/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/setuptools-22.0.5-py2.7.egg/pkg_resources/__init__.py", 
line 826, in resolve
  File 
"/home/ak/development/poky/build-meta-openembedded/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/setuptools-22.0.5-py2.7.egg/pkg_resources/__init__.py", 
line 1092, in best_match
  File 
"/home/ak/development/poky/build-meta-openembedded/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/setuptools-22.0.5-py2.7.egg/pkg_resources/__init__.py", 
line 1104, in obtain
  File 
"/home/ak/development/poky/build-meta-openembedded/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/setuptools-22.0.5-py2.7.egg/setuptools/dist.py", 
line 380, in fetch_build_egg
  File 
"/home/ak/development/poky/build-meta-openembedded/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/setuptools-22.0.5-py2.7.egg/setuptools/command/easy_install.py", 
line 659, in easy_install
distutils.errors.DistutilsError: Could not find suitable distribution 
for Requirement.parse('pytest-runner')

WARNING: exit code 1 from a shell command.
ERROR: Function failed: do_compile (log file is located at 
/home/ak/development/poky/build-meta-openembedded/tmp/work/i586-poky-linux/python-mccabe/0.4.0-r0/temp/log.do_compile.3493)



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


[OE-core] [PATCH 1/8] security_flags.inc: enable PIE for a few recipes

2016-07-11 Thread Alexander Kanavin
They used to fail with PIE enabled, but no longer do.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/conf/distro/include/security_flags.inc | 13 -
 1 file changed, 13 deletions(-)

diff --git a/meta/conf/distro/include/security_flags.inc 
b/meta/conf/distro/include/security_flags.inc
index a7be185..67a7959 100644
--- a/meta/conf/distro/include/security_flags.inc
+++ b/meta/conf/distro/include/security_flags.inc
@@ -29,7 +29,6 @@ SECURITY_CFLAGS_pn-libmatchbox_powerpc = ""
 SECURITY_CFLAGS_pn-lttng-tools_arm = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-aspell = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-beecrypt = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-blktrace = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-coreutils = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-cups = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-db = "${SECURITY_NO_PIE_CFLAGS}"
@@ -40,7 +39,6 @@ SECURITY_CFLAGS_pn-elfutils = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-enchant = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-expect = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-flac = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-flex = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-gcc = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-gcc-runtime = ""
 SECURITY_CFLAGS_pn-gcc-sanitizers = "${SECURITY_NO_PIE_CFLAGS}"
@@ -53,8 +51,6 @@ SECURITY_CFLAGS_pn-grub-efi-native = ""
 SECURITY_CFLAGS_pn-grub-efi-x86-native = ""
 SECURITY_CFLAGS_pn-grub-efi-i586-native = ""
 SECURITY_CFLAGS_pn-grub-efi-x86-64-native = ""
-SECURITY_CFLAGS_pn-gst-plugins-bad = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-gst-plugins-gl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-gstreamer1.0-plugins-bad = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-gstreamer1.0-plugins-good = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-harfbuzz = "${SECURITY_NO_PIE_CFLAGS}"
@@ -64,19 +60,15 @@ SECURITY_CFLAGS_pn-libaio = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libcap = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libgcc = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libid3tag = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-libnewt = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libnewt-python = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libglu = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libpcap = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libpcre = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libproxy = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-lttng-ust = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-mesa = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-mesa-gl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-openssl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-opensp = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-ppp = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-python = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python-pycurl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python-smartpm = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python-numpy = "${SECURITY_NO_PIE_CFLAGS}"
@@ -85,7 +77,6 @@ SECURITY_CFLAGS_pn-python3-pycairo = 
"${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python3 = "${SECURITY_NO_PIE_CFLAGS}"
 # Revert RPM to using internally supported values
 SECURITY_CFLAGS_pn-rpm = "${lcl_maybe_fortify} -fstack-protector"
-SECURITY_CFLAGS_pn-syslinux = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-tcl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-tiff = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-uclibc = ""
@@ -93,10 +84,6 @@ SECURITY_CFLAGS_pn-uclibc-initial = ""
 SECURITY_CFLAGS_pn-valgrind = ""
 SECURITY_CFLAGS_pn-zlib = "${SECURITY_NO_PIE_CFLAGS}"
 
-# These 2 have text relco errors with the pie options enabled
-SECURITY_CFLAGS_pn-ltp = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-pulseaudio = "${SECURITY_NO_PIE_CFLAGS}"
-
 # Recipes which fail to compile when elevating -Wformat-security to an error
 SECURITY_STRINGFORMAT_pn-busybox = ""
 SECURITY_STRINGFORMAT_pn-console-tools = ""
-- 
2.8.1

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


[OE-core] [PATCH 3/8] desktop-file-utils-native: update to 0.23

2016-07-11 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...op-file-utils-native_0.22.bb => desktop-file-utils-native_0.23.bb} | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
 rename 
meta/recipes-devtools/desktop-file-utils/{desktop-file-utils-native_0.22.bb => 
desktop-file-utils-native_0.23.bb} (78%)

diff --git 
a/meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.22.bb 
b/meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.23.bb
similarity index 78%
rename from 
meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.22.bb
rename to 
meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.23.bb
index f899cd2..54daabe 100644
--- a/meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.22.bb
+++ b/meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.23.bb
@@ -8,8 +8,8 @@ DEPENDS = "glib-2.0-native"
 
 SRC_URI = 
"http://freedesktop.org/software/desktop-file-utils/releases/desktop-file-utils-${PV}.tar.xz;
 
-SRC_URI[md5sum] = "c6b9f9aac1ea143091178c23437e6cd0"
-SRC_URI[sha256sum] = 
"843532672692f98e9b2d6ae6cc8658da562dfde1606c7f33d9d227a344de56c5"
+SRC_URI[md5sum] = "599133d51cc9a41bfec186414906b6f1"
+SRC_URI[sha256sum] = 
"6c094031bdec46c9f621708f919084e1cb5294e2c5b1e4c883b3e70cb8903385"
 
 inherit autotools native
 
-- 
2.8.1

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


[OE-core] [PATCH 4/8] libwnck3: upgrade to 3.20.1

2016-07-11 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-gnome/libwnck/{libwnck3_3.14.1.bb => libwnck3_3.20.1.bb} | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-gnome/libwnck/{libwnck3_3.14.1.bb => libwnck3_3.20.1.bb} 
(77%)

diff --git a/meta/recipes-gnome/libwnck/libwnck3_3.14.1.bb 
b/meta/recipes-gnome/libwnck/libwnck3_3.20.1.bb
similarity index 77%
rename from meta/recipes-gnome/libwnck/libwnck3_3.14.1.bb
rename to meta/recipes-gnome/libwnck/libwnck3_3.20.1.bb
index 6f09533..d3c3a86 100644
--- a/meta/recipes-gnome/libwnck/libwnck3_3.14.1.bb
+++ b/meta/recipes-gnome/libwnck/libwnck3_3.20.1.bb
@@ -11,8 +11,8 @@ PACKAGECONFIG ??= "startup-notification"
 PACKAGECONFIG[startup-notification] = 
"--enable-startup-notification,--disable-startup-notification,startup-notification"
 
 inherit gnomebase gobject-introspection
-SRC_URI[archive.md5sum] = "d96c0b74c4dc5fdae758964098603c90"
-SRC_URI[archive.sha256sum] = 
"bb643c9c423c8aa79c59973ce27ce91d3b180d1e9907902278fb79391f52befa"
+SRC_URI[archive.md5sum] = "487938d65d4bfae1f2501052b1bd7492"
+SRC_URI[archive.sha256sum] = 
"1cb03716bc477058dfdf3ebfa4f534de3b13b1aa067fcd064d0b7813291cba72"
 
 inherit distro_features_check
 # libxres means x11 only
-- 
2.8.1

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


[OE-core] [PATCH 5/8] epiphany: update to 3.20.3

2016-07-11 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 .../recipes-gnome/epiphany/{epiphany_3.18.4.bb => epiphany_3.20.3.bb} | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-gnome/epiphany/{epiphany_3.18.4.bb => epiphany_3.20.3.bb} 
(84%)

diff --git a/meta/recipes-gnome/epiphany/epiphany_3.18.4.bb 
b/meta/recipes-gnome/epiphany/epiphany_3.20.3.bb
similarity index 84%
rename from meta/recipes-gnome/epiphany/epiphany_3.18.4.bb
rename to meta/recipes-gnome/epiphany/epiphany_3.20.3.bb
index f0582ac..eba480b 100644
--- a/meta/recipes-gnome/epiphany/epiphany_3.18.4.bb
+++ b/meta/recipes-gnome/epiphany/epiphany_3.20.3.bb
@@ -10,8 +10,8 @@ inherit gnomebase gsettings distro_features_check 
upstream-version-is-even
 REQUIRED_DISTRO_FEATURES = "x11"
 
 SRC_URI += "file://0001-yelp.m4-drop-the-check-for-itstool.patch"
-SRC_URI[archive.md5sum] = "172b78256100e8d3c629764abd0e1495"
-SRC_URI[archive.sha256sum] = 
"be699d48437abae754e669187215df73e21533f461e513b79537d7a1c1c1"
+SRC_URI[archive.md5sum] = "31822b6b199f724f212ae9200bc055f1"
+SRC_URI[archive.sha256sum] = 
"4d9de1bdb44c14adf25aa6dc02ea3de60925cff5eb01fe89545e6032c9b424a2"
 
 EXTRA_OECONF += " --disable-nss --with-distributor-name=${DISTRO}"
 
-- 
2.8.1

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


[OE-core] [PATCH 7/8] python-numpy: fix upstream version check

2016-07-11 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-devtools/python-numpy/python-numpy_1.11.0.bb  | 1 +
 meta/recipes-devtools/python-numpy/python3-numpy_1.11.0.bb | 1 +
 2 files changed, 2 insertions(+)

diff --git a/meta/recipes-devtools/python-numpy/python-numpy_1.11.0.bb 
b/meta/recipes-devtools/python-numpy/python-numpy_1.11.0.bb
index 51ef171..7c70a10 100644
--- a/meta/recipes-devtools/python-numpy/python-numpy_1.11.0.bb
+++ b/meta/recipes-devtools/python-numpy/python-numpy_1.11.0.bb
@@ -10,6 +10,7 @@ SRC_URI = 
"https://files.pythonhosted.org/packages/source/n/${SRCNAME}/${SRCNAME
file://remove-build-path-in-comments.patch \
file://fix_shebang_f2py.patch \
${CONFIGFILESURI} "
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/numpy/files/;
 
 CONFIGFILESURI ?= ""
 
diff --git a/meta/recipes-devtools/python-numpy/python3-numpy_1.11.0.bb 
b/meta/recipes-devtools/python-numpy/python3-numpy_1.11.0.bb
index 218909b..3cca223 100644
--- a/meta/recipes-devtools/python-numpy/python3-numpy_1.11.0.bb
+++ b/meta/recipes-devtools/python-numpy/python3-numpy_1.11.0.bb
@@ -10,6 +10,7 @@ SRC_URI = 
"https://files.pythonhosted.org/packages/source/n/${SRCNAME}/${SRCNAME
file://remove-build-path-in-comments.patch \
file://fix_shebang_f2py.patch \
${CONFIGFILESURI} "
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/numpy/files/;
 
 CONFIGFILESURI ?= ""
 
-- 
2.8.1

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


[OE-core] [PATCH 6/8] python-scons: fix upstream version check

2016-07-11 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-devtools/python/python-scons_2.5.0.bb | 1 -
 1 file changed, 1 deletion(-)

diff --git a/meta/recipes-devtools/python/python-scons_2.5.0.bb 
b/meta/recipes-devtools/python/python-scons_2.5.0.bb
index c0a1cd4..8543c41 100644
--- a/meta/recipes-devtools/python/python-scons_2.5.0.bb
+++ b/meta/recipes-devtools/python/python-scons_2.5.0.bb
@@ -10,7 +10,6 @@ SRC_URI[md5sum] = "bda5530a70a41a7831d83c8b191c021e"
 SRC_URI[sha256sum] = 
"01f1b3d6023516a8e1b5e77799e5a82a23b32953b1102d339059ffeca8600493"
 
 UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/SCons/;
-UPSTREAM_CHECK_REGEX = "/scons/(?P(\d+[\.\-_]*)+)/"
 
 S = "${WORKDIR}/${SRCNAME}-${PV}"
 
-- 
2.8.1

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


[OE-core] [PATCH 8/8] recipes-sato: fix upstream version check

2016-07-11 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb | 1 +
 meta/recipes-sato/matchbox-terminal/matchbox-terminal_0.1.bb | 1 +
 meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato_0.2.bb | 1 +
 meta/recipes-sato/sato-screenshot/sato-screenshot_0.2.bb | 1 +
 meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb   | 1 +
 5 files changed, 5 insertions(+)

diff --git a/meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb 
b/meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb
index 3ca5989..b993a94 100644
--- a/meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb
+++ b/meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb
@@ -13,6 +13,7 @@ RDEPENDS_${PN} = "settings-daemon"
 SRCREV = "ef2192ce98d9374ffdad5f78544c3f8f353c16aa"
 SRC_URI = "git://git.yoctoproject.org/${BPN} \
file://no-handed.patch"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta/recipes-sato/matchbox-terminal/matchbox-terminal_0.1.bb 
b/meta/recipes-sato/matchbox-terminal/matchbox-terminal_0.1.bb
index e0a899c..4488191 100644
--- a/meta/recipes-sato/matchbox-terminal/matchbox-terminal_0.1.bb
+++ b/meta/recipes-sato/matchbox-terminal/matchbox-terminal_0.1.bb
@@ -12,6 +12,7 @@ SECTION = "x11/utils"
 #SRCREV tagged 0.1
 SRCREV = "3ad357db2302760b8a8817b5f4478dd87479442f"
 SRC_URI = "git://git.yoctoproject.org/${BPN}"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato_0.2.bb 
b/meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato_0.2.bb
index 8fc6bb3..7a043d3 100644
--- a/meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato_0.2.bb
+++ b/meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato_0.2.bb
@@ -3,5 +3,6 @@ require matchbox-theme-sato.inc
 # SRCREV tagged 0.2
 SRCREV = "df085ba9cdaeaf2956890b0e29d7ea1779bf6c78"
 SRC_URI = "git://git.yoctoproject.org/matchbox-sato"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))"
 
 S = "${WORKDIR}/git"
diff --git a/meta/recipes-sato/sato-screenshot/sato-screenshot_0.2.bb 
b/meta/recipes-sato/sato-screenshot/sato-screenshot_0.2.bb
index 92f0ee1..ff91746 100644
--- a/meta/recipes-sato/sato-screenshot/sato-screenshot_0.2.bb
+++ b/meta/recipes-sato/sato-screenshot/sato-screenshot_0.2.bb
@@ -12,6 +12,7 @@ DEPENDS = "matchbox-panel-2 gtk+3"
 # SRCREV tagged 0.2
 SRCREV = "5db2672fb857b2c80b949d8fce92e0f0029cc947"
 SRC_URI = "git://git.yoctoproject.org/screenshot"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb 
b/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
index 56eb656..ceaecca 100644
--- a/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
+++ b/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
@@ -13,6 +13,7 @@ SRC_URI = "git://git.yoctoproject.org/xsettings-daemon \
file://addsoundkeys.patch;apply=yes \
file://70settings-daemon.sh \
"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))"
 
 S = "${WORKDIR}/git"
 
-- 
2.8.1

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


Re: [OE-core] [PATCH] security_flags.inc: enable PIE for a few recipes

2016-08-08 Thread Alexander Kanavin

On 08/08/2016 06:58 PM, Burton, Ross wrote:

-SECURITY_CFLAGS_pn-mesa-gl = "${SECURITY_NO_PIE_CFLAGS}"


Did you test this?

For intel-corei7-64 with hardening enabled it fails like this:


The world build with this patch was tested several weeks ago, for a i686 
target. I'll test again.


Alex

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


Re: [OE-core] [master][PATCH] 3/5] bzip2: Security fix CVE-2016-3189

2016-08-08 Thread Alexander Kanavin

On 07/17/2016 02:04 AM, Armin Kuster wrote:

+Upstream-Status: Backport
+https://bugzilla.suse.com/attachment.cgi?id=681334
+
+CVE: CVE-2016-3189


Backport means the patch is taken from upstream development repository, 
and it's also good to provide a link to where it is in the upstream.


This looks like a distro vendor fix, so the upstream-status should be 
either pending or inappropriate (depending on the upstream development 
situation).



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


[OE-core] [PATCH] security_flags.inc: enable PIE for a few recipes

2016-08-08 Thread Alexander Kanavin
They used to fail with PIE enabled, but no longer do.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/conf/distro/include/security_flags.inc | 11 ---
 1 file changed, 11 deletions(-)

diff --git a/meta/conf/distro/include/security_flags.inc 
b/meta/conf/distro/include/security_flags.inc
index d953161..20f48de 100644
--- a/meta/conf/distro/include/security_flags.inc
+++ b/meta/conf/distro/include/security_flags.inc
@@ -29,7 +29,6 @@ SECURITY_CFLAGS_pn-libmatchbox_powerpc = ""
 SECURITY_CFLAGS_pn-lttng-tools_arm = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-aspell = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-beecrypt = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-blktrace = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-coreutils = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-cups = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-db = "${SECURITY_NO_PIE_CFLAGS}"
@@ -40,7 +39,6 @@ SECURITY_CFLAGS_pn-elfutils = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-enchant = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-expect = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-flac = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-flex = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-gcc = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-gcc-runtime = ""
 SECURITY_CFLAGS_pn-gcc-sanitizers = "${SECURITY_NO_PIE_CFLAGS}"
@@ -53,8 +51,6 @@ SECURITY_CFLAGS_pn-grub-efi-native = ""
 SECURITY_CFLAGS_pn-grub-efi-x86-native = ""
 SECURITY_CFLAGS_pn-grub-efi-i586-native = ""
 SECURITY_CFLAGS_pn-grub-efi-x86-64-native = ""
-SECURITY_CFLAGS_pn-gst-plugins-bad = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-gst-plugins-gl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-gstreamer1.0-plugins-bad = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-gstreamer1.0-plugins-good = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-harfbuzz = "${SECURITY_NO_PIE_CFLAGS}"
@@ -64,15 +60,12 @@ SECURITY_CFLAGS_pn-libaio = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libcap = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libgcc = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libid3tag = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-libnewt = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libnewt-python = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libglu = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libpcap = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libpcre = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libproxy = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-lttng-ust = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-mesa = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-mesa-gl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-openssl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-opensp = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-ppp = "${SECURITY_NO_PIE_CFLAGS}"
@@ -94,10 +87,6 @@ SECURITY_CFLAGS_pn-uclibc-initial = ""
 SECURITY_CFLAGS_pn-valgrind = ""
 SECURITY_CFLAGS_pn-zlib = "${SECURITY_NO_PIE_CFLAGS}"
 
-# These 2 have text relco errors with the pie options enabled
-SECURITY_CFLAGS_pn-ltp = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-pulseaudio = "${SECURITY_NO_PIE_CFLAGS}"
-
 # Recipes which fail to compile when elevating -Wformat-security to an error
 SECURITY_STRINGFORMAT_pn-busybox = ""
 SECURITY_STRINGFORMAT_pn-console-tools = ""
-- 
2.8.1

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


Re: [OE-core] oe-core package maintenance Q document

2016-06-30 Thread Alexander Kanavin

On 06/30/2016 06:13 PM, Alexander Kanavin wrote:

http://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbeddedOpenembbedded-core

package maintenance


This should read simply 'Openembbedded-core package maintenance'.

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


[OE-core] oe-core package maintenance Q document

2016-06-30 Thread Alexander Kanavin

Hello world,

I've written a brief Q about how package maintenance works in
OpenEmbedded-core. I would really appreciate any suggestions about what
needs to be changed, added, or expanded - then this can go into Yocto
blog for example.

http://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbeddedOpenembbedded-core
package maintenance

1. What is the recipes' version update policy?

In the master branch, the policy is to try to stay as close to
latest upstream versions as possible (excluding development and
pre-release versions) at all times except Yocto freeze periods.
It's totally fine and expected to update a recipe to the latest
version even if there is no specific need for it, and there is a
possibility of new problems caused by the update.

This is done for two reasons:

- oe-core gets all the work done upstream as quickly as possible:
new features, bugfixes, and particularly security fixes. Oe-core
keeps up with the times and stays in touch.

- it is far, far easier to update packages in small, incremental steps
than go from an old version to a much newer version, both for technical
reasons (the recipe needs to accommodate all the changes that happened 
at once, so writing and testing them takes a lot of time and effort), 
and political reasons (users of oe-core are much more reluctant to 
accept dramatic changes, particularly when they break things for them).


2. Who is doing the work?

In openmbedded-core there is no formal assignment of recipes to 
maintainers. Anyone can send a version update patch to oe-core mailing 
list for review and testing.


However, Poky distro does have a list of recipe maintainers:
http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta-poky/conf/distro/include/maintainers.inc

Those are the people who are doing most of the work on particular
recipes and know their inner workings well. Typically they also take 
care of updating to newer versions.


3. How to find out if the recipe is in need of an update to a later version?

Openembedded-core has utility libraries that query upstream webpages or
git repositories and figure out what is the current latest versions. To 
use them, add


INHERIT+= "distrodata"

to your conf/local.conf

and run

bitbake -c checkpkg 

The results will be written into /tmp/log/checkpkg.csv
- the second and third field are the current oe-core version and the 
latest upstream version.


There is also a web service that checks all recipes against upstream
every day:

http://recipes.yoctoproject.org
(currently broken because it needs to be ported to Python 3)

The service provides overall statistics, and allows filtering by recipe
status and maintainer name.

4. How to update a recipe to a later version?

At most basic, you need to do the following:

a. Rename the recipe filename, so that the filename refers to a later
version.

b. If the sources are taken from git repository, update SRCREV to a git
commit id that corresponds to the new version.

c. Try to build the recipe; if the sources are taken from a tarball,
then the build will print the new tarball checksums that need to be 
written into the recipe's SRC_URI[md5sum] and SRC_URI[sha256sum] lines.


d. Try to build the recipe again; occasionally the build will succeed,
but often it's not that simple. A common problem is that custom patches 
provided through the recipe no longer apply to the source code; in that 
case they need to be rebased against the new version, or dropped 
entirely, if the source code already contains the fixes. Such rebasing 
can be done by commenting the patches out from the recipe and then using 
'devtool modify', and applying the patches by hand to an external source 
tree that 'devtool modify' creates.


e. When the recipe finally builds without error, it's often a good idea
to build an image that contains it and to check that the image still 
boots, and the recipe still functions.


f. Then the update can be send as a patch for review to the oe-core
mailing list:
Remember to follow the guidelines:
http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
http://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbedded

Regards,
Alex

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


Re: [OE-core] [PATCH 2/2] pseudo: upgrade to 1.8.0

2016-07-04 Thread Alexander Kanavin

On 07/01/2016 10:30 PM, Joshua Lock wrote:

* drop patches where the changes exist upstream
* fetch from git as no tarball is available for 1.8.0



diff --git a/meta/recipes-devtools/pseudo/pseudo_1.8.0.bb 
b/meta/recipes-devtools/pseudo/pseudo_1.8.0.bb
new file mode 100644
index 000..08477ff
--- /dev/null
+++ b/meta/recipes-devtools/pseudo/pseudo_1.8.0.bb
@@ -0,0 +1,14 @@
+require pseudo.inc
+
+SRCREV = "786c6d3813622d18e12d36c4aa722af6a417c8fa"
+PV = "1.8.0+git${SRCPV}"
+
+SRC_URI = "git://git.yoctoproject.org/pseudo \


This commit id refers to version 1.7.5, and version 1.8.0 is not tagged 
at all in the git repository. Can you fix that please?



Alex

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


Re: [OE-core] [PATCH 2/2] pseudo: upgrade to 1.8.0

2016-07-04 Thread Alexander Kanavin

On 07/04/2016 03:10 PM, Joshua G Lock wrote:


Thanks for catching this, I failed badly at merging some local changes.

I will send a v2 with the correct SRCREV. I'll also see whether I can
convince someone to tag the repo.


Please first make a tag, and then send a recipe update. I'd like to 
minimize the amount of recipes which take things from git using an 
arbitrary commit id that is not linked to an upstream release.


Alex

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


[OE-core] [PATCH] selftest: do not perform a full build in test_continue

2017-02-02 Thread Alexander Kanavin
This was fetching and building the toolchain and everything else
against empty download dir and sstate cache, and so was enormously slow.
The test does not need that, it only checks that one fetch task fails and
another succeeds when using bitbake's -k option.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/lib/oeqa/selftest/bbtests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/selftest/bbtests.py 
b/meta/lib/oeqa/selftest/bbtests.py
index c4e50cbfa0f..a3b03eaac34 100644
--- a/meta/lib/oeqa/selftest/bbtests.py
+++ b/meta/lib/oeqa/selftest/bbtests.py
@@ -221,7 +221,7 @@ INHERIT_remove = \"report-error\"
 self.track_for_cleanup(os.path.join(self.builddir, 
"download-selftest"))
 self.write_recipeinc('man',"\ndo_fail_task () {\nexit 1 \n}\n\naddtask 
do_fail_task before do_fetch\n" )
 runCmd('bitbake -c cleanall man xcursor-transparent-theme')
-result = runCmd('bitbake man xcursor-transparent-theme -k', 
ignore_status=True)
+result = runCmd('bitbake -c unpack -k man xcursor-transparent-theme', 
ignore_status=True)
 errorpos = result.output.find('ERROR: Function failed: do_fail_task')
 manver = re.search("NOTE: recipe xcursor-transparent-theme-(.*?): task 
do_unpack: Started", result.output)
 continuepos = result.output.find('NOTE: recipe 
xcursor-transparent-theme-%s: task do_unpack: Started' % manver.group(1))
-- 
2.11.0

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


Re: [OE-core] [PATCH] selftest: do not perform a full build in test_continue

2017-02-02 Thread Alexander Kanavin

On 02/02/2017 03:47 PM, Burton, Ross wrote:


 runCmd('bitbake -c cleanall man xcursor-transparent-theme')
-result = runCmd('bitbake man xcursor-transparent-theme -k',
ignore_status=True)
+result = runCmd('bitbake -c unpack -k man
xcursor-transparent-theme', ignore_status=True)


I also have to ask why it does cleanall.  Why isn't clean sufficient?


I guess because it's testing that fetching for one recipe fails but 
unpacking for another recipe succeeds, and getting those tasks to run 
requires cleanall?


Alex

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


Re: [OE-core] [PATCH 1/3] go: Add recipes for golang compilers and tools

2017-02-08 Thread Alexander Kanavin

On 02/08/2017 03:57 PM, Gary Thomas wrote:


FWIW I disagree. Go is a popular systems language and we're
increasingly supporting a wide-array of systems with OE
(from iot to ivi and beyond).

Go is already in wide enough use and duplicated in enough layers that
we would be doing folks a favour by including it
in OE-Core and our build/test cycle.


I agree - if ruby is OE-core worthy, go most certainly is.


Ruby is in oe-core only because it's needed by webkit.

As an oe-core maintainer, I think the bar for adding stuff to oe-core 
should be higher than "it's popular" or "various existing layers are 
causing duplication of effort and aren't cooperating". The more things 
we have to support, the less time there is to do a good job with any 
specific item.


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


Re: [OE-core] [PATCH] pulseaudio: 9.0 -> 10.0

2017-02-03 Thread Alexander Kanavin

On 02/03/2017 09:06 AM, Tanu Kaskinen wrote:


Dropped json-c and gdbm from DEPENDS. The new release doesn't use json-c
any more. gdbm isn't used when --with-database=simple is passed to
configure, so it should have been removed from DEPENDS a long time ago.


Does anything else in oe-core still use json-c? We're generally trying 
to trim such dangling recipes.



Alex

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


Re: [OE-core] [PATCHv2] qemu: Upgrade to 2.7.1

2017-01-23 Thread Alexander Kanavin

On 01/20/2017 09:44 PM, Patrick Ohly wrote:


In contrast to Alexander, I would also keep
http://wiki.qemu-project.org/download/${BP}.tar.bz2 in qemu_2.7.1.bb
with SRC_URI =+ because then there can be a qemu_git.bb with a different
URL than the one above.


I would discourage creation of such separate _git recipes, unless there 
is a clear benefit to the whole of oe-core. They are almost always 
untested and neglected, and eventually removed because they're outdated 
and broken and no one cares.


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


Re: [OE-core] [PATCH] ed: use yoctoproject mirror for SRC_URI

2017-01-23 Thread Alexander Kanavin

On 01/23/2017 06:20 PM, Ross Burton wrote:

We shoud upgrade to the latest release but as new releases are only compressed
using lzip that means adding lzip-native to oe-core, so this is a suitable
short-term fix.



-SRC_URI = "${GNU_MIRROR}/ed/ed-${PV}.tar.gz"
+SRC_URI = "http://downloads.yoctoproject.org/mirror/sources/${BP}.tar.gz;


Add UPSTREAM_CHECK_URI please (or file a bug), as I'll surely forget 
about the update if the RRS is going to report 'Up-to-date' for this.


Alex

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


Re: [OE-core] what is the working directory for configure/compile/install tasks?

2017-01-27 Thread Alexander Kanavin

On 01/27/2017 02:44 PM, Robert P. J. Day wrote:





  i've been handed a simple example of Makefile-based source to turn
into a recipe, and the configure/build process is absolutely
straightforward -- top-level "configure" and "Makefile" files to be
run -- to the point where i can simply define my own do_configure(),
do_compile(), etc. tasks.


It's not entirely clear, but is the source GNU autotools based? Can you 
provide a link to it, so we can see what configure actually does?


Alex

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


Re: [OE-core] [PATCH] openssh: Security Advisory - openssh - CVE-2016-10010

2017-01-25 Thread Alexander Kanavin

On 01/25/2017 07:19 AM, Li Zhou wrote:

sshd in OpenSSH before 7.4, when privilege separation is not used,
creates forwarded Unix-domain sockets as root, which might allow
local users to gain privileges via unspecified vectors, related to
serverloop.c.

Porting patch from  to solve CVE-2016-10010.
Adapted the patch to solve context issues.


Please update openssh to 7.4 instead, there is no need to backport fixes 
to master branch, if the issue can be solved by updating the recipe version.


Alex

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


Re: [OE-core] [PATCH] qemu: Upgrade to 2.7.1

2017-01-20 Thread Alexander Kanavin

On 01/20/2017 01:35 PM, Patrick Ohly wrote:

On Thu, 2017-01-19 at 16:46 -0600, AnĂ­bal LimĂ³n wrote:

 SRC_URI_prepend = "http://wiki.qemu-project.org/download/${BP}.tar.bz2;
-SRC_URI[md5sum] = "08d4d06d1cb598efecd796137f4844ab"
-SRC_URI[sha256sum] = 
"326e739506ba690daf69fc17bd3913a6c313d9928d743bd8eddb82f403f81e53"
+SRC_URI[md5sum] = "a315bc51ed443a08d2cf1416d76b9ab4"
+SRC_URI[sha256sum] = 
"68636788eb69bcb0b44ba220b32b50495d6bd5712a934c282217831c4822958f"


_prepend without trailing space is broken. It just happens to work
because the SRC_URI it prepends to usually has a leading space.

I just ran into a situation where it didn't (due to some _remove
operation being interposed, which did a split/join, see YOCTO #10945).

I was about to send a fix, but it would just conflict with your version
update. Can you include a fix by revising your proposal, perhaps by
turning it into a patch series with two changes?

IMHO SRC_URI =+ "http://wiki.qemu-project.org/download/${BP}.tar.bz2;
should be fine. There's no need for the more complex _prepend.


Actually, this line should be simply moved to qemu.inc and placed 
together with other SRC_URI entries. There is nothing version-specific 
in it. All these prepends, appends and +='s are best avoided if possible.


Alex

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


[OE-core] [PATCHv2 31/39] ossp-uuid: remove the recipe

2017-02-21 Thread Alexander Kanavin
It was used only by rpm5, and will be moved to meta-oe.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 .../ossp-uuid/0001-Change-library-name.patch   | 119 -
 ...erve-m-option-status-in-v-option-handling.patch |  62 ---
 .../ossp-uuid/0003-Fix-whatis-entries.patch|  58 --
 .../ossp-uuid/0004-fix-data-uuid-from-string.patch |  43 
 .../ossp-uuid/ossp-uuid/install-pc.patch   |  19 
 .../ossp-uuid/ossp-uuid/ldflags.patch  |  26 -
 .../ossp-uuid/ossp-uuid/uuid-libtool.patch |  27 -
 .../ossp-uuid/ossp-uuid/uuid-nostrip.patch |  19 
 meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb |  64 ---
 9 files changed, 437 deletions(-)
 delete mode 100644 
meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch
 delete mode 100644 
meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch
 delete mode 100644 
meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch
 delete mode 100644 
meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch
 delete mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/install-pc.patch
 delete mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/ldflags.patch
 delete mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch
 delete mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch
 delete mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb

diff --git 
a/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch 
b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch
deleted file mode 100644
index ed67c501cb0..000
--- a/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch
+++ /dev/null
@@ -1,119 +0,0 @@
-From: Piotr Roszatycki <dex...@debian.org>
-Date: Wed, 27 Jan 2010 16:53:11 +0100
-Subject: [PATCH] Change library name
-
-The soname was changed to ossp-uuid to prevend the name clash with e2fsprogs's
-uuid library.

- Makefile.in  |6 +++---
- perl/Makefile.PL |   12 ++--
- php/config.m4|2 +-
- uuid-config.in   |2 +-
- uuid.pc.in   |4 ++--
- 5 files changed, 13 insertions(+), 13 deletions(-)
-
-
-Upstream-Status: Inappropriate [not author]
-
-This patch is from debian ossp-uuid 1.6.2 integration.
-
-Signed-off-by: Mark Hatle <mark.ha...@windriver.com>
-
-diff --git a/Makefile.in b/Makefile.in
-index d28f4be..c2ba99d 100644
 a/Makefile.in
-+++ b/Makefile.in
-@@ -62,13 +62,13 @@ PERL= @PERL@
- PHP = @PHP@
- PG_CONFIG   = @PG_CONFIG@
- 
--LIB_NAME= libuuid.la
-+LIB_NAME= libossp-uuid.la
- LIB_OBJS= uuid.lo uuid_md5.lo uuid_sha1.lo uuid_prng.lo uuid_mac.lo 
uuid_time.lo uuid_ui64.lo uuid_ui128.lo uuid_str.lo
- 
--DCE_NAME= libuuid_dce.la
-+DCE_NAME= libossp-uuid_dce.la
- DCE_OBJS= uuid_dce.lo $(LIB_OBJS)
- 
--CXX_NAME= libuuid++.la
-+CXX_NAME= libossp-uuid++.la
- CXX_OBJS= uuid++.lo $(LIB_OBJS)
- 
- PRG_NAME= uuid
-diff --git a/perl/Makefile.PL b/perl/Makefile.PL
-index 92f4494..9c6fee6 100644
 a/perl/Makefile.PL
-+++ b/perl/Makefile.PL
-@@ -33,9 +33,9 @@ use Config;
- use ExtUtils::MakeMaker;
- 
- #   determine source directory
--my ($srcdir) = map { my $d = $_; $d =~ s/\/libuuid\.la$//; $d }
--   grep { -f $_ } ("../libuuid.la", glob("../*/libuuid.la"))
--or die "no source directory found (where libuuid.la is located)";
-+my ($srcdir) = map { my $d = $_; $d =~ s/\/libossp-uuid\.la$//; $d }
-+   grep { -f $_ } ("../libossp-uuid.la", 
glob("../*/libossp-uuid.la"))
-+or die "no source directory found (where libossp-uuid.la is located)";
- 
- #   determine extra build options
- my $compat = 0;
-@@ -47,15 +47,15 @@ WriteMakefile(
- VERSION_FROM  => 'uuid.pm',
- ABSTRACT_FROM => 'uuid.pod',
- PREREQ_PM => {},
--LIBS  => [ "-L$srcdir/.libs -L$srcdir -luuid" ],
-+LIBS  => [ "-L$srcdir/.libs -L$srcdir -lossp-uuid" ],
- DEFINE=> '',
- INC   => "-I. -I$srcdir",
- PM=> { 'uuid.pm'   => '$(INST_LIBDIR)/uuid.pm',
-'uuid.pod'  => '$(INST_LIBDIR)/uuid.pod',
-($compat ? ('uuid_compat.pm'  => 
'$(INST_LIBDIR)/../Data/UUID.pm')  : ()),
-($compat ? ('uuid_compat.pod' => 
'$(INST_LIBDIR)/../Data/UUID.pod') : ()), },
--MAN3PODS  => { 'uuid.pod' => '$(INST_MAN3DIR)/OSSP::uuid.3',
--   ($compat ? ('uuid_compat.pod' => 
'$(INST_MAN3DIR)/Data::UUID.3') : ()), },
-+MAN3PODS  => { 'uuid.pod' => '$(INST_MAN3DIR)/OSSP::uuid.3pm',

[OE-core] [PATCHv2 33/39] gpg_sign.py: fix signing of rpm files using gpg

2017-02-21 Thread Alexander Kanavin
This means
a) calling rpmkeys and rpmsign instead of rpm
b) instructing gpg to run non-interactively; otherwise on my machine
it pops up windows requesting a key passphrase

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/lib/oe/gpg_sign.py   | 4 ++--
 meta/lib/oeqa/selftest/signing.py | 8 
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/meta/lib/oe/gpg_sign.py b/meta/lib/oe/gpg_sign.py
index dcd19909302..4b87ddde57a 100644
--- a/meta/lib/oe/gpg_sign.py
+++ b/meta/lib/oe/gpg_sign.py
@@ -10,7 +10,7 @@ class LocalSigner(object):
 self.gpg_bin = d.getVar('GPG_BIN') or \
   bb.utils.which(os.getenv('PATH'), 'gpg')
 self.gpg_path = d.getVar('GPG_PATH')
-self.rpm_bin = bb.utils.which(os.getenv('PATH'), "rpm")
+self.rpm_bin = bb.utils.which(os.getenv('PATH'), "rpmsign")
 
 def export_pubkey(self, output_file, keyid, armor=True):
 """Export GPG public key to a file"""
@@ -30,7 +30,7 @@ class LocalSigner(object):
 """Sign RPM files"""
 
 cmd = self.rpm_bin + " --addsign --define '_gpg_name %s'  " % keyid
-cmd += "--define '_gpg_passphrase %s' " % passphrase
+cmd += "--define '_gpg_sign_cmd_extra_args --batch --passphrase=%s 
--pinentry-mode=loopback' " % passphrase
 if self.gpg_bin:
 cmd += "--define '%%__gpg %s' " % self.gpg_bin
 if self.gpg_path:
diff --git a/meta/lib/oeqa/selftest/signing.py 
b/meta/lib/oeqa/selftest/signing.py
index 70e8369876c..828dfccab42 100644
--- a/meta/lib/oeqa/selftest/signing.py
+++ b/meta/lib/oeqa/selftest/signing.py
@@ -27,7 +27,7 @@ class Signing(oeSelfTest):
 cls.pub_key_path = os.path.join(cls.testlayer_path, 'files', 
'signing', "key.pub")
 cls.secret_key_path = os.path.join(cls.testlayer_path, 'files', 
'signing', "key.secret")
 
-runCmd('gpg --homedir %s --import %s %s' % (cls.gpg_dir, 
cls.pub_key_path, cls.secret_key_path))
+runCmd('gpg --batch --homedir %s --import %s %s' % (cls.gpg_dir, 
cls.pub_key_path, cls.secret_key_path))
 
 @testcase(1362)
 def test_signing_packages(self):
@@ -73,13 +73,13 @@ class Signing(oeSelfTest):
 # Use a temporary rpmdb
 rpmdb = tempfile.mkdtemp(prefix='oeqa-rpmdb')
 
-runCmd('%s/rpm --define "_dbpath %s" --import %s' %
+runCmd('%s/rpmkeys --define "_dbpath %s" --import %s' %
(staging_bindir_native, rpmdb, self.pub_key_path))
 
-ret = runCmd('%s/rpm --define "_dbpath %s" --checksig %s' %
+ret = runCmd('%s/rpmkeys --define "_dbpath %s" --checksig %s' %
  (staging_bindir_native, rpmdb, pkg_deploy))
 # tmp/deploy/rpm/i586/ed-1.9-r0.i586.rpm: rsa sha1 md5 OK
-self.assertIn('rsa sha1 md5 OK', ret.output, 'Package signed 
incorrectly.')
+self.assertIn('rsa sha1 (md5) pgp md5 OK', ret.output, 'Package signed 
incorrectly.')
 shutil.rmtree(rpmdb)
 
 @testcase(1382)
-- 
2.11.0

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


[OE-core] [PATCHv2 30/39] selftest: allow bitbake to fail in test_options_warnqa_errorqa_switch

2017-02-21 Thread Alexander Kanavin
rpm4 seems to be stricter about duplicate entries in .spec, and so
we should let it fail for the test case to succeed.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/lib/oeqa/selftest/buildoptions.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/selftest/buildoptions.py 
b/meta/lib/oeqa/selftest/buildoptions.py
index 1801511913b..0b744d1f5e9 100644
--- a/meta/lib/oeqa/selftest/buildoptions.py
+++ b/meta/lib/oeqa/selftest/buildoptions.py
@@ -91,7 +91,7 @@ class SanityOptionsTest(oeSelfTest):
 self.append_config('ERROR_QA_remove = "packages-list"')
 self.append_config('WARN_QA_append = " packages-list"')
 bitbake("xcursor-transparent-theme -ccleansstate")
-res = bitbake("xcursor-transparent-theme")
+res = bitbake("xcursor-transparent-theme", ignore_status = True)
 self.delete_recipeinc('xcursor-transparent-theme')
 line = self.getline(res, "QA Issue: xcursor-transparent-theme-dbg is 
listed in PACKAGES multiple times, this leads to packaging errors.")
 self.assertTrue(line and line.startswith("WARNING:"), msg=res.output)
-- 
2.11.0

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


[OE-core] [PATCHv2 21/39] rootfs_rpm.bbclass: migrate image creation to dnf

2017-02-21 Thread Alexander Kanavin
To properly look at this patch, you probably need a side-by-side diff viewing 
tool.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/rootfs_rpm.bbclass |   21 +-
 meta/lib/oe/package_manager.py  | 1189 +++
 meta/lib/oe/rootfs.py   |   18 +-
 meta/lib/oe/sdk.py  |7 +-
 4 files changed, 233 insertions(+), 1002 deletions(-)

diff --git a/meta/classes/rootfs_rpm.bbclass b/meta/classes/rootfs_rpm.bbclass
index b8ff4cb7b6a..65881a60a7b 100644
--- a/meta/classes/rootfs_rpm.bbclass
+++ b/meta/classes/rootfs_rpm.bbclass
@@ -2,20 +2,23 @@
 # Creates a root filesystem out of rpm packages
 #
 
-ROOTFS_PKGMANAGE = "rpm smartpm"
+ROOTFS_PKGMANAGE = "rpm dnf"
 ROOTFS_PKGMANAGE_BOOTSTRAP = "run-postinsts"
 
-# Add 100Meg of extra space for Smart
-IMAGE_ROOTFS_EXTRA_SPACE_append = "${@bb.utils.contains("PACKAGE_INSTALL", 
"smartpm", " + 102400", "" ,d)}"
+# dnf is using our custom distutils, and so will fail without these
+export STAGING_INCDIR
+export STAGING_LIBDIR
 
-# Smart is python based, so be sure python-native is available to us.
+# Add 100Meg of extra space for dnf
+IMAGE_ROOTFS_EXTRA_SPACE_append = "${@bb.utils.contains("PACKAGE_INSTALL", 
"dnf", " + 102400", "" ,d)}"
+
+# Dnf is python based, so be sure python-native is available to us.
 EXTRANATIVEPATH += "python-native"
 
 # opkg is needed for update-alternatives
 RPMROOTFSDEPENDS = "rpm-native:do_populate_sysroot \
-rpmresolve-native:do_populate_sysroot \
-python-smartpm-native:do_populate_sysroot \
-createrepo-native:do_populate_sysroot \
+dnf-native:do_populate_sysroot \
+createrepo-c-native:do_populate_sysroot \
 opkg-native:do_populate_sysroot"
 
 do_rootfs[depends] += "${RPMROOTFSDEPENDS}"
@@ -35,7 +38,3 @@ python () {
 d.setVar('RPM_POSTPROCESS_COMMANDS', '')
 
 }
-# Smart is python based, so be sure python-native is available to us.
-EXTRANATIVEPATH += "python-native"
-
-rpmlibdir = "/var/lib/rpm"
diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 725997ce334..49d7fca2314 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -102,109 +102,14 @@ class Indexer(object, metaclass=ABCMeta):
 
 
 class RpmIndexer(Indexer):
-def get_ml_prefix_and_os_list(self, arch_var=None, os_var=None):
-package_archs = collections.OrderedDict()
-target_os = collections.OrderedDict()
-
-if arch_var is not None and os_var is not None:
-package_archs['default'] = self.d.getVar(arch_var).split()
-package_archs['default'].reverse()
-target_os['default'] = self.d.getVar(os_var).strip()
-else:
-package_archs['default'] = self.d.getVar("PACKAGE_ARCHS").split()
-# arch order is reversed.  This ensures the -best- match is
-# listed first!
-package_archs['default'].reverse()
-target_os['default'] = self.d.getVar("TARGET_OS").strip()
-multilibs = self.d.getVar('MULTILIBS') or ""
-for ext in multilibs.split():
-eext = ext.split(':')
-if len(eext) > 1 and eext[0] == 'multilib':
-localdata = bb.data.createCopy(self.d)
-default_tune_key = "DEFAULTTUNE_virtclass-multilib-" + 
eext[1]
-default_tune = localdata.getVar(default_tune_key, False)
-if default_tune is None:
-default_tune_key = "DEFAULTTUNE_ML_" + eext[1]
-default_tune = localdata.getVar(default_tune_key, 
False)
-if default_tune:
-localdata.setVar("DEFAULTTUNE", default_tune)
-package_archs[eext[1]] = 
localdata.getVar('PACKAGE_ARCHS').split()
-package_archs[eext[1]].reverse()
-target_os[eext[1]] = 
localdata.getVar("TARGET_OS").strip()
-
-ml_prefix_list = collections.OrderedDict()
-for mlib in package_archs:
-if mlib == 'default':
-ml_prefix_list[mlib] = package_archs[mlib]
-else:
-ml_prefix_list[mlib] = list()
-for arch in package_archs[mlib]:
-if arch in ['all', 'noarch', 'any']:
-ml_prefix_list[mlib].append(arch)
-else:
-ml_prefix_list[mlib].append(mlib + "_" + arch)
-
-return (ml_prefix_list, target_os)
-
 def write_index(self):
-sdk_pkg_archs = (self.d.getVar('SDK_PACKAGE_ARCHS') or 
"").replace('-', '_').split()
-all_mlb_pk

[OE-core] [PATCHv2 26/39] testimage.bbclass: fix runtime test for rpm, port smart tests to dnf

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/testimage.bbclass   |  21 ++--
 meta/lib/oeqa/oetest.py  |   7 --
 meta/lib/oeqa/runtime/cases/dnf.py   | 112 ++
 meta/lib/oeqa/runtime/cases/parselogs.py |   1 +
 meta/lib/oeqa/runtime/cases/rpm.py   |  19 ++-
 meta/lib/oeqa/runtime/cases/smart.py | 196 ---
 6 files changed, 130 insertions(+), 226 deletions(-)
 create mode 100644 meta/lib/oeqa/runtime/cases/dnf.py
 delete mode 100644 meta/lib/oeqa/runtime/cases/smart.py

diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass
index 09cc6d2a211..f86b0eb09df 100644
--- a/meta/classes/testimage.bbclass
+++ b/meta/classes/testimage.bbclass
@@ -35,7 +35,7 @@ TEST_NEEDED_PACKAGES_DIR ?= "${WORKDIR}/testimage/packages"
 TEST_EXTRACTED_DIR ?= "${TEST_NEEDED_PACKAGES_DIR}/extracted"
 TEST_PACKAGED_DIR ?= "${TEST_NEEDED_PACKAGES_DIR}/packaged"
 
-RPMTESTSUITE = "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'smart rpm', '', 
d)}"
+RPMTESTSUITE = "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'dnf rpm', '', 
d)}"
 SYSTEMDSUITE = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', 
'', d)}"
 MINTESTSUITE = "ping"
 NETTESTSUITE = "${MINTESTSUITE} ssh df date scp oe_syslog ${SYSTEMDSUITE}"
@@ -74,12 +74,11 @@ TESTIMAGEDEPENDS = ""
 TESTIMAGEDEPENDS_qemuall = "qemu-native:do_populate_sysroot 
qemu-helper-native:do_populate_sysroot"
 TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'cpio-native:do_populate_sysroot', '', d)}"
 TESTIMAGEDEPENDS_qemuall += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'cpio-native:do_populate_sysroot', '', d)}"
-TESTIMAGEDEPENDS_qemuall += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'createrepo-native:do_populate_sysroot', '', d)}"
-TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'python-smartpm-native:do_populate_sysroot', '', d)}"
+TESTIMAGEDEPENDS_qemuall += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'createrepo-c-native:do_populate_sysroot', '', d)}"
+TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'dnf-native:do_populate_sysroot', '', d)}"
 TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'ipk', 
'opkg-utils-native:do_populate_sysroot', '', d)}"
 TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'deb', 
'apt-native:do_populate_sysroot', '', d)}"
-TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'python-smartpm-native:do_populate_sysroot', '', d)}"
-TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'createrepo-native:do_populate_sysroot', '', d)}"
+TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 
'createrepo-c-native:do_populate_sysroot', '', d)}"
 
 TESTIMAGELOCK = "${TMPDIR}/testimage.lock"
 TESTIMAGELOCK_qemuall = ""
@@ -120,7 +119,7 @@ python do_testimage() {
 testimage_sanity(d)
 
 if (d.getVar('IMAGE_PKGTYPE') == 'rpm'
-   and 'smart' in d.getVar('TEST_SUITES')):
+   and 'dnf' in d.getVar('TEST_SUITES')):
 create_rpm_index(d)
 
 testimage_main(d)
@@ -320,19 +319,16 @@ def create_index(arg):
 
 def create_rpm_index(d):
 # Index RPMs
-rpm_createrepo = bb.utils.which(os.getenv('PATH'), "createrepo")
+rpm_createrepo = bb.utils.which(os.getenv('PATH'), "createrepo_c")
 index_cmds = []
 archs = (d.getVar('ALL_MULTILIB_PACKAGE_ARCHS') or '').replace('-', '_')
 
 for arch in archs.split():
 rpm_dir = os.path.join(d.getVar('DEPLOY_DIR_RPM'), arch)
-idx_path = os.path.join(d.getVar('WORKDIR'), 'rpm', arch)
-db_path = os.path.join(d.getVar('WORKDIR'), 'rpmdb', arch)
+idx_path = os.path.join(d.getVar('WORKDIR'), 'oe-testimage-repo', arch)
 
 if not os.path.isdir(rpm_dir):
 continue
-if os.path.exists(db_path):
-bb.utils.remove(dbpath, True)
 
 lockfilename = os.path.join(d.getVar('DEPLOY_DIR_RPM'), 'rpm.lock')
 lf = bb.utils.lockfile(lockfilename, False)
@@ -342,8 +338,7 @@ def create_rpm_index(d):
 # this leaves some allarch and machine arch packages too.
 bb.utils.remove(idx_path + "*/[a-oq-z]*.rpm")
 bb.utils.unlockfile(lf)
-cmd = '%s --dbpath %s --update -q %s' % (rpm_createrepo,
- db_path, idx_path)
+cmd = '%s --update -q %s' % (rpm_createrepo, idx_path)
 
 # Create repodata
 result = create_index(cmd)
diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py
index b886130d0ec..a47ab6ea647 100644
--- a/meta/lib/oeqa/oetest.py
+++ b/meta/lib/oeqa/oetest.py
@@ -128,13 +128,6 @@ class oeRuntimeTest(oe

[OE-core] [PATCHv2 28/39] selftest: do not perform a full build in test_continue

2017-02-21 Thread Alexander Kanavin
This was fetching and building the toolchain and everything else
against empty download dir and sstate cache, and so was enormously slow.
The test does not need that, it only checks that one fetch task fails and
another succeeds when using bitbake's -k option.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/lib/oeqa/selftest/bbtests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/selftest/bbtests.py 
b/meta/lib/oeqa/selftest/bbtests.py
index fccb395b2a6..daa4d2fdf0c 100644
--- a/meta/lib/oeqa/selftest/bbtests.py
+++ b/meta/lib/oeqa/selftest/bbtests.py
@@ -221,7 +221,7 @@ INHERIT_remove = \"report-error\"
 self.track_for_cleanup(os.path.join(self.builddir, 
"download-selftest"))
 self.write_recipeinc('man',"\ndo_fail_task () {\nexit 1 \n}\n\naddtask 
do_fail_task before do_fetch\n" )
 runCmd('bitbake -c cleanall man xcursor-transparent-theme')
-result = runCmd('bitbake man xcursor-transparent-theme -k', 
ignore_status=True)
+result = runCmd('bitbake -c unpack -k man xcursor-transparent-theme', 
ignore_status=True)
 errorpos = result.output.find('ERROR: Function failed: do_fail_task')
 manver = re.search("NOTE: recipe xcursor-transparent-theme-(.*?): task 
do_unpack: Started", result.output)
 continuepos = result.output.find('NOTE: recipe 
xcursor-transparent-theme-%s: task do_unpack: Started' % manver.group(1))
-- 
2.11.0

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


[OE-core] [PATCHv2 12/39] libcomps: add a recipe

2017-02-21 Thread Alexander Kanavin
libcomps is required by dnf.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...-set-PYTHON_INSTALL_DIR-by-running-python.patch | 41 ++
 ...2-Set-library-installation-path-correctly.patch | 27 ++
 meta/recipes-devtools/libcomps/libcomps_git.bb | 23 
 3 files changed, 91 insertions(+)
 create mode 100644 
meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
 create mode 100644 
meta/recipes-devtools/libcomps/libcomps/0002-Set-library-installation-path-correctly.patch
 create mode 100644 meta/recipes-devtools/libcomps/libcomps_git.bb

diff --git 
a/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
 
b/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
new file mode 100644
index 000..26e8b06f378
--- /dev/null
+++ 
b/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
@@ -0,0 +1,41 @@
+From ff4aae4c8beaf17cb8e7a3431f6c541eccfae244 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Fri, 30 Dec 2016 18:22:09 +0200
+Subject: [PATCH 1/2] Do not set PYTHON_INSTALL_DIR by running python.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ libcomps/src/python/src/python2/CMakeLists.txt | 2 +-
+ libcomps/src/python/src/python3/CMakeLists.txt | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libcomps/src/python/src/python2/CMakeLists.txt 
b/libcomps/src/python/src/python2/CMakeLists.txt
+index 3ad9e18..0e7dd4b 100644
+--- a/libcomps/src/python/src/python2/CMakeLists.txt
 b/libcomps/src/python/src/python2/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ find_package (PythonLibs 2.6)
+ find_package (PythonInterp 2.6 REQUIRED)
+ 
+-execute_process (COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; 
from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
++#execute_process (COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; 
from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
+ 
+ include_directories(${PYTHON_INCLUDE_PATH})
+ include_directories(${LIBCOMPS_INCLUDE_PATH})
+diff --git a/libcomps/src/python/src/python3/CMakeLists.txt 
b/libcomps/src/python/src/python3/CMakeLists.txt
+index 7fafa9f..ed82d3d 100644
+--- a/libcomps/src/python/src/python3/CMakeLists.txt
 b/libcomps/src/python/src/python3/CMakeLists.txt
+@@ -2,7 +2,7 @@ find_package (PythonLibs 3.0)
+ find_package (PythonInterp 3.0)
+ #add_custom_target(py3-copy)
+ 
+-execute_process (COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; 
from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
++#execute_process (COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; 
from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
+ 
+ include_directories(${PYTHON_INCLUDE_PATH})
+ include_directories(${LIBCOMPS_INCLUDE_PATH})
+-- 
+2.11.0
+
diff --git 
a/meta/recipes-devtools/libcomps/libcomps/0002-Set-library-installation-path-correctly.patch
 
b/meta/recipes-devtools/libcomps/libcomps/0002-Set-library-installation-path-correctly.patch
new file mode 100644
index 000..ec1fdc409bf
--- /dev/null
+++ 
b/meta/recipes-devtools/libcomps/libcomps/0002-Set-library-installation-path-correctly.patch
@@ -0,0 +1,27 @@
+From b1f61296e2f16c2b9a39c5501e4538628ff01ab4 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Fri, 30 Dec 2016 18:26:00 +0200
+Subject: [PATCH 2/2] Set library installation path correctly
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ libcomps/src/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libcomps/src/CMakeLists.txt b/libcomps/src/CMakeLists.txt
+index e553d77..e2eef9c 100644
+--- a/libcomps/src/CMakeLists.txt
 b/libcomps/src/CMakeLists.txt
+@@ -52,7 +52,7 @@ add_dependencies(libcomps src-copy)
+ IF (CMAKE_SIZEOF_VOID_P MATCHES "8")
+ SET (LIB_SUFFIX "64")
+ ENDIF (CMAKE_SIZEOF_VOID_P MATCHES "8")
+-set (LIB_INST_DIR ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX})
++set (LIB_INST_DIR ${CMAKE_INSTALL_LIBDIR})
+ 
+ 
+ install (FILES ${libcomps_HEADERS} DESTINATION include/libcomps)
+-- 
+2.11.0
+
diff --git a/meta/recipes-devtools/libcomps/libcomps_git.bb 
b/meta/recipes-devtools/libcomps/libcomps_git.bb
new file mode 100644
index 000..448ea62f67c
--- /dev/null
+++ b/meta/recipes-devtools/libcomps/libcomps_git.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Libcomps is alternative for yum.comps library

[OE-core] [PATCHv2 15/39] python-smartpm: remove the recipe

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...m_sys-use-md5sum-instead-of-mtime-as-the-.patch |  38 --
 ...art-add-deugging-when-targetpath-is-empty.patch |  47 ---
 .../smart-add-for-rpm-ignoresize-check.patch   |  35 --
 .../smart-already-installed-message.patch  |  54 ---
 .../python/python-smartpm/smart-attempt-fix.patch  | 158 -
 .../python/python-smartpm/smart-attempt.patch  | 185 --
 ...cache.py-getPackages-matches-name-version.patch |  43 ---
 .../python-smartpm/smart-channel-remove-all.patch  |  33 --
 .../python/python-smartpm/smart-channelsdir.patch  |  24 --
 .../python/python-smartpm/smart-locale.patch   |  27 --
 .../python/python-smartpm/smart-recommends.patch   | 381 -
 .../smart-rpm-transaction-failure-check.patch  |  57 ---
 .../smart-set-noprogress-for-pycurl.patch  |  20 --
 .../smartpm-rpm5-support-check-signatures.patch| 112 --
 meta/recipes-devtools/python/python-smartpm_git.bb | 141 
 15 files changed, 1355 deletions(-)
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/channels-rpm_sys-use-md5sum-instead-of-mtime-as-the-.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-add-deugging-when-targetpath-is-empty.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-add-for-rpm-ignoresize-check.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-already-installed-message.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-attempt-fix.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-attempt.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-cache.py-getPackages-matches-name-version.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-channel-remove-all.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-channelsdir.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-locale.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-recommends.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-rpm-transaction-failure-check.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smart-set-noprogress-for-pycurl.patch
 delete mode 100644 
meta/recipes-devtools/python/python-smartpm/smartpm-rpm5-support-check-signatures.patch
 delete mode 100644 meta/recipes-devtools/python/python-smartpm_git.bb

diff --git 
a/meta/recipes-devtools/python/python-smartpm/channels-rpm_sys-use-md5sum-instead-of-mtime-as-the-.patch
 
b/meta/recipes-devtools/python/python-smartpm/channels-rpm_sys-use-md5sum-instead-of-mtime-as-the-.patch
deleted file mode 100644
index 2f14a124efc..000
--- 
a/meta/recipes-devtools/python/python-smartpm/channels-rpm_sys-use-md5sum-instead-of-mtime-as-the-.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-channels/rpm_sys: use md5sum instead of mtime as the digest
-
-Use the internal getFileDigest() function (which defaults to md5) instead of
-mtime for getting the file digest. On some systems mtime proved to be
-unreliable because of delayed update. This caused smart to miss rpm db updates
-and thus get its understanding of installed packages out of sync.
-
-Upstream-Status: Pending
-
-Signed-off-by: Markus Lehtonen <markus.lehto...@linux.intel.com>

- smart/channels/rpm_sys.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/smart/channels/rpm_sys.py b/smart/channels/rpm_sys.py
-index b9fda27..6f1fe94 100644
 a/smart/channels/rpm_sys.py
-+++ b/smart/channels/rpm_sys.py
-@@ -22,6 +22,7 @@
- from smart.backends.rpm.header import RPMDBLoader
- from smart.backends.rpm.base import getTS, rpm_join_dbpath
- from smart.channel import PackageChannel
-+from smart.util.filetools import getFileDigest
- from smart import *
- import os
- 
-@@ -35,7 +36,7 @@ class RPMSysChannel(PackageChannel):
- dbdir = rpm_join_dbpath(sysconf.get("rpm-root", "/"),
- sysconf.get("rpm-dbpath", "var/lib/rpm"))
- path = os.path.join(dbdir, "Packages")
--digest = os.path.getmtime(path)
-+digest = getFileDigest(path)
- if digest == self._digest:
- return True
- self.removeLoaders()
--- 
-2.6.6
-
diff --git 
a/meta/recipes-devtools/python/python-smartpm/smart-add-deugging-when-targetpath-is-empty.patch
 
b/meta/recipes-devtools/python/python-smartpm/smart-add-deugging-when-targetpath-is-empty.patch
deleted file mode 100644
index 5e80804bf42..000
--- 
a/meta/recipes-devtools/python/python-smartpm/smart-add-deugging-when-targetpath-is-empty.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 01e51afd03131947f8d74b9a23fdbc0078249499 Mon Sep 17 00:00:00 2001
-From: Mariano Lopez <mariano.lo...@linux.intel.com>
-Date: Wed, 3 Aug 

[OE-core] [PATCHv2 14/39] dnf: add a recipe

2017-02-21 Thread Alexander Kanavin
This is replacing Smart package manager, which is unsupported upstream, and has 
a growing
amount of issues (lack of python 3.x support in particular). We identified dnf 
as
the only feasible replacement.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...Corretly-install-tmpfiles.d-configuration.patch | 21 ++
 ...hardcode-etc-and-systemd-unit-directories.patch | 29 +
 ...0001-Do-not-prepend-installroot-to-logdir.patch | 31 ++
 .../dnf/dnf/0028-Use-backports.lzma-not-lzma.patch | 30 ++
 ...-set-PYTHON_INSTALL_DIR-by-running-python.patch | 27 
 .../dnf/0030-Run-python-scripts-using-env.patch| 48 ++
 meta/recipes-devtools/dnf/dnf_git.bb   | 40 ++
 7 files changed, 226 insertions(+)
 create mode 100644 
meta/recipes-devtools/dnf/dnf/0001-Corretly-install-tmpfiles.d-configuration.patch
 create mode 100644 
meta/recipes-devtools/dnf/dnf/0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch
 create mode 100644 
meta/recipes-devtools/dnf/dnf/0001-Do-not-prepend-installroot-to-logdir.patch
 create mode 100644 
meta/recipes-devtools/dnf/dnf/0028-Use-backports.lzma-not-lzma.patch
 create mode 100644 
meta/recipes-devtools/dnf/dnf/0029-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
 create mode 100644 
meta/recipes-devtools/dnf/dnf/0030-Run-python-scripts-using-env.patch
 create mode 100644 meta/recipes-devtools/dnf/dnf_git.bb

diff --git 
a/meta/recipes-devtools/dnf/dnf/0001-Corretly-install-tmpfiles.d-configuration.patch
 
b/meta/recipes-devtools/dnf/dnf/0001-Corretly-install-tmpfiles.d-configuration.patch
new file mode 100644
index 000..c9df4589746
--- /dev/null
+++ 
b/meta/recipes-devtools/dnf/dnf/0001-Corretly-install-tmpfiles.d-configuration.patch
@@ -0,0 +1,21 @@
+From 8ce181714640315d2dd37ee794acbb22063cd669 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Thu, 26 Jan 2017 16:36:20 +0200
+Subject: [PATCH] Corretly install tmpfiles.d configuration
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ etc/tmpfiles.d/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/etc/tmpfiles.d/CMakeLists.txt b/etc/tmpfiles.d/CMakeLists.txt
+index f69c773e..3eb6d0e8 100644
+--- a/etc/tmpfiles.d/CMakeLists.txt
 b/etc/tmpfiles.d/CMakeLists.txt
+@@ -1 +1 @@
+-INSTALL (FILES dnf.conf DESTINATION /usr/lib/tmpfiles.d/)
++INSTALL (FILES dnf.conf DESTINATION ${SYSCONFDIR}/tmpfiles.d/)
+-- 
+2.11.0
+
diff --git 
a/meta/recipes-devtools/dnf/dnf/0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch
 
b/meta/recipes-devtools/dnf/dnf/0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch
new file mode 100644
index 000..0f261e5c5d6
--- /dev/null
+++ 
b/meta/recipes-devtools/dnf/dnf/0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch
@@ -0,0 +1,29 @@
+From 4313ced1320594013795f11f6db00381e3f4cc45 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Thu, 26 Jan 2017 16:25:47 +0200
+Subject: [PATCH] Do not hardcode /etc and systemd unit directories
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6a319935..db20ccd4 100644
+--- a/CMakeLists.txt
 b/CMakeLists.txt
+@@ -7,8 +7,8 @@ if (NOT PYTHON_DESIRED)
+ set (PYTHON_DESIRED "2")
+ endif()
+ 
+-SET( SYSCONFDIR /etc)
+-SET( SYSTEMD_DIR /usr/lib/systemd/system)
++SET( SYSCONFDIR ${CMAKE_INSTALL_SYSCONFDIR})
++SET( SYSTEMD_DIR $ENV{systemd_system_unitdir})
+ 
+ if (${PYTHON_DESIRED} STREQUAL "2")
+   FIND_PACKAGE (PythonInterp REQUIRED)
+-- 
+2.11.0
+
diff --git 
a/meta/recipes-devtools/dnf/dnf/0001-Do-not-prepend-installroot-to-logdir.patch 
b/meta/recipes-devtools/dnf/dnf/0001-Do-not-prepend-installroot-to-logdir.patch
new file mode 100644
index 000..a90e77cbf10
--- /dev/null
+++ 
b/meta/recipes-devtools/dnf/dnf/0001-Do-not-prepend-installroot-to-logdir.patch
@@ -0,0 +1,31 @@
+From 31653d324cf8c7b1f2f9e49d22676bd2ac546331 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Wed, 11 Jan 2017 15:10:13 +0200
+Subject: [PATCH] Do not prepend installroot to logdir.
+
+This would otherwise write the logs into rootfs/var/log
+(whereas we want them in $T),
+and will break installation of base-files rpm.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ dnf/cli/cli.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dnf/cli/cli.py b/dnf/cli/cli.py
+index b764801a..893f4bda 100644
+--- a/dnf/cli/cli.py
 b/dnf/cli/cli.py
+@@ -881,7 +88

[OE-core] [PATCHv2 24/39] package_rpm.bbclass: replace createrepo reference with createrepo_c

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/package_rpm.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 480c6d58d39..27a2bb479a2 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -763,6 +763,6 @@ do_package_write_rpm[depends] += 
"${@oe.utils.build_depends_string(d.getVar('PAC
 addtask package_write_rpm after do_packagedata do_package
 
 PACKAGEINDEXDEPS += "rpm-native:do_populate_sysroot"
-PACKAGEINDEXDEPS += "createrepo-native:do_populate_sysroot"
+PACKAGEINDEXDEPS += "createrepo-c-native:do_populate_sysroot"
 
 do_build[recrdeptask] += "do_package_write_rpm"
-- 
2.11.0

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


[OE-core] [PATCHv2 10/39] python-backports-lzma: add a recipe

2017-02-21 Thread Alexander Kanavin
It is needed by dnf, and only when using Python 2.x, so can
be dropped after moving dnf/rpm4 stack to Python 3.x.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...-not-add-include-and-library-directories-.patch | 32 ++
 .../python-backports-lzma_git.bb   | 21 ++
 2 files changed, 53 insertions(+)
 create mode 100644 
meta/recipes-devtools/python-backports-lzma/python-backports-lzma/0001-setup.py-do-not-add-include-and-library-directories-.patch
 create mode 100644 
meta/recipes-devtools/python-backports-lzma/python-backports-lzma_git.bb

diff --git 
a/meta/recipes-devtools/python-backports-lzma/python-backports-lzma/0001-setup.py-do-not-add-include-and-library-directories-.patch
 
b/meta/recipes-devtools/python-backports-lzma/python-backports-lzma/0001-setup.py-do-not-add-include-and-library-directories-.patch
new file mode 100644
index 000..0eb904a8a70
--- /dev/null
+++ 
b/meta/recipes-devtools/python-backports-lzma/python-backports-lzma/0001-setup.py-do-not-add-include-and-library-directories-.patch
@@ -0,0 +1,32 @@
+From e5e3196cf69172b625c8c6ccca991c02fd18137c Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Fri, 30 Dec 2016 18:02:12 +0200
+Subject: [PATCH] setup.py: do not add include and library directories from the
+ host
+
+This avoids host contamination.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ setup.py | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 7886cf7..9a0356a 100644
+--- a/setup.py
 b/setup.py
+@@ -31,9 +31,7 @@ packages = ["backports", "backports.lzma"]
+ home = os.path.expanduser("~")
+ extens = [Extension('backports/lzma/_lzma',
+ ['backports/lzma/_lzmamodule.c'],
+-libraries = ['lzma'],
+-include_dirs = [os.path.join(home, 'include'), 
'/opt/local/include', '/usr/local/include'],
+-library_dirs = [os.path.join(home, 'lib'), 
'/opt/local/lib', '/usr/local/lib']
++libraries = ['lzma']
+ )]
+ 
+ descr = "Backport of Python 3.3's 'lzma' module for XZ/LZMA compressed files."
+-- 
+2.11.0
+
diff --git 
a/meta/recipes-devtools/python-backports-lzma/python-backports-lzma_git.bb 
b/meta/recipes-devtools/python-backports-lzma/python-backports-lzma_git.bb
new file mode 100644
index 000..6d3b8d569de
--- /dev/null
+++ b/meta/recipes-devtools/python-backports-lzma/python-backports-lzma_git.bb
@@ -0,0 +1,21 @@
+HOMEPAGE = "https://github.com/peterjc/backports.lzma;
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=846e05e7e9e1c886b2637c230cfcd5dd"
+
+SRC_URI = "git://github.com/peterjc/backports.lzma.git \
+   
file://0001-setup.py-do-not-add-include-and-library-directories-.patch \
+   "
+
+PV = "0.0.6+git${SRCPV}"
+SRCREV = "718b3316ae7aee8e03c02e7e110108779ce3aec8"
+
+S = "${WORKDIR}/git"
+
+inherit distutils
+
+DEPENDS_append = " xz"
+
+RDEPENDS_${PN} += "python-core python-io python-pkgutil"
+RDEPENDS_${PN}_class-native += "python-core"
+
+BBCLASSEXTEND = "native"
-- 
2.11.0

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


[OE-core] [PATCHv2 11/39] librepo: add a recipe

2017-02-21 Thread Alexander Kanavin
librepo is needed by dnf and libdnf.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...ly-set-the-library-installation-directory.patch | 28 +++
 ...to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch | 41 ++
 ...-race-when-deleting-temporary-directories.patch | 41 ++
 ...ariables-with-pkg-config-not-with-cmake-m.patch | 29 +++
 meta/recipes-devtools/librepo/librepo_git.bb   | 24 +
 5 files changed, 163 insertions(+)
 create mode 100644 
meta/recipes-devtools/librepo/librepo/0001-Correctly-set-the-library-installation-directory.patch
 create mode 100644 
meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch
 create mode 100644 
meta/recipes-devtools/librepo/librepo/0003-tests-fix-a-race-when-deleting-temporary-directories.patch
 create mode 100644 
meta/recipes-devtools/librepo/librepo/0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch
 create mode 100644 meta/recipes-devtools/librepo/librepo_git.bb

diff --git 
a/meta/recipes-devtools/librepo/librepo/0001-Correctly-set-the-library-installation-directory.patch
 
b/meta/recipes-devtools/librepo/librepo/0001-Correctly-set-the-library-installation-directory.patch
new file mode 100644
index 000..01fea40467e
--- /dev/null
+++ 
b/meta/recipes-devtools/librepo/librepo/0001-Correctly-set-the-library-installation-directory.patch
@@ -0,0 +1,28 @@
+From 36d87919223db9b054862ad38cdda8d9222a2bab Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Fri, 30 Dec 2016 18:04:35 +0200
+Subject: [PATCH 1/4] Correctly set the library installation directory
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ librepo/CMakeLists.txt | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/librepo/CMakeLists.txt b/librepo/CMakeLists.txt
+index 2fe76d8..5026def 100644
+--- a/librepo/CMakeLists.txt
 b/librepo/CMakeLists.txt
+@@ -60,7 +60,8 @@ CONFIGURE_FILE("version.h.in" 
"${CMAKE_CURRENT_SOURCE_DIR}/version.h" @ONLY)
+ IF (CMAKE_SIZEOF_VOID_P MATCHES "8")
+   SET (LIB_SUFFIX "64")
+ ENDIF (CMAKE_SIZEOF_VOID_P MATCHES "8")
+-SET (LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}")
++#SET (LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}")
++SET (LIB_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}")
+ 
+ INSTALL(FILES ${librepo_HEADERS} DESTINATION include/librepo)
+ INSTALL(TARGETS librepo LIBRARY DESTINATION ${LIB_INSTALL_DIR})
+-- 
+2.11.0
+
diff --git 
a/meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch
 
b/meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch
new file mode 100644
index 000..7138dfce21d
--- /dev/null
+++ 
b/meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch
@@ -0,0 +1,41 @@
+From 1570ad33dd7e5d83f3ee80bd104b114709ac1e34 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Fri, 30 Dec 2016 18:05:36 +0200
+Subject: [PATCH 2/4] Do not try to obtain PYTHON_INSTALL_DIR by running
+ python.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ librepo/python/python2/CMakeLists.txt | 2 +-
+ librepo/python/python3/CMakeLists.txt | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/librepo/python/python2/CMakeLists.txt 
b/librepo/python/python2/CMakeLists.txt
+index 3615e17..cffa99f 100644
+--- a/librepo/python/python2/CMakeLists.txt
 b/librepo/python/python2/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ FIND_PACKAGE (PythonLibs 2 )
+ FIND_PACKAGE (PythonInterp 2 REQUIRED)
+-EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from 
distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
++#EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; 
from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
+ INCLUDE_DIRECTORIES (${PYTHON_INCLUDE_PATH})
+ 
+ MESSAGE(STATUS "Python install dir is ${PYTHON_INSTALL_DIR}")
+diff --git a/librepo/python/python3/CMakeLists.txt 
b/librepo/python/python3/CMakeLists.txt
+index dfecac9..38bcc72 100644
+--- a/librepo/python/python3/CMakeLists.txt
 b/librepo/python/python3/CMakeLists.txt
+@@ -10,7 +10,7 @@ message("--- ${PYTHON_INCLUDE_DIR}")
+ 
+ FIND_PACKAGE(PythonLibs 3.0)
+ FIND_PACKAGE(PythonInterp 3.0 REQUIRED)
+-EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from 
distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTA

[OE-core] [PATCHv2 00/39] Replace Smart package manager with DNF package manager

2017-02-21 Thread Alexander Kanavin
This patchset replaces the outdated, unsupported Smart package manager with
DNF package manager (Fedora's successor to yum). This is not a trivial change
and there are many consequences:

- DNF is API incompatible with rpm5; therefore rpm5 is replaced with rpm4.

- There are various non-default features that aren't yet supported or tested:
such as signing packages and repositories, RPM_PREFER_ELF_ARCH and possibly 
others

- db 6.x is removed from oe-core; db 5.x is replacing it

- Although I did my very best to test this patchset locally, 
the whole thing may break down in surprising ways. I would appreaciate all the 
help
you can provide here. The patchset touches many things in many places and has
more than the usual share of side effects.

Please see specific commits for further information and explanations. There is 
also
a longer email explaining user-visible changes and rationale behind them in
http://lists.openembedded.org/pipermail/openembedded-architecture/2017-February/000419.html
(note that section 6 in that email is no longer valid.

Changes in version 2 of the patchset:

- addressed review comments received for the first version of the pachset;
in particular the controversial pkg_postinst changes are removed (but they'll
be back as a separate change). Please check that I didn't forget anything.

- rpm package signing with gpg is now fixed, and should be working

The following changes since commit e436a6398684d2872cb541f1cfb0f67b3618d15a:

  layer.conf: bump version for change in eSDK selftest behaviour (2017-02-19 
09:39:03 -0800)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib akanavin/dnf-rpm4
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=akanavin/dnf-rpm4

Alexander Kanavin (37):
  package.bbclass: fix locations of debugedit and rpmdeps utilities
  libsolv: enable rpm support
  rpmresolve: remove the recipe
  createrepo-c: add a recipe
  createrepo: remove the recipe
  rpm: add a 4.x recipe
  rpm: remove 5.x recipe
  python-pygpgme: add a recipe
  python-iniparse: add a recipe
  python-backports-lzma: add a recipe
  librepo: add a recipe
  libcomps: add a recipe
  libdnf: add a recipe
  dnf: add a recipe
  python-smartpm: remove the recipe
  db: remove the 6.x recipe
  package_rpm.bbclass: make architecture-independent .rpm packages
"noarch" instead of "all"
  package_manager.py: improve the API for insert_feed_uris()
  package_rpm.bbclass: correctly map RRECOMMENDS and RSUGGESTS to rpm
tags
  nativesdk-packagegroup-sdk-host: replace smartpm with dnf
  rootfs_rpm.bbclass: migrate image creation to dnf
  scripts/rpm2cpio.sh: replace 5.x version with 4.x version
  scripts/oe-setup-rpmrepo: replace createrepo with createrepo_c
  package_rpm.bbclass: replace createrepo reference with createrepo_c
  package_rpm.bbclass: no need to specify the magic file location
  testimage.bbclass: fix runtime test for rpm, port smart tests to dnf
  package_rpm.bbclass: instruct rpm to not remove the buildroot
directory
  selftest: do not perform a full build in test_continue
  selftest: update output checks in incremental image test to match what
dnf prints
  selftest: allow bitbake to fail in test_options_warnqa_errorqa_switch
  ossp-uuid: remove the recipe
  byacc: remove the recipe
  gpg_sign.py: fix signing of rpm files using gpg
  oe-selftest: no need to parse gpg output to determine the name of the
signing key
  run-postinsts: simplify the logic of whether to install it to images
  package_rpm.bbclass: add a /bin/sh Provides for nativesdk- packages
  security_flags.inc: update to reflect smart->dnf transition

Markus Lehtonen (2):
  lib/oe/gpg_sign: make gpg version a property of the signer
  gpg_sign.py: fix rpm signing with gpg > 2.1

 .../recipes-test/images/oe-selftest-image.bb   |2 +-
 .../recipes-test/images/wic-image-minimal.bb   |2 +-
 meta/classes/image.bbclass |2 +-
 meta/classes/package.bbclass   |4 +-
 meta/classes/package_rpm.bbclass   |   29 +-
 meta/classes/rootfs_deb.bbclass|1 -
 meta/classes/rootfs_ipk.bbclass|1 -
 meta/classes/rootfs_rpm.bbclass|   22 +-
 meta/classes/testimage.bbclass |   21 +-
 meta/conf/distro/include/default-versions.inc  |3 -
 meta/conf/distro/include/security_flags.inc|5 +-
 meta/lib/oe/gpg_sign.py|   17 +-
 meta/lib/oe/manifest.py|2 +-
 meta/lib/oe/package_manager.py | 1218 
 meta/lib/oe/rootfs.py  |   23 +-
 meta/lib/oe/sdk.py |7 +-
 meta/lib/oeqa/oetest.py|7 -
 meta/lib/oeqa/runtime/cases/dnf.py |  112 ++
 meta/lib/oeqa/runtime/cases/parselogs.py   |1 +
 m

[OE-core] [PATCHv2 01/39] package.bbclass: fix locations of debugedit and rpmdeps utilities

2017-02-21 Thread Alexander Kanavin
rpm4 installs them in different locations than rpm5. This also replaces
our custom rpmdeps-oecore with standard rpmdeps; I'm not seeing a
significant performance penalty.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/package.bbclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index ac2d71cfa44..17029451e36 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -345,7 +345,7 @@ def splitdebuginfo(file, debugfile, debugsrcdir, 
sourcefile, d):
 
 dvar = d.getVar('PKGD')
 objcopy = d.getVar("OBJCOPY")
-debugedit = d.expand("${STAGING_LIBDIR_NATIVE}/rpm/bin/debugedit")
+debugedit = d.expand("${STAGING_LIBDIR_NATIVE}/rpm/debugedit")
 
 # We ignore kernel modules, we don't generate debug info files.
 if file.find("/lib/modules/") != -1 and file.endswith(".ko"):
@@ -1436,7 +1436,7 @@ if [ x"$D" = "x" ]; then
 fi
 }
 
-RPMDEPS = "${STAGING_LIBDIR_NATIVE}/rpm/bin/rpmdeps-oecore --macros 
${STAGING_LIBDIR_NATIVE}/rpm/macros --define '_rpmfc_magic_path 
${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc' --rpmpopt 
${STAGING_LIBDIR_NATIVE}/rpm/rpmpopt"
+RPMDEPS = "${STAGING_LIBDIR_NATIVE}/rpm/rpmdeps --macros 
${STAGING_LIBDIR_NATIVE}/rpm/macros --define '_rpmfc_magic_path 
${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc' --rpmpopt 
${STAGING_LIBDIR_NATIVE}/rpm/rpmpopt"
 
 # Collect perfile run-time dependency metadata
 # Output:
-- 
2.11.0

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


[OE-core] [PATCHv2 04/39] createrepo-c: add a recipe

2017-02-21 Thread Alexander Kanavin
This is the current C reimplementation/replacement of the original createrepo.
https://github.com/rpm-software-management/createrepo_c/wiki

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...0001-Correctly-install-the-shared-library.patch | 28 +++
 ...-set-PYTHON_INSTALL_DIR-by-running-python.patch | 27 +++
 .../createrepo-c/createrepo-c_git.bb   | 31 ++
 3 files changed, 86 insertions(+)
 create mode 100644 
meta/recipes-devtools/createrepo-c/createrepo-c/0001-Correctly-install-the-shared-library.patch
 create mode 100644 
meta/recipes-devtools/createrepo-c/createrepo-c/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
 create mode 100644 meta/recipes-devtools/createrepo-c/createrepo-c_git.bb

diff --git 
a/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Correctly-install-the-shared-library.patch
 
b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Correctly-install-the-shared-library.patch
new file mode 100644
index 000..01271246a22
--- /dev/null
+++ 
b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Correctly-install-the-shared-library.patch
@@ -0,0 +1,28 @@
+From fef835e1fdedc72c97d9c3e5704302e56e1bdef0 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Mon, 2 Jan 2017 17:23:59 +0200
+Subject: [PATCH] Correctly install the shared library
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ src/CMakeLists.txt | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index f3635e8..46dc037 100644
+--- a/src/CMakeLists.txt
 b/src/CMakeLists.txt
+@@ -110,7 +110,8 @@ CONFIGURE_FILE("deltarpms.h.in" 
"${CMAKE_CURRENT_SOURCE_DIR}/deltarpms.h" @ONLY)
+ IF (CMAKE_SIZEOF_VOID_P MATCHES "8")
+ SET (LIB_SUFFIX "64")
+ ENDIF (CMAKE_SIZEOF_VOID_P MATCHES "8")
+-SET (LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}")
++#SET (LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}")
++SET (LIB_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}")
+ 
+ INSTALL(FILES ${headers} DESTINATION "include/createrepo_c")
+ INSTALL(FILES "createrepo_c.pc" DESTINATION "${LIB_INSTALL_DIR}/pkgconfig")
+-- 
+2.11.0
+
diff --git 
a/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
 
b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
new file mode 100644
index 000..9531070937c
--- /dev/null
+++ 
b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch
@@ -0,0 +1,27 @@
+From bef487b5c2515062c5dd73c21082ce42f69aa717 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Fri, 30 Dec 2016 18:31:02 +0200
+Subject: [PATCH] Do not set PYTHON_INSTALL_DIR by running python
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ src/python/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/python/CMakeLists.txt b/src/python/CMakeLists.txt
+index 9f1ac64..eae0cbb 100644
+--- a/src/python/CMakeLists.txt
 b/src/python/CMakeLists.txt
+@@ -19,7 +19,7 @@ else()
+ FIND_PACKAGE(PythonInterp 3.0 REQUIRED)
+ endif()
+ 
+-EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from 
distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
++#EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; 
from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" 
OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
+ INCLUDE_DIRECTORIES (${PYTHON_INCLUDE_PATH})
+ 
+ MESSAGE(STATUS "Python install dir is ${PYTHON_INSTALL_DIR}")
+-- 
+2.11.0
+
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb 
b/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
new file mode 100644
index 000..1e69067eebf
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
@@ -0,0 +1,31 @@
+DESCRIPTION = "C implementation of createrepo."
+HOMEPAGE = "https://github.com/rpm-software-management/createrepo_c/wiki;
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://github.com/rpm-software-management/createrepo_c \
+   file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
+   file://0001-Correctly-install-the-shared-library.patch \
+   "
+
+PV = "0.10.0+git${SRCPV}"
+SRCREV = "748891ff8ee524c2d37926c608cd2794f88013f3"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "e

[OE-core] [PATCHv2 05/39] createrepo: remove the recipe

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 .../createrepo/createrepo/createrepo-dbpath.patch  |  61 
 .../createrepo/createrepo/createrepo-rpm549.patch  |  22 ---
 ...dumpMetadata-disable-signature-validation.patch |  31 
 .../createrepo/createrepo/fix-native-install.patch | 163 -
 .../createrepo/createrepo/fixstat.patch|  19 ---
 ...n-scripts-should-use-interpreter-from-env.patch |  47 --
 .../createrepo/createrepo/recommends.patch |  71 -
 .../createrepo/createrepo/rpm-createsolvedb.py |  64 
 .../createrepo/createrepo_0.4.11.bb|  51 ---
 9 files changed, 529 deletions(-)
 delete mode 100644 
meta/recipes-support/createrepo/createrepo/createrepo-dbpath.patch
 delete mode 100644 
meta/recipes-support/createrepo/createrepo/createrepo-rpm549.patch
 delete mode 100644 
meta/recipes-support/createrepo/createrepo/dumpMetadata-disable-signature-validation.patch
 delete mode 100644 
meta/recipes-support/createrepo/createrepo/fix-native-install.patch
 delete mode 100644 meta/recipes-support/createrepo/createrepo/fixstat.patch
 delete mode 100644 
meta/recipes-support/createrepo/createrepo/python-scripts-should-use-interpreter-from-env.patch
 delete mode 100644 meta/recipes-support/createrepo/createrepo/recommends.patch
 delete mode 100755 
meta/recipes-support/createrepo/createrepo/rpm-createsolvedb.py
 delete mode 100644 meta/recipes-support/createrepo/createrepo_0.4.11.bb

diff --git a/meta/recipes-support/createrepo/createrepo/createrepo-dbpath.patch 
b/meta/recipes-support/createrepo/createrepo/createrepo-dbpath.patch
deleted file mode 100644
index 72755981a91..000
--- a/meta/recipes-support/createrepo/createrepo/createrepo-dbpath.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-createrepo: Implement --dbpath command line option
-
---dbpath option allows to specify path to the directory
-with rpm database. By default createrepo uses or creates
-rpm database in /var/lib/rpm/
-
-Upstream-Status: Pending
-
-Signed-off-by: Ed Bartosh <ed.bart...@linux.intel.com>
-
 createrepo-0.4.11.orig/genpkgmetadata.py 2015-03-30 22:18:19.90400 
+0300
-+++ createrepo-0.4.11/genpkgmetadata.py 2015-03-30 22:28:49.20800 +0300
-@@ -65,6 +65,7 @@
-  -p, --pretty = output xml files in pretty format.
-  --update = update existing metadata (if present)
-  -d, --database = generate the sqlite databases.
-+ --dbpath  = specify path to rpm db directory.
- """)
- 
- sys.exit(retval)
-@@ -72,10 +73,13 @@
- class MetaDataGenerator:
- def __init__(self, cmds):
- self.cmds = cmds
--self.ts = rpm.TransactionSet()
- self.pkgcount = 0
- self.files = []
- 
-+if self.cmds['dbpath']:
-+rpm.addMacro("_dbpath", self.cmds['dbpath'])
-+self.ts = rpm.TransactionSet()
-+
- def _os_path_walk(self, top, func, arg):
- """Directory tree walk with callback function.
-  copy of os.path.walk, fixes the link/stating problem
-@@ -435,6 +439,7 @@
- cmds['dir-pattern-match'] = ['.*bin\/.*', '^\/etc\/.*']
- cmds['skip-symlinks'] = False
- cmds['pkglist'] = []
-+cmds['dbpath'] = None
- 
- try:
- gopts, argsleft = getopt.getopt(args, 'phqVvndg:s:x:u:c:o:CSi:', 
['help', 'exclude=',
-@@ -442,7 +447,7 @@
-   'baseurl=', 
'groupfile=', 'checksum=',
-   'version', 
'pretty', 'split', 'outputdir=',
-   'noepoch', 
'checkts', 'database', 'update',
--  
'skip-symlinks', 'pkglist='])
-+  
'skip-symlinks', 'pkglist=', 'dbpath='])
- except getopt.error, e:
- errorprint(_('Options Error: %s.') % e)
- usage()
-@@ -516,6 +521,8 @@
- cmds['skip-symlinks'] = True
- elif arg in ['-i', '--pkglist']:
- cmds['pkglist'] = a
-+elif arg == '--dbpath':
-+cmds['dbpath'] = os.path.realpath(a)
- 
- except ValueError, e:
- errorprint(_('Options Error: %s') % e)
diff --git a/meta/recipes-support/createrepo/createrepo/createrepo-rpm549.patch 
b/meta/recipes-support/createrepo/createrepo/createrepo-rpm549.patch
deleted file mode 100644
index bc7200d0722..000
--- a/meta/recipes-support/createrepo/createrepo/createrepo-rpm549.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-dumpMetadata.py: Fix for RPM5 - 5.4.9 integration
-
-RPM5 no longer has a switch to disable signature validation.  (Due to security
-validation concerns.)
-
-Upstream-Status: Inappropriate [other]
-  createrepo does not support RPM5 upstream
-
-Signed-off-by: Mark Ha

[OE-core] [PATCHv2 29/39] selftest: update output checks in incremental image test to match what dnf prints

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/lib/oeqa/selftest/buildoptions.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oeqa/selftest/buildoptions.py 
b/meta/lib/oeqa/selftest/buildoptions.py
index d40eb007ded..1801511913b 100644
--- a/meta/lib/oeqa/selftest/buildoptions.py
+++ b/meta/lib/oeqa/selftest/buildoptions.py
@@ -22,12 +22,12 @@ class ImageOptionsTests(oeSelfTest):
 bitbake("core-image-minimal")
 log_data_file = os.path.join(get_bb_var("WORKDIR", 
"core-image-minimal"), "temp/log.do_rootfs")
 log_data_created = ftools.read_file(log_data_file)
-incremental_created = re.search("NOTE: load old install solution for 
incremental install\nNOTE: old install solution not exist\nNOTE: creating new 
install solution for incremental install(\n.*)*NOTE: Installing the following 
packages:.*packagegroup-core-ssh-openssh", log_data_created)
+incremental_created = re.search("Installing  : 
packagegroup-core-ssh-openssh", log_data_created)
 self.remove_config('IMAGE_FEATURES += "ssh-server-openssh"')
 self.assertTrue(incremental_created, msg = "Match failed in:\n%s" % 
log_data_created)
 bitbake("core-image-minimal")
 log_data_removed = ftools.read_file(log_data_file)
-incremental_removed = re.search("NOTE: load old install solution for 
incremental install\nNOTE: creating new install solution for incremental 
install(\n.*)*NOTE: incremental removed:.*openssh-sshd-.*", log_data_removed)
+incremental_removed = re.search("Erasing : 
packagegroup-core-ssh-openssh", log_data_removed)
 self.assertTrue(incremental_removed, msg = "Match failed in:\n%s" % 
log_data_removed)
 
 @testcase(286)
-- 
2.11.0

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


[OE-core] [PATCHv2 22/39] scripts/rpm2cpio.sh: replace 5.x version with 4.x version

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 scripts/rpm2cpio.sh | 108 ++--
 1 file changed, 55 insertions(+), 53 deletions(-)

diff --git a/scripts/rpm2cpio.sh b/scripts/rpm2cpio.sh
index 5df8c0f7054..cf23472ba95 100755
--- a/scripts/rpm2cpio.sh
+++ b/scripts/rpm2cpio.sh
@@ -1,53 +1,55 @@
-#!/bin/sh
-
-# This comes from the RPM5 5.4.0 distribution.
-
-pkg=$1
-if [ "$pkg" = "" -o ! -e "$pkg" ]; then
-echo "no package supplied" 1>&2
-   exit 1
-fi
-
-leadsize=96
-o=`expr $leadsize + 8`
-set `od -j $o -N 8 -t u1 $pkg`
-il=`expr 256 \* \( 256 \* \( 256 \* $2 + $3 \) + $4 \) + $5`
-dl=`expr 256 \* \( 256 \* \( 256 \* $6 + $7 \) + $8 \) + $9`
-# echo "sig il: $il dl: $dl"
-
-sigsize=`expr 8 + 16 \* $il + $dl`
-o=`expr $o + $sigsize + \( 8 - \( $sigsize \% 8 \) \) \% 8 + 8`
-set `od -j $o -N 8 -t u1 $pkg`
-il=`expr 256 \* \( 256 \* \( 256 \* $2 + $3 \) + $4 \) + $5`
-dl=`expr 256 \* \( 256 \* \( 256 \* $6 + $7 \) + $8 \) + $9`
-# echo "hdr il: $il dl: $dl"
-
-hdrsize=`expr 8 + 16 \* $il + $dl`
-o=`expr $o + $hdrsize`
-EXTRACTOR="dd if=$pkg ibs=$o skip=1"
-
-COMPRESSION=`($EXTRACTOR |file -) 2>/dev/null`
-if echo $COMPRESSION |grep -iq gzip; then
-   DECOMPRESSOR=gunzip
-elif echo $COMPRESSION |grep -iq bzip2; then
-   DECOMPRESSOR=bunzip2
-elif echo $COMPRESSION |grep -iq xz; then
-   DECOMPRESSOR=unxz
-elif echo $COMPRESSION |grep -iq cpio; then
-   DECOMPRESSOR=cat
-else
-   # Most versions of file don't support LZMA, therefore we assume
-   # anything not detected is LZMA
-   DECOMPRESSOR=`which unlzma 2>/dev/null`
-   case "$DECOMPRESSOR" in
-   /* ) ;;
-   *  ) DECOMPRESSOR=`which lzmash 2>/dev/null`
-case "$DECOMPRESSOR" in
-/* ) DECOMPRESSOR="lzmash -d -c" ;;
-*  ) DECOMPRESSOR=cat ;;
-esac
-;;
-   esac
-fi
-
-$EXTRACTOR 2>/dev/null | $DECOMPRESSOR
+#!/bin/sh -efu
+
+# This file comes from rpm 4.x distribution
+
+fatal() {
+   echo "$*" >&2
+   exit 1
+}
+
+pkg="$1"
+[ -n "$pkg" -a -e "$pkg" ] ||
+   fatal "No package supplied"
+
+_dd() {
+   local o="$1"; shift
+   dd if="$pkg" skip="$o" iflag=skip_bytes status=none $*
+}
+
+calcsize() {
+   offset=$(($1 + 8))
+
+   local i b b0 b1 b2 b3 b4 b5 b6 b7
+
+   i=0
+   while [ $i -lt 8 ]; do
+   b="$(_dd $(($offset + $i)) bs=1 count=1)"
+   [ -z "$b" ] &&
+   b="0" ||
+   b="$(exec printf '%u\n' "'$b")"
+   eval "b$i=\$b"
+   i=$(($i + 1))
+   done
+
+   rsize=$((8 + ((($b0 << 24) + ($b1 << 16) + ($b2 << 8) + $b3) << 4) + 
($b4 << 24) + ($b5 << 16) + ($b6 << 8) + $b7))
+   offset=$(($offset + $rsize))
+}
+
+case "$(_dd 0 bs=8 count=1)" in
+   "$(printf '\355\253\356\333')"*) ;; # '\xed\xab\xee\xdb'
+   *) fatal "File doesn't look like rpm: $pkg" ;;
+esac
+
+calcsize 96
+sigsize=$rsize
+
+calcsize $(($offset + (8 - ($sigsize % 8)) % 8))
+hdrsize=$rsize
+
+case "$(_dd $offset bs=3 count=1)" in
+   "$(printf '\102\132')"*) _dd $offset | bunzip2 ;; # '\x42\x5a'
+   "$(printf '\037\213')"*) _dd $offset | gunzip  ;; # '\x1f\x8b'
+   "$(printf '\375\067')"*) _dd $offset | xzcat   ;; # '\xfd\x37'
+   "$(printf '\135\000')"*) _dd $offset | unlzma  ;; # '\x5d\x00'
+   *) fatal "Unrecognized rpm file: $pkg" ;;
+esac
-- 
2.11.0

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


[OE-core] [PATCHv2 20/39] nativesdk-packagegroup-sdk-host: replace smartpm with dnf

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb | 2 +-
 meta/recipes-devtools/dnf/dnf_git.bb   | 1 -
 meta/recipes-devtools/libcomps/libcomps_git.bb | 2 +-
 meta/recipes-devtools/libdnf/libdnf_git.bb | 2 +-
 meta/recipes-devtools/librepo/librepo_git.bb   | 2 +-
 .../python-backports-lzma/python-backports-lzma_git.bb | 2 +-
 meta/recipes-devtools/python/python-iniparse_0.4.bb| 2 +-
 meta/recipes-devtools/python/python-pygpgme_0.3.bb | 2 +-
 meta/recipes-devtools/rpm/rpm_git.bb   | 2 +-
 meta/recipes-gnome/gtk-doc/gtk-doc_1.25.bb | 2 +-
 meta/recipes-support/gpgme/gpgme_1.8.0.bb  | 2 +-
 meta/recipes-support/libassuan/libassuan_2.4.3.bb  | 2 +-
 meta/recipes-support/libcheck/libcheck_0.10.0.bb   | 3 ++-
 13 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb 
b/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
index 2c2abed33cd..3283e7370e8 100644
--- a/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
+++ b/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
@@ -22,7 +22,7 @@ RDEPENDS_${PN} = "\
 nativesdk-automake \
 nativesdk-shadow \
 nativesdk-makedevs \
-nativesdk-smartpm \
+nativesdk-dnf \
 nativesdk-postinst-intercept \
 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'nativesdk-wayland', 
'', d)} \
 "
diff --git a/meta/recipes-devtools/dnf/dnf_git.bb 
b/meta/recipes-devtools/dnf/dnf_git.bb
index 82501a866bb..2a6acddd784 100644
--- a/meta/recipes-devtools/dnf/dnf_git.bb
+++ b/meta/recipes-devtools/dnf/dnf_git.bb
@@ -28,7 +28,6 @@ DEPENDS += "python-backports-lzma"
 EXTRA_OECMAKE = " -DWITH_MAN=0 -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR}"
 
 BBCLASSEXTEND = "native nativesdk"
-
 RDEPENDS_${PN}_class-target += "python-core python-codecs python-netclient 
python-email python-threading python-distutils librepo python-shell 
python-subprocess libcomps libdnf python-sqlite3 python-compression 
python-pygpgme python-backports-lzma python-rpm python-iniparse python-json 
python-importlib python-curses python-argparse"
 
 # Direct dnf-native to read rpm configuration from our sysroot, not the one it 
was compiled in
diff --git a/meta/recipes-devtools/libcomps/libcomps_git.bb 
b/meta/recipes-devtools/libcomps/libcomps_git.bb
index 448ea62f67c..8ff13b26b62 100644
--- a/meta/recipes-devtools/libcomps/libcomps_git.bb
+++ b/meta/recipes-devtools/libcomps/libcomps_git.bb
@@ -19,5 +19,5 @@ DEPENDS = "libxml2 expat libcheck"
 EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR}"
 OECMAKE_SOURCEPATH = "${S}/libcomps"
 
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
 
diff --git a/meta/recipes-devtools/libdnf/libdnf_git.bb 
b/meta/recipes-devtools/libdnf/libdnf_git.bb
index 6875401301e..7b1bf21199d 100644
--- a/meta/recipes-devtools/libdnf/libdnf_git.bb
+++ b/meta/recipes-devtools/libdnf/libdnf_git.bb
@@ -32,5 +32,5 @@ DEPENDS += "python-native"
 
 EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} 
-DWITH_MAN=OFF"
 
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
 
diff --git a/meta/recipes-devtools/librepo/librepo_git.bb 
b/meta/recipes-devtools/librepo/librepo_git.bb
index 70e88c47b9e..3f3c5fbcf51 100644
--- a/meta/recipes-devtools/librepo/librepo_git.bb
+++ b/meta/recipes-devtools/librepo/librepo_git.bb
@@ -20,5 +20,5 @@ inherit cmake distutils-base pkgconfig
 
 EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR}"
 
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
 
diff --git 
a/meta/recipes-devtools/python-backports-lzma/python-backports-lzma_git.bb 
b/meta/recipes-devtools/python-backports-lzma/python-backports-lzma_git.bb
index 6d3b8d569de..93c6684be6c 100644
--- a/meta/recipes-devtools/python-backports-lzma/python-backports-lzma_git.bb
+++ b/meta/recipes-devtools/python-backports-lzma/python-backports-lzma_git.bb
@@ -18,4 +18,4 @@ DEPENDS_append = " xz"
 RDEPENDS_${PN} += "python-core python-io python-pkgutil"
 RDEPENDS_${PN}_class-native += "python-core"
 
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python-iniparse_0.4.bb 
b/meta/recipes-devtools/python/python-iniparse_0.4.bb
index f2515759b13..c6d98c2fdfc 100644
--- a/meta/recipes-devtools/python/python-iniparse_0.4.bb
+++ b/meta/recipes-devtools

[OE-core] [PATCHv2 16/39] db: remove the 6.x recipe

2017-02-21 Thread Alexander Kanavin
Version 6.x of Berkeley DB has been rejected by open source community due to 
its hostile
AGPLv3 license; both Fedora and Debian are sticking with db 5.x - and by 
extension,
all the open source projects are still developed and tested with db 5.x

In oe-core the only thing that was requiring db 6.x was rpm 5.x, and so there's 
no reason
to continue carrying db 6.x in oe-core. If someone needs API features that are 
only available in
db 6.x, it can be re-added to meta-oe.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/conf/distro/include/default-versions.inc  |   3 -
 ...Makefile-let-libdb-6.0.la-depend-os_map.l.patch |  29 --
 ...akefile-let-libso_target-depend-on-bt_rec.patch |  30 --
 meta/recipes-support/db/db_5.3.28.bb   |   1 +
 meta/recipes-support/db/db_6.0.35.bb   | 111 -
 5 files changed, 1 insertion(+), 173 deletions(-)
 delete mode 100644 
meta/recipes-support/db/db/Makefile-let-libdb-6.0.la-depend-os_map.l.patch
 delete mode 100644 
meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch
 delete mode 100644 meta/recipes-support/db/db_6.0.35.bb

diff --git a/meta/conf/distro/include/default-versions.inc 
b/meta/conf/distro/include/default-versions.inc
index cc8c533d4c0..d976508ff51 100644
--- a/meta/conf/distro/include/default-versions.inc
+++ b/meta/conf/distro/include/default-versions.inc
@@ -5,6 +5,3 @@
 # Force the older version of liberation-fonts until we fix the fontforge issue
 PREFERRED_VERSION_liberation-fonts ?= "1.04"
 
-# Force db-native's version to keep sync with db while
-# 'AGPL-3.0' in ${INCOMPATIBLE_LICENSE} blacklist
-PREFERRED_VERSION_db-native = "${@incompatible_license_contains('AGPL-3.0', 
'5.%', '6.%', d)}"
diff --git 
a/meta/recipes-support/db/db/Makefile-let-libdb-6.0.la-depend-os_map.l.patch 
b/meta/recipes-support/db/db/Makefile-let-libdb-6.0.la-depend-os_map.l.patch
deleted file mode 100644
index 68a213136b6..000
--- a/meta/recipes-support/db/db/Makefile-let-libdb-6.0.la-depend-os_map.l.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 2902dda6e3f7b2cd5796a96af20deece610e2eb9 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.y...@windriver.com>
-Date: Mon, 16 Nov 2015 22:20:49 -0800
-Subject: [PATCH] build_unix/Makefile: let libdb-6.0.la depend os_map.lo
-
-Fixed parallel issue:
-libtool: link: `os_map.lo' is not a valid libtool object
-Makefile:867: recipe for target 'libdb-6.0.la' failed
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.y...@windriver.com>

- dist/Makefile.in |2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: db-6.0.30/dist/Makefile.in
-===
 db-6.0.30.orig/dist/Makefile.in
-+++ db-6.0.30/dist/Makefile.in
-@@ -863,7 +863,7 @@ $(libdb_version): $(C_OBJS)
-   $(LN) -s $(libdb_version) $(libdb)
- 
- # Shared C library.
--$(libso_target): $(C_OBJS) bt_rec@o@
-+$(libso_target): $(C_OBJS) bt_rec@o@ os_map@o@
-   $(SOLINK) $(SOFLAGS) $(LDFLAGS) -o $@ $(C_OBJS) \
-   $(LIBCSO_LIBS)
-   $(RM) $(libdb)
diff --git 
a/meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch 
b/meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch
deleted file mode 100644
index 86804083472..000
--- 
a/meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From c640ff9340f358a00835816d0fea03d27a7be978 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.y...@windriver.com>
-Date: Tue, 31 Mar 2015 00:56:44 -0700
-Subject: [PATCH] Makefile: let libso_target depend on bt_rec
-
-Fixed parallel issue:
-libtool: link: `bt_rec.lo' is not a valid libtool object
-Makefile:867: recipe for target 'libdb-6.0.la' failed
-make: *** [libdb-6.0.la] Error 1
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.y...@windriver.com>

- Makefile.in |2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: db-6.0.30/dist/Makefile.in
-===
 db-6.0.30.orig/dist/Makefile.in
-+++ db-6.0.30/dist/Makefile.in
-@@ -863,7 +863,7 @@ $(libdb_version): $(C_OBJS)
-   $(LN) -s $(libdb_version) $(libdb)
- 
- # Shared C library.
--$(libso_target): $(C_OBJS)
-+$(libso_target): $(C_OBJS) bt_rec@o@
-   $(SOLINK) $(SOFLAGS) $(LDFLAGS) -o $@ $(C_OBJS) \
-   $(LIBCSO_LIBS)
-   $(RM) $(libdb)
diff --git a/meta/recipes-support/db/db_5.3.28.bb 
b/meta/recipes-support/db/db_5.3.28.bb
index 0b51a1d4403..4f5aae60132 100644
--- a/meta/recipes-support/db/db_5.3.28.bb
+++ b/meta/recipes-support/db/db_5.3.28.bb
@@ -16,6 +16,7 @@ VIRTUAL_NAME ?= "virtual/db"
 RCONFLICTS_${PN} = "db3"
 
 PR = "r1"
+PE = "1"
 
 SRC_URI = "http://download.oracle.com/berkeley-db/db-${PV}.tar.gz;
 SRC_URI +

[OE-core] [PATCHv2 18/39] package_manager.py: improve the API for insert_feed_uris()

2017-02-21 Thread Alexander Kanavin
No need to store the configuration as class members,
just pass it directly into the method.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/lib/oe/package_manager.py | 41 ++---
 meta/lib/oe/rootfs.py  |  5 -
 2 files changed, 26 insertions(+), 20 deletions(-)

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 79f0a8b9f1b..725997ce334 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -513,9 +513,6 @@ class PackageManager(object, metaclass=ABCMeta):
 self.d = d
 self.deploy_dir = None
 self.deploy_lock = None
-self.feed_uris = self.d.getVar('PACKAGE_FEED_URIS') or ""
-self.feed_base_paths = self.d.getVar('PACKAGE_FEED_BASE_PATHS') or ""
-self.feed_archs = self.d.getVar('PACKAGE_FEED_ARCHS')
 
 """
 Update the package manager package database.
@@ -555,8 +552,14 @@ class PackageManager(object, metaclass=ABCMeta):
 def list_installed(self):
 pass
 
+"""
+Add remote package feeds into repository manager configuration. The 
parameters
+for the feeds are set by feed_uris, feed_base_paths and feed_archs.
+See 
http://www.yoctoproject.org/docs/current/ref-manual/ref-manual.html#var-PACKAGE_FEED_URIS
+for their description.
+"""
 @abstractmethod
-def insert_feeds_uris(self):
+def insert_feeds_uris(self, feed_uris, feed_base_paths, feed_archs):
 pass
 
 """
@@ -691,14 +694,14 @@ class RpmPM(PackageManager):
 
 self.ml_prefix_list, self.ml_os_list = 
self.indexer.get_ml_prefix_and_os_list(arch_var, os_var)
 
-def insert_feeds_uris(self):
-if self.feed_uris == "":
+def insert_feeds_uris(self, feed_uris, feed_base_paths, feed_archs):
+if feed_uris == "":
 return
 
 arch_list = []
-if self.feed_archs is not None:
+if feed_archs is not None:
 # User define feed architectures
-arch_list = self.feed_archs.split()
+arch_list = feed_archs.split()
 else:
 # List must be prefered to least preferred order
 default_platform_extra = list()
@@ -721,7 +724,7 @@ class RpmPM(PackageManager):
 continue
 arch_list.append(arch)
 
-feed_uris = self.construct_uris(self.feed_uris.split(), 
self.feed_base_paths.split())
+feed_uris = self.construct_uris(feed_uris.split(), 
feed_base_paths.split())
 
 uri_iterator = 0
 channel_priority = 10 + 5 * len(feed_uris) * (len(arch_list) if 
arch_list else 1)
@@ -1707,22 +1710,22 @@ class OpkgPM(OpkgDpkgPM):
 config_file.write("option info_dir %s\n" % 
os.path.join(self.d.getVar('OPKGLIBDIR'), 'opkg', 'info'))
 config_file.write("option status_file  %s\n" % 
os.path.join(self.d.getVar('OPKGLIBDIR'), 'opkg', 'status'))
 
-def insert_feeds_uris(self):
-if self.feed_uris == "":
+def insert_feeds_uris(self, feed_uris, feed_base_paths, feed_archs):
+if feed_uris == "":
 return
 
 rootfs_config = os.path.join('%s/etc/opkg/base-feeds.conf'
   % self.target_rootfs)
 
-feed_uris = self.construct_uris(self.feed_uris.split(), 
self.feed_base_paths.split())
-archs = self.pkg_archs.split() if self.feed_archs is None else 
self.feed_archs.split()
+feed_uris = self.construct_uris(feed_uris.split(), 
feed_base_paths.split())
+archs = self.pkg_archs.split() if feed_archs is None else 
feed_archs.split()
 
 with open(rootfs_config, "w+") as config_file:
 uri_iterator = 0
 for uri in feed_uris:
 if archs:
 for arch in archs:
-if (self.feed_archs is None) and (not 
os.path.exists(os.path.join(self.deploy_dir, arch))):
+if (feed_archs is None) and (not 
os.path.exists(os.path.join(self.deploy_dir, arch))):
 continue
 bb.note('Adding opkg feed url-%s-%d (%s)' %
 (arch, uri_iterator, uri))
@@ -2111,23 +2114,23 @@ class DpkgPM(OpkgDpkgPM):
 if result is not None:
 bb.fatal(result)
 
-def insert_feeds_uris(self):
-if self.feed_uris == "":
+def insert_feeds_uris(self, feed_uris, feed_base_paths, feed_archs):
+if feed_uris == "":
 return
 
 sources_conf = os.path.join("%s/etc/apt/sources.list"
 % self.target_rootfs)
 arch_list = []
 
-if self.feed_archs is None:
+if feed_archs is None:
 for arch in self.all_arch_list

[OE-core] [PATCHv2 25/39] package_rpm.bbclass: no need to specify the magic file location

2017-02-21 Thread Alexander Kanavin
It's handled by the rpm wrapper command, created in rpm recipe.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/package_rpm.bbclass | 2 --
 1 file changed, 2 deletions(-)

diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 27a2bb479a2..9b634e583b8 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -693,7 +693,6 @@ python do_package_rpm () {
 d.setVar('RPM_PKGWRITEDIR', pkgwritedir)
 bb.debug(1, 'PKGWRITEDIR: %s' % d.getVar('RPM_PKGWRITEDIR'))
 pkgarch = d.expand('${PACKAGE_ARCH_EXTEND}${HOST_VENDOR}-${HOST_OS}')
-magicfile = 
d.expand('${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc')
 bb.utils.mkdirhier(pkgwritedir)
 os.chmod(pkgwritedir, 0o755)
 
@@ -711,7 +710,6 @@ python do_package_rpm () {
 cmd = cmd + " --define '__find_provides %{nil}'"
 cmd = cmd + " --define '_unpackaged_files_terminate_build 0'"
 cmd = cmd + " --define 'debug_package %{nil}'"
-cmd = cmd + " --define '_rpmfc_magic_path " + magicfile + "'"
 cmd = cmd + " --define '_tmppath " + workdir + "'"
 if d.getVarFlag('ARCHIVER_MODE', 'srpm') == '1' and 
bb.data.inherits_class('archiver', d):
 cmd = cmd + " --define '_sourcedir " + d.getVar('ARCHIVER_OUTDIR') + 
"'"
-- 
2.11.0

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


[OE-core] [PATCHv2 19/39] package_rpm.bbclass: correctly map RRECOMMENDS and RSUGGESTS to rpm tags

2017-02-21 Thread Alexander Kanavin
Previously they were swapped, not sure why. Their meaning, as far as rpm
world goes, is different:

- Recommends is a soft dependency and will be installed by default; there is
an option not to do that.

- Suggests is a suggestion to be picked up and presented to end user by
package management tools; it has no special meaning otherwise.

OE packages use RRECOMMENDS, which should be mapped to Recommends rpm tag,
so that the packages will be picked up as dependencies.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/package_rpm.bbclass | 12 
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 07eb974f736..480c6d58d39 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -450,10 +450,8 @@ python write_specfile () {
 if splitrpostrm:
 print_deps(splitrdepends, "Requires(postun)", 
spec_preamble_bottom, d)
 
-# Suggests in RPM are like recommends in OE-core!
-print_deps(splitrrecommends, "Suggests", spec_preamble_bottom, d)
-# While there is no analog for suggests... (So call them recommends 
for now)
-print_deps(splitrsuggests,  "Recommends", spec_preamble_bottom, d)
+print_deps(splitrrecommends, "Recommends", spec_preamble_bottom, d)
+print_deps(splitrsuggests,  "Suggests", spec_preamble_bottom, d)
 print_deps(splitrprovides,  "Provides", spec_preamble_bottom, d)
 print_deps(splitrobsoletes, "Obsoletes", spec_preamble_bottom, d)
 
@@ -560,10 +558,8 @@ python write_specfile () {
 if srcrpostrm:
 print_deps(srcrdepends, "Requires(postun)", spec_preamble_top, d)
 
-# Suggests in RPM are like recommends in OE-core!
-print_deps(srcrrecommends, "Suggests", spec_preamble_top, d)
-# While there is no analog for suggests... (So call them recommends for 
now)
-print_deps(srcrsuggests, "Recommends", spec_preamble_top, d)
+print_deps(srcrrecommends, "Recommends", spec_preamble_top, d)
+print_deps(srcrsuggests, "Suggests", spec_preamble_top, d)
 print_deps(srcrprovides, "Provides", spec_preamble_top, d)
 print_deps(srcrobsoletes, "Obsoletes", spec_preamble_top, d)
 
-- 
2.11.0

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


[OE-core] [PATCHv2 27/39] package_rpm.bbclass: instruct rpm to not remove the buildroot directory

2017-02-21 Thread Alexander Kanavin
This is the ${W}/package directory which may be reused in subsequent builds.

Also clean up various default directories rpm 4 creates.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/package_rpm.bbclass | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 9b634e583b8..ff86dc87980 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -697,7 +697,7 @@ python do_package_rpm () {
 os.chmod(pkgwritedir, 0o755)
 
 cmd = rpmbuild
-cmd = cmd + " --nodeps --short-circuit --target " + pkgarch + " 
--buildroot " + pkgd
+cmd = cmd + " --noclean --nodeps --short-circuit --target " + pkgarch + " 
--buildroot " + pkgd
 cmd = cmd + " --define '_topdir " + workdir + "' --define '_rpmdir " + 
pkgwritedir + "'"
 cmd = cmd + " --define '_builddir " + d.getVar('S') + "'"
 cmd = cmd + " --define '_build_name_fmt 
%%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm'"
@@ -721,8 +721,11 @@ python do_package_rpm () {
 bb.build.exec_func('SBUILDSPEC', d)
 cmd = cmd + " -bb " + outspecfile
 
+# rpm 4 creates various empty directories in _topdir, let's clean them up
+cleanupcmd = "rm -rf %s/BUILDROOT %s/SOURCES %s/SPECS %s/SRPMS" % 
(workdir, workdir, workdir, workdir)
+
 # Build the rpm package!
-d.setVar('BUILDSPEC', cmd + "\n")
+d.setVar('BUILDSPEC', cmd + "\n" + cleanupcmd + "\n")
 d.setVarFlag('BUILDSPEC', 'func', '1')
 bb.build.exec_func('BUILDSPEC', d)
 
-- 
2.11.0

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


[OE-core] [PATCHv2 17/39] package_rpm.bbclass: make architecture-independent .rpm packages "noarch" instead of "all"

2017-02-21 Thread Alexander Kanavin
Too many places in dnf/rpm4 stack make that assumption; let's not fight against 
it.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/package_rpm.bbclass | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index db448ab8d1d..07eb974f736 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -684,7 +684,9 @@ python do_package_rpm () {
 rpmbuild = d.getVar('RPMBUILD')
 targetsys = d.getVar('TARGET_SYS')
 targetvendor = d.getVar('HOST_VENDOR')
-package_arch = (d.getVar('PACKAGE_ARCH') or "").replace("-", "_")
+# Too many places in dnf stack assume that arch-independent packages are 
"noarch".
+# Let's not fight against this.
+package_arch = (d.getVar('PACKAGE_ARCH') or "").replace("-", 
"_").replace("all", "noarch")
 sdkpkgsuffix = (d.getVar('SDKPKGSUFFIX') or "nativesdk").replace("-", "_")
 if package_arch not in "all any noarch".split() and not 
package_arch.endswith(sdkpkgsuffix):
 ml_prefix = (d.getVar('MLPREFIX') or "").replace("-", "_")
-- 
2.11.0

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


[OE-core] [PATCHv2 23/39] scripts/oe-setup-rpmrepo: replace createrepo with createrepo_c

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 scripts/oe-setup-rpmrepo | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/oe-setup-rpmrepo b/scripts/oe-setup-rpmrepo
index 7dcded8f1d4..df1c61435c1 100755
--- a/scripts/oe-setup-rpmrepo
+++ b/scripts/oe-setup-rpmrepo
@@ -89,7 +89,7 @@ if [ ! -d "$RPM_DIR" ]; then
exit 1
 fi
 
-CREATEREPO=$OECORE_NATIVE_SYSROOT/usr/bin/createrepo
+CREATEREPO=$OECORE_NATIVE_SYSROOT/usr/bin/createrepo_c
 if [ ! -e "$CREATEREPO" ]; then
echo "Error: can't find createrepo binary"
echo "please run bitbake createrepo-native first"
-- 
2.11.0

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


[OE-core] [PATCHv2 02/39] libsolv: enable rpm support

2017-02-21 Thread Alexander Kanavin
This is required by libdnf.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-extended/libsolv/libsolv_0.6.24.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-extended/libsolv/libsolv_0.6.24.bb 
b/meta/recipes-extended/libsolv/libsolv_0.6.24.bb
index 6de38b59157..3d8b581f851 100644
--- a/meta/recipes-extended/libsolv/libsolv_0.6.24.bb
+++ b/meta/recipes-extended/libsolv/libsolv_0.6.24.bb
@@ -5,7 +5,7 @@ SECTION = "devel"
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8"
 
-DEPENDS = "expat zlib"
+DEPENDS = "expat zlib rpm"
 
 SRC_URI = "git://github.com/openSUSE/libsolv.git \
file://0001-Split-libsolvext-into-it-s-own-pkg-config-file.patch \
@@ -19,7 +19,7 @@ S = "${WORKDIR}/git"
 
 inherit cmake
 
-EXTRA_OECMAKE = "-DLIB=${baselib} -DMULTI_SEMANTICS=ON"
+EXTRA_OECMAKE = "-DLIB=${baselib} -DMULTI_SEMANTICS=ON -DENABLE_RPMMD=ON 
-DENABLE_RPMDB=ON"
 
 PACKAGES =+ "${PN}-tools ${PN}ext"
 
-- 
2.11.0

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


[OE-core] [PATCHv2 03/39] rpmresolve: remove the recipe

2017-02-21 Thread Alexander Kanavin
The source code is incompatible with rpm4 API - let's use rpm
binary itself for now.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c | 426 --
 meta/recipes-devtools/rpm/rpmresolve_1.0.bb   |  29 --
 2 files changed, 455 deletions(-)
 delete mode 100644 meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c
 delete mode 100644 meta/recipes-devtools/rpm/rpmresolve_1.0.bb

diff --git a/meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c 
b/meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c
deleted file mode 100644
index c0b4d567fb0..000
--- a/meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c
+++ /dev/null
@@ -1,426 +0,0 @@
-/* OpenEmbedded RPM resolver utility
-
-  Written by: Paul Eggleton <paul.eggle...@linux.intel.com>
-
-  Copyright 2012 Intel Corporation
-
-  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.
-
-*/
-
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-int debugmode;
-FILE *outf;
-
-int getPackageStr(rpmts ts, const char *NVRA, rpmTag tag, char **value)
-{
-int rc = -1;
-rpmmi mi = rpmmiInit(rpmtsGetRdb(ts), RPMTAG_NVRA, NVRA, 0);
-Header h;
-if ((h = rpmmiNext(mi)) != NULL) {
-HE_t he = (HE_t) memset(alloca(sizeof(*he)), 0, sizeof(*he));
-he->tag = tag;
-rc = (headerGet(h, he, 0) != 1);
-if(rc==0)
-*value = strdup((char *)he->p.ptr);
-}
-(void)rpmmiFree(mi);
-return rc;
-}
-
-int loadTs(rpmts **ts, int *tsct, const char *dblistfn)
-{
-int count = 0;
-int sz = 5;
-int rc = 0;
-int listfile = 1;
-struct stat st_buf;
-
-rc = stat(dblistfn, _buf);
-if(rc != 0) {
-perror("stat");
-return 1;
-}
-if(S_ISDIR(st_buf.st_mode))
-listfile = 0;
-
-if(listfile) {
-if(debugmode)
-printf("DEBUG: reading database list file '%s'\n", dblistfn);
-*ts = malloc(sz * sizeof(rpmts));
-FILE *f = fopen(dblistfn, "r" );
-if(f) {
-char line[2048];
-while(fgets(line, sizeof(line), f)) {
-int len = strlen(line) - 1;
-if(len > 0)
-// Trim trailing whitespace
-while(len > 0 && isspace(line[len]))
-line[len--] = '\0';
-
-if(len > 0) {
-// Expand array if needed
-if(count == sz) {
-sz += 5;
-*ts = (rpmts *)realloc(*ts, sz);
-}
-
-if(debugmode)
-printf("DEBUG: opening database '%s'\n", line);
-char *dbpathm = malloc(strlen(line) + 10);
-sprintf(dbpathm, "_dbpath %s", line);
-rpmDefineMacro(NULL, dbpathm, RMIL_CMDLINE);
-free(dbpathm);
-
-rpmts tsi = rpmtsCreate();
-(*ts)[count] = tsi;
-rc = rpmtsOpenDB(tsi, O_RDONLY);
-if( rc ) {
-fprintf(stderr, "Failed to open database %s\n", line);
-rc = -1;
-break;
-}
-
-count++;
-}
-}
-fclose(f);
-*tsct = count;
-}
-else {
-perror(dblistfn);
-rc = -1;
-}
-}
-else {
-if(debugmode)
-printf("DEBUG: opening database '%s'\n", dblistfn);
-// Load from single database
-*ts = malloc(sizeof(rpmts));
-char *dbpathm = malloc(strlen(dblistfn) + 10);
-sprintf(dbpathm, "_dbpath %s", dblistfn);
-rpmDefineMacro(NULL, dbpathm, RMIL_CMDLINE);
-free(dbpathm);
-
-rpmts tsi = rpmtsCreate();
-(*ts)[0] = tsi;
-rc = rpmtsOpenDB(tsi, O_RDONLY);
-if( rc ) {
-fprintf(stderr, "Failed to open database %s\n", dblistfn);
-rc = -1;
-}
-*tsct = 1;
-}
-
-return rc;
-}
-
-int processPackages(rpmts *ts, int tsco

[OE-core] [PATCHv2 09/39] python-iniparse: add a recipe

2017-02-21 Thread Alexander Kanavin
python-iniparse is required by dnf.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-devtools/python/python-iniparse_0.4.bb | 17 +
 1 file changed, 17 insertions(+)
 create mode 100644 meta/recipes-devtools/python/python-iniparse_0.4.bb

diff --git a/meta/recipes-devtools/python/python-iniparse_0.4.bb 
b/meta/recipes-devtools/python/python-iniparse_0.4.bb
new file mode 100644
index 000..f2515759b13
--- /dev/null
+++ b/meta/recipes-devtools/python/python-iniparse_0.4.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Accessing and Modifying INI files"
+HOMEPAGE = "https://pypi.python.org/pypi/iniparse/;
+LICENSE = "MIT & PSF"
+LIC_FILES_CHKSUM = "file://LICENSE-PSF;md5=1c78a5bb3584b353496d5f6f34edb4b2 \
+file://LICENSE;md5=52f28065af11d69382693b45b5a8eb54"
+
+SRC_URI = 
"https://files.pythonhosted.org/packages/source/i/iniparse/iniparse-${PV}.tar.gz;
+SRC_URI[md5sum] = "5e573e9e9733d97623881ce9bbe5eca6"
+SRC_URI[sha256sum] = 
"abc1ee12d2cfb2506109072d6c21e40b6c75a3fe90a9c924327d80bc0d99c054"
+
+inherit distutils
+
+RDEPENDS_${PN} += "python-core"
+
+BBCLASSEXTEND = "native"
+
+S = "${WORKDIR}/iniparse-${PV}"
-- 
2.11.0

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


[OE-core] [PATCHv2 08/39] python-pygpgme: add a recipe

2017-02-21 Thread Alexander Kanavin
python-pygpgme is required by dnf.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-devtools/python/python-pygpgme_0.3.bb | 18 ++
 1 file changed, 18 insertions(+)
 create mode 100644 meta/recipes-devtools/python/python-pygpgme_0.3.bb

diff --git a/meta/recipes-devtools/python/python-pygpgme_0.3.bb 
b/meta/recipes-devtools/python/python-pygpgme_0.3.bb
new file mode 100644
index 000..f7dd835eee9
--- /dev/null
+++ b/meta/recipes-devtools/python/python-pygpgme_0.3.bb
@@ -0,0 +1,18 @@
+SUMMARY = "A Python module for working with OpenPGP messages"
+HOMEPAGE = "https://launchpad.net/pygpgme;
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://README;md5=2dc15a76acf01e126188c8de634ae4b3"
+
+SRC_URI = 
"https://launchpad.net/pygpgme/trunk/${PV}/+download/pygpgme-${PV}.tar.gz;
+SRC_URI[md5sum] = "d38355af73f0352cde3d410b25f34fd0"
+SRC_URI[sha256sum] = 
"5fd887c407015296a8fd3f4b867fe0fcca3179de97ccde90449853a3dfb802e1"
+
+S = "${WORKDIR}/pygpgme-${PV}"
+
+inherit distutils
+
+DEPENDS = "gpgme python"
+
+RDEPENDS_${PN} += "python-core"
+
+BBCLASSEXTEND = "native"
-- 
2.11.0

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


[OE-core] [PATCHv2 06/39] rpm: add a 4.x recipe

2017-02-21 Thread Alexander Kanavin
The dnf stack is written and tested against rpm 4.x. So if we want to use dnf 
for packaging,
we should also use rpm 4 - there's simply too much work involved in making rpm 
5 work with it due
to significant API differences, and supporting that going forward.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...an-unsatisfiable-dependency-when-building.patch |  33 +++
 .../0001-Do-not-read-config-files-from-HOME.patch  |  38 
 ...t-the-PATH-environment-variable-before-ru.patch |  30 ++
 ...installing-execute-package-scriptlets-wit.patch |  37 
 ...alue-cannot-be-reset-issue-a-notice-inste.patch |  31 ++
 ...-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch |  72 ++
 meta/recipes-devtools/rpm/rpm_git.bb   | 104 +
 7 files changed, 345 insertions(+)
 create mode 100644 
meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
 create mode 100644 
meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
 create mode 100644 
meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
 create mode 100644 
meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch
 create mode 100644 
meta/recipes-devtools/rpm/files/0001-When-nice-value-cannot-be-reset-issue-a-notice-inste.patch
 create mode 100644 
meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch
 create mode 100644 meta/recipes-devtools/rpm/rpm_git.bb

diff --git 
a/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
 
b/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
new file mode 100644
index 000..80e2f0fad70
--- /dev/null
+++ 
b/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
@@ -0,0 +1,33 @@
+From 87cfc0db1ed6fe381a5ed5f0016d8c3344a31a11 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Mon, 9 Jan 2017 18:52:11 +0200
+Subject: [PATCH] Do not add an unsatisfiable dependency when building rpms in
+ a short-circuited way.
+
+Upstream permits short-circuiting only for local testing; Yocto on the other
+hand produces rpms that way by design.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ build/pack.c | 4 
+ 1 file changed, 4 deletions(-)
+
+diff --git a/build/pack.c b/build/pack.c
+index 1261cdbba..bb2d6f4f6 100644
+--- a/build/pack.c
 b/build/pack.c
+@@ -595,10 +595,6 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, 
int cheating)
+   headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16);
+   }
+ 
+-  if (cheating) {
+-  (void) rpmlibNeedsFeature(pkg, "ShortCircuited", "4.9.0-1");
+-  }
+-  
+   {   char *binFormat = rpmGetPath("%{_rpmfilename}", NULL);
+   char *binRpm, *binDir;
+   binRpm = headerFormat(pkg->header, binFormat, );
+-- 
+2.11.0
+
diff --git 
a/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch 
b/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
new file mode 100644
index 000..96eb4189520
--- /dev/null
+++ 
b/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
@@ -0,0 +1,38 @@
+From 35381b6cd6c1b571bf7e6b0640de0f54dbf94386 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Tue, 10 Jan 2017 14:11:30 +0200
+Subject: [PATCH] Do not read config files from $HOME
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ lib/rpmrc.c | 6 ++
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/lib/rpmrc.c b/lib/rpmrc.c
+index 4ed991321..19fe80f98 100644
+--- a/lib/rpmrc.c
 b/lib/rpmrc.c
+@@ -458,8 +458,7 @@ static void setDefaults(void)
+ if (!defrcfiles) {
+   defrcfiles = rstrscat(NULL, confdir, "/rpmrc", ":",
+   confdir, "/" RPMCANONVENDOR "/rpmrc", ":",
+-  SYSCONFDIR "/rpmrc", ":",
+-  "~/.rpmrc", NULL);
++  SYSCONFDIR "/rpmrc", ":");
+ }
+ 
+ #ifndef MACROFILES
+@@ -471,8 +470,7 @@ static void setDefaults(void)
+   confdir, "/" RPMCANONVENDOR "/macros", ":",
+   SYSCONFDIR "/rpm/macros.*", ":",
+   SYSCONFDIR "/rpm/macros", ":",
+-  SYSCONFDIR "/rpm/%{_target}/macros", &

[OE-core] [PATCH 06/24] libva: fix upstream version check

2017-02-22 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-graphics/libva/libva_1.7.3.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-graphics/libva/libva_1.7.3.bb 
b/meta/recipes-graphics/libva/libva_1.7.3.bb
index a7b4b90a062..982b48ce943 100644
--- a/meta/recipes-graphics/libva/libva_1.7.3.bb
+++ b/meta/recipes-graphics/libva/libva_1.7.3.bb
@@ -19,6 +19,7 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=2e48940f94acb0af582e5ef03537800f"
 
 SRC_URI = "git://github.com/01org/libva.git;protocol=http;branch=v1.7-branch"
 SRCREV = "dbf9f7e33349c3cee8d131e93a6a4f91255635cb"
+UPSTREAM_CHECK_GITTAGREGEX = "libva-(?P(\d+(\.\d+)+))"
 
 S = "${WORKDIR}/git"
 
-- 
2.11.0

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


[OE-core] [PATCH 10/24] btrfs-tools: update to 4.9.1

2017-02-22 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 .../btrfs-tools/{btrfs-tools_4.8.5.bb => btrfs-tools_4.9.1.bb}  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 rename meta/recipes-devtools/btrfs-tools/{btrfs-tools_4.8.5.bb => 
btrfs-tools_4.9.1.bb} (95%)

diff --git a/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.8.5.bb 
b/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.9.1.bb
similarity index 95%
rename from meta/recipes-devtools/btrfs-tools/btrfs-tools_4.8.5.bb
rename to meta/recipes-devtools/btrfs-tools/btrfs-tools_4.9.1.bb
index 7047c434024..2c7b7ea6852 100644
--- a/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.8.5.bb
+++ b/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.9.1.bb
@@ -13,7 +13,7 @@ SECTION = "base"
 DEPENDS = "util-linux attr e2fsprogs lzo acl udev"
 RDEPENDS_${PN} = "libgcc"
 
-SRCREV = "144a19145e248513c7a676defad59836830535c6"
+SRCREV = "96485c34ac0329fb0073476f16d2083c64701f29"
 SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git 
\
 "
 
-- 
2.11.0

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


[OE-core] [PATCH 01/24] ruby: fix upstream version check

2017-02-22 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-devtools/ruby/ruby.inc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-devtools/ruby/ruby.inc 
b/meta/recipes-devtools/ruby/ruby.inc
index f38ebb0a151..e24ae24187d 100644
--- a/meta/recipes-devtools/ruby/ruby.inc
+++ b/meta/recipes-devtools/ruby/ruby.inc
@@ -22,6 +22,7 @@ SRC_URI = 
"http://cache.ruby-lang.org/pub/ruby/${SHRT_VER}/ruby-${PV}.tar.gz \
file://extmk.patch \
file://0002-Obey-LDFLAGS-for-the-link-of-libruby.patch \
"
+UPSTREAM_CHECK_URI = "https://www.ruby-lang.org/en/downloads/;
 
 inherit autotools
 
-- 
2.11.0

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


[OE-core] [PATCH 04/24] sysprof: inherit upstream-version-is-even

2017-02-22 Thread Alexander Kanavin
It is a gnome project, and so is subject to same versioning convention.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-kernel/sysprof/sysprof_3.22.3.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-kernel/sysprof/sysprof_3.22.3.bb 
b/meta/recipes-kernel/sysprof/sysprof_3.22.3.bb
index e1033ca07ca..26310634c64 100644
--- a/meta/recipes-kernel/sysprof/sysprof_3.22.3.bb
+++ b/meta/recipes-kernel/sysprof/sysprof_3.22.3.bb
@@ -3,7 +3,7 @@ LICENSE = "GPLv3+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
 
file://src/sp-application.c;endline=17;md5=40e55577ef122c88fe20052acda64875"
 
-inherit gnomebase gettext systemd
+inherit gnomebase gettext systemd upstream-version-is-even
 
 DEPENDS = "glib-2.0 libxml2-native glib-2.0-native"
 
-- 
2.11.0

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


[OE-core] [PATCH 02/24] zlib: fix upstream version check

2017-02-22 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-core/zlib/zlib_1.2.8.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-core/zlib/zlib_1.2.8.bb 
b/meta/recipes-core/zlib/zlib_1.2.8.bb
index 913c7033d44..06d1d21d516 100644
--- a/meta/recipes-core/zlib/zlib_1.2.8.bb
+++ b/meta/recipes-core/zlib/zlib_1.2.8.bb
@@ -12,6 +12,7 @@ SRC_URI = 
"${SOURCEFORGE_MIRROR}/libpng/${BPN}/${PV}/${BPN}-${PV}.tar.xz \
file://ldflags-tests.patch \
file://run-ptest \
"
+UPSTREAM_CHECK_URI = "http://zlib.net/;
 
 SRC_URI[md5sum] = "28f1205d8dd2001f26fec1e8c2cebe37"
 SRC_URI[sha256sum] = 
"831df043236df8e9a7667b9e3bb37e1fcb1220a0f163b6de2626774b9590d057"
-- 
2.11.0

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


[OE-core] [PATCH 00/24] Recipe updates and version check fixes

2017-02-22 Thread Alexander Kanavin
I've skipped openssl 1.1 update 
(https://bugzilla.yoctoproject.org/show_bug.cgi?id=11091)
and gperf 3.1 update (incompatible with latest libcap 2.25).

The following changes since commit f04f4981c1309f07b569dc953f9b2f25695eb58f:

  wget.py: match .lz tarballs as well when determining latest version 
(2017-02-21 13:36:01 +0200)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib akanavin/package-version-updates
  
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=akanavin/package-version-updates

Alexander Kanavin (24):
  ruby: fix upstream version check
  zlib: fix upstream version check
  kconfig-frontends: fetch source from git
  sysprof: inherit upstream-version-is-even
  libepoxy: fix upstream version check
  libva: fix upstream version check
  babeltrace: update to 1.5.2
  bash-completion: update to 2.5
  boost: update to 1.63.0
  btrfs-tools: update to 4.9.1
  cmake: update to 3.7.2
  lzip: add a recipe from meta-oe
  ed: update to 1.14.1
  webkitgtk: update to 2.14.5
  epiphany: update to 3.22.6
  ffmpeg: update to 3.2.4
  gnutls: update to 3.5.9
  iso-codes: update to 3.74
  kbd: update to 2.0.4
  libiconv: remove recipe
  libnl: update to 3.2.29
  libwebp: update to 0.6.0
  nss: update to 3.28.1
  systemtap: update to 3.1

 .../kbd/{kbd_2.0.3.bb => kbd_2.0.4.bb} |4 +-
 meta/recipes-core/zlib/zlib_1.2.8.bb   |1 +
 .../{btrfs-tools_4.8.5.bb => btrfs-tools_4.9.1.bb} |2 +-
 ...cmake-native_3.7.1.bb => cmake-native_3.7.2.bb} |0
 meta/recipes-devtools/cmake/cmake.inc  |4 +-
 .../cmake/{cmake_3.7.1.bb => cmake_3.7.2.bb}   |0
 .../kconfig-frontends_3.12.0.0.bb  |9 +-
 meta/recipes-devtools/ruby/ruby.inc|1 +
 .../ed/{ed_1.9.bb => ed_1.14.1.bb} |   12 +-
 meta/recipes-extended/lzip/lzip_1.18.bb|   41 +
 .../{epiphany_3.22.3.bb => epiphany_3.22.6.bb} |4 +-
 meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb   |1 +
 meta/recipes-graphics/libva/libva_1.7.3.bb |1 +
 .../{babeltrace_1.5.1.bb => babeltrace_1.5.2.bb}   |4 +-
 meta/recipes-kernel/sysprof/sysprof_3.22.3.bb  |2 +-
 ...configure-write-a-python-location-into-th.patch |   25 +
 .../systemtap/systemtap/fix-monitor-linking.patch  |   41 -
 .../systemtap/systemtap/monitor-option.patch   |   26 +-
 .../systemtap/systemtap/no-msgfmt-check.patch  |   22 +-
 .../systemtap/obsolete_automake_macros.patch   |   15 -
 meta/recipes-kernel/systemtap/systemtap_git.bb |9 +-
 meta/recipes-kernel/systemtap/systemtap_git.inc|7 +-
 .../ffmpeg/{ffmpeg_3.2.2.bb => ffmpeg_3.2.4.bb}|4 +-
 .../webp/{libwebp_0.5.1.bb => libwebp_0.6.0.bb}|4 +-
 .../{webkitgtk_2.14.2.bb => webkitgtk_2.14.5.bb}   |4 +-
 ...sh-completion_2.4.bb => bash-completion_2.5.bb} |4 +-
 ...bjam-native_1.62.0.bb => bjam-native_1.63.0.bb} |0
 .../boost/{boost-1.62.0.inc => boost-1.63.0.inc}   |4 +-
 ...soft-float-on-ARM-we-should-not-expect-th.patch |   29 +
 ...execution_monitor.hpp-fix-mips-soft-float.patch |  145 -
 .../boost/boost/consider-hardfp.patch  |   19 -
 .../boost/{boost_1.62.0.bb => boost_1.63.0.bb} |3 +-
 ...cli-args.h-to-cli-args.stamp-Makefile-tar.patch |   27 -
 .../gnutls/0001-configure.ac-fix-sed-command.patch |   26 +-
 .../gnutls/{gnutls_3.5.7.bb => gnutls_3.5.9.bb}|5 +-
 .../{iso-codes_3.72.bb => iso-codes_3.74.bb}   |4 +-
 .../libiconv/libiconv-1.11.1/autoconf.patch|   50 -
 .../shared_preloadable_libiconv_linux.patch|   26 -
 .../libiconv-1.14/add-relocatable-module.patch | 5008 
 .../libiconv/libiconv-1.14/autoconf.patch  |   50 -
 meta/recipes-support/libiconv/libiconv_1.11.1.bb   |   47 -
 meta/recipes-support/libiconv/libiconv_1.14.bb |   51 -
 ...01-lib-add-utility-function-nl_strerror_l.patch |  146 -
 ...to-using-strerror_l-instead-of-strerror_r.patch |  403 --
 ...to-using-strerror_l-instead-of-strerror_r.patch |   82 -
 .../libnl/{libnl_3.2.28.bb => libnl_3.2.29.bb} |7 +-
 ... => 0001-nss-fix-support-cross-compiling.patch} |   51 +-
 .../nss/{nss_3.27.1.bb => nss_3.28.1.bb}   |8 +-
 48 files changed, 215 insertions(+), 6223 deletions(-)
 rename meta/recipes-core/kbd/{kbd_2.0.3.bb => kbd_2.0.4.bb} (92%)
 rename meta/recipes-devtools/btrfs-tools/{btrfs-tools_4.8.5.bb => 
btrfs-tools_4.9.1.bb} (95%)
 rename meta/recipes-devtools/cmake/{cmake-native_3.7.1.bb => 
cmake-native_3.7.2.bb} (100%)
 rename meta/recipes-devtools/cmake/{cmake_3.7.1.bb => cmake_3.7.2.bb} (100%)
 rename meta/recipes-extended/ed/{ed_1.9.bb => ed_1.14.1.bb} (51%)
 create mode 100644 meta/recipes-extended/lzip/lzip_1.18.bb
 rename meta/recipes-gnome/epiphany/{epiphany_3.22.3.bb => epiphany_3.22.6.bb} 
(83%)
 rename meta/recipes-kernel/lttng/{babeltrace_1.5.1.bb => 

[OE-core] [PATCH 03/24] kconfig-frontends: fetch source from git

2017-02-22 Thread Alexander Kanavin
This is where development happens; tarballs are no longer produced.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 .../kconfig-frontends/kconfig-frontends_3.12.0.0.bb  | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git 
a/meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.12.0.0.bb 
b/meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.12.0.0.bb
index 09e10c9e0e0..4ca0e4da3ae 100644
--- a/meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.12.0.0.bb
+++ b/meta/recipes-devtools/kconfig-frontends/kconfig-frontends_3.12.0.0.bb
@@ -13,14 +13,15 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=9b8cf60ff39767ff04b671fca8302408"
 SECTION = "devel"
 DEPENDS += "ncurses flex bison gperf-native"
 RDEPENDS_${PN} += "python bash"
-SRC_URI = "http://ymorin.is-a-geek.org/download/${BPN}/${BP}.tar.xz;
+SRC_URI = "git://ymorin.is-a-geek.org/kconfig-frontends"
 
-SRC_URI[md5sum] = "b939280dcc83f8feabd87a1d5f9b00c2"
-SRC_URI[sha256sum] = 
"ea2615a62c74bea6ce3b38402f00c7513858f307f6ba7aa9fdbf0bbc12bcf407"
+SRCREV = "75d35b172fc0f7b6620dd659af41f2ce04edc4e6"
+
+S = "${WORKDIR}/git"
 
 inherit autotools pkgconfig
 do_configure_prepend () {
-   mkdir -p scripts/.autostuff/m4
+   mkdir -p ${S}/scripts/.autostuff/m4
 }
 
 do_install_append() {
-- 
2.11.0

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


[OE-core] [PATCH 05/24] libepoxy: fix upstream version check

2017-02-22 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb 
b/meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb
index 4d52f126ffa..199e7dc556b 100644
--- a/meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb
+++ b/meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb
@@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b"
 SRC_URI = 
"https://github.com/anholt/${BPN}/releases/download/v1.4/${BP}.tar.xz;
 SRC_URI[md5sum] = "d8d8cbf2beb64975d424fcc5167a2a38"
 SRC_URI[sha256sum] = 
"25a906b14a921bc2b488cfeaa21a00486fe92630e4a9dd346e4ecabeae52ab41"
+UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases;
 
 inherit autotools pkgconfig distro_features_check
 
-- 
2.11.0

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


Re: [OE-core] [PATCH 1/1] selftest/runtime-test.py: Add test to check PACKAGE_FEED_URIS var

2017-02-23 Thread Alexander Kanavin

On 02/20/2017 08:54 PM, Humberto Ibarra wrote:

 features = 'INHERIT += "testimage"\n'
 features += 'TEST_SUITES = "ping ssh selftest"\n'
+features += 'PACKAGE_FEED_URIS = "http://192.168.7.1:8080"\n'


Can you make the assumption that the IP address will be exactly this? 
I'm seeing various IP addresses in autobuilder logs when for example 
testimages are being tested simultaneously, and they're not always 
192.168.7.1.


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


Re: [OE-core] [PATCH 20/24] libiconv: remove recipe

2017-02-24 Thread Alexander Kanavin

On 02/24/2017 01:04 AM, Burton, Ross wrote:

> ERROR: Nothing PROVIDES 'virtual/nativesdk-libiconv' (but
> 
virtual:nativesdk:/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-extras/build/meta/recipes-core/gettext/gettext_0.19.8.1.bb

> DEPENDS on or otherwise requires it)

It seems that nativesdk-glibc is not providing it. We
should fix that


Oh, this was with  SDKMACHINE = "i686-mingw32" which likely makes a
difference but it's too late for me to make an informed opinion. :)


Must be. Compiling nativesdk-gettext works perfectly fine on plain poky, 
so it's mingw stuff that needs to be fixed (or take libiconv recipe if 
they need it).


Alex

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


[OE-core] [PATCH] webkitgtk: update to 2.14.5

2017-02-24 Thread Alexander Kanavin
Remove a reference to WebKit/LICENSE, as the directory is not there anymore
(and the LICENSE file in it hasn't been moved somewhere else) - it was
a relic of webkit 1.x era.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 .../recipes-sato/webkit/{webkitgtk_2.14.2.bb => webkitgtk_2.14.5.bb} | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
 rename meta/recipes-sato/webkit/{webkitgtk_2.14.2.bb => webkitgtk_2.14.5.bb} 
(96%)

diff --git a/meta/recipes-sato/webkit/webkitgtk_2.14.2.bb 
b/meta/recipes-sato/webkit/webkitgtk_2.14.5.bb
similarity index 96%
rename from meta/recipes-sato/webkit/webkitgtk_2.14.2.bb
rename to meta/recipes-sato/webkit/webkitgtk_2.14.5.bb
index 6338101395a..5fb07da26d9 100644
--- a/meta/recipes-sato/webkit/webkitgtk_2.14.2.bb
+++ b/meta/recipes-sato/webkit/webkitgtk_2.14.5.bb
@@ -4,7 +4,6 @@ BUGTRACKER = "http://bugs.webkit.org/;
 
 LICENSE = "BSD & LGPLv2+"
 LIC_FILES_CHKSUM = 
"file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \
-
file://Source/WebKit/LICENSE;md5=4646f90082c40bcf298c285f8bab0b12 \
 
file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \

file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \

file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \
@@ -23,8 +22,8 @@ SRC_URI = 
"http://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
file://x32_support.patch \
"
 
-SRC_URI[md5sum] = "2fe3cadbc546d93ca68a13756c2be015"
-SRC_URI[sha256sum] = 
"2edbcbd5105046aea55af9671c4de8deedb5b0e3567c618034d440a760675556"
+SRC_URI[md5sum] = "7fe3cb2699e64f969b285823c5ae2516"
+SRC_URI[sha256sum] = 
"3ca8f1c33a9b43d6c753dcac1c0788656930e06382b10fdf5c2805ea8f96369f"
 
 inherit cmake pkgconfig gobject-introspection perlnative distro_features_check 
upstream-version-is-even gtk-doc
 
-- 
2.11.0

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


Re: [OE-core] [PATCH 24/24] systemtap: update to 3.1

2017-02-24 Thread Alexander Kanavin

On 02/24/2017 04:22 PM, Burton, Ross wrote:

Add support for python 3 probes


ERROR: QA Issue: lib64-systemtap: Files/directories were installed but
not shipped in any package:
  /usr/lib/python3.5/site-packages/HelperSDT-0.1.0-py3.5.egg-info

/usr/lib/python3.5/site-packages/HelperSDT-0.1.0-py3.5.egg-info/dependency_links.txt
  /usr/lib/python3.5/site-packages/HelperSDT-0.1.0-py3.5.egg-info/PKG-INFO

/usr/lib/python3.5/site-packages/HelperSDT-0.1.0-py3.5.egg-info/top_level.txt

/usr/lib/python3.5/site-packages/HelperSDT-0.1.0-py3.5.egg-info/SOURCES.txt
  /usr/lib/python3.5/site-packages/HelperSDT/__init__.py

/usr/lib/python3.5/site-packages/HelperSDT/_HelperSDT.cpython-35m-x86_64-linux-gnu.so

  /usr/lib/python3.5/site-packages/HelperSDT/__main__.py
  /usr/lib/python3.5/site-packages/HelperSDT/__pycache__

/usr/lib/python3.5/site-packages/HelperSDT/__pycache__/__init__.cpython-35.pyc

/usr/lib/python3.5/site-packages/HelperSDT/__pycache__/__main__.cpython-35.pyc


Just sent an updated patch that should fix this.

Alex

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


[OE-core] [PATCH] systemtap: update to 3.1

2017-02-24 Thread Alexander Kanavin
Removed patches are in upstream.

Rebase monitor-option.patch and no-msgfmt-check.patch

Add support for python 3 probes
(this necessitates the 
0001-Do-not-let-configure-write-a-python-location-into-th.patch
and the Add 0001-Install-python-modules-to-correct-library-dir.patch to
install python modules to correct destination).

Add perl to RDEPENDS to fix a QA warning about one of the installed files.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 ...configure-write-a-python-location-into-th.patch | 25 +
 ...all-python-modules-to-correct-library-dir.patch | 36 +++
 .../systemtap/systemtap/fix-monitor-linking.patch  | 41 --
 .../systemtap/systemtap/monitor-option.patch   | 26 ++
 .../systemtap/systemtap/no-msgfmt-check.patch  | 22 ++--
 .../systemtap/obsolete_automake_macros.patch   | 15 
 meta/recipes-kernel/systemtap/systemtap_git.bb |  9 ++---
 meta/recipes-kernel/systemtap/systemtap_git.inc|  8 ++---
 8 files changed, 109 insertions(+), 73 deletions(-)
 create mode 100644 
meta/recipes-kernel/systemtap/systemtap/0001-Do-not-let-configure-write-a-python-location-into-th.patch
 create mode 100644 
meta/recipes-kernel/systemtap/systemtap/0001-Install-python-modules-to-correct-library-dir.patch
 delete mode 100644 
meta/recipes-kernel/systemtap/systemtap/fix-monitor-linking.patch
 delete mode 100644 
meta/recipes-kernel/systemtap/systemtap/obsolete_automake_macros.patch

diff --git 
a/meta/recipes-kernel/systemtap/systemtap/0001-Do-not-let-configure-write-a-python-location-into-th.patch
 
b/meta/recipes-kernel/systemtap/systemtap/0001-Do-not-let-configure-write-a-python-location-into-th.patch
new file mode 100644
index 000..742b1187fc3
--- /dev/null
+++ 
b/meta/recipes-kernel/systemtap/systemtap/0001-Do-not-let-configure-write-a-python-location-into-th.patch
@@ -0,0 +1,25 @@
+From ab29615ed6c2e779b472903564dc683dc1015de7 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Wed, 22 Feb 2017 13:37:33 +0200
+Subject: [PATCH] Do not let configure write a python location into the dtrace
+ binary
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ dtrace.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dtrace.in b/dtrace.in
+index 5e1cf8079..a24229cbc 100644
+--- a/dtrace.in
 b/dtrace.in
+@@ -1,4 +1,4 @@
+-#!@preferred_python@
++#!/usr/bin/python3
+ # vim: et sta sts=4 sw=4 ts=8
+ 
+ # This handles the systemtap equivalent of
+-- 
+2.11.0
+
diff --git 
a/meta/recipes-kernel/systemtap/systemtap/0001-Install-python-modules-to-correct-library-dir.patch
 
b/meta/recipes-kernel/systemtap/systemtap/0001-Install-python-modules-to-correct-library-dir.patch
new file mode 100644
index 000..528864cc939
--- /dev/null
+++ 
b/meta/recipes-kernel/systemtap/systemtap/0001-Install-python-modules-to-correct-library-dir.patch
@@ -0,0 +1,36 @@
+From 2ada22f05460223924efe54080cb4419e2b4c276 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kana...@gmail.com>
+Date: Fri, 24 Feb 2017 17:53:02 +0200
+Subject: [PATCH] Install python modules to correct library dir.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
+---
+ python/Makefile.am | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/python/Makefile.am b/python/Makefile.am
+index a254480f9..efe9f3c01 100644
+--- a/python/Makefile.am
 b/python/Makefile.am
+@@ -47,7 +47,7 @@ install-exec-local:
+ if HAVE_PYTHON2_PROBES
+   (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON) setup.py build \
+  --build-base $(shell readlink -f $(builddir))/py2build \
+-   install --prefix $(DESTDIR)$(prefix) \
++   install --prefix $(DESTDIR)$(prefix) 
--install-lib=$(DESTDIR)${pythondir} \
+--single-version-externally-managed \
+--record $(shell readlink -f $(builddir))/py2build/install_files.txt \
+  --verbose)
+@@ -55,7 +55,7 @@ endif
+ if HAVE_PYTHON3_PROBES
+   (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
+  --build-base $(shell readlink -f $(builddir))/py3build \
+-   install --prefix $(DESTDIR)$(prefix) \
++   install --prefix $(DESTDIR)$(prefix) 
--install-lib=$(DESTDIR)${python3dir} \
+--single-version-externally-managed \
+--record $(shell readlink -f $(builddir))/py3build/install_files.txt \
+  --verbose)
+-- 
+2.11.0
+
diff --git a/meta/recipes-kernel/systemtap/systemtap/fix-monitor-linking.patch 
b/meta/recipes-kernel/systemtap/systemtap/fix-monitor-linking.patch
deleted file mode 100644
index 2bf0742a1df..000
--- a/meta/recipes-kernel/systemtap/systemtap/fix-monitor-linking.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Upstream-Status: Submitted
-Signed-o

Re: [OE-core] [PATCH 09/24] boost: update to 1.63.0

2017-02-23 Thread Alexander Kanavin

On 02/23/2017 11:21 AM, André Draszik wrote:

Drop backported 0002-boost-test-execution_monitor.hpp-fix-mips-soft-
float.patch
Rebase consider-hardfp.patch to 0001-When-using-soft-float-on-ARM-we-
should-not-expect-th.patch


I would think that the arm specific soft-float hack 0001-When-using-soft-
float-on-ARM-we-should-not-expect-th.patch is not needed anymore, given that
boost should be able to handle all soft float environments now, but am not
in a position to test this.


Neither am I. If the patch would've been more difficult to rebase, I 
would simply drop it for that reason + inability to test what it does.
That's why sending patches upstream is important (especially non-trivial 
ones); it guarantees that they won't be removed down the road.


Alex

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


[OE-core] [PATCHv2 39/39] security_flags.inc: update to reflect smart->dnf transition

2017-02-21 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/conf/distro/include/security_flags.inc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/meta/conf/distro/include/security_flags.inc 
b/meta/conf/distro/include/security_flags.inc
index 77416bc11e7..99a0a33969f 100644
--- a/meta/conf/distro/include/security_flags.inc
+++ b/meta/conf/distro/include/security_flags.inc
@@ -72,14 +72,13 @@ SECURITY_CFLAGS_pn-openssl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-opensp = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-ppp = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-python-backports-lzma = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python-pycurl = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-python-smartpm = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-python-pygpgme = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python-numpy = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python3-numpy = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python3-pycairo = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python3 = "${SECURITY_NO_PIE_CFLAGS}"
-# Revert RPM to using internally supported values
-SECURITY_CFLAGS_pn-rpm = "${lcl_maybe_fortify} -fstack-protector"
 SECURITY_CFLAGS_pn-syslinux = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-slang = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-source-highlight = "${SECURITY_NO_PIE_CFLAGS}"
-- 
2.11.0

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


[OE-core] [PATCHv2 34/39] lib/oe/gpg_sign: make gpg version a property of the signer

2017-02-21 Thread Alexander Kanavin
From: Markus Lehtonen <markus.lehto...@linux.intel.com>

Signed-off-by: Markus Lehtonen <markus.lehto...@linux.intel.com>
Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/lib/oe/gpg_sign.py | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/meta/lib/oe/gpg_sign.py b/meta/lib/oe/gpg_sign.py
index 4b87ddde57a..725da5a2a5d 100644
--- a/meta/lib/oe/gpg_sign.py
+++ b/meta/lib/oe/gpg_sign.py
@@ -10,6 +10,7 @@ class LocalSigner(object):
 self.gpg_bin = d.getVar('GPG_BIN') or \
   bb.utils.which(os.getenv('PATH'), 'gpg')
 self.gpg_path = d.getVar('GPG_PATH')
+self.gpg_version = self.get_gpg_version()
 self.rpm_bin = bb.utils.which(os.getenv('PATH'), "rpmsign")
 
 def export_pubkey(self, output_file, keyid, armor=True):
@@ -58,9 +59,7 @@ class LocalSigner(object):
 
 #gpg > 2.1 supports password pipes only through the loopback interface
 #gpg < 2.1 errors out if given unknown parameters
-dots = self.get_gpg_version().split('.')
-assert len(dots) >= 2
-if int(dots[0]) >= 2 and int(dots[1]) >= 1:
+if self.gpg_version > (2,1,):
 cmd += ['--pinentry-mode', 'loopback']
 
 cmd += [input_file]
@@ -87,10 +86,11 @@ class LocalSigner(object):
 
 
 def get_gpg_version(self):
-"""Return the gpg version"""
+"""Return the gpg version as a tuple of ints"""
 import subprocess
 try:
-return subprocess.check_output((self.gpg_bin, 
"--version")).split()[2].decode("utf-8")
+ver_str = subprocess.check_output((self.gpg_bin, 
"--version")).split()[2].decode("utf-8")
+return tuple([int(i) for i in ver_str.split('.')])
 except subprocess.CalledProcessError as e:
 raise bb.build.FuncFailed("Could not get gpg version: %s" % e)
 
-- 
2.11.0

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


[OE-core] [PATCHv2 36/39] oe-selftest: no need to parse gpg output to determine the name of the signing key

2017-02-21 Thread Alexander Kanavin
The parsing fails on my machine, and we use a key with a hardcoded name,
and so can provide it directly.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/lib/oeqa/selftest/signing.py | 8 +---
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/meta/lib/oeqa/selftest/signing.py 
b/meta/lib/oeqa/selftest/signing.py
index 828dfccab42..884fb61287c 100644
--- a/meta/lib/oeqa/selftest/signing.py
+++ b/meta/lib/oeqa/selftest/signing.py
@@ -101,13 +101,7 @@ class Signing(oeSelfTest):
 self.add_command_to_tearDown('bitbake -c cleansstate %s' % test_recipe)
 self.add_command_to_tearDown('rm -rf %s' % sstatedir)
 
-# Determine the pub key signature
-ret = runCmd('gpg --homedir %s --list-keys' % self.gpg_dir)
-pub_key = re.search(r'^pub\s+\S+/(\S+)\s+', ret.output, re.M)
-self.assertIsNotNone(pub_key, 'Failed to determine the public key 
signature.')
-pub_key = pub_key.group(1)
-
-feature = 'SSTATE_SIG_KEY ?= "%s"\n' % pub_key
+feature = 'SSTATE_SIG_KEY ?= "testuser"\n'
 feature += 'SSTATE_SIG_PASSPHRASE ?= "test123"\n'
 feature += 'SSTATE_VERIFY_SIG ?= "1"\n'
 feature += 'GPG_PATH = "%s"\n' % self.gpg_dir
-- 
2.11.0

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


[OE-core] [PATCHv2 38/39] package_rpm.bbclass: add a /bin/sh Provides for nativesdk- packages

2017-02-21 Thread Alexander Kanavin
nativesdk-* rpm packages all require /bin/sh because postinst scriptlets
are run with it. We can either teach rpm4 and dnf to ignore that dependency
(a lot of non-upstreamable work), or add auto-satisfy the dependency
in each package. I've chosen to do the latter.

Signed-off-by: Alexander Kanavin <alexander.kana...@linux.intel.com>
---
 meta/classes/package_rpm.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index ff86dc87980..2cdaae0ff25 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -560,7 +560,7 @@ python write_specfile () {
 
 print_deps(srcrrecommends, "Recommends", spec_preamble_top, d)
 print_deps(srcrsuggests, "Suggests", spec_preamble_top, d)
-print_deps(srcrprovides, "Provides", spec_preamble_top, d)
+print_deps(srcrprovides + (" /bin/sh" if srcname.startswith("nativesdk-") 
else ""), "Provides", spec_preamble_top, d)
 print_deps(srcrobsoletes, "Obsoletes", spec_preamble_top, d)
 
 # conflicts can not be in a provide!  We will need to filter it.
-- 
2.11.0

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


<    4   5   6   7   8   9   10   11   12   13   >