[OE-core] [PATCH] pulseaudio: change pulse to be a system group

2018-01-04 Thread jackie.huang
From: Jackie Huang 

pulse is added as a system user, so the group 'pulse' is
meant to be a system group as well, which is the same with
other distros like ubuntu/centos.

Signed-off-by: Jackie Huang 
---
 meta/recipes-multimedia/pulseaudio/pulseaudio.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc 
b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
index fdbf5abc16..8189a569e1 100644
--- a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
@@ -160,7 +160,7 @@ do_install_append() {
 }
 
 USERADD_PACKAGES = "pulseaudio-server"
-GROUPADD_PARAM_pulseaudio-server = "pulse"
+GROUPADD_PARAM_pulseaudio-server = "--system pulse"
 USERADD_PARAM_pulseaudio-server = "--system --home /var/run/pulse \
   --no-create-home --shell /bin/false \
   --groups audio,pulse --gid pulse pulse"
-- 
2.11.0

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


Re: [OE-core] [PATCH] shadow: 'useradd' copies root's extended attributes

2018-01-04 Thread Fan, Wenzong
It works and will override the labels of home dir that SELinux applied, that's 
the issue.

For SELinux enabled system, the user's home dir should have lavel 
'user_home_dir_t' instead of 'etc_t', it prevents users from creating files in 
their home dir.

Thanks
Wenzong

From: Patrick Ohly [patrick.o...@intel.com]
Sent: Thursday, January 04, 2018 7:50 PM
To: Fan, Wenzong; José Bollo
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH] shadow: 'useradd' copies root's extended 
attributes

On Thu, 2018-01-04 at 19:39 +0800, wenzong fan wrote:
> If so, I think we should wrapper the logic with:
>
> +#if defined(WITH_ATTR) && !defined(WITH_SELINUX)
> +  attr_copy_file (def_template, user_home, NULL, NULL);
> +#endif

Does attr_copy_file fail when SELinux is active? In other words, why
should it be disabled when using SELinux?

File capabilities are also stored in xattrs. It might be relevant to
copy those when using SELinux. Or do I miss something?

--
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.


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


Re: [OE-core] [PATCH 1/1] coreutils: upgrade to 8.29

2018-01-04 Thread Richard Purdie
On Thu, 2018-01-04 at 15:35 +0800, Chen Qi wrote:
> * ls.c license checksum is changed, but the license remains the same.
> 
> * The new version provides native manual page support, there's no
>   need to download extra manual page from gentoo site.
> 
> * man-decouple-manpages-from-build.patch is removed, as new version
>   has manual page support in environment lacking of perl.
> 
> * hostname is explicitly enabled to keep the same with previous
> recipe's
>   behaviour.
> 
> * ALTERNATIVE_XXX settings for lbracket.1 are removed as there's no
> such
>   file.
> 
> Signed-off-by: Chen Qi 
> ---
>  .../man-decouple-manpages-from-build.patch | 27 
> --
>  .../{coreutils_8.28.bb => coreutils_8.29.bb}   | 24 +---
> ---
>  2 files changed, 6 insertions(+), 45 deletions(-)
>  delete mode 100644 meta/recipes-core/coreutils/coreutils/man-
> decouple-manpages-from-build.patch
>  rename meta/recipes-core/coreutils/{coreutils_8.28.bb =>
> coreutils_8.29.bb} (80%)

Sorry, doesn't build:

https://autobuilder.yocto.io/builders/nightly-deb-non-deb/builds/678/steps/BuildImages/logs/stdio

Cheers,

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


[OE-core] [rocko][PATCH 1/1] python[3]-setuptools: inherit setuptools

2018-01-04 Thread Tim Orling
* distutils[3].bbclass was not including pkg_resources module
* Drop uneeded DISTUTILS_INSTALL_ARGS as setuptools[3].bbclass provides it

Fixes [YOCTO #12148]

Signed-off-by: Tim Orling 
---
 meta/recipes-devtools/python/python-setuptools_36.2.7.bb  | 4 +---
 meta/recipes-devtools/python/python3-setuptools_36.2.7.bb | 7 +--
 2 files changed, 2 insertions(+), 9 deletions(-)

diff --git a/meta/recipes-devtools/python/python-setuptools_36.2.7.bb 
b/meta/recipes-devtools/python/python-setuptools_36.2.7.bb
index 526474c7ea5..0efacc137af 100644
--- a/meta/recipes-devtools/python/python-setuptools_36.2.7.bb
+++ b/meta/recipes-devtools/python/python-setuptools_36.2.7.bb
@@ -5,9 +5,7 @@ PROVIDES = "python-distribute"
 DEPENDS += "python"
 DEPENDS_class-native += "python-native"
 
-inherit distutils
-
-DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${PYTHON_SITEPACKAGES_DIR}"
+inherit setuptools
 
 RDEPENDS_${PN} = "\
   python-stringold \
diff --git a/meta/recipes-devtools/python/python3-setuptools_36.2.7.bb 
b/meta/recipes-devtools/python/python3-setuptools_36.2.7.bb
index 63f241809e0..a7bca974026 100644
--- a/meta/recipes-devtools/python/python3-setuptools_36.2.7.bb
+++ b/meta/recipes-devtools/python/python3-setuptools_36.2.7.bb
@@ -4,15 +4,10 @@ DEPENDS += "python3"
 DEPENDS_class-native += "python3-native"
 DEPENDS_class-nativesdk += "nativesdk-python3"
 
-inherit distutils3
+inherit setuptools3
 
-DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${PYTHON_SITEPACKAGES_DIR}"
-
-# The installer puts the wrong path in the setuptools.pth file.  Correct it.
 do_install_append() {
-rm ${D}${PYTHON_SITEPACKAGES_DIR}/setuptools.pth
 mv ${D}${bindir}/easy_install ${D}${bindir}/easy3_install
-echo "./${SRCNAME}-${PV}-py${PYTHON_BASEVERSION}.egg" > 
${D}${PYTHON_SITEPACKAGES_DIR}/setuptools.pth
 }
 
 RDEPENDS_${PN}_class-native = "\
-- 
2.13.6

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


[OE-core] [rocko][PATCH 0/1] python[3]-setuptools: inherit setuptools

2018-01-04 Thread Tim Orling
The existing recipes for python[3]-setuptools were not packaging the
"pkg_resources" module, which bmap-tools RDEPENDS on (see YOCTO #12148).

This was addressed in master, but requires a slightly different approach
for rocko (as we do not want to upgrade versions on stable branches).

This applies on top of poky-contrib stable/rocko-next at the time of
this writing.

The following changes since commit 0baeb05511623c7e68e1341629efd27a80c5b042:

  binutils: Convert SRC_URI and SRCREV to weak defines (2018-01-03 19:54:56 
-0800)

are available in the git repository at:

  git://push.yoctoproject.org/poky-contrib timo/rocko-12148

Tim Orling (1):
  python[3]-setuptools: inherit setuptools

 meta/recipes-devtools/python/python-setuptools_36.2.7.bb  | 4 +---
 meta/recipes-devtools/python/python3-setuptools_36.2.7.bb | 7 +--
 2 files changed, 2 insertions(+), 9 deletions(-)

-- 
2.13.6

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


Re: [OE-core] Uninative and sstate

2018-01-04 Thread Richard Purdie
On Thu, 2018-01-04 at 16:11 -0600, Joshua Watt wrote:
> On Thu, 2018-01-04 at 22:00 +, Richard Purdie wrote:
> > There used to be an optimisation we made where we only did it when
> > we
> > needed to (using sstate). The move to RSS meant that we now always
> > have
> > to do it. I'd therefore guess you're using morty or older? On more
> > recent versions you'll see it always relocating. There are pros and
> > cons both ways.
> Yes we are using morty. I suppose that at least explains the
> behavior.

You'll find:

http://git.yoctoproject.org/cgit.cgi/poky/commit/?h=morty=590ef99df7
4581e6b7595e545c12594012653de8

interesting (its on the stable branch now).

That was basically retrofitting some of this behaviour to morty to fix
bugs...

Cheers,

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


Re: [OE-core] Uninative and sstate

2018-01-04 Thread Joshua Watt
On Thu, 2018-01-04 at 22:00 +, Richard Purdie wrote:
> On Thu, 2018-01-04 at 14:15 -0600, Joshua Watt wrote:
> > We've run into a strange issued that turned out to be cased by
> > missing
> > iconv conversion libraries in our uninative tarball, but is sparked
> > a
> > larger question that I was hoping someone here could answer.
> > 
> > The problem was particularly baffling. We were attempting to use
> > Doxygen in a recipe which required some missing iconv conversion
> > files.
> > If we built doxygen locally, it worked just fine, but if we choose
> > to
> > allow bitbake to pull doxygen down from a sstate it would fail.
> > Even
> > more baffling, if we manually extracted the sstate
> > do_populate_sysroot
> > tarball for doxygen and used the executable there, everything
> > worked.
> > We surmised that bitbake was modifying the the doxygen executable
> > after
> > it extracted from the sstate tarball, which was confirmed by
> > comparing
> > checksums. After some digging, the cause of the change was tracked
> > down
> > to uninative_changeinterp() running after the sstate tarball was
> > extracted, changing the program interpreter to the one in the
> > uninative
> > tarball.
> > 
> > My question is: Why is this coercion of the program interpreter
> > *only*
> > done when the sysroot is populate from sstate? For consistency, it
> > would seem appropriate to also coerce the interpreter when doing
> > do_populate_sysroot from an actual build. If this had been done, we
> > would have noticed the missing library when building locally, and
> > the
> > sstate cache would not have caused "random" build breakage.
> > 
> > Does anyone have any insight as to why this isn't done?
> 
> Which release are you using?
> 
> There used to be an optimisation we made where we only did it when we
> needed to (using sstate). The move to RSS meant that we now always
> have
> to do it. I'd therefore guess you're using morty or older? On more
> recent versions you'll see it always relocating. There are pros and
> cons both ways.

Yes we are using morty. I suppose that at least explains the behavior.

Thanks for clarifying,
Joshua Watt

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


Re: [OE-core] Uninative and sstate

2018-01-04 Thread Richard Purdie
On Thu, 2018-01-04 at 14:15 -0600, Joshua Watt wrote:
> We've run into a strange issued that turned out to be cased by
> missing
> iconv conversion libraries in our uninative tarball, but is sparked a
> larger question that I was hoping someone here could answer.
> 
> The problem was particularly baffling. We were attempting to use
> Doxygen in a recipe which required some missing iconv conversion
> files.
> If we built doxygen locally, it worked just fine, but if we choose to
> allow bitbake to pull doxygen down from a sstate it would fail. Even
> more baffling, if we manually extracted the sstate
> do_populate_sysroot
> tarball for doxygen and used the executable there, everything worked.
> We surmised that bitbake was modifying the the doxygen executable
> after
> it extracted from the sstate tarball, which was confirmed by
> comparing
> checksums. After some digging, the cause of the change was tracked
> down
> to uninative_changeinterp() running after the sstate tarball was
> extracted, changing the program interpreter to the one in the
> uninative
> tarball.
> 
> My question is: Why is this coercion of the program interpreter
> *only*
> done when the sysroot is populate from sstate? For consistency, it
> would seem appropriate to also coerce the interpreter when doing
> do_populate_sysroot from an actual build. If this had been done, we
> would have noticed the missing library when building locally, and the
> sstate cache would not have caused "random" build breakage.
> 
> Does anyone have any insight as to why this isn't done?

Which release are you using?

There used to be an optimisation we made where we only did it when we
needed to (using sstate). The move to RSS meant that we now always have
to do it. I'd therefore guess you're using morty or older? On more
recent versions you'll see it always relocating. There are pros and
cons both ways.

Cheers,

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


[OE-core] [PATCH 5/5] openssl-ptest: improve reproducibility

2018-01-04 Thread Juro Bystricky
Remove buildhost references from Makefile and Configure.

Signed-off-by: Juro Bystricky 
---
 meta/recipes-connectivity/openssl/openssl10.inc | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/meta/recipes-connectivity/openssl/openssl10.inc 
b/meta/recipes-connectivity/openssl/openssl10.inc
index 4697755..bd96551 100644
--- a/meta/recipes-connectivity/openssl/openssl10.inc
+++ b/meta/recipes-connectivity/openssl/openssl10.inc
@@ -261,6 +261,12 @@ do_install_ptest () {
for d in ssltest_old v3ext x509aux; do
rm -rf ${D}${libdir}/${BPN}/ptest/test/$d
done
+
+   # Remove build host references
+   sed -i \
+   -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
+   -e 's|${DEBUG_PREFIX_MAP}||g' \
+   ${D}${PTEST_PATH}/Makefile ${D}${PTEST_PATH}/Configure
 }
 
 do_install_append_class-native() {
-- 
2.7.4

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


[OE-core] [PATCH 2/5] gcc-runtime: improve reproducibility

2018-01-04 Thread Juro Bystricky
Remove various build host references from packages:

libstdc++
libstdc++-staticdev
gcc-runtime-dbg

The references are removoved by correctly setting various compiler
-fdebug-prefix-map settings. There are two main issues:
The default DEBUG_PREFIX_MAP variable references WORKDIR, however,
gcc sources are in a shared folder (work-shared)/
Additionally, DWARF info seems to store symlink names but gcc
seems to resolve symlink names referenced in -fdebug-prefix-map.

Signed-off-by: Juro Bystricky 
---
 meta/recipes-devtools/gcc/gcc-runtime.inc | 12 
 1 file changed, 12 insertions(+)

diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc 
b/meta/recipes-devtools/gcc/gcc-runtime.inc
index d3d4bd3..7629fa5 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -34,6 +34,18 @@ RUNTIMETARGET_remove_libc-musl = "libmpx"
 # libmudflap
 # libgfortran needs separate recipe due to libquadmath dependency
 
+SLIB = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
+SLIB_NEW = "/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}"
+
+DEBUG_PREFIX_MAP_class-target = " \
+   -fdebug-prefix-map=${WORKDIR}/recipe-sysroot= \
+   -fdebug-prefix-map=${WORKDIR}/recipe-sysroot-native= \
+   -fdebug-prefix-map=${SLIB}=${SLIB_NEW} \
+   -fdebug-prefix-map=${SLIB}/include=${SLIB_NEW}/libstdc++-v3/../include \
+   -fdebug-prefix-map=${SLIB}/libiberty=${SLIB_NEW}/libstdc++-v3/../libiberty \
+   -fdebug-prefix-map=${B}=${SLIB_NEW} \
+   "
+
 do_configure () {
export CXX="${CXX} -nostdinc++ -nostdlib++"
for d in libgcc ${RUNTIMETARGET}; do
-- 
2.7.4

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


[OE-core] [PATCH 4/5] sed-ptest: improve reproducibility

2018-01-04 Thread Juro Bystricky
Remove build host references

Signed-off-by: Juro Bystricky 
---
 meta/recipes-extended/sed/sed_4.2.2.bb | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/meta/recipes-extended/sed/sed_4.2.2.bb 
b/meta/recipes-extended/sed/sed_4.2.2.bb
index e31bec2..f10e365 100644
--- a/meta/recipes-extended/sed/sed_4.2.2.bb
+++ b/meta/recipes-extended/sed/sed_4.2.2.bb
@@ -42,6 +42,12 @@ do_compile_ptest() {
 
 do_install_ptest() {
oe_runmake -C ${TESTDIR} install-ptest BUILDDIR=${B} 
DESTDIR=${D}${PTEST_PATH} TESTDIR=${TESTDIR}
+   sed -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
+   -e 's|${DEBUG_PREFIX_MAP}||g' \
+   -e 's:${HOSTTOOLS_DIR}/::g' \
+   -e 's:${RECIPE_SYSROOT_NATIVE}::g' \
+   -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \
+   -i ${D}${PTEST_PATH}/${TESTDIR}/Makefile
 }
 
 RPROVIDES_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 
'/bin/sed', '', d)}"
-- 
2.7.4

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


[OE-core] [PATCH 3/5] attr-doc: improve reproducibility

2018-01-04 Thread Juro Bystricky
Use gzip compression without timestamps in the metadata.
(Use gzip -n).

Signed-off-by: Juro Bystricky 
---
 meta/recipes-support/attr/ea-acl.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-support/attr/ea-acl.inc 
b/meta/recipes-support/attr/ea-acl.inc
index e6f4c72..1339ecc 100644
--- a/meta/recipes-support/attr/ea-acl.inc
+++ b/meta/recipes-support/attr/ea-acl.inc
@@ -17,7 +17,7 @@ EXTRA_OECONF_append_class-target = "${@['', ' 
--disable-gettext '][(d.getVar('US
 EXTRA_OEMAKE = "PKG_LIB_DIR=${base_libdir} PKG_DEVLIB_DIR=${libdir}"
 
 do_install () {
-   oe_runmake install install-lib install-dev DIST_ROOT="${D}"
+   oe_runmake install install-lib install-dev DIST_ROOT="${D}" ZIP="gzip 
-n"
 }
 
 do_install_append_class-native () {
-- 
2.7.4

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


[OE-core] [PATCH 0/5] improve reproducibility of several packages

2018-01-04 Thread Juro Bystricky
The patches in this patch set are independent and can be applied in any 
order/subset.
They all allow building binary reproducible packages if built on
the same host. This is accomplished mostly by removing various
buil dhost information leaks or useless timestams.



Juro Bystricky (5):
  python3-dev: improve reproducibility
  gcc-runtime: improve reproducibility
  attr-doc: improve reproducibility
  sed-ptest: improve reproducibility
  openssl-ptest: improve reproducibility

 meta/recipes-connectivity/openssl/openssl10.inc |  6 ++
 meta/recipes-devtools/gcc/gcc-runtime.inc   | 12 
 meta/recipes-devtools/python/python3_3.5.3.bb   |  5 +
 meta/recipes-extended/sed/sed_4.2.2.bb  |  6 ++
 meta/recipes-support/attr/ea-acl.inc|  2 +-
 5 files changed, 30 insertions(+), 1 deletion(-)

-- 
2.7.4

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


[OE-core] [PATCH 1/5] python3-dev: improve reproducibility

2018-01-04 Thread Juro Bystricky
Remove remaining build host references from packaged files.

[#YOCTO 11472]

Signed-off-by: Juro Bystricky 
---
 meta/recipes-devtools/python/python3_3.5.3.bb | 5 +
 1 file changed, 5 insertions(+)

diff --git a/meta/recipes-devtools/python/python3_3.5.3.bb 
b/meta/recipes-devtools/python/python3_3.5.3.bb
index b70915e..7f54ea4 100644
--- a/meta/recipes-devtools/python/python3_3.5.3.bb
+++ b/meta/recipes-devtools/python/python3_3.5.3.bb
@@ -186,6 +186,11 @@ py_package_preprocess () {
install -m 0644 ${B}/Makefile.orig 
${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}${PYTHON_ABI}/Makefile
# Remove references to buildmachine paths in target Makefile and 
_sysconfigdata
sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' -e 
s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \
+   -e 's|${DEBUG_PREFIX_MAP}||g' \
+   -e 's:${HOSTTOOLS_DIR}/::g' \
+   -e 's:${RECIPE_SYSROOT_NATIVE}::g' \
+   -e 's:${RECIPE_SYSROOT}::g' \
+   -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \
${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile \

${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}${PYTHON_ABI}/Makefile
 \
${PKGD}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata.py
-- 
2.7.4

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


[OE-core] Uninative and sstate

2018-01-04 Thread Joshua Watt
We've run into a strange issued that turned out to be cased by missing
iconv conversion libraries in our uninative tarball, but is sparked a
larger question that I was hoping someone here could answer.

The problem was particularly baffling. We were attempting to use
Doxygen in a recipe which required some missing iconv conversion files.
If we built doxygen locally, it worked just fine, but if we choose to
allow bitbake to pull doxygen down from a sstate it would fail. Even
more baffling, if we manually extracted the sstate do_populate_sysroot
tarball for doxygen and used the executable there, everything worked.
We surmised that bitbake was modifying the the doxygen executable after
it extracted from the sstate tarball, which was confirmed by comparing
checksums. After some digging, the cause of the change was tracked down
to uninative_changeinterp() running after the sstate tarball was
extracted, changing the program interpreter to the one in the uninative
tarball.

My question is: Why is this coercion of the program interpreter *only*
done when the sysroot is populate from sstate? For consistency, it
would seem appropriate to also coerce the interpreter when doing
do_populate_sysroot from an actual build. If this had been done, we
would have noticed the missing library when building locally, and the
sstate cache would not have caused "random" build breakage.

Does anyone have any insight as to why this isn't done?

Thanks,
Joshua Watt


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


[OE-core] [PATCH v2] package_rpm.bbclass: clamp timestamps

2018-01-04 Thread Juro Bystricky
Improve binary reproducibility of RPM packages.
Ensure timestamps in RPM packages are not later than the value
of SOURCE_DATE_EPOCH. If SOURCE_DATE_EPOCH is not set,
timestamps are not clamped.

Signed-off-by: Juro Bystricky 
---
 meta/classes/package_rpm.bbclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 1deaf83..b08608c 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -668,6 +668,7 @@ python do_package_rpm () {
 cmd = cmd + " --define '_build_id_links none'"
 cmd = cmd + " --define '_binary_payload w6T.xzdio'"
 cmd = cmd + " --define '_source_payload w6T.xzdio'"
+cmd = cmd + " --define 'clamp_mtime_to_source_date_epoch 1'"
 if perfiledeps:
 cmd = cmd + " --define '__find_requires " + outdepends + "'"
 cmd = cmd + " --define '__find_provides " + outprovides + "'"
-- 
2.7.4

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


Re: [OE-core] [oe-core][PATCH 1/1] allarch: do not set baselib

2018-01-04 Thread Slater, Joseph
We should change fontcache.bbclass to not pass libdir, etc, to the 
update_font_cache script, since the environment will be set when the script 
executes.

That would solve the original problem, but it leaves the general problem of 
matching LD_LIBRARY_PATH for postinstall intercepts to the multilib for which 
the target binaries they run were compiled.  Or, of generating a 
LD_LIBRARY_PATH containing all possible paths for the rootfs being constructed.

Joe

From: Richard Purdie [richard.pur...@linuxfoundation.org]
Sent: Wednesday, January 03, 2018 1:58 PM
To: Slater, Joseph; Alexander Kanavin; 
openembedded-core@lists.openembedded.org; BURTON, ROSS
Subject: Re: [OE-core] [oe-core][PATCH 1/1] allarch: do not set baselib

On Wed, 2018-01-03 at 21:46 +, Slater, Joseph wrote:
> Currently, we do have to provide qemuwrapper with
> LD_LIBRARY_PATH.  We could hard-code all possible paths into that and
> not use ${libdir} and ${base_libdir}.  (I tried it and it works.)  We
> could also create a couple of new variables, like
> original_base_libdir, that don't get clobbered by allarch.   Maybe
> qemuwrapper should be smart enough to compute LD_LIBRARY_PATH...

I suspect somehow we therefore need to decouple qemuwrapper from the
target packages and just ensure that a separate script is available in
PATH when the rootfs is generated?

The rootfs should know which multilibs are enabled and be able to
generate the wrapper correctly?

Cheers,

Richard

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


Re: [OE-core] MS Windows machine?

2018-01-04 Thread Richard Purdie
On Thu, 2018-01-04 at 07:31 +0100, Steffen Sledz wrote:
> On 21.12.2017 14:00, Steffen Sledz wrote:
> > 
> > On 21.12.2017 12:39, Burton, Ross wrote:
> > > 
> > > If you want to build for a Windows target then that should be
> > > possible but
> > > nobody as far as I'm aware has made the work public.  meta-mingw
> > > will
> > > contain most of the changes needed as that does build Windows
> > > binaries.
> > That's exactly what we like to to.
> > 
> > So has anyone tried this before?
> > 
> > What else would be needed to build e.g. for MACHINE=i686-mingw32?
> Is someone able to create a machine definition for this? I'm not
> really familiar with this job.

In basic terms, you need a machine which:

* Sets TARGET_ARCH to the right thing (i686 or x86_64)
* Sets TARGET_OS to mingw32

and then some distro config which sets up the toolchain when mingw is
the target os to the values like meta-mingw/conf/machine-sdk/i686-
mingw32.conf sets.

You'd need need to look through the bbappends which are in meta-mingw
and add them to the appropriate pieces you need for target binaries
rather than sdk binaries.

I did once do this for darwin so it is possible, I've never tried it
for windows though.

Cheers,

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


[OE-core] [PATCH 3/4] maintainers.inc: assign python recipes to Derek Straka

2018-01-04 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin 
---
 meta/conf/distro/include/maintainers.inc | 48 
 1 file changed, 24 insertions(+), 24 deletions(-)

diff --git a/meta/conf/distro/include/maintainers.inc 
b/meta/conf/distro/include/maintainers.inc
index 5f9b796f801..4fb7cd32813 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -598,30 +598,30 @@ RECIPE_MAINTAINER_pn-ptest-runner = "Leonardo Sandoval 
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 4/4] gobject-introspection: correct the --lib-dirs-envvar patch

2018-01-04 Thread Alexander Kanavin
The first version introduced a new branch in if-else statement, and so
discarded the actions in the branch taken previously. This seemed
to have no adverse effect for now, but let's do it right.

Signed-off-by: Alexander Kanavin 
---
 ...01-giscanner-add-a-lib-dirs-envvar-option.patch | 26 +++---
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git 
a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch
 
b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch
index e1776bc9b40..4ec527dcc0f 100644
--- 
a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch
+++ 
b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch
@@ -1,4 +1,4 @@
-From a02076fe916ade6c3f78f6d35072ec53482e9446 Mon Sep 17 00:00:00 2001
+From e48f1e18f5ea41656f0ba10fe61d69d2604b0064 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin 
 Date: Wed, 3 Jan 2018 17:02:01 +0200
 Subject: [PATCH] giscanner: add a --lib-dirs-envvar option
@@ -11,17 +11,18 @@ which can be picked up and used by the wrapper.
 
 Upstream-Status: Pending
 Signed-off-by: Alexander Kanavin 
+
 ---
- giscanner/ccompiler.py   | 6 --
+ giscanner/ccompiler.py   | 4 ++--
  giscanner/dumper.py  | 3 ++-
  giscanner/scannermain.py | 3 +++
- 3 files changed, 9 insertions(+), 3 deletions(-)
+ 3 files changed, 7 insertions(+), 3 deletions(-)
 
 diff --git a/giscanner/ccompiler.py b/giscanner/ccompiler.py
-index 29de0ee..e969337 100644
+index 29de0ee..928eae8 100644
 --- a/giscanner/ccompiler.py
 +++ b/giscanner/ccompiler.py
-@@ -109,14 +109,16 @@ class CCompiler(object):
+@@ -109,7 +109,7 @@ class CCompiler(object):
  
  self._cflags_no_deprecation_warnings = 
"-Wno-deprecated-declarations"
  
@@ -30,16 +31,15 @@ index 29de0ee..e969337 100644
  # An "internal" link is where the library to be introspected
  # is being built in the current directory.
  
- runtime_path_envvar = []
- runtime_paths = []
- 
--if self.check_is_msvc():
-+if lib_dirs_envvar:
-+runtime_path_envvar = [lib_dirs_envvar]
-+elif self.check_is_msvc():
+@@ -119,7 +119,7 @@ class CCompiler(object):
+ if self.check_is_msvc():
  runtime_path_envvar = ['LIB', 'PATH']
  else:
- runtime_path_envvar = ['LD_LIBRARY_PATH']
+-runtime_path_envvar = ['LD_LIBRARY_PATH']
++runtime_path_envvar = ['LD_LIBRARY_PATH'] if not lib_dirs_envvar 
else [lib_dirs_envvar]
+ # Search the current directory first
+ # (This flag is not supported nor needed for Visual C++)
+ args.append('-L.')
 diff --git a/giscanner/dumper.py b/giscanner/dumper.py
 index 7f77bd2..db96df6 100644
 --- a/giscanner/dumper.py
-- 
2.15.1

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


Re: [OE-core] [PATCH] kernel: Add paravirt_kvm support for qemux86-64

2018-01-04 Thread Bruce Ashfield
Make sure to cc' me on any changes to linux-yocto*

Ross (or whoever else), I'll pick this up as part of my next consolidated pull,
no need to do anything with it.

Bruce

On Thu, Jan 4, 2018 at 3:14 AM,   wrote:
> From: He Zhe 
>
> This feature includes paravirtualized KVM guest support.
>
> Signed-off-by: He Zhe 
> ---
>  meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb 
> b/meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb
> index ed65f77..ebfed3e 100644
> --- a/meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb
> +++ b/meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb
> @@ -35,4 +35,4 @@ KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc 
> features/taskstats/ta
>  KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
>  KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc"
>  KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
> -KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc"
> +KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
> --
> 2.8.1
>
> --
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



-- 
"Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end"
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/4] maintainers.inc: remove python recipes no longer provided in oe-core

2018-01-04 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin 
---
 meta/conf/distro/include/maintainers.inc | 17 -
 1 file changed, 17 deletions(-)

diff --git a/meta/conf/distro/include/maintainers.inc 
b/meta/conf/distro/include/maintainers.inc
index 87b80cb97a3..5f9b796f801 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -600,31 +600,14 @@ RECIPE_MAINTAINER_pn-pulseaudio-client-conf-sato = "Tanu 
Kaskinen 
 RECIPE_MAINTAINER_pn-puzzles = "Jussi Kukkonen "
 RECIPE_MAINTAINER_pn-python = "Alejandro Hernandez 
"
 RECIPE_MAINTAINER_pn-python-native = "Alejandro Hernandez 
"
-RECIPE_MAINTAINER_pn-python-async = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-distribute = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-git = "Jose Lamego "
-RECIPE_MAINTAINER_pn-python-gitdb = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-imaging = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-mako = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-native = "Alejandro Hernandez 
"
 RECIPE_MAINTAINER_pn-python-nose = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python-numpy = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-pexpect = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-ptyprocess = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-pycairo = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-pycurl = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-pygtk = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-pyrex = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python-scons = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python-scons-native = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python-setuptools = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-six = "Jose Lamego "
-RECIPE_MAINTAINER_pn-python-smartpm = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python-smmap = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python3 = "Alejandro Hernandez 
"
 RECIPE_MAINTAINER_pn-python3-async = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python3-dbus = "Jose Lamego 
"
-RECIPE_MAINTAINER_pn-python3-distribute = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python3-docutils = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python3-git = "Jose Lamego 
"
 RECIPE_MAINTAINER_pn-python3-gitdb = "Jose Lamego 
"
-- 
2.15.1

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


[OE-core] [PATCH 1/4] oe-selftest: add a test for recipes without maintainers

2018-01-04 Thread Alexander Kanavin
'bitbake -c checkpkg world' is moved to class initializer to avoid
it being run twice in a row.

Signed-off-by: Alexander Kanavin 
---
 meta/lib/oeqa/selftest/cases/distrodata.py | 32 +-
 1 file changed, 27 insertions(+), 5 deletions(-)

diff --git a/meta/lib/oeqa/selftest/cases/distrodata.py 
b/meta/lib/oeqa/selftest/cases/distrodata.py
index 12540adc7d8..cf8b4a21763 100644
--- a/meta/lib/oeqa/selftest/cases/distrodata.py
+++ b/meta/lib/oeqa/selftest/cases/distrodata.py
@@ -9,6 +9,12 @@ class Distrodata(OESelftestTestCase):
 @classmethod
 def setUpClass(cls):
 super(Distrodata, cls).setUpClass()
+feature = 'INHERIT += "distrodata"\n'
+feature += 'LICENSE_FLAGS_WHITELIST += " commercial"\n'
+
+cls.write_config(cls, feature)
+bitbake('-c checkpkg world')
+
 
 @OETestID(1902)
 def test_checkpkg(self):
@@ -18,11 +24,6 @@ class Distrodata(OESelftestTestCase):
 Product: oe-core
 Author:  Alexander Kanavin 
 """
-feature = 'INHERIT += "distrodata"\n'
-feature += 'LICENSE_FLAGS_WHITELIST += " commercial"\n'
-
-self.write_config(feature)
-bitbake('-c checkpkg world')
 checkpkg_result = open(os.path.join(get_bb_var("LOG_DIR"), 
"checkpkg.csv")).readlines()[1:]
 regressed_failures = [pkg_data[0] for pkg_data in 
[pkg_line.split('\t') for pkg_line in checkpkg_result] if pkg_data[11] == 
'UNKNOWN_BROKEN']
 regressed_successes = [pkg_data[0] for pkg_data in 
[pkg_line.split('\t') for pkg_line in checkpkg_result] if pkg_data[11] == 
'KNOWN_BROKEN']
@@ -40,3 +41,24 @@ The following packages have been checked successfully for 
upstream versions,
 but their recipes claim otherwise by setting UPSTREAM_VERSION_UNKNOWN. Please 
remove that line from the recipes.
 """ + "\n".join(regressed_successes)
 self.assertTrue(len(regressed_failures) == 0 and 
len(regressed_successes) == 0, msg)
+
+def test_maintainers(self):
+"""
+Summary: Test that recipes have a maintainer
+Expected:All recipes (except a few special static/testing ones) 
should have a maintainer listed in maintainers.inc file.
+Product: oe-core
+Author:  Alexander Kanavin 
+"""
+def is_exception(pkg):
+exceptions = ["packagegroup-", "initramfs-", 
"systemd-machine-units", "container-image-testpkg", "postinst", 
"devtool-test-", "selftest-ed"]
+for i in exceptions:
+ if i in pkg:
+ return True
+return False
+
+checkpkg_result = open(os.path.join(get_bb_var("LOG_DIR"), 
"checkpkg.csv")).readlines()[1:]
+no_maintainer_list = [pkg_data[0] for pkg_data in 
[pkg_line.split('\t') for pkg_line in checkpkg_result] if pkg_data[14] == '' 
and not is_exception(pkg_data[0])]
+msg = """
+The following packages do not have a maintainer assigned to them. Please add 
an entry to meta/conf/distro/include/maintainers.inc file.
+""" + "\n".join(no_maintainer_list)
+self.assertTrue(len(no_maintainer_list) == 0, msg)
-- 
2.15.1

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


Re: [OE-core] [oe] Slideshow for FOSDEM

2018-01-04 Thread Andreas Müller
On Wed, Jan 3, 2018 at 6:29 PM, Philip Balister  wrote:

> On 01/03/2018 09:47 AM, Paul Barker wrote:
> > Hi all,
> >
> > As we've only got one table at FOSDEM this year we're not going to
> > have space for as many bits of hardware as usual. I'd still like us to
> > show off the project and what people are building with OpenEmbedded &
> > Yocto Project though. Given the limited space I think the best way to
> > do this would be to put a slideshow on my laptop.
> >
> > I've made a start on this here:
> > https://docs.google.com/presentation/d/1KYxhsxO-8GxhAreE0GKnTOCPdY6_
> 4uXYIEp6Lc55MB8/edit?usp=sharing
> >
> > I've made this publicly editable so please feel free to add slides for
> > any OE features you want to show off and any projects (professional or
> > hobbyist) built with OE. If anyone can add a slide on project history
> > that would also be great. I'd also like a slide on the latest release
> > and the new features added. Photos of hardware projects using OE and
> > features like Toaster would be especially welcome!
> >
> > I'll give this a final edit before FOSDEM and the put it on rotation
> > on a laptop at the stand. Hopefully it will be useful for future
> > events as well.
>
> Can we build a small board with a largish screen so we can run the show
> on a device running an image built by OpenEmbedded?
>
> Philip
>
> Hi,

currently I am putting together something like a
'diy-rpi-notebook-on-tripod' - WIP no photos yet. Would like to put a music
keyboard in front of it. Area required 1-2 square meters - no table
required. Is such thing accepted / of interest?

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


Re: [OE-core] [PATCH 2/9] gnomebase.bbclass: split into autotools and meson versions

2018-01-04 Thread Alexander Kanavin

On 01/03/2018 01:11 PM, Richard Purdie wrote:

On Thu, 2017-12-21 at 15:04 +0200, Alexander Kanavin wrote:

gnomebase.bbclass unfortunately hardcodes the autotools inherit,
so we have to introduce gnomebase-nobuildsystem.bbclass where
the common bits between autotools and meson classes can be placed.


In the interests of trying to avoid a ton more class files, could you
tweak this to do something like:

GNOMEBASEBUILDCLASS ??= "autotools"

inherit ${GNOMEBASEBUILDCLASS}


Thanks, I just resent the patchset and this is now addressed.

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


[OE-core] [PATCH 8/9] meson: export native env only for native build

2018-01-04 Thread Alexander Kanavin
From: Martin Kelly 

Although the meson crossfile should take care of setting the right cross
environment for a target build, meson slurps any set CFLAGS, CXXFLAGS,
LDFLAGS, and CPPFLAGS from the environment and injects them into the
build (see mesonbuild/environment.py:get_args_from_envvars for details).

This means that we are seeing native CFLAGS, CXXFLAGS, LDFLAGS, and
CPPFLAGS in the target build, which is wrong and causes build failures
when target and native have libraries in common (the linker gets
confused and bails).

That said, we *do* need to set certain vars for all builds so that meson
can find the right build tools. Without this, meson will fail during its
sanity checking step because it will determine the build tools to be
unrunnable since they output target instead of native artifacts.

The solution to all of this is to set CC, CXX, LD, and AR globally to
the native tools while setting the other native vars *only* for the
native build. For target builds, these vars will get overridden by the
cross file as we expect.

Signed-off-by: Martin Kelly 
Signed-off-by: Alexander Kanavin 
---
 meta/classes/meson.bbclass | 19 ---
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
index 5953b5d698c..b72e5207abc 100644
--- a/meta/classes/meson.bbclass
+++ b/meta/classes/meson.bbclass
@@ -9,13 +9,6 @@ do_configure[cleandirs] = "${B}"
 # Where the meson.build build configuration is
 MESON_SOURCEPATH = "${S}"
 
-# These variables in the environment override meson's *native* tools settings.
-# We have to unset them, so that meson doesn't pick up the cross tools and
-# use them for native builds.
-unset CC
-unset CXX
-unset AR
-
 def noprefix(var, d):
 return d.getVar(var).replace(d.getVar('prefix') + '/', '', 1)
 
@@ -92,6 +85,18 @@ meson_do_configure() {
 fi
 }
 
+meson_do_configure_prepend_class-target() {
+# Set these so that meson uses the native tools for its build sanity tests,
+# which require executables to be runnable. The cross file will still
+# override these for the target build. Note that we do *not* set CFLAGS,
+# LDFLAGS, etc. as they will be slurped in by meson and applied to the
+# target build, causing errors.
+export CC="${BUILD_CC}"
+export CXX="${BUILD_CXX}"
+export LD="${BUILD_LD}"
+export AR="${BUILD_AR}"
+}
+
 meson_do_configure_prepend_class-native() {
 export PKG_CONFIG="pkg-config-native"
 }
-- 
2.15.1

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


[OE-core] [PATCH 9/9] meson: Port pkgconfig-native patch to 0.44.0

2018-01-04 Thread Alexander Kanavin
From: Ricardo Ribalda Delgado 

The update to 0.44.0 did not add this patch required for qt builds.

Signed-off-by: Ricardo Ribalda Delgado 
Signed-off-by: Alexander Kanavin 
---
 .../meson/meson/0003-native_bindir.patch   | 109 +
 meta/recipes-devtools/meson/meson_0.44.0.bb|   1 +
 2 files changed, 110 insertions(+)
 create mode 100644 meta/recipes-devtools/meson/meson/0003-native_bindir.patch

diff --git a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch 
b/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
new file mode 100644
index 000..8911dd6b34e
--- /dev/null
+++ b/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
@@ -0,0 +1,109 @@
+From: Ricardo Ribalda Delgado 
+Date: Wed, 15 Nov 2017 15:05:01 +0100
+Subject: [PATCH] native_bindir
+
+Some libraries, like QT, have pre-processors that convert their input
+files into something that the cross-compiler can process. We find the
+path of those pre-processors via pkg-config-native instead of
+pkg-config.
+
+This path forces the use of pkg-config-native for host_bins arguments.
+
+There are some discussions upstream to merge this patch, but I presonaly 
believe
+that is is OE only. 
https://github.com/mesonbuild/meson/issues/1849#issuecomment-303730323
+
+Upstream-Status: Inappropriate [OE specific]
+Signed-off-by: Ricardo Ribalda Delgado 
+---
+ mesonbuild/dependencies/base.py | 14 +-
+ mesonbuild/dependencies/ui.py   |  6 +++---
+ 2 files changed, 12 insertions(+), 8 deletions(-)
+
+diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
+index 0ef33722f196..b3f7e7c06822 100644
+--- a/mesonbuild/dependencies/base.py
 b/mesonbuild/dependencies/base.py
+@@ -130,7 +130,7 @@ class Dependency:
+ def need_threads(self):
+ return False
+ 
+-def get_pkgconfig_variable(self, variable_name, kwargs):
++def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
+ raise DependencyException('{!r} is not a pkgconfig 
dependency'.format(self.name))
+ 
+ def get_configtool_variable(self, variable_name):
+@@ -149,7 +149,7 @@ class InternalDependency(Dependency):
+ self.sources = sources
+ self.ext_deps = ext_deps
+ 
+-def get_pkgconfig_variable(self, variable_name, kwargs):
++def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
+ raise DependencyException('Method "get_pkgconfig_variable()" is '
+   'invalid for an internal dependency')
+ 
+@@ -414,10 +414,14 @@ class PkgConfigDependency(ExternalDependency):
+ return s.format(self.__class__.__name__, self.name, self.is_found,
+ self.version_reqs)
+ 
+-def _call_pkgbin(self, args, env=None):
++def _call_pkgbin(self, args, env=None, use_native=False):
+ if not env:
+ env = os.environ
+-p, out = Popen_safe([self.pkgbin] + args, env=env)[0:2]
++if use_native:
++pkgbin = [self.pkgbin + "-native"]
++else:
++pkgbin = [self.pkgbin]
++p, out = Popen_safe(pkgbin + args, env=env)[0:2]
+ return p.returncode, out.strip()
+ 
+ def _convert_mingw_paths(self, args):
+@@ -499,7 +503,7 @@ class PkgConfigDependency(ExternalDependency):
+ self.is_libtool = True
+ self.link_args.append(lib)
+ 
+-def get_pkgconfig_variable(self, variable_name, kwargs):
++def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
+ options = ['--variable=' + variable_name, self.name]
+ 
+ if 'define_variable' in kwargs:
+@@ -512,7 +516,7 @@ class PkgConfigDependency(ExternalDependency):
+ 
+ options = ['--define-variable=' + '='.join(definition)] + options
+ 
+-ret, out = self._call_pkgbin(options)
++ret, out = self._call_pkgbin(options, use_native=use_native)
+ variable = ''
+ if ret != 0:
+ if self.required:
+diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py
+index 1db518c12477..4ed1d041f6f4 100644
+--- a/mesonbuild/dependencies/ui.py
 b/mesonbuild/dependencies/ui.py
+@@ -239,7 +239,7 @@ class QtBaseDependency(ExternalDependency):
+ self.bindir = self.get_pkgconfig_host_bins(core)
+ if not self.bindir:
+ # If exec_prefix is not defined, the pkg-config file is broken
+-prefix = core.get_pkgconfig_variable('exec_prefix', {})
++prefix = core.get_pkgconfig_variable('exec_prefix', {}, 
use_native=True)
+ if prefix:
+ self.bindir = os.path.join(prefix, 'bin')
+ 
+@@ -359,7 +359,7 @@ class Qt4Dependency(QtBaseDependency):
+ applications = ['moc', 'uic', 'rcc', 'lupdate', 'lrelease']
+ for application in applications:

[OE-core] [PATCH 5/9] libinput: convert to meson build

2018-01-04 Thread Alexander Kanavin
Drop libunwind option, as it is only used if tests are enabled
(and they're unconditionally not enabled).

Signed-off-by: Alexander Kanavin 
---
 meta/recipes-graphics/wayland/libinput_1.8.4.bb | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/meta/recipes-graphics/wayland/libinput_1.8.4.bb 
b/meta/recipes-graphics/wayland/libinput_1.8.4.bb
index aea23480ec8..83899533823 100644
--- a/meta/recipes-graphics/wayland/libinput_1.8.4.bb
+++ b/meta/recipes-graphics/wayland/libinput_1.8.4.bb
@@ -7,21 +7,21 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=2184aef38ff137ed33ce9a63b9d1eb8f"
 
 DEPENDS = "libevdev udev mtdev"
 
-SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz;
+SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz \
+   "
 
 SRC_URI[md5sum] = "aeeb79bfe1b1cb64c939098468d350b3"
 SRC_URI[sha256sum] = 
"5ad95c8db75d59f1662199df748f912b150c3294d33cd4dd592aeb1908fe9d7f"
 
-inherit autotools pkgconfig lib_package
+inherit meson pkgconfig lib_package
 
 PACKAGECONFIG ??= ""
-PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind"
-PACKAGECONFIG[libwacom] = "--enable-libwacom,--disable-libwacom,libwacom"
-PACKAGECONFIG[gui] = "--enable-debug-gui,--disable-debug-gui,cairo gtk+3"
+PACKAGECONFIG[libwacom] = "-Dlibwacom=true,-Dlibwacom=false,libwacom"
+PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3"
 
 UDEVDIR = "`pkg-config --variable=udevdir udev`"
 
-EXTRA_OECONF += "--with-udev-dir=${UDEVDIR} --disable-documentation 
--disable-tests"
+EXTRA_OEMESON += "-Dudev-dir=${UDEVDIR} -Ddocumentation=false -Dtests=false"
 
 # package name changed in 1.8.1 upgrade: make sure package upgrades work
 RPROVIDES_${PN} = "libinput"
-- 
2.15.1

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


[OE-core] [PATCH 3/9] json-glib: convert to meson build

2018-01-04 Thread Alexander Kanavin
Note that meson flags for gobject introspection and gtk-doc
appear to be non-standardized; going forward we should devise
a common way to deal with it.

gettext inherit is removed, as there is no equivalent functionality
in meson; NLS bits are always built and installed.

Signed-off-by: Alexander Kanavin 
---
 ...ble-gobject-introspection-when-cross-comp.patch | 32 ++
 meta/recipes-gnome/json-glib/json-glib_1.2.8.bb| 23 ++--
 2 files changed, 53 insertions(+), 2 deletions(-)
 create mode 100644 
meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch

diff --git 
a/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
 
b/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
new file mode 100644
index 000..849bb9d3165
--- /dev/null
+++ 
b/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
@@ -0,0 +1,32 @@
+From 293452c963188666dae99521294f09a0cf9582e2 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin 
+Date: Fri, 4 Aug 2017 16:01:11 +0300
+Subject: [PATCH] Do not disable gobject introspection when cross-compiling.
+
+Introspection does work fine for instance in Open Embedded,
+one of the most prominent cross-compilation frameworks
+(through qemu emulating target hardware), so let the user
+decide if he wants the feature or not.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin 
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 43cbfd9..8a32f26 100644
+--- a/meson.build
 b/meson.build
+@@ -147,7 +147,7 @@ root_dir = include_directories('.')
+ 
+ gnome = import('gnome')
+ gir = find_program('g-ir-scanner', required: false)
+-build_gir = gir.found() and not meson.is_cross_build() and not 
get_option('disable_introspection')
++build_gir = gir.found() and not get_option('disable_introspection')
+ 
+ subdir('json-glib')
+ 
+-- 
+2.13.2
+
diff --git a/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb 
b/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
index 2c5d3817ba7..c53611b0257 100644
--- a/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
+++ b/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
@@ -10,11 +10,30 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
 
 DEPENDS = "glib-2.0"
 
+SRC_URI_append = " \
+   
file://0001-Do-not-disable-gobject-introspection-when-cross-comp.patch \
+   "
 SRC_URI[archive.md5sum] = "ff31e7d0594df44318e12facda3d086e"
 SRC_URI[archive.sha256sum] = 
"fd55a9037d39e7a10f0db64309f5f0265fa32ec962bf85066087b83a2807f40a"
 
-inherit gnomebase gettext lib_package gobject-introspection gtk-doc manpages
+inherit gnomebase-meson lib_package gobject-introspection gtk-doc manpages
 
-PACKAGECONFIG[manpages] = "--enable-man 
--with-xml-catalog=${STAGING_ETCDIR_NATIVE}/xml/catalog.xml, --disable-man, 
libxslt-native xmlto-native"
+GTKDOC_ENABLE_FLAG = "-Denable-gtk-doc=true"
+GTKDOC_DISABLE_FLAG = "-Denable-gtk-doc=false"
+
+GI_ENABLE_FLAG = "-Ddisable_introspection=false"
+GI_DISABLE_FLAG = "-Ddisable_introspection=true"
+
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 
'True', '${GTKDOC_ENABLE_FLAG}', \
+   
 '${GTKDOC_DISABLE_FLAG}', d)} "
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 
'True', '${GI_ENABLE_FLAG}', \
+   
 '${GI_DISABLE_FLAG}', d)} "
+
+PACKAGECONFIG[manpages] = "-Denable-man=true, -Denable-man=false, 
libxslt-native xmlto-native"
+
+do_install_append() {
+# FIXME: these need to be provided via ptest
+rm -rf ${D}${datadir}/installed-tests ${D}${libexecdir}
+}
 
 BBCLASSEXTEND = "native nativesdk"
-- 
2.15.1

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


[OE-core] [PATCH 7/9] gst-player: Upgrade, rename to gst-examples

2018-01-04 Thread Alexander Kanavin
From: Jussi Kukkonen 

Switch to using current repository, switch to meson (following
upstream), rename the recipe like upstream.

Add a patch to install the player binaries.

Signed-off-by: Alexander Kanavin 
---
 .../packagegroup-core-tools-testapps.bb|  2 +-
 .../0001-Make-player-examples-installable.patch| 39 ++
 .../gst-player.desktop |  0
 .../{gst-player_git.bb => gst-examples_git.bb} | 18 +-
 .../packagegroups/packagegroup-core-x11-sato.bb|  2 +-
 5 files changed, 49 insertions(+), 12 deletions(-)
 create mode 100644 
meta/recipes-multimedia/gstreamer/gst-examples/0001-Make-player-examples-installable.patch
 rename meta/recipes-multimedia/gstreamer/{gst-player => 
gst-examples}/gst-player.desktop (100%)
 rename meta/recipes-multimedia/gstreamer/{gst-player_git.bb => 
gst-examples_git.bb} (65%)

diff --git 
a/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb 
b/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb
index 0d2da866132..b8e507073ae 100644
--- a/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb
+++ b/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb
@@ -26,7 +26,7 @@ X11GLTOOLS = "\
 
 X11TOOLS = "\
 fstests \
-gst-player \
+gst-examples \
 x11perf \
 xrestop \
 xwininfo \
diff --git 
a/meta/recipes-multimedia/gstreamer/gst-examples/0001-Make-player-examples-installable.patch
 
b/meta/recipes-multimedia/gstreamer/gst-examples/0001-Make-player-examples-installable.patch
new file mode 100644
index 000..0338bad1c03
--- /dev/null
+++ 
b/meta/recipes-multimedia/gstreamer/gst-examples/0001-Make-player-examples-installable.patch
@@ -0,0 +1,39 @@
+From 755f6dab07565aca7b6aefacad8be65de364ff75 Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen 
+Date: Thu, 17 Aug 2017 11:07:02 +0300
+Subject: [PATCH] Make player examples installable
+
+Signed-off-by: Jussi Kukkonen 
+Upstream-Status: Denied [Upstream considers these code examples, for now a 
least]
+
+https://bugzilla.gnome.org/show_bug.cgi?id=777827
+---
+ playback/player/gst-play/meson.build | 1 +
+ playback/player/gtk/meson.build  | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/playback/player/gst-play/meson.build 
b/playback/player/gst-play/meson.build
+index 719b55b..a56fe13 100644
+--- a/playback/player/gst-play/meson.build
 b/playback/player/gst-play/meson.build
+@@ -8,5 +8,6 @@ executable('gst-play',
+ ['gst-play.c',
+  'gst-play-kb.c',
+  'gst-play-kb.h'],
++install: true,
+ dependencies : [gst_dep, gstplayer_dep, m_dep])
+ 
+diff --git a/playback/player/gtk/meson.build b/playback/player/gtk/meson.build
+index 08aae4f..671a65d 100644
+--- a/playback/player/gtk/meson.build
 b/playback/player/gtk/meson.build
+@@ -18,5 +18,6 @@ executable('gtk-play',
+   gtk_play_resources,
+  'gtk-video-renderer.h',
+  'gtk-video-renderer.c'],
++install: true,
+ dependencies : [glib_dep, gobject_dep, gmodule_dep, gst_dep, gsttag_dep, 
gstplayer_dep, gtk_dep, x11_dep])
+ 
+-- 
+2.13.3
+
diff --git a/meta/recipes-multimedia/gstreamer/gst-player/gst-player.desktop 
b/meta/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop
similarity index 100%
rename from meta/recipes-multimedia/gstreamer/gst-player/gst-player.desktop
rename to meta/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop
diff --git a/meta/recipes-multimedia/gstreamer/gst-player_git.bb 
b/meta/recipes-multimedia/gstreamer/gst-examples_git.bb
similarity index 65%
rename from meta/recipes-multimedia/gstreamer/gst-player_git.bb
rename to meta/recipes-multimedia/gstreamer/gst-examples_git.bb
index ee11e2ba10d..8891328b078 100644
--- a/meta/recipes-multimedia/gstreamer/gst-player_git.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-examples_git.bb
@@ -1,25 +1,23 @@
-SUMMARY = "GStreamer playback helper library and examples"
+SUMMARY = "GStreamer examples (including gtk-play, gst-play)"
 LICENSE = "LGPL-2.0+"
-LIC_FILES_CHKSUM = 
"file://gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9"
+LIC_FILES_CHKSUM = 
"file://playback/player/gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9"
 
 DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base 
gstreamer1.0-plugins-bad gtk+3 glib-2.0-native"
 
-SRC_URI = "git://github.com/sdroege/gst-player.git \
+SRC_URI = "git://anongit.freedesktop.org/gstreamer/gst-examples \
+   file://0001-Make-player-examples-installable.patch \
file://gst-player.desktop"
 
-SRCREV = "ee3c226c82767a089743e4e06058743e67f73cdb"
+SRCREV = "e88c04ff34cf56984e62a524a0bcc16ab51b282d"
 PV = "0.0.1+git${SRCPV}"
 UPSTREAM_CHECK_COMMITS = "1"
 
 S = "${WORKDIR}/git"
 
-inherit autotools pkgconfig distro_features_check
+inherit meson pkgconfig 

[OE-core] [PATCH 6/9] sysprof: convert to meson build

2018-01-04 Thread Alexander Kanavin
Drop autotools-specific patches.

Rename polkit packageconfig option to sysprofd as 'polkit' does not
at all match what is happening.

Remove --enable-compiler-warnings, as the equivalent in meson
could not be found.

Signed-off-by: Alexander Kanavin 
---
 .../sysprof/files/0001-Avoid-building-docs.patch   | 42 --
 .../0001-Disable-check-for-polkit-for-UI.patch | 32 -
 ...d-anything-in-help-as-it-requires-itstool.patch | 26 ++
 ...igure-Add-option-to-enable-disable-polkit.patch | 41 -
 meta/recipes-kernel/sysprof/sysprof_3.26.1.bb  | 23 ++--
 5 files changed, 37 insertions(+), 127 deletions(-)
 delete mode 100644 
meta/recipes-kernel/sysprof/files/0001-Avoid-building-docs.patch
 delete mode 100644 
meta/recipes-kernel/sysprof/files/0001-Disable-check-for-polkit-for-UI.patch
 create mode 100644 
meta/recipes-kernel/sysprof/files/0001-Do-not-build-anything-in-help-as-it-requires-itstool.patch
 delete mode 100644 
meta/recipes-kernel/sysprof/files/0001-configure-Add-option-to-enable-disable-polkit.patch

diff --git a/meta/recipes-kernel/sysprof/files/0001-Avoid-building-docs.patch 
b/meta/recipes-kernel/sysprof/files/0001-Avoid-building-docs.patch
deleted file mode 100644
index 202f354d29c..000
--- a/meta/recipes-kernel/sysprof/files/0001-Avoid-building-docs.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 27df521c68e7c8b5b050dab15f40aa15fd03623a Mon Sep 17 00:00:00 2001
-From: Jussi Kukkonen 
-Date: Wed, 4 May 2016 14:58:24 +0300
-Subject: [PATCH] Avoid building docs
-
-Upstream-Status: Inappropriate
-Signed-off-by: Jussi Kukkonen 

- Makefile.am | 2 +-
- m4/yelp.m4  | 6 --
- 2 files changed, 1 insertion(+), 7 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index b919a3f..3a3851d 100644
 a/Makefile.am
-+++ b/Makefile.am
-@@ -1,4 +1,4 @@
--SUBDIRS = daemon data help lib po src tools tests
-+SUBDIRS = daemon data lib po src tools tests
- 
- EXTRA_DIST = AUTHORS tap-test COPYING.gpl-2
- 
-diff --git a/m4/yelp.m4 b/m4/yelp.m4
-index 5db847f..1b6ede4 100644
 a/m4/yelp.m4
-+++ b/m4/yelp.m4
-@@ -27,12 +27,6 @@ AC_ARG_WITH([help-dir],
- HELP_DIR="$with_help_dir"
- AC_SUBST(HELP_DIR)
- 
--AC_ARG_VAR([ITSTOOL], [Path to the `itstool` command])
--AC_CHECK_PROG([ITSTOOL], [itstool], [itstool])
--if test x"$ITSTOOL" = x; then
--  AC_MSG_ERROR([itstool not found])
--fi
--
- AC_ARG_VAR([XMLLINT], [Path to the `xmllint` command])
- AC_CHECK_PROG([XMLLINT], [xmllint], [xmllint])
- if test x"$XMLLINT" = x; then
--- 
-2.1.4
-
diff --git 
a/meta/recipes-kernel/sysprof/files/0001-Disable-check-for-polkit-for-UI.patch 
b/meta/recipes-kernel/sysprof/files/0001-Disable-check-for-polkit-for-UI.patch
deleted file mode 100644
index 608523272ad..000
--- 
a/meta/recipes-kernel/sysprof/files/0001-Disable-check-for-polkit-for-UI.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 765d578145e31ddc9495adfab8037ade33c6a9cc Mon Sep 17 00:00:00 2001
-From: Jussi Kukkonen 
-Date: Wed, 4 May 2016 10:59:36 +0300
-Subject: [PATCH] Disable check for polkit for UI
-
-The check is not technically required: sysprof just needs
-to be able to access system perf counters at runtime.
-
-Upstream-Status: Pending
-Signed-off-by: Jussi Kukkonen 

- configure.ac | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 8559597..ecf93ad 100644
 a/configure.ac
-+++ b/configure.ac
-@@ -131,8 +131,8 @@ AS_IF([test "$enable_gtk" = auto],[
-   AS_IF([test "$have_gtk" = "yes" && test "$have_polkit" = 
"yes"],[enable_gtk=yes],[enable_gtk=no])
- ])
- AS_IF([test "$enable_gtk" = "yes"],[
--  AS_IF([test "$have_gtk" = "yes" && test "$have_polkit" = "yes"],[],[
--  AC_MSG_ERROR([--enable-gtk requires gtk+-3.0 >= 
gtk_required_version and polkit-gobject-1])
-+  AS_IF([test "$have_gtk" = "yes"],[],[
-+  AC_MSG_ERROR([--enable-gtk requires gtk+-3.0 >= 
gtk_required_version])
-   ])
- ])
- AM_CONDITIONAL(ENABLE_GTK, test "$enable_gtk" = "yes")
--- 
-2.8.1
-
diff --git 
a/meta/recipes-kernel/sysprof/files/0001-Do-not-build-anything-in-help-as-it-requires-itstool.patch
 
b/meta/recipes-kernel/sysprof/files/0001-Do-not-build-anything-in-help-as-it-requires-itstool.patch
new file mode 100644
index 000..e28fdcad948
--- /dev/null
+++ 
b/meta/recipes-kernel/sysprof/files/0001-Do-not-build-anything-in-help-as-it-requires-itstool.patch
@@ -0,0 +1,26 @@
+From c2495a4c042e6a675da69bab20cc3669391e8e2a Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin 
+Date: Wed, 23 Aug 2017 18:38:26 +0300
+Subject: [PATCH 1/2] Do not build anything in help/ as it requires itstool.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin 
+---
+ meson.build | 1 -
+ 1 file 

[OE-core] [PATCH 4/9] libepoxy: convert to meson build

2018-01-04 Thread Alexander Kanavin
Add a patch to work around absence of dlvsym() on musl
(wasn't previously a problem as autotools weren't building tests by default)

Signed-off-by: Alexander Kanavin 
---
 ...sible-to-disable-the-use-of-dlvsym-needed.patch | 55 ++
 meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb   | 12 +++--
 2 files changed, 63 insertions(+), 4 deletions(-)
 create mode 100644 
meta/recipes-graphics/libepoxy/libepoxy/0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch

diff --git 
a/meta/recipes-graphics/libepoxy/libepoxy/0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch
 
b/meta/recipes-graphics/libepoxy/libepoxy/0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch
new file mode 100644
index 000..c2a2fa34535
--- /dev/null
+++ 
b/meta/recipes-graphics/libepoxy/libepoxy/0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch
@@ -0,0 +1,55 @@
+From 7bcefd311cd696955376fe2c5298ec85e8f954ce Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin 
+Date: Wed, 15 Nov 2017 12:48:27 +0200
+Subject: [PATCH] Make it possible to disable the use of dlvsym() (needed for
+ musl)
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin 
+
+---
+ meson_options.txt | 3 +++
+ test/meson.build  | 6 +++---
+ 2 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/meson_options.txt b/meson_options.txt
+index 244476a..071f0b6 100644
+--- a/meson_options.txt
 b/meson_options.txt
+@@ -1,6 +1,9 @@
+ option('enable-docs',
+type: 'boolean', value: false,
+description: 'Enable generating the Epoxy API reference (depends on 
Doxygen)')
++option('has-dlvsym',
++   type: 'boolean', value: true,
++   description: 'Whether dlvsym() is available (it is not when using musl 
C library)')
+ option('enable-glx',
+type: 'combo',
+choices: [ 'auto', 'yes', 'no' ],
+diff --git a/test/meson.build b/test/meson.build
+index 2340fc6..bc4330b 100644
+--- a/test/meson.build
 b/test/meson.build
+@@ -86,8 +86,8 @@ if build_glx
+ [ 'glx_has_extension_nocontext', [ 'glx_has_extension_nocontext.c' ], [], 
[], true ],
+ [ 'glx_static', [ 'glx_static.c' ], [ '-DNEEDS_TO_BE_STATIC'], [ 
'-static' ], libtype == 'static' ],
+ [ 'glx_shared_znow', [ 'glx_static.c', ], [], [ '-Wl,-z,now' ], has_znow 
],
+-[ 'glx_alias_prefer_same_name', [ 'glx_alias_prefer_same_name.c', 
'dlwrap.c', 'dlwrap.h' ], [], [ '-rdynamic' ], not build_apple ],
+-[ 'glx_gles2', [ 'glx_gles2.c', 'dlwrap.c', 'dlwrap.h' ], [], [ 
'-rdynamic' ], not build_apple ],
++[ 'glx_alias_prefer_same_name', [ 'glx_alias_prefer_same_name.c', 
'dlwrap.c', 'dlwrap.h' ], [], [ '-rdynamic' ], not build_apple and 
get_option('has-dlvsym') == true ],
++[ 'glx_gles2', [ 'glx_gles2.c', 'dlwrap.c', 'dlwrap.h' ], [], [ 
'-rdynamic' ], not build_apple and get_option('has-dlvsym') == true ],
+   ]
+ 
+   foreach test: glx_tests
+@@ -108,7 +108,7 @@ if build_glx
+ endif
+   endforeach
+ 
+-  if not build_apple
++  if not build_apple and get_option('has-dlvsym') == true
+ # GLX/EGL tests
+ if build_egl
+   glx_egl_sources = [
+-- 
+2.15.0
+
diff --git a/meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb 
b/meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb
index 0172322b92d..72167a2fb8c 100644
--- a/meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb
+++ b/meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb
@@ -6,17 +6,21 @@ LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b"
 
 SRC_URI = 
"https://github.com/anholt/${BPN}/releases/download/${PV}/${BP}.tar.xz \
-   file://Add-fallback-definition-for-EGL-CAST.patch"
+   file://Add-fallback-definition-for-EGL-CAST.patch \
+   
file://0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch \
+   "
 SRC_URI[md5sum] = "af4c3ce0fb1143bdc4e43f85695a9bed"
 SRC_URI[sha256sum] = 
"0b808a06c9685a62fca34b680abb8bc7fb2fda074478e329b063c1f872b826f6"
 UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases;
 
-inherit autotools pkgconfig distro_features_check
+inherit meson pkgconfig distro_features_check
 
 REQUIRED_DISTRO_FEATURES = "opengl"
 
 DEPENDS = "util-macros"
 
-PACKAGECONFIG[egl] = "--enable-egl, --disable-egl, virtual/egl"
-PACKAGECONFIG[x11] = "--enable-glx, --disable-glx, virtual/libx11"
+PACKAGECONFIG[egl] = "-Denable-egl=yes, -Denable-egl=no, virtual/egl"
+PACKAGECONFIG[x11] = "-Denable-glx=yes, -Denable-glx=no, virtual/libx11"
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} egl"
+
+EXTRA_OEMESON_append_libc-musl = " -Dhas-dlvsym=false "
-- 
2.15.1

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


[OE-core] [PATCH 1/9] meson: add a recipe and class from meta-oe

2018-01-04 Thread Alexander Kanavin
The original recipe has been provided and improved by:

Ross Burton 
Ricardo Ribalda Delgado 
Adam C. Foltzer 
Peter Kjellerstedt 
Linus Svensson 

I have added  patches to fix up gtk-doc and
gobject-introspection in cross-compilation environments,
and also change the order of linker arguments to replicate
autotools more closely (and fix linking errors in some corner
cases).

Signed-off-by: Alexander Kanavin 
---
 meta/classes/meson.bbclass | 108 
 ...s-move-cross_args-in-front-of-output_args.patch |  30 ++
 ...ix-issues-that-arise-when-cross-compiling.patch | 113 +
 ...rospection-determine-g-ir-scanner-and-g-i.patch |  42 
 meta/recipes-devtools/meson/meson_0.44.0.bb|  20 
 5 files changed, 313 insertions(+)
 create mode 100644 meta/classes/meson.bbclass
 create mode 100644 
meta/recipes-devtools/meson/meson/0001-Linker-rules-move-cross_args-in-front-of-output_args.patch
 create mode 100644 
meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
 create mode 100644 
meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
 create mode 100644 meta/recipes-devtools/meson/meson_0.44.0.bb

diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
new file mode 100644
index 000..5953b5d698c
--- /dev/null
+++ b/meta/classes/meson.bbclass
@@ -0,0 +1,108 @@
+inherit python3native
+
+DEPENDS_append = " meson-native ninja-native"
+
+# As Meson enforces out-of-tree builds we can just use cleandirs
+B = "${WORKDIR}/build"
+do_configure[cleandirs] = "${B}"
+
+# Where the meson.build build configuration is
+MESON_SOURCEPATH = "${S}"
+
+# These variables in the environment override meson's *native* tools settings.
+# We have to unset them, so that meson doesn't pick up the cross tools and
+# use them for native builds.
+unset CC
+unset CXX
+unset AR
+
+def noprefix(var, d):
+return d.getVar(var).replace(d.getVar('prefix') + '/', '', 1)
+
+MESONOPTS = " --prefix ${prefix} \
+  --bindir ${@noprefix('bindir', d)} \
+  --sbindir ${@noprefix('sbindir', d)} \
+  --datadir ${@noprefix('datadir', d)} \
+  --libdir ${@noprefix('libdir', d)} \
+  --libexecdir ${@noprefix('libexecdir', d)} \
+  --includedir ${@noprefix('includedir', d)} \
+  --mandir ${@noprefix('mandir', d)} \
+  --infodir ${@noprefix('infodir', d)} \
+  --sysconfdir ${sysconfdir} \
+  --localstatedir ${localstatedir} \
+  --sharedstatedir ${sharedstatedir}"
+
+MESON_C_ARGS = "${TARGET_CC_ARCH}${TOOLCHAIN_OPTIONS}"
+MESON_LINK_ARGS = "${MESON_C_ARGS} ${LDFLAGS}"
+
+# both are required but not used by meson
+MESON_HOST_ENDIAN = "bogus-endian"
+MESON_TARGET_ENDIAN = "bogus-endian"
+
+EXTRA_OEMESON += "${PACKAGECONFIG_CONFARGS}"
+
+MESON_CROSS_FILE = ""
+MESON_CROSS_FILE_class-target = "--cross-file ${WORKDIR}/meson.cross"
+
+def meson_array(var, d):
+return "', '".join(d.getVar(var).split()).join(("'", "'"))
+
+addtask write_config before do_configure
+do_write_config[vardeps] += "MESON_C_ARGS TOOLCHAIN_OPTIONS"
+do_write_config() {
+# This needs to be Py to split the args into single-element lists
+cat >${WORKDIR}/meson.cross <
+Date: Fri, 17 Nov 2017 13:18:28 +0200
+Subject: [PATCH] Linker rules: move {cross_args} in front of {output_args}
+
+The previous order was found to break linking in some cases
+(e.g. when -no-pic -fno-PIC was present in {cross_args}.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin 
+---
+ mesonbuild/backend/ninjabackend.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mesonbuild/backend/ninjabackend.py 
b/mesonbuild/backend/ninjabackend.py
+index bb281e1..969b70e 100644
+--- a/mesonbuild/backend/ninjabackend.py
 b/mesonbuild/backend/ninjabackend.py
+@@ -1501,7 +1501,7 @@ int dummy;
+  rspfile_content = $ARGS  {output_args} $in $LINK_ARGS {cross_args} $aliasing
+ '''
+ else:
+-command_template = ' command = {executable} $ARGS 
{output_args} $in $LINK_ARGS {cross_args} $aliasing\n'
++command_template = ' command = {executable} $ARGS 
{cross_args} {output_args} $in $LINK_ARGS $aliasing\n'
+ command = command_template.format(
+ executable=' '.join(compiler.get_linker_exelist()),
+ cross_args=' '.join(cross_args),
+-- 
+2.15.0
+
diff --git 
a/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
 
b/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
new file mode 100644
index 000..1912e94358e

[OE-core] [PATCH 2/9] gnomebase-meson.bbclass: add a meson-specific version

2018-01-04 Thread Alexander Kanavin
gnomebase.bbclass hardcodes the autotools inherit, so make it
configurable and set appropriately from both classes.

Signed-off-by: Alexander Kanavin 
---
 meta/classes/gnomebase-meson.bbclass | 2 ++
 meta/classes/gnomebase.bbclass   | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)
 create mode 100644 meta/classes/gnomebase-meson.bbclass

diff --git a/meta/classes/gnomebase-meson.bbclass 
b/meta/classes/gnomebase-meson.bbclass
new file mode 100644
index 000..92e2e3f3b18
--- /dev/null
+++ b/meta/classes/gnomebase-meson.bbclass
@@ -0,0 +1,2 @@
+GNOMEBASEBUILDCLASS = "meson"
+inherit gnomebase
diff --git a/meta/classes/gnomebase.bbclass b/meta/classes/gnomebase.bbclass
index 4ccc8e07814..efcb6caae15 100644
--- a/meta/classes/gnomebase.bbclass
+++ b/meta/classes/gnomebase.bbclass
@@ -20,7 +20,8 @@ FILES_${PN} += "${datadir}/application-registry  \
 
 FILES_${PN}-doc += "${datadir}/devhelp"
 
-inherit autotools pkgconfig
+GNOMEBASEBUILDCLASS ??= "autotools"
+inherit ${GNOMEBASEBUILDCLASS} pkgconfig
 
 do_install_append() {
rm -rf ${D}${localstatedir}/lib/scrollkeeper/*
-- 
2.15.1

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


[OE-core] ✗ patchtest: failure for "utils: Make get_multilib_datas..." and 1 more

2018-01-04 Thread Patchwork
== Series Details ==

Series: "utils: Make get_multilib_datas..." and 1 more
Revision: 1
URL   : https://patchwork.openembedded.org/series/10388/
State : failure

== Summary ==


Thank you for submitting this patch series to OpenEmbedded Core. This is
an automated response. Several tests have been executed on the proposed
series by patchtest resulting in the following failures:



* Issue Series does not apply on top of target branch 
[test_series_merge_on_head] 
  Suggested fixRebase your series on top of targeted branch
  Targeted branch  master (currently at 65652f419a)



If you believe any of these test results are incorrect, please reply to the
mailing list (openembedded-core@lists.openembedded.org) raising your concerns.
Otherwise we would appreciate you correcting the issues and submitting a new
version of the patchset if applicable. Please ensure you add/increment the
version number when sending the new version (i.e. [PATCH] -> [PATCH v2] ->
[PATCH v3] -> ...).

---
Guidelines: 
https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest
Test suite: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe

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


[OE-core] [PATCH 2/2] site/common: Allow ac_cv_path_SED to be overridden

2018-01-04 Thread Richard Purdie
There are tools in the wild where we need this to be a full path, even
if that doesn't make sense in most other cases due to libtool issues.
Allow those cases to override the default value as currently its near
impossible to do so.

Signed-off-by: Richard Purdie 
---
 meta/site/common | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/site/common b/meta/site/common
index 5ccc14f..ff55232 100644
--- a/meta/site/common
+++ b/meta/site/common
@@ -18,4 +18,4 @@ shadow_cv_passwd_dir=${bindir}
 # python: deactivate a runtime check for ipv6-support in python >=2.7.1 that 
fails when cross-compiling
 ac_cv_buggy_getaddrinfo=no
 
-ac_cv_path_SED=sed
+ac_cv_path_SED=${ac_cv_path_SED=sed}
-- 
2.7.4

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


[OE-core] [PATCH 1/2] utils: Make get_multilib_datastore available from lib/oe

2018-01-04 Thread Richard Purdie
Currently we can't access this function from lib/oe as its a class function.
Move it to allow such access.

Signed-off-by: Richard Purdie 
---
 meta/classes/utils.bbclass | 7 +--
 meta/lib/oe/utils.py   | 8 
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/meta/classes/utils.bbclass b/meta/classes/utils.bbclass
index 8e07eac..32cae7e 100644
--- a/meta/classes/utils.bbclass
+++ b/meta/classes/utils.bbclass
@@ -364,12 +364,7 @@ def multilib_pkg_extend(d, pkg):
 return pkgs
 
 def get_multilib_datastore(variant, d):
-localdata = bb.data.createCopy(d)
-overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" 
+ variant
-localdata.setVar("OVERRIDES", overrides)
-localdata.setVar("MLPREFIX", variant + "-")
-return localdata
-get_multilib_datastore[vardepsexclude] = "OVERRIDES"
+return oe.utils.get_multilib_datastore(variant, d)
 
 def all_multilib_tune_values(d, var, unique = True, need_split = True, delim = 
' '):
 """Return a string of all ${var} in all multilib tune configuration"""
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index 1897c5f..7a79d75 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -281,6 +281,14 @@ def host_gcc_version(d):
 version = match.group(1)
 return "-%s" % version if version in ("4.8", "4.9") else ""
 
+
+def get_multilib_datastore(variant, d):
+localdata = bb.data.createCopy(d)
+overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" 
+ variant
+localdata.setVar("OVERRIDES", overrides)
+localdata.setVar("MLPREFIX", variant + "-")
+return localdata
+
 #
 # Python 2.7 doesn't have threaded pools (just multiprocessing)
 # so implement a version here
-- 
2.7.4

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


Re: [OE-core] [PATCH 3/9] json-glib: convert to meson build

2018-01-04 Thread Alexander Kanavin

On 01/04/2018 10:40 AM, ChenQi wrote:
I got the following do_compile failure when I was building json-glib for 
qemux86-64.



| FileNotFoundError: [Errno 2] No such file or directory: 
'/buildarea2/chenqi/poky/build-systemd/tmp/work/core2-64-poky-linux/json-glib/1.2.8-r0/build/tmp-introspect27wkly7i/Json-1.0' 



I just tried qemux86-64, it works for me. Is it something in your local 
setup? Can you take this branch and check it locally?


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

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


[OE-core] ✗ patchtest: failure for "[v3] runtime/cases/ptest.py: d..." and 2 more

2018-01-04 Thread Patchwork
== Series Details ==

Series: "[v3] runtime/cases/ptest.py: d..." and 2 more
Revision: 1
URL   : https://patchwork.openembedded.org/series/10387/
State : failure

== Summary ==


Thank you for submitting this patch series to OpenEmbedded Core. This is
an automated response. Several tests have been executed on the proposed
series by patchtest resulting in the following failures:



* Patch[v3,1/3] runtime/cases/ptest.py: do not require ptest-pkgs 
in IMAGE_FEATURES; run only when ptest-runner is availalble; 
 Issue Commit shortlog is too long [test_shortlog_length] 
  Suggested fixEdit shortlog so that it is 90 characters or less (currently 
110 characters)



If you believe any of these test results are incorrect, please reply to the
mailing list (openembedded-core@lists.openembedded.org) raising your concerns.
Otherwise we would appreciate you correcting the issues and submitting a new
version of the patchset if applicable. Please ensure you add/increment the
version number when sending the new version (i.e. [PATCH] -> [PATCH v2] ->
[PATCH v3] -> ...).

---
Guidelines: 
https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest
Test suite: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe

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


Re: [OE-core] [PATCH 1/1] rpm_4.14.0: clamp timestamps by default

2018-01-04 Thread Alexander Kanavin

On 01/03/2018 06:59 PM, Bystricky, Juro wrote:


A technicality: do not patch mnacros.in, set the macro directly from
package_rpm.bbclass.



Yes, I considered this (see the [patch 0/1]). I chose to patch macros.in in the
recipe rpm_4.14.0 instead because the new macro is introduced in RPM 4.14.0.
I assumed we did not want to have RPM version dependencies in 
package_rpm.bbclass.
But I have no strong feelings regarding this, I am pretty sure the new macro is 
here
to stay in the future and it is unlikely anyone would want to use a pre-4.14.0
version of RPM either. If you think patching package_rpm.bbclass makes more 
sense,
I can send in another patch.


Yes please. Setting configuration options at runtime is always 
preferable to patching the upstream source code, for maintainability 
reasons. We are already drowning in patches.


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


[OE-core] [PATCHv3 3/3] runtime/cases/ptest.py: fail when ptests fail on target

2018-01-04 Thread Alexander Kanavin
That's the whole point isn't it? Previously this testcase succeeded
even if some of the underlying on-target tests failed; the only way
to find out if anything was wrong was to manually inspect the logs.

Signed-off-by: Alexander Kanavin 
---
 meta/lib/oeqa/runtime/cases/ptest.py | 8 
 1 file changed, 8 insertions(+)

diff --git a/meta/lib/oeqa/runtime/cases/ptest.py 
b/meta/lib/oeqa/runtime/cases/ptest.py
index a2b6ffdfe11..f60a433d590 100644
--- a/meta/lib/oeqa/runtime/cases/ptest.py
+++ b/meta/lib/oeqa/runtime/cases/ptest.py
@@ -83,3 +83,11 @@ class PtestRunnerTest(OERuntimeTestCase):
 # Remove the old link to create a new one
 os.remove(ptest_log_dir_link)
 os.symlink(os.path.basename(ptest_log_dir), ptest_log_dir_link)
+
+failed_tests = {}
+for section in parse_result.result_dict:
+failed_testcases = [ test for test, result in 
parse_result.result_dict[section] if result == 'fail' ]
+if failed_testcases:
+failed_tests[section] = failed_testcases
+
+self.assertFalse(failed_tests, msg = "Failed ptests: %s" 
%(str(failed_tests)))
-- 
2.15.1

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


[OE-core] [PATCHv3 1/3] runtime/cases/ptest.py: do not require ptest-pkgs in IMAGE_FEATURES; run only when ptest-runner is availalble;

2018-01-04 Thread Alexander Kanavin
Previously the test would execute only when all available ptests
for packages in the image were installed; some of those tests may
be broken, never finish, take a very long time or simply irrelevant
to the user who wants to check ptests of only a few specific packages,
and does so by listing them explicitly via IMAGE_INSTALL_append or similar.

Presence of ptest-runner means there is at least one ptest package installed
as they pull it in via a class dependency; ptest-runner is not generally
installed otherwise.

Signed-off-by: Alexander Kanavin 
---
 meta/lib/oeqa/runtime/cases/ptest.py | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/runtime/cases/ptest.py 
b/meta/lib/oeqa/runtime/cases/ptest.py
index ec8c038a566..a2b6ffdfe11 100644
--- a/meta/lib/oeqa/runtime/cases/ptest.py
+++ b/meta/lib/oeqa/runtime/cases/ptest.py
@@ -48,9 +48,12 @@ class PtestRunnerTest(OERuntimeTestCase):
 
 @OETestID(1600)
 @skipIfNotFeature('ptest', 'Test requires ptest to be in DISTRO_FEATURES')
-@skipIfNotFeature('ptest-pkgs', 'Test requires ptest-pkgs to be in 
IMAGE_FEATURES')
 @OETestDepends(['ssh.SSHTest.test_ssh'])
 def test_ptestrunner(self):
+status, output = self.target.run('which ptest-runner', 0)
+if status != 0:
+self.skipTest("No -ptest packages are installed in the image")
+
 import datetime
 
 test_log_dir = self.td.get('TEST_LOG_DIR', '')
-- 
2.15.1

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


[OE-core] [PATCHv3 2/3] testimage.bbclass: add ptest to the list of runtime tests whenever possible

2018-01-04 Thread Alexander Kanavin
If no ptest packages are installed in the image, the test does nothing;
if ptest packages are installed in the image, then they should be
run without user having to enable that manually.

Signed-off-by: Alexander Kanavin 
---
 meta/classes/testimage.bbclass | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass
index 7260ad4517a..3acccbb8fdb 100644
--- a/meta/classes/testimage.bbclass
+++ b/meta/classes/testimage.bbclass
@@ -44,16 +44,16 @@ DEVTESTSUITE = "gcc kernelmodule ldd"
 DEFAULT_TEST_SUITES = "${MINTESTSUITE} auto"
 DEFAULT_TEST_SUITES_pn-core-image-minimal = "${MINTESTSUITE}"
 DEFAULT_TEST_SUITES_pn-core-image-minimal-dev = "${MINTESTSUITE}"
-DEFAULT_TEST_SUITES_pn-core-image-full-cmdline = "${NETTESTSUITE} perl python 
logrotate"
+DEFAULT_TEST_SUITES_pn-core-image-full-cmdline = "${NETTESTSUITE} perl python 
logrotate ptest"
 DEFAULT_TEST_SUITES_pn-core-image-x11 = "${MINTESTSUITE}"
-DEFAULT_TEST_SUITES_pn-core-image-lsb = "${NETTESTSUITE} pam parselogs 
${RPMTESTSUITE}"
+DEFAULT_TEST_SUITES_pn-core-image-lsb = "${NETTESTSUITE} pam parselogs 
${RPMTESTSUITE} ptest"
 DEFAULT_TEST_SUITES_pn-core-image-sato = "${NETTESTSUITE} connman xorg 
parselogs ${RPMTESTSUITE} \
-${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'python', '', d)}"
+${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'python', '', d)} ptest"
 DEFAULT_TEST_SUITES_pn-core-image-sato-sdk = "${NETTESTSUITE} buildcpio 
buildlzip buildgalculator \
-connman ${DEVTESTSUITE} logrotate perl parselogs python ${RPMTESTSUITE} 
xorg"
-DEFAULT_TEST_SUITES_pn-core-image-lsb-dev = "${NETTESTSUITE} pam perl python 
parselogs ${RPMTESTSUITE}"
+connman ${DEVTESTSUITE} logrotate perl parselogs python ${RPMTESTSUITE} 
xorg ptest"
+DEFAULT_TEST_SUITES_pn-core-image-lsb-dev = "${NETTESTSUITE} pam perl python 
parselogs ${RPMTESTSUITE} ptest"
 DEFAULT_TEST_SUITES_pn-core-image-lsb-sdk = "${NETTESTSUITE} buildcpio 
buildlzip buildgalculator \
-connman ${DEVTESTSUITE} logrotate pam parselogs perl python 
${RPMTESTSUITE}"
+connman ${DEVTESTSUITE} logrotate pam parselogs perl python 
${RPMTESTSUITE} ptest"
 DEFAULT_TEST_SUITES_pn-meta-toolchain = "auto"
 
 # aarch64 has no graphics
-- 
2.15.1

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


Re: [OE-core] [PATCH] shadow: 'useradd' copies root's extended attributes

2018-01-04 Thread Patrick Ohly
On Thu, 2018-01-04 at 19:39 +0800, wenzong fan wrote:
> If so, I think we should wrapper the logic with:
> 
> +#if defined(WITH_ATTR) && !defined(WITH_SELINUX)
> +  attr_copy_file (def_template, user_home, NULL, NULL);
> +#endif

Does attr_copy_file fail when SELinux is active? In other words, why
should it be disabled when using SELinux?

File capabilities are also stored in xattrs. It might be relevant to
copy those when using SELinux. Or do I miss something?

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.


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


Re: [OE-core] [PATCH] shadow: 'useradd' copies root's extended attributes

2018-01-04 Thread wenzong fan



On 01/04/2018 06:41 PM, Patrick Ohly wrote:

On Thu, 2018-01-04 at 11:18 +0100, José Bollo wrote:

Do you agree to move the patch to Smack specific layer? Such as
meta-security?


I agree.


Layers like meta-security should not modify recipes from other layers,
at least not by default. That would violate the "Yocto Compatible 2.0"
rules.

Besides, it would be harder to maintain in a separate layer - for the
maintainer of that layer.

I still think this patch belong into OE-core, even though it is then
more work for the OE-core maintainer.



If so, I think we should wrapper the logic with:

+#if defined(WITH_ATTR) && !defined(WITH_SELINUX)
+  attr_copy_file (def_template, user_home, NULL, NULL);
+#endif

Or just add a new condition like WITH_SMACK or something.

Thanks
Wenzong

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


Re: [OE-core] [PATCH 2/2] image-live.bbclass: remove MLPREFIX from syslinux

2018-01-04 Thread Robert Yang

Hi RP,

Thanks for the reply.

On 01/03/2018 10:19 PM, Richard Purdie wrote:

On Wed, 2018-01-03 at 21:56 +0800, Robert Yang wrote:

Also, there are some things which never make sense as a multilib,
the
kernel is one example and I'm starting to wonder if syslinux would
be
another. In the kernel (and kernel module) case we'd provide all
the
libX variants from the same recipe, we may want to do that for
syslinux.

I think that syslinux is different from kernel, 64bit kernel can
provide 32bit kernel via kernel config, but syslinux can't (except
these non arch files).


Think about this differently. The system can ever only boot one single
kernel. The image can have several different multilibs running at once
in different userspace processes but there can only ever be one running
kernel.

How that kernel is configured is obviously important but the key thing
is there can only be one running.

The bootloader is similar in that you likely only ever want one and I
suspect syslinux is similar.


Makes sense, I will work on it.



Also, don't confuse this with multi-boot or multi partition systems
where there could be a "main" and a "backup" kernel. In those cases
there would only ever be one running at once.


It may be we can't avoid the multiple compiler issue and the
current
codebase may not do so, I think currently we can avoid multiple
glibc
though.

I'm not sure about a problem on this, should lib32-image can run
64bit programs or not ? If yes, then kernel should be 64bit, and we
can't avoid building 64bit compilers. And I'm leaning to yes since we
call it multilib, the pure 32bit image which can't run 64bit programs
can't be called multilib.


That is a configuration issue for the multilib you select. In general,
yes you'd want a 64 bit kernel.


I did a rough search on why glibc is built, when bitbake lib32-image,
it is because:

64 bit kernel -> gcc-cross-x86_64 -> virtual/${TARGET_PREFIX}libc-
for-gcc,
and the TARGET_PREFIX is x86_64 when building gcc-cross-x86_64,
While the virtual/x86_64-poky-linux-libc-for-gcc is provided by
glibc.

I tried to remove the depends, both "bitbake gcc-cross-x86_64" and
"bitbake linux-yocto" can be built, but other recipes such as quilt
would be failed:


I find it interesting that gcc-cross-x86_64 would build without glibc.
If that really is the case we may be able to speed up our compiler
bootstrap so that could be worth investigating further.

Its not surprising that libgcc won't build without glibc though.
Perhaps gcc-cross works since we split out the build of libgcc?


collect2: error: ld returned 1 exit status
Makefile:978: recipe for target 'libgcc_s.so' failed

And move virtual/${TARGET_PREFIX}libc-for-gcc to BASE_DEFAULT_DEPS
can't make it work either, so it seems that we can't avoid building
glibc.


No, I'd forgotten that gcc-cross depends on glibc. Based on the above
there may still be some optimisation we can make here.

In the back of my mind, I'm concious that one x86 cross compiler should
be able to work for 32 and 64 bit too, its just the compiler options
and libgcc etc. would need to be generated for both...


Build one toolchain for both x86 32 and 64 is possible, I'd like to work
on it if it is worth.

// Robert




Regardless, I do think this needs a little more thought, we also
need
better multiple test cases as we're not catching issues like this.
think this needs to be revisited along with your outstanding
multilib
patch series which I haven't found the time to review yet (sorry).

That's all right, I'm very glad to make mutilib work well, including
adding test cases for them. It is nearly broken after changed from
smart + rpm5 to dnf + rpm4, those patches fixed the problem.


Agreed, its important and on my list of things to review, I've just had
to focus on getting build testing working properly and now I can try
and clear some of the patch backlog.

Cheers,

Richard


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


Re: [OE-core] [PATCH] shadow: 'useradd' copies root's extended attributes

2018-01-04 Thread Patrick Ohly
On Thu, 2018-01-04 at 11:18 +0100, José Bollo wrote:
> > Do you agree to move the patch to Smack specific layer? Such as 
> > meta-security?
> 
> I agree.

Layers like meta-security should not modify recipes from other layers,
at least not by default. That would violate the "Yocto Compatible 2.0"
rules.

Besides, it would be harder to maintain in a separate layer - for the
maintainer of that layer.

I still think this patch belong into OE-core, even though it is then
more work for the OE-core maintainer.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.


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


Re: [OE-core] [PATCH] shadow: 'useradd' copies root's extended attributes

2018-01-04 Thread José Bollo
On Thu, 4 Jan 2018 17:28:27 +0800
wenzong fan  wrote:

> Hi José Bollo,
> 
> This will override the labels of user's home directories that set by 
> SELinux.
> 
> For example, if I run below command on SELinux enabled system:
> 
> $ useradd test
> 
> SELinux will label it as "user_u:object_r:user_home_dir_t:SystemLow" 
> first, and then useradd will reset the label as 
> "system_u:object_r:etc_t:SystemLow".
> 
> I got strace logs below:
> 
> 723   openat(AT_FDCWD, "/proc/thread-self/attr/fscreate", 
> O_RDWR|O_CLOEXEC) = 11
> 723   write(11, "user_u:object_r:user_home_dir_t:"..., 35) = 35 
> 
> 723   close(11) = 0
> 723   mkdir("/home/t1", 000)= 0
> 723   chown("/home/t1", 1000, 1000) = 0
> 723   chmod("/home/t1", 0755)   = 0
> 
> # SELinux labelled it as "user_home_dir_t" here.
> 
> 723   llistxattr("/etc/skel", NULL, 0)  = 17
> 723   llistxattr("/etc/skel", "security.selinux\0", 17) = 17
> 723   openat(AT_FDCWD, "/etc/xattr.conf", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> 723   lgetxattr("/etc/skel", "security.selinux", NULL, 0) = 27
> 723   lgetxattr("/etc/skel", "security.selinux", 
> "system_u:object_r:etc_t:s0", 27) = 27
> 723   lsetxattr("/home/t1", "security.selinux", 
> "system_u:object_r:etc_t:s0", 27, 0) = 0
> 
> # useradd reset the label as "etc_t" here.
> 
> Do you agree to move the patch to Smack specific layer? Such as 
> meta-security?

I agree.

SELinux is the king of monsters and pushes others in corners...

Best regards
José

> Thanks
> Wenzong
> 
> On 03/15/2017 04:04 PM, José Bollo wrote:
> > On Thu, 09 Mar 2017 18:18:05 +0100
> > Patrick Ohly  wrote:
> >   
> >> On Thu, 2017-03-09 at 17:48 +0100, José Bollo wrote:  
> >>> On Thu, 09 Mar 2017 17:07:54 +0100
> >>> Patrick Ohly  wrote:  
>  Can't you reorder and rebase the patches so that this
>  0001-useradd.c-create-parent-directories-when-necessary.patch
>  applies on top of the patch which was submitted upstream?  
> >>>
> >>> I agree that it would be better to reorder. Better but less
> >>> conservative because an existing patch must be upgraded.  
> >>
> >> If upstream merges the proposed patch, then rebasing will be
> >> inevitable at some point, so we might as well do the cleaner
> >> solution now, even if the diff becomes larger.
> >>  
>  "devtool modify shadow-native" might be useful for that. "git
>  rebase -i" in workspace/sources/shadow-native", then finish with
>  "devtool update-recipe shadow-native". I haven't tried whether
>  "update-recipe" handles re-ordering patches. If it doesn't, just
>  fix it manually.  
> >>>
> >>> I'll do and propose the new version soon.  
> >>
> >> Thanks!
> >>  
> > 
> > I pushed a new version of the patch this monday. I suppose that it
> > is waiting for approval.
> > 
> > Best regards
> > José Bollo
> >   

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


Re: [OE-core] [PATCH 3/9] json-glib: convert to meson build

2018-01-04 Thread Yang, Zhangle (Eric)

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


Re: [OE-core] [PATCH] receipes-devtools: QEMU: Bump to version 2.11.0

2018-01-04 Thread Yang, Zhangle (Eric)

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


Re: [OE-core] [PATCH] shadow: 'useradd' copies root's extended attributes

2018-01-04 Thread wenzong fan



On 01/04/2018 05:28 PM, wenzong fan wrote:

Hi José Bollo,

This will override the labels of user's home directories that set by 
SELinux.


For example, if I run below command on SELinux enabled system:

$ useradd test



Sorry for the typo: s/test/t1/g to match with strace logs.

// Wenzong

SELinux will label it as "user_u:object_r:user_home_dir_t:SystemLow" 
first, and then useradd will reset the label as 
"system_u:object_r:etc_t:SystemLow".


I got strace logs below:

723   openat(AT_FDCWD, "/proc/thread-self/attr/fscreate", 
O_RDWR|O_CLOEXEC) = 11

723   write(11, "user_u:object_r:user_home_dir_t:"..., 35) = 35
723   close(11) = 0
723   mkdir("/home/t1", 000)    = 0
723   chown("/home/t1", 1000, 1000) = 0
723   chmod("/home/t1", 0755)   = 0

# SELinux labelled it as "user_home_dir_t" here.

723   llistxattr("/etc/skel", NULL, 0)  = 17
723   llistxattr("/etc/skel", "security.selinux\0", 17) = 17
723   openat(AT_FDCWD, "/etc/xattr.conf", O_RDONLY) = -1 ENOENT (No such 
file or directory)

723   lgetxattr("/etc/skel", "security.selinux", NULL, 0) = 27
723   lgetxattr("/etc/skel", "security.selinux", 
"system_u:object_r:etc_t:s0", 27) = 27
723   lsetxattr("/home/t1", "security.selinux", 
"system_u:object_r:etc_t:s0", 27, 0) = 0


# useradd reset the label as "etc_t" here.

Do you agree to move the patch to Smack specific layer? Such as 
meta-security?


Thanks
Wenzong

On 03/15/2017 04:04 PM, José Bollo wrote:

On Thu, 09 Mar 2017 18:18:05 +0100
Patrick Ohly  wrote:


On Thu, 2017-03-09 at 17:48 +0100, José Bollo wrote:

On Thu, 09 Mar 2017 17:07:54 +0100
Patrick Ohly  wrote:

Can't you reorder and rebase the patches so that this
0001-useradd.c-create-parent-directories-when-necessary.patch
applies on top of the patch which was submitted upstream?


I agree that it would be better to reorder. Better but less
conservative because an existing patch must be upgraded.


If upstream merges the proposed patch, then rebasing will be
inevitable at some point, so we might as well do the cleaner solution
now, even if the diff becomes larger.


"devtool modify shadow-native" might be useful for that. "git
rebase -i" in workspace/sources/shadow-native", then finish with
"devtool update-recipe shadow-native". I haven't tried whether
"update-recipe" handles re-ordering patches. If it doesn't, just
fix it manually.


I'll do and propose the new version soon.


Thanks!



I pushed a new version of the patch this monday. I suppose that it is
waiting for approval.

Best regards
José Bollo




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


Re: [OE-core] [PATCH] shadow: 'useradd' copies root's extended attributes

2018-01-04 Thread wenzong fan

Hi José Bollo,

This will override the labels of user's home directories that set by 
SELinux.


For example, if I run below command on SELinux enabled system:

$ useradd test

SELinux will label it as "user_u:object_r:user_home_dir_t:SystemLow" 
first, and then useradd will reset the label as 
"system_u:object_r:etc_t:SystemLow".


I got strace logs below:

723   openat(AT_FDCWD, "/proc/thread-self/attr/fscreate", 
O_RDWR|O_CLOEXEC) = 11
723   write(11, "user_u:object_r:user_home_dir_t:"..., 35) = 35 


723   close(11) = 0
723   mkdir("/home/t1", 000)= 0
723   chown("/home/t1", 1000, 1000) = 0
723   chmod("/home/t1", 0755)   = 0

# SELinux labelled it as "user_home_dir_t" here.

723   llistxattr("/etc/skel", NULL, 0)  = 17
723   llistxattr("/etc/skel", "security.selinux\0", 17) = 17
723   openat(AT_FDCWD, "/etc/xattr.conf", O_RDONLY) = -1 ENOENT (No such 
file or directory)

723   lgetxattr("/etc/skel", "security.selinux", NULL, 0) = 27
723   lgetxattr("/etc/skel", "security.selinux", 
"system_u:object_r:etc_t:s0", 27) = 27
723   lsetxattr("/home/t1", "security.selinux", 
"system_u:object_r:etc_t:s0", 27, 0) = 0


# useradd reset the label as "etc_t" here.

Do you agree to move the patch to Smack specific layer? Such as 
meta-security?


Thanks
Wenzong

On 03/15/2017 04:04 PM, José Bollo wrote:

On Thu, 09 Mar 2017 18:18:05 +0100
Patrick Ohly  wrote:


On Thu, 2017-03-09 at 17:48 +0100, José Bollo wrote:

On Thu, 09 Mar 2017 17:07:54 +0100
Patrick Ohly  wrote:

Can't you reorder and rebase the patches so that this
0001-useradd.c-create-parent-directories-when-necessary.patch
applies on top of the patch which was submitted upstream?


I agree that it would be better to reorder. Better but less
conservative because an existing patch must be upgraded.


If upstream merges the proposed patch, then rebasing will be
inevitable at some point, so we might as well do the cleaner solution
now, even if the diff becomes larger.


"devtool modify shadow-native" might be useful for that. "git
rebase -i" in workspace/sources/shadow-native", then finish with
"devtool update-recipe shadow-native". I haven't tried whether
"update-recipe" handles re-ordering patches. If it doesn't, just
fix it manually.


I'll do and propose the new version soon.


Thanks!



I pushed a new version of the patch this monday. I suppose that it is
waiting for approval.

Best regards
José Bollo


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


Re: [OE-core] [PATCH 3/9] json-glib: convert to meson build

2018-01-04 Thread Alexander Kanavin

On 01/04/2018 10:51 AM, ChenQi wrote:

file://0001-Do-not-disable-gobject-introspection-when-cross-comp.patch \
+   "


I removed this patch and the compile succeeded.
Could you please check if this patch is really needed?
If it is, I think we'd better make build to succeed by default anyway.


Yes, it is really needed. Without it, introspection files will not be 
generated at all. I'll try to reproduce the failure.


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


Re: [OE-core] [PATCHv2 1/3] runtime/cases/ptest.py: do not require ptest-pkgs in IMAGE_FEATURES

2018-01-04 Thread Alexander Kanavin

On 01/03/2018 10:42 PM, Cal Sullivan wrote:

Looks like it doesn't skip the test correctly:

+status, output = self.target.run('which ptest-runner', 0)
+if len(output) == 0:
+self.skipTest("No -ptest packages are installed in the image")
+


Looks like there are no less than three versions of 'which' (busybox, 
debianutils, gnu), and one of them is noisy when the argument is not 
found. I'll fix and resend the patchset.


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


Re: [OE-core] [PATCH 3/9] json-glib: convert to meson build

2018-01-04 Thread ChenQi

On 12/21/2017 09:04 PM, Alexander Kanavin wrote:

Note that meson flags for gobject introspection and gtk-doc
appear to be non-standardized; going forward we should devise
a common way to deal with it.

gettext inherit is removed, as there is no equivalent functionality
in meson; NLS bits are always built and installed.

Signed-off-by: Alexander Kanavin 
---
  ...ble-gobject-introspection-when-cross-comp.patch | 32 ++
  meta/recipes-gnome/json-glib/json-glib_1.2.8.bb| 23 ++--
  2 files changed, 53 insertions(+), 2 deletions(-)
  create mode 100644 
meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch

diff --git 
a/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
 
b/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
new file mode 100644
index 000..849bb9d3165
--- /dev/null
+++ 
b/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
@@ -0,0 +1,32 @@
+From 293452c963188666dae99521294f09a0cf9582e2 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin 
+Date: Fri, 4 Aug 2017 16:01:11 +0300
+Subject: [PATCH] Do not disable gobject introspection when cross-compiling.
+
+Introspection does work fine for instance in Open Embedded,
+one of the most prominent cross-compilation frameworks
+(through qemu emulating target hardware), so let the user
+decide if he wants the feature or not.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin 
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 43cbfd9..8a32f26 100644
+--- a/meson.build
 b/meson.build
+@@ -147,7 +147,7 @@ root_dir = include_directories('.')
+
+ gnome = import('gnome')
+ gir = find_program('g-ir-scanner', required: false)
+-build_gir = gir.found() and not meson.is_cross_build() and not 
get_option('disable_introspection')
++build_gir = gir.found() and not get_option('disable_introspection')
+
+ subdir('json-glib')
+
+--
+2.13.2
+
diff --git a/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb 
b/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
index 2c5d3817ba7..c53611b0257 100644
--- a/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
+++ b/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
@@ -10,11 +10,30 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
  
  DEPENDS = "glib-2.0"
  
+SRC_URI_append = " \

+   
file://0001-Do-not-disable-gobject-introspection-when-cross-comp.patch \
+   "


I removed this patch and the compile succeeded.
Could you please check if this patch is really needed?
If it is, I think we'd better make build to succeed by default anyway.

Best Regards,
Chen Qi


  SRC_URI[archive.md5sum] = "ff31e7d0594df44318e12facda3d086e"
  SRC_URI[archive.sha256sum] = 
"fd55a9037d39e7a10f0db64309f5f0265fa32ec962bf85066087b83a2807f40a"
  
-inherit gnomebase gettext lib_package gobject-introspection gtk-doc manpages

+inherit gnomebase-meson lib_package gobject-introspection gtk-doc manpages
  
-PACKAGECONFIG[manpages] = "--enable-man --with-xml-catalog=${STAGING_ETCDIR_NATIVE}/xml/catalog.xml, --disable-man, libxslt-native xmlto-native"

+GTKDOC_ENABLE_FLAG = "-Denable-gtk-doc=true"
+GTKDOC_DISABLE_FLAG = "-Denable-gtk-doc=false"
+
+GI_ENABLE_FLAG = "-Ddisable_introspection=false"
+GI_DISABLE_FLAG = "-Ddisable_introspection=true"
+
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 
'True', '${GTKDOC_ENABLE_FLAG}', \
+
'${GTKDOC_DISABLE_FLAG}', d)} "
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 
'True', '${GI_ENABLE_FLAG}', \
+
'${GI_DISABLE_FLAG}', d)} "
+
+PACKAGECONFIG[manpages] = "-Denable-man=true, -Denable-man=false, libxslt-native 
xmlto-native"
+
+do_install_append() {
+# FIXME: these need to be provided via ptest
+rm -rf ${D}${datadir}/installed-tests ${D}${libexecdir}
+}
  
  BBCLASSEXTEND = "native nativesdk"



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


Re: [OE-core] [PATCH] receipes-devtools: QEMU: Bump to version 2.11.0

2018-01-04 Thread Richard Purdie
On Tue, 2018-01-02 at 14:58 -0800, Alistair Francis wrote:
> On Thu, Dec 21, 2017 at 1:56 PM, Alistair Francis
>  wrote:
> > 
> > Use the latest QEMU release 2.11. Remove all patches that are no
> > longer
> > required as they have been merged into the 2.11 releaese. One patch
> > had
> > to be updated to apply to thet 2.11 tree.
> > 
> > Signed-off-by: Alistair Francis 
> Ping!
> 

I ran the qemu upgrade in some builds and both hang in nightly-musl
whilst trying to build webkitgtk:

https://autobuilder.yocto.io/builders/nightly-musl/builds/688/steps/BuildImages/logs/stdiohttps://autobuilder.yocto.io/builders/nightly-musl/builds/687/steps/BuildImages/logs/stdio

Given all the stability issues we've had recently and the trouble I've
had getting stable builds, this issue is going to have to be resolved
before we can take this upgrade.

FWIW they're hanging in qemu user mode:

run.do_compile.───cmake───make───make───make───sh───g-ir-scanner-wr───python3───g-ir-scanner-qe───qemu-i386───2*[{qemu-i386}]

Cheers,

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


Re: [OE-core] [PATCH 3/9] json-glib: convert to meson build

2018-01-04 Thread ChenQi
I got the following do_compile failure when I was building json-glib for 
qemux86-64.



| FileNotFoundError: [Errno 2] No such file or directory: 
'/buildarea2/chenqi/poky/build-systemd/tmp/work/core2-64-poky-linux/json-glib/1.2.8-r0/build/tmp-introspect27wkly7i/Json-1.0'


Best Regards,
Chen Qi


On 12/21/2017 09:04 PM, Alexander Kanavin wrote:

Note that meson flags for gobject introspection and gtk-doc
appear to be non-standardized; going forward we should devise
a common way to deal with it.

gettext inherit is removed, as there is no equivalent functionality
in meson; NLS bits are always built and installed.

Signed-off-by: Alexander Kanavin 
---
  ...ble-gobject-introspection-when-cross-comp.patch | 32 ++
  meta/recipes-gnome/json-glib/json-glib_1.2.8.bb| 23 ++--
  2 files changed, 53 insertions(+), 2 deletions(-)
  create mode 100644 
meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch

diff --git 
a/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
 
b/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
new file mode 100644
index 000..849bb9d3165
--- /dev/null
+++ 
b/meta/recipes-gnome/json-glib/json-glib/0001-Do-not-disable-gobject-introspection-when-cross-comp.patch
@@ -0,0 +1,32 @@
+From 293452c963188666dae99521294f09a0cf9582e2 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin 
+Date: Fri, 4 Aug 2017 16:01:11 +0300
+Subject: [PATCH] Do not disable gobject introspection when cross-compiling.
+
+Introspection does work fine for instance in Open Embedded,
+one of the most prominent cross-compilation frameworks
+(through qemu emulating target hardware), so let the user
+decide if he wants the feature or not.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin 
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 43cbfd9..8a32f26 100644
+--- a/meson.build
 b/meson.build
+@@ -147,7 +147,7 @@ root_dir = include_directories('.')
+
+ gnome = import('gnome')
+ gir = find_program('g-ir-scanner', required: false)
+-build_gir = gir.found() and not meson.is_cross_build() and not 
get_option('disable_introspection')
++build_gir = gir.found() and not get_option('disable_introspection')
+
+ subdir('json-glib')
+
+--
+2.13.2
+
diff --git a/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb 
b/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
index 2c5d3817ba7..c53611b0257 100644
--- a/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
+++ b/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
@@ -10,11 +10,30 @@ LIC_FILES_CHKSUM = 
"file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
  
  DEPENDS = "glib-2.0"
  
+SRC_URI_append = " \

+   
file://0001-Do-not-disable-gobject-introspection-when-cross-comp.patch \
+   "
  SRC_URI[archive.md5sum] = "ff31e7d0594df44318e12facda3d086e"
  SRC_URI[archive.sha256sum] = 
"fd55a9037d39e7a10f0db64309f5f0265fa32ec962bf85066087b83a2807f40a"
  
-inherit gnomebase gettext lib_package gobject-introspection gtk-doc manpages

+inherit gnomebase-meson lib_package gobject-introspection gtk-doc manpages
  
-PACKAGECONFIG[manpages] = "--enable-man --with-xml-catalog=${STAGING_ETCDIR_NATIVE}/xml/catalog.xml, --disable-man, libxslt-native xmlto-native"

+GTKDOC_ENABLE_FLAG = "-Denable-gtk-doc=true"
+GTKDOC_DISABLE_FLAG = "-Denable-gtk-doc=false"
+
+GI_ENABLE_FLAG = "-Ddisable_introspection=false"
+GI_DISABLE_FLAG = "-Ddisable_introspection=true"
+
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 
'True', '${GTKDOC_ENABLE_FLAG}', \
+
'${GTKDOC_DISABLE_FLAG}', d)} "
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 
'True', '${GI_ENABLE_FLAG}', \
+
'${GI_DISABLE_FLAG}', d)} "
+
+PACKAGECONFIG[manpages] = "-Denable-man=true, -Denable-man=false, libxslt-native 
xmlto-native"
+
+do_install_append() {
+# FIXME: these need to be provided via ptest
+rm -rf ${D}${datadir}/installed-tests ${D}${libexecdir}
+}
  
  BBCLASSEXTEND = "native nativesdk"



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


[OE-core] [PATCH] kernel: Add paravirt_kvm support for qemux86-64

2018-01-04 Thread zhe.he
From: He Zhe 

This feature includes paravirtualized KVM guest support.

Signed-off-by: He Zhe 
---
 meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb 
b/meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb
index ed65f77..ebfed3e 100644
--- a/meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb
+++ b/meta/recipes-kernel/linux/linux-yocto-rt_4.12.bb
@@ -35,4 +35,4 @@ KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc 
features/taskstats/ta
 KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
 KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc"
 KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc"
+KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
-- 
2.8.1

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