[OE-core] [PATCH] pulseaudio: change pulse to be a system group
From: Jackie Huangpulse 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
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
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
* 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
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
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
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
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
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
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
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
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
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
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
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
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
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?
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
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
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
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
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
'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
On Wed, Jan 3, 2018 at 6:29 PM, Philip Balisterwrote: > 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
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
From: Martin KellyAlthough 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
From: Ricardo Ribalda DelgadoThe 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
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
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
From: Jussi KukkonenSwitch 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
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
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
The original recipe has been provided and improved by: Ross BurtonRicardo 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
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
== 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
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
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
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
== 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
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
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;
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
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
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
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
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
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
On Thu, 4 Jan 2018 17:28:27 +0800 wenzong fanwrote: > 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
-- ___ 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
-- ___ 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
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 Ohlywrote: 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
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 Ohlywrote: 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
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
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
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
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
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
From: He ZheThis 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