summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* populate_sdk_ext.bbclass: remove the try...finallyrbt/mutilibRobert Yang2018-01-081-36/+34
| | | | | | | | | The "sdkbasepath + '/conf/local.conf.bak" doesn't exist when "oe.copy_buildsystem.check_sstate_task_list()" fails, then os.replace() would raise FileNotFoundError, which overcomes the real error. Keep the error status makes debug easier, so remove the try..finally. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* multilib.bbclass: deltask populate_sdk and populate_sdk_extRobert Yang2018-01-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "bitbake image -cpopulate_sdk/ext" generates SDK/eSDK for all multilib variants, so "bitbake lib32-image -cpopulate_sdk/ext" is not needed, and it doesn't work well, for example: MACHINE ?= "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" $ bitbake lib32-core-image-minimal -cpopulate_sdk_ext [snip] Exception: FileExistsError: [Errno 17] File exists: '/buildarea/lyang1/test_q64/tmp/sysroots-components/core2-64/openssl/sysroot-providers/openssl10' -> '/buildarea/lyang1/test_q64/tmp/work/qemux86_64-pokymllib32-linux/lib32-core-image-minimal/1.0-r0/lib32-recipe-sysroot/sysroot-providers/openssl10' [snip] The problem is populate_sdk_ext installs all multilib variants, and extend_recipe_sysroot() handles foo-image depends lib32-foo-image, but doesn't handle lib32-foo-image depends foo-image, we can use a lot of trick ways to make it work: 1) Get foo-image's RECIPE_SYSROOT when build lib32-foo-image 2) Handle conflicts with foo-image.do_rootfs 3) Handle conflicts when "bitbake lib32-foo-image foo-image -cpopulate_sdk_ext" And maybe other potential problems, this looks painful, so just delete the task. [YOCTO #12210] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* toolchain-scripts.bbclass: only install all MULTILIB_VARIANTS for imageRobert Yang2018-01-081-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Install all MULTILIB_VARIANTS to sysroot and pack them only makes sense to image recipe, so limit it to image recipe only, and it can fix: MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "core2-32" $ bitbake lib32-meta-ide-support WARNING: lib32-meta-ide-support-1.0-r3 do_configure: Manifest for ncurses not found, searched manifests: /workspace2/lyang1/test_mlwarn/tmp-glibc/sstate-control/manifest-qemux86_64-ncurses.populate_sysroot /workspace2/lyang1/test_mlwarn/tmp-glibc/sstate-control/manifest-core2-32-ncurses.populate_sysroot /workspace2/lyang1/test_mlwarn/tmp-glibc/sstate-control/manifest-i586-ncurses.populate_sysroot /workspace2/lyang1/test_mlwarn/tmp-glibc/sstate-control/manifest-x86-ncurses.populate_sysroot /workspace2/lyang1/test_mlwarn/tmp-glibc/sstate-control/manifest-allarch-ncurses.populate_sysroot This is because core2-64 is not in lib32-meta-ide-support's PACKAGE_ARCHS which doesn't like image recipe (lib32-image recipe's DEFAULTTUNE is not overridded) [YOCTO #12298] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* multilib.bbclass: extend allarch recipesRobert Yang2018-01-084-19/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can fix do_rootfs and depends chaos when multilib, for example ca-certificates is an allarch recipe: MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "core2-32" IMAGE_INSTALL_append = " ca-certificates" $ bitbake ca-certificates $ rpm -qpR tmp-glibc/deploy/rpm/noarch/ca-certificates-20170717-r0.noarch.rpm [snip] openssl [snip] It requires openssl, but lib32-openssl doesn't proivide it: $ rpm -qp --provides tmp-glibc/deploy/rpm/core2_32/lib32-openssl-1.0.2l-r0.core2_32.rpm lib32-openssl = 1.0.2l-r0 So openssl-1.0.2l-r0.core2_64.rpm would be installed when install ca-certificates, e.g.: MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "core2-32" IMAGE_INSTALL_append = " ca-certificates" $ bitbake lib32-core-image-minimal The openssl-1.0.2l-r0.core2_64.rpm and other 64 bit packages are installed, this is incorrect. We have two solutions on this: 1) Let lib32-openssl provide openssl, but this would cause more problems when building since more than one providers for openssl. Or 2) Extend allarch recipes, there would be ca-certificates-20170717-r0.noarch.rpm and lib32-ca-certificates-20170717-r0.noarch.rpm, then ca-certificates requires openssl, and lib32-ca-certificates requires lib32-openssl, the packages will be installed correctly, this is the best solution that I can find. The problem has existed for years for deb and ipk (rpm did work since it didn't use lib32-BPN in rpm filename before changed to dnf, for example, there was no lib32-openssl.core2_32.rpm, but openssl.core2_32.rpm), this patch can fix the problem for rpm, ipk and deb. [YOCTO #12288] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* multilib.bbclass: remove invalid PACKAGE_INSTALLRobert Yang2018-01-081-1/+0
| | | | | | | | | The PACKAGE_INSTALL is only used by image recipe, the previous code had handled it in "if bb.data.inherits_class('image', d)", handle it again doesn't make any sense (there is no PACKAGE_INSTALL for non-image recipe), so remove it. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* package_manager.py: reverse archs correctlyRobert Yang2018-01-081-5/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It had reversed all the archs, which mixed multilib and common archs, e.g.: "all any noarch x86_64 core2-64 qemux86_64 x86 i586 core2-32" After reversed: "core2-32 i586 x86 qemux86_64 core2-64 x86_64 noarch any all" The core2-32 has a higher priority than core2-64 after reversed which is incorrect. Don't mix with mulitlib when reverse can fix the problem, and let multilib archs have a higher priority for multilib image. Fixed: MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "core2-32" IMAGE_INSTALL_append = " ca-certificates" $ bitbake wrlinux-image-glibc-small Check rootfs.manifest, no core_32 packages is installed, this is correct, but after we build lib32-bash, it will be incorrect: $ bitbake lib32-bash $ bitbake wrlinux-image-glibc-small Check rootfs.manifest, a few lib32 packages are installed, such as lib32-bash, this is incorrect. It was because ca-certificates is allarch, and requires /bin/sh, which is provided by both bash and lib32-bash, and lib32-bash has a higher priority than bash, so it would be installed. [YOCTO #12288] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* staging.bbclass: extend_recipe_sysroot(): search multilib manifestRobert Yang2018-01-081-0/+9
| | | | | | | | | | | | | | | | | | | | | Fixed: MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "core2-32" $ bitbake lib32-wrlinux-image-glibc-small WARNING: lib32-wrlinux-image-glibc-small-1.0-r1 do_rootfs: Manifest for lib32-qemuwrapper-cross not found, searched manifests: /path/to/tmp/sstate-control/manifest-qemux86_64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-core2-64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-x86_64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-allarch-lib32-qemuwrapper-cross.populate_sysroot It was because image recipes' multilib PACKAGE_EXTRA_ARCHS are not changed by mutlilib.bbclass, so extend_recipe_sysroot() didn't know anything about mutlilib's PACKAGE_EXTRA_ARCHS, now fix it. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* staging.bbclass: print searched manifest when not foundRobert Yang2018-01-081-1/+5
| | | | | | | | | | | | | | | | | | | The old warning was: WARNING: lib32-wrlinux-image-glibc-small-1.0-r1 do_prepare_recipe_sysroot: Manifest /path/to/tmp/sstate-control/manifest-allarch-lib32-qemuwrapper-cross.populate_sysroot not found? The message wasn't clear enough, it searched a few manifests, but only reported the last one, which confused user. Now the warning is: WARNING: lib32-wrlinux-image-glibc-small-1.0-r1 do_rootfs: Manifest for lib32-qemuwrapper-cross not found, searched manifests: /path/to/tmp/sstate-control/manifest-qemux86_64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-core2-64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-x86_64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-allarch-lib32-qemuwrapper-cross.populate_sysroot Whick makes debug easier. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* staging.bbclass: staging_populate_sysroot_dir(): fix for multilibRobert Yang2018-01-081-0/+15
| | | | | | | | | | | | | | | | | | | | | Fixed: MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" $ bitbake core-image-sato lib32-core-image-sato $ bitbake build-sysroots All lib32 manifests which had been built should be installed, but only a few such as qemux86_64-lib32-base-files were installed (it was installed because MACHINE_ARCH was still qemux86-64 when multilib), but others such as x86-lib32-zlib were not installed, this was incorrect. For multilib builds, fix-up overrides to prepend :virtclass-multilib- and then again append additional multilib arches from the PACKAGE_EXTRA_ARCHS list if needed can fix the problem. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* sstate.bbclass: sstate_hardcode_path(): fix for multilibRobert Yang2018-01-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | It only substituted staging_target for target recipe which didn't work for multilib, for example, postinst-useradd-lib32-polkit: * No multilib: PATH=/path/to/tmp-glibc/work/core2-64-wrs-linux/polkit/0.113-r0/recipe-sysroot-native/bin staging_target=/path/to/tmp-glibc/work/core2-64-wrs-linux/polkit/0.113-r0/recipe-sysroot The PATH would be substituted to: FIXMESTAGINGDIRTARGET-native/bin Not the funny "-native/bin", this works well. * When multilib: PATH=/path/to/tmp-glibc/work/core2-32-wrsmllib32-linux/lib32-polkit/0.113-r0/recipe-sysroot-native/bin staging_target=/path/to/tmp-glibc/work/core2-32-wrsmllib32-linux/lib32-polkit/0.113-r0/lib32-recipe-sysroot Now staging_target endswith "/lib32-recipe-sysroot", so it can't replace '/recipe-sysroot-native' in PATH , so PATH can't be fixed, and there would be build errors when building multilib + rm_work, for example: chown: invalid user: ‘polkitd:root’ Substitute staging_host for target recipe can fix the problem, now all of native, cross and target need substitute staging_host, so we can simply the code a little. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* populate_sdk_ext.bbclass: fix for multilibRobert Yang2018-01-081-25/+47
| | | | | | | | | | | | | | | | | | | | | | | Fixed: MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" $ bitbake <image> -cpopulate_sdk_ext $ bitbake <image> -ctestsdkext [snip] Standard Output: /bin/sh: 1: i686-wrsmllib32-linux-gcc: not found [snip] It was failed because no lib32 toolchain or lib installed. This patch fixes: * Set SDK_TARGETS correctly * Return multilib depends in get_ext_sdk_depends() * Write information to all environment-setup-* scripts. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* staging.bbclass: fix for multilibRobert Yang2018-01-081-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | Fixed: MACHINE = "qemux86-64" MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" $ bitbake <image> -cpopulate_sdk_ext [snip] Exception: subprocess.CalledProcessError: Command 'sed -e [snip]' [snip] Subprocess output: [snip] sed: can't read /path/to/work/qemux86_64-wrs-linux/wrlinux-image-glibc-small/1.0-r1/recipe-sysroot/usr/lib/perl/5.24.1/ExtUtils/Liblist/Kid.pm: No such file or directory [snip] It was failed because "/usr/lib" is in qemux86_64-wrsmllib32-linux/, not in qemux86_64-wrs-linux. The code has considered mutitlib, but seems not completed, the multilib "variant" was not in fixme, so it wasn't handled correctly, this patch fixes the problem. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
* icu-dbg: improve reproducibilityJuro Bystricky2018-01-081-0/+9
| | | | | | | | Make sure build host references do not end up being compiled in the image. This only affects libicutu and icu-dbg. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* perl-ptest: various fixesJuro Bystricky2018-01-073-11/+24
| | | | | | | | | | | | | | | | | | Improve reproducibility: Remove all build host references from distributed files. Do not package non-linux OS related files. Also remove some additional files not needed by run-ptest. (There are probably still more files that can be removed, but as long as they don't leak build host references they are harmless). Fix the expected checksum of MakeMaker/lib/ExtUtils/Liblist/Kid.pm to match the one expected: We modified the file, but did not recalculate/update the file checksum accordingly. (This fixes the only failing test.) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* perl-dbg: improve reproducibilityJuro Bystricky2018-01-071-0/+13
| | | | | | | | Remove various build host references scattered within comments in numerous files that are distributed in the package. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libunwind: Disable documentation explicitlyRichard Purdie2018-01-071-0/+1
| | | | | | | | We don't have latex2man in HOSTTOOLs so documentaion is never built but this dependency does cause problems on older releases like morty, pre-HOSTTOOLS. Document the configuration explicitly in master. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gstreamer: use a patch instead of sed to fix gtk-doc makefilesRoss Burton2018-01-074-38/+33
| | | | | | | | | | seds can get stale without warning and repeated application can cause problems, so move the gtk-doc seds into a patch. (From OE-Core rev: a704411ab0f1e5f8cbf57ff54b36d60ccaf0d223) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libproxy: Rely on cmake.bbclass to put cmake package files in dev packageMike Crowe2018-01-071-1/+0
| | | | | | | | cmake.bbclass now ensures that ${datadir}/cmake ends up in the dev package, so this recipe doesn't need to do so itself. Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libical: Rely on cmake.bbclass to put cmake package files in dev packageMike Crowe2018-01-071-2/+0
| | | | | | | | cmake.bbclass now ensures that ${libdir}/cmake ends up in the dev package, so this recipe doesn't need to do so itself. Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* waffle: Rely on cmake.bbclass to put cmake package files in dev packageMike Crowe2018-01-071-3/+0
| | | | | | | | cmake.bbclass now ensures that ${libdir}/cmake and ${datadir}/cmake end up in the dev package, so this recipe doesn't need to do so itself. Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* vulkan: Rely on cmake.bbclass to put cmake package files in dev packageMike Crowe2018-01-071-2/+0
| | | | | | | | cmake.bbclass now ensures that ${libdir}/cmake ends up in the dev package, so this recipe doesn't need to do so itself. Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libsolv: Rely on cmake.bbclass to put cmake package files in dev packageMike Crowe2018-01-071-1/+0
| | | | | | | | cmake.bbclass now ensures that ${datadir}/cmake ends up in the dev package, so this recipe doesn't need to do so itself. Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cmake: Always put cmake package files in -dev packagesMike Crowe2018-01-071-0/+2
| | | | | | | | | | Various recipes that inherit cmake contain FILES_${PN}-dev magic to add the generated package files to their -dev packages. Since this is a standard feature of cmake, we might as well teach cmake.bbclass to do this itself so those recipes can be simpler. Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_manager.py: remove obsolete MULTILIB_ARCHSRobert Yang2018-01-061-1/+1
| | | | | | | | | | | | | It had been removed since 2011: commit b774bf44ef004276da12a83ebd69715c00b596ac Author: Lianhao Lu <lianhao.lu@intel.com> Date: Tue Aug 16 16:26:49 2011 +0800 package(_ipk).bbclass: opkg using ALL_MULTILIB_PACKAGE_ARCHS Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_manager.py: print running dnf commandRobert Yang2018-01-061-0/+1
| | | | | | | | This can make debug easier, for example, makes it easy to run the command mannually. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib.bbclass: remove unneeded bb.data.inherits_class()Robert Yang2018-01-061-2/+0
| | | | | | | It is duplicated to previous. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib.bbclass: remove obsolete DEFAULTTUNE_ML_Robert Yang2018-01-061-1/+0
| | | | | | | | | | | | It had been dropped by: commit 65581c68d130fa74d703f6c3c92560e053857ac7 Author: Alexander Kanavin <alexander.kanavin@linux.intel.com> Date: Mon Feb 13 16:44:48 2017 +0200 rootfs_rpm.bbclass: migrate image creation to dnf Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* volatile-binds: use PN to replace hardcode nameRobert Yang2018-01-061-1/+1
| | | | | | | | Otherwise it doesn't work since SYSTEMD_SERVICE_volatile-binds is not defined when multilib. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib_global.bbclass: fix indentRobert Yang2018-01-061-1/+1
| | | | | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe/copy_buildsystem.py: make sure layer existsRobert Yang2018-01-061-1/+1
| | | | | | | | | | | | It had a problem when nested layer before, e.g.: layer_a/layer_b/ And when layer_b is handled before layer_a, then layer_a dir existed, so it would be treated as already handled, which was wrong, check conf/layer.conf can fix the problem. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_ext.bbclass: don't rename layers when failedRobert Yang2018-01-061-11/+9
| | | | | | | | | | | | | | | The previous code: os.rename(sdkbasepath, temp_sdkbasepath) try: foo finally: os.rename(temp_sdkbasepath, sdkbasepath) always renamed the path, it made the debug harder when error happened. drop the "try: finally" makes the debug easier. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testsdk.bbclass: add a newline after own-mirrorsRobert Yang2018-01-061-1/+1
| | | | | | | | Otherwise it would generate lines like the following when multilib: INHERIT += "own-mirrors"SSTATE_MIRRORS += " \n file://.* file:///path/to/../share/sstate-cache/PATH" Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging.bbclass: make subprocess.check_output() capture stderrRobert Yang2018-01-062-4/+5
| | | | | | | This is very useful for debugging. The similar to testsdk.bbclass. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* pulseaudio: change pulse to be a system groupJackie Huang2018-01-061-1/+1
| | | | | | | | | pulse is added as a system user, so the group 'pulse' is meant to be a system group as well, which is the same with other distros like ubuntu/centos. Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* maintainers.inc: add missing entries for gst-validate, gst-examples and mesonAlexander Kanavin2018-01-061-1/+3
| | | | | Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libpcre2: add packages for 16-bit and 32-bit code unit supportStefan Müller-Klieser2018-01-061-2/+5
| | | | | | | | | The packages loosely follow the debian package names. In that way more projects, e.g. Qt5 for 16-bit, are able use system libraries. This does not change the existing default package. Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Set AUTOREV to have a vardepvalueRichard Purdie2018-01-062-1/+38
| | | | | | | | | | | | | | | | | | | If you have a recipe which does not include SRCPV in PV but does set SRCREV = "${AUTOREV}" and you run do_fetch, then change the repo to a new commit then run do_unpack, do_unpack will fail since the new commit doesn't exist in the repo that was fetched. The problem is the revision chosen is not represented in the do_fetch task hash. It if were, the fetch would rerun first and the commit would be present. It works when PV includes SRCPV since that does contain the chosen commit from the AUTOREV. The solution is to include the SRCPV value into the representation of AUTOREV used for checksum calculation purposes. Add a selftest for this issue. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* debian.bbclass: add a note when a package is renamedRoss Burton2018-01-061-1/+1
| | | | | | | | To make it easier to debug problems with renaming caused by debian.bbclass, explicitly log when packages are renamed. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lz4: remove ptest changesRoss Burton2018-01-061-9/+1
| | | | | | | | | This recipe installs the test suite by copying the entire build tree into /usr/share/ptest, which is both wasteful and breaks packaging as lz4-ptest then gets renamed by debian.bbclass to liblz4. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gst-validate: disable gtk-doc API documentationRoss Burton2018-01-061-0/+5
| | | | | | | | | | | | | When the gtk-doc API documentation is enabled (via the api-documentation DISTRO_FEATURE, typically) this recipe fails to build: WORKDIR/build/docs/validate/gst-validate-scan: line 117: WORKDIR/build/docs/validate/.libs/lt-gst-validate-scan: No such file or directory Forcibly disable the gtk-doc for now. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/buildcpio: Use our own mirror for sourceRichard Purdie2018-01-061-2/+1
| | | | | | | | We see occasional network glitches which break this test. Use our own mirror (which has a .gz instead of .bz2) to avoid the errors, we're not trying to test network connectivity. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* local.conf.sample: Weakly set BB_DISKMON_DIRSRichard Purdie2018-01-061-1/+1
| | | | | | | | | | For various reasons we need to be able to set and override this from auto.conf on our test infrastructure. We have tried forcing the variable but this then breaks other selftests. In the interests of not complicating things further and needing to modify the tests across releases, weaken the default assignment. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gst-player: Upgrade, rename to gst-examplesJussi Kukkonen2018-01-055-12/+49
| | | | | | | | | | Switch to using current repository, switch to meson (following upstream), rename the recipe like upstream. Add a patch to install the player binaries. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sysprof: convert to meson buildAlexander Kanavin2018-01-055-126/+37
| | | | | | | | | | | | | 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 <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libinput: convert to meson buildAlexander Kanavin2018-01-051-6/+6
| | | | | | | | Drop libunwind option, as it is only used if tests are enabled (and they're unconditionally not enabled). Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libepoxy: convert to meson buildAlexander Kanavin2018-01-052-4/+63
| | | | | | | | 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 <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* json-glib: convert to meson buildAlexander Kanavin2018-01-052-2/+54
| | | | | | | | | | | | 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 <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meson: Port pkgconfig-native patch to 0.44.0Ricardo Ribalda Delgado2018-01-052-0/+110
| | | | | | | | The update to 0.44.0 did not add this patch required for qt builds. Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meson: export native env only for native buildMartin Kelly2018-01-051-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | Although the meson crossfile should take care of setting the right cross environment for a target build, meson slurps any set CFLAGS, CXXFLAGS, LDFLAGS, and CPPFLAGS from the environment and injects them into the build (see mesonbuild/environment.py:get_args_from_envvars for details). This means that we are seeing native CFLAGS, CXXFLAGS, LDFLAGS, and CPPFLAGS in the target build, which is wrong and causes build failures when target and native have libraries in common (the linker gets confused and bails). That said, we *do* need to set certain vars for all builds so that meson can find the right build tools. Without this, meson will fail during its sanity checking step because it will determine the build tools to be unrunnable since they output target instead of native artifacts. The solution to all of this is to set CC, CXX, LD, and AR globally to the native tools while setting the other native vars *only* for the native build. For target builds, these vars will get overridden by the cross file as we expect. Signed-off-by: Martin Kelly <mkelly@xevo.com> Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gnomebase.bbclass: allow a meson-specific versionAlexander Kanavin2018-01-051-1/+2
| | | | | | | | | gnomebase.bbclass hardcodes the autotools inherit, so make it configurable and allow meson to be specified instead. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> [RP: patches tweaked to only need the one class] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>