aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-09-20gzip_1.8.bb: improve reproducibilityjurob/reproducible_binaries_3Juro Bystricky
Remove build host references from gzip-ptest package. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-20strace_4.18.bb: improve reproducibilityJuro Bystricky
Remove build host references from strace-ptest package. Also removed some unneeded timestaps. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-15bzip2: Create Makefile for run-ptestOoi Cinly
To improve binary reproducibility, only the relevent part of the Makefile in bzip2-ptest package that run-ptest needs are copied to the destination directory. bzip2-ptest requires Makefile. The original Makefile contains references to build host. By copying only the relevent part, we avoid those references making their way into the target system Used Makefile.am as the source to extract the revelent part instead of Makefile as it is easier to parse than Makefile. A redundant command in do_install_ptest() that repeat the copying of Makefile that was already copied by Makefile's install-ptest step is removed because it now interfers with the creation of the new Makefile by make's install-ptest. [YOCTO #11596] Signed-off-by: Ooi Cinly <cinly.ooi@intel.com>
2017-09-15poky-reproducible.conf: Initial versionJuro Bystricky
Simplify building reproducible images by using DISTRO="poky-reproducible" Sets some variables to reasonable values so users do not have to set them in local.conf. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-15rootfs-postcommands.bbclass: support binary reproducibilityJuro Bystricky
Conditionally support binary reproducibility of rootfs images. If BUILD_REPRODUCIBLE_BINARIES = 1 then: 1. set /etc/timestamp to a reproducible value 2. set /etc/version to a reproducible value 3. set /etc/gconf: set mtime in all %gconf.xml to reproducible values The reproducible value is taken from the variable REPRODUCIBLE_TIMESTAMP_ROOTFS. If the variable is not specified, the timestamp value is derived from the top git commit. [YOCTO#11176] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-15cpio: provide cpio-replacement-nativeJuro Bystricky
By default, bitbake uses host cpio, which can be quite old and missing crucial newever features. This patch allows to use the cpio-native instead, which is the latest upstream version. To use the cpio-native instead of the cpio from host, you need to specify: do_image_cpio[depends] += "cpio-replacement-native:do_populate_sysroot" EXTRANATIVEPATH += "cpio-native" Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-15image_types.bbclass: improve cpio image reproducibilityJuro Bystricky
This patch helps to build cpio images that are binary reproducible. The changes are as follows: 1. By default, cpio from the host is used, which can be quite old. Hence we need to implement a way to use/call cpio-native, which supports new features needed for binary reproducibility, notably the arguments such as "--reproducible" and "--ignore-devno". This can be achieved by specifying the following (in local.conf): do_image_cpio[depends] += "cpio-replacement-native:do_populate_sysroot" EXTRANATIVEPATH += "cpio-native" 2. Provide a way to pass custom arguments to cpio. This is done via a new variable IMAGE_CMD_CPIO. For binary reproducible cpio archives one needs to set (in local.conf) IMAGE_CMD_CPIO = "cpio --ignore-devno --reproducible " 3. A symlink is created as part of the image. Here we make sure it gets the timestamps (mtime) based on the timestamp of the symlink target, rather than the timestamp corresponding to the build time. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-15module.bbclass: improve reproducibilityJuro Bystricky
Use gcc option "-ffile-prefix-map" if available. This will remap any hard-coded __FILE__ containing build host path to a reproducible value, with the absolute build-host path stripped. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-15kernel.bbclass: improve reproducibilityJuro Bystricky
In order to achieve binary identical modules-${MACHINE}.tgz, we need to instruct "tar" to set mtime for added files based on SOURCE_DATE_EPOCH when creating the file. We also need to instruct "gzip" not to save the original file name and time stamp in metadata. Other minor code improvements without functional changes. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-15compiler-options.bbclass: provide and validate optionsJuro Bystricky
As we may be using external toolchains, we cannot assume various compiler options to be valid. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-15reproducible_build.bbclass: initial support for binary reproducibilityJuro Bystricky
Conditionally set some environment variables in order to achieve improved binary reproducibility. Providing BUILD_REPRODUCIBLE_BINARIES is set to "1", we set the following environment variables: export PYTHONHASHSEED=0 export PERL_HASH_SEED=0 export TZ="UTC" Additionally, we export and set SOURCE_DATE_EPOCH. This is the most crucial step to achieve binary reproducibility. The value for this variable (timestamp) is obtained after source code for a recipe has been unpacked, but before it is patched. If the code sources come from a GIT repo, we get the timestamp from the top commit. (GIT repo does not preserve file mktime timestamps). It is not safe to assume folders named "git" contain git repositories, so we check for presence of .git folder in ${S}. Otherwise, if GIT repo is not present, we get mtime from known files such as NEWS, ChangeLog, etc. If this also fails, we go through all files and get the timestamp from the youngest one. We create an individual timestamp for each recipe. The timestamp is stored in the file '__source_date_epoch.txt' located in ${WORKDIR}. Later on, each task reads this file and sets SOURCE_DATE_EPOCH based on the value found in the file. The file __source_date_epoch.txt file is re-used if found. This can be the file we previously created ourselves, or it can be a file provided by a user via a recipe. [YOCTO#11178] [YOCTO#11179] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-09-12maintainers.inc: updating ownership for apt, dpkg, perl, qemu and related onesLeonardo Sandoval
(From meta-yocto rev: 2966ec0b203dbdce519049e8a6c98fb2f6121a24) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.12Alejandro Hernandez
Upgrades to Linux 4.12.10 (From meta-yocto rev: c5f8727f3a74c9f9bd464844cfd58393a2ee6e8d) Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.10Alejandro Hernandez
(From meta-yocto rev: 0c0ecd81156c66d82d40b61ed012e86910f5977a) Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.9Alejandro Hernandez
Upgrades to Linux 4.9.46 (From meta-yocto rev: 783c1e3d41d1928f5ef4451838e271e83a9c2b87) Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.4Alejandro Hernandez
Upgrades to Linux 4.4.85 (From meta-yocto rev: 232ad256cb77e92729575f04522b76cad58809d5) Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12bitbake: server/process: ensure server failure log is limited to current sessionPaul Eggleton
Printing the last 10 lines of bitbake-cookerdaemon.log when the server fails to start can sometimes result in printing the output from a previous run, which could lead the user completely down the wrong path in terms of the cause of the failure. Use a known start text containing the time which we can then look for when scanning through the log, and then grab the last 10 lines of that part instead. Fixes [YOCTO #11903]. (Bitbake rev: 567f2cf1bc455b4f3cfb1cbd7f25145360b05a62) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12bitbake: runqueue: fix BB_SETSCENE_ENFORCE with empty ↵Paul Eggleton
BB_SETSCENE_ENFORCE_WHITELIST The whitelist shouldn't have to be populated in order for the enforcement to work properly - check if the list is not None in order to determine whether the functionality is enabled or not since that is how the function that sets up the list behaves. (Bitbake rev: 7b1e79c352ca6eef1693d8abfacf7505544f1caa) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12bitbake: process/cooker: Improve readypipe handlingRichard Purdie
Issues in start are not being correctly detected by the current readypipe code. Change it to use specific "ready" or "fail" messages to correctly determine the correct failure mode and avoid bitbake seeming to hang (it does currently timeout eventually). [YOCTO #12062] (Bitbake rev: 60d4791e3dd05729d2a2adf6f3b203c80d466a73) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12image_types: support lz4 compressed squashfsEnrico Scholz
(From OE-Core rev: de70799af1a8bfe2fac22b90401053275d4714ba) Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go-cross-canadian: add recipeMatt Madison
Enable cross-canadian builds of the Go toolchain. This requires an additional patch to the Go source to allow us to use the native GOTOOLDIR during the bootstrap phase. (From OE-Core rev: 9daa02f63a0d53ab90a515f2bd3e783187c9415b) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go.bbclass: enable nativesdk builds for Go packagesMatt Madison
Adding the necessary overrides for nativesdk builds. (From OE-Core rev: 83ad0bdb8a426b0beb3775cfb109ddb3936b7de1) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go-crosssdk: add recipeMatt Madison
Enable crosssdk builds for the Go toolchain. (From OE-Core rev: 5dbca2ab4ab9fdd200bbc8eb0572098e6fdbac84) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go: enable nativesdk builds for the toolchainMatt Madison
All that's needed is setting BBCLASSEXTEND. (From OE-Core rev: 32438dce21689f6d6352486d6ad377d86fd90a1f) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go-cross: take GOARM environment settingMatt Madison
Instead of hard-coding GOARM to ${TARGET_GOARM} in the wrapper script, take it from an existing environment setting if present. This allows the same cross-compiler to be used for different ARM targets. (From OE-Core rev: 1d319f102cd1f37ce5629c73948efae01478f866) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go: rename go.inc -> go-target.incMatt Madison
to make it clearer that it is only used for building the toolchain for the target. (From OE-Core rev: 780aa334f8614c80ce5b9cb77b0cea2fcd482614) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go.bbclass: clean up CGO_xxx settingsMatt Madison
* use conditional assignment for the CGO_xxx variables, so they can be overridden more easily * remove the TOOLCHAIN_OPTIONS and TARGET_CC_ARCH references, since those are already present in CC and CXX * remove the TARGET_ prefix so the values are appropriate for native, nativesdk, etc. builds * move the GOROOT export away from the CGO settings and closer to its definition (From OE-Core rev: 088528021d6979a8e2d6bc33d63a166e300cfde4) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go-dep: Move bash dependency to -dev packageOtavio Salvador
The src content has been moved to -dev package, so does the test routines. Fix the runtime dependency accordingly. (From OE-Core rev: 53bbd2222027b7bbca8df066a8a9a58355ae0f91) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go.bbclass: remove some xxx_FINAL variablesMatt Madison
GOROOT_FINAL is used by the Go linker for rewriting source paths when the build GOROOT is not the same as the runtime GOROOT, but the other _FINAL variables aren't really needed. (From OE-Core rev: 31aa0d8a62be95d093d3c7581efa41f74b9131ad) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go.bbclass: remove GO_GCFLAGS nad GO_LDFLAGSMatt Madison
These variables are not used anywhere. (From OE-Core rev: 2d37f60c2606de216aaa2d593b73b1de0a5c031e) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go: split out go-runtime into separate recipeMatt Madison
Reorganize the Go toolchain build to split out the Go standard runtime libraries into a separate recipe. This simplifies the extension to crosssdk and cross-canadian builds. * Adds a patch to the go build tool to prevent it from trying to rebuild anything in GOROOT, which is now resident in the target sysroot. * 'go' bb and inc files are now for building the compiler for the target only. * 'go-cross' bb and inc files are now just for the cross-compiler. * Adds virtual/<prefix> PROVIDES for the compiler and runtime * Removes testdata directories from the sysroot during staging, as they are unnecessary and can cause strip errors (some of the test files are ELF files). * Re-enables pacakage QA checks, adding selective INSANE_SKIP settings where needed. (From OE-Core rev: d2a7af7cd834e218c39d43ee3fa0c14d4f748727) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go-bootstrap-native: remove recipeMatt Madison
No longer needed, with go-native handling its own bootstrap phase. (From OE-Core rev: d9f54865ac90ed8d39a70b7989b1bf43ab26e248) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12go-native: remove dependency on go-bootstrap-nativeMatt Madison
The go1.4 toolchain is only required for bootstrapping go-native, and should not be used for anything else, so build it as part of the go-native build. This way, we don't have to carry around its built artifacts in the native sysroot. The go-cross and target toolchains can then just depend on go-native, using that for their 'bootstrap' toolchain. Also removed some unnecessary package-related noexec settings, since native recipes inherit nopackages. (From OE-Core rev: 9dc9d457fb9a456bc18c7789b91f40e1f6a999fe) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12iproute2: Default to tipc enabled, and include libmnl dependencyMark Hatle
iproute2 has the ability to include a tipc tool. When enabled this requires the libmnl package (formerly supplied by meta-openembedded). So both are needed at the same time. The change itself is needed because of the tipc-utils package (in meta-openembedded) which RDEPENDS on iproute2-tipc. Without this package the yocto-compat-layer script indicates there is no way for me to have meta-openembedded pass the checker. This is because meta-openembedded is not allowed to just enable 'tipc' on it's own. (A layer may not make distro wide changes without a user saying to do it.) The checker script invokes bitbake -S none world, which will fail on dependency resolution due to there being no iproute2-tipc package. The tipc-utils package does not have a way to check the PACKAGECONFIG of the iproute2 package so disable itself if the dependency can not be met. So the default system behavior needs to be: iproute2 w/ tipc enabled tipc-utils RDEPENDS on iproute2-tipc (From OE-Core rev: b40f42e69de47af4f627432e284038c645efbaec) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12libarchive: fix bug929 and CVE-2017-14166Andrej Valek
(From OE-Core rev: 9b248a17d60b70cb715f15c0401dc5ddc38eee98) Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12selftest/cases/signing: ignore removal errors when cleaning temporary gpg ↵Leonardo Sandoval
directory The high-level method tempfile.TemporaryDirectory give us no way to ignore erros on removal thus use tempfile.mkdtemp instead. Ignoring possible issues on removal is neccesary because it contains gpg sockets that are automatically removed by the system once the process terminates, otherwise the following log is observed: .. .. File "/usr/lib/python3.5/shutil.py", line 436, in _rmtree_safe_fd os.unlink(name, dir_fd=topfd) FileNotFoundError: [Errno 2] No such file or directory: 'S.gpg-agent.browser' [YOCTO #11821] (From OE-Core rev: 7e3a7cd2426feac757def81850dc44156cd0f33e) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12selftest/devtool: Avoid writing on TOPDIR on kernel test caseJose Perez Carranza
Use a tempdir to copy the .config file from the kernel instead of being copied to build directory. (From OE-Core rev: ccccf975c75055639c0ed5052ac0ad53ebbf53ca) Signed-off-by: Jose Perez Carranza <jose.perez.carranza@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12bitbake.conf: add bzr to HOSTTOOLS_NONFATALMartin Jansa
* it's used by bzr fetcher: meta/conf/bitbake.conf:FETCHCMD_bzr = "/usr/bin/env bzr" and when it isn't available in PATH do_fetch tasks fail with: /usr/bin/env: ‘bzr’: No such file or directory * it was also added in: https://patchwork.openembedded.org/patch/140107/ but this change wasn't merged (nor rejected AFAIS) (From OE-Core rev: c7ba7e9e7a7ca2caf453106112dc5a3c855b21d3) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12Revert "kernel-module-split: rrecommend kernel-image instead of rdepend"Martin Hundebøll
This reverts commit e0ed52c51464855e9a6a37ea49df7efde7e91076. Commit e0ed52c514 ('kernel-module-split: rrecommend kernel-image instead of rdepend') changed kernel modules to rrecommend kernel-image instead of rdepend on kernel. This broke existing setups, where the kernel is omitted by setting RDEPEND_kernel-base = "". Revert the patch, as the existing way of omitting kernel-image in images works just fine. (From OE-Core rev: c315b1e036b1252f35abda921c49327c950a9570) Signed-off-by: Martin Hundebøll <mnhu@prevas.dk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12musl: Upgrade to latest masterKhem Raj
Alexander Monakov (3): overhaul environment functions free allocations in clearenv fix OOB reads in Xbyte_memmem Bartosz Brachaczek (1): handle whitespace before %% in scanf Rich Felker (6): fix erroneous stop before input limit in mbsnrtowcs and wcsnrtombs fix erroneous acceptance of f4 9x xx xx code sequences by utf-8 decoder fix signal masking race in pthread_create with priority attributes don't treat numeric port strings as servent records in getservby*() fix glob descent into . and .. with GLOB_PERIOD work around incorrect EPERM from mmap syscall Szabolcs Nagy (4): s390x: add bits/hwcap.h add a_clz_64 helper function arm: add HWCAP_ARM_ hwcap macros make syscall.h consistent with linux (From OE-Core rev: 1b0943925783f948fbb1f30ffd2f287c97f4f354) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12initramfs-framework: Allow directories with spacesOtavio Salvador
When mdev module loads the Linux kernel modules, it can visit directories with spaces. To allow that, we must quote the variable otherwise it misunderstand it arguments as multiple entries. Fixes: ,---- | Freeing unused kernel memory: 3072K (80d00000 - 81000000) | cat: can't open '/sys/devices/platform/Vivante': No such file or directory | cat: can't open 'GCCore/modalias': No such file or directory `---- (From OE-Core rev: afc73dd6346325de0a39997a3045b6659f9658b5) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12glibc-locale: add runtime dependency on glibcMartin Jansa
* the libc.so.6 dependency is detected always: $ grep FILERDEPENDS BUILD-*/pkgdata/qemux86/runtime/localedef BUILD-bad/pkgdata/qemux86/runtime/localedef:FILERDEPENDSFLIST_localedef: /usr/bin/localedef BUILD-bad/pkgdata/qemux86/runtime/localedef:FILERDEPENDS_/usr/bin/localedef_localedef: libc.so.6(GLIBC_2.15) libc.so.6(GLIBC_2.3) libc.so.6(GLIBC_2.2) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.0) libc.so.6 BUILD-ok/pkgdata/qemux86/runtime/localedef:FILERDEPENDSFLIST_localedef: /usr/bin/localedef BUILD-ok/pkgdata/qemux86/runtime/localedef:FILERDEPENDS_/usr/bin/localedef_localedef: libc.so.6(GLIBC_2.15) libc.so.6(GLIBC_2.3) libc.so.6(GLIBC_2.2) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.0) libc.so.6 * but in some builds the glibc dependency isn't built soon enough: $ diff -uNr BUILD-*/pkgdata/qemux86/runtime/localedef --- BUILD-bad/pkgdata/qemux86/runtime/localedef 2017-09-02 21:17:50.000000000 +0000 +++ BUILD-ok/pkgdata/qemux86/runtime/localedef 2017-09-11 10:15:49.954381592 +0000 @@ -6,6 +6,7 @@ LICENSE: GPLv2 & LGPLv2.1 DESCRIPTION_localedef: glibc: compile locale definition files SUMMARY: Locale data from glibc +RDEPENDS_localedef: glibc (>= 2.26) SECTION: base PKG_localedef: localedef FILES_localedef: /usr/bin/localedef and the build fails with QA issues: http://errors.yoctoproject.org/Errors/Details/155529/ ERROR: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6(GLIBC_2.0), but no providers found in RDEPENDS_localedef? [file-rdeps] ERROR: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6(GLIBC_2.15), but no providers found in RDEPENDS_localedef? [file-rdeps] ERROR: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6(GLIBC_2.3), but no providers found in RDEPENDS_localedef? [file-rdeps] ERROR: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6(GLIBC_2.2), but no providers found in RDEPENDS_localedef? [file-rdeps] ERROR: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6(GLIBC_2.1), but no providers found in RDEPENDS_localedef? [file-rdeps] ERROR: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6, but no providers found in RDEPENDS_localedef? [file-rdeps] ERROR: QA run found fatal errors. Please consider fixing them. * easily reproducible with empty TMPDIR and: bitbake -c cleansstate glibc-locale && bitbake -c package_qa glibc-locale * reproducible with Yocto 2.2 Morty as well, with slightly different error message: ERROR: glibc-locale-2.24-r0 do_package_qa: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6(GLIBC_2.4), but no providers found in RDEPENDS_localedef? [file-rdeps] * with Yocto 2.3 Pyro it's not reproducible by default, because rpmdeps aren't enabled to populate FILERDEPENDS, but once you add: ENABLE_RPM_FILEDEPS_FOR_PYRO = "1" similar QA issue is shown as well: ERROR: glibc-locale-2.25-r0 do_package_qa: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6(GLIBC_2.15), but no providers found in RDEPENDS_localedef? [file-rdeps] ERROR: glibc-locale-2.25-r0 do_package_qa: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6(GLIBC_2.4), but no providers found in RDEPENDS_localedef? [file-rdeps] ERROR: glibc-locale-2.25-r0 do_package_qa: QA Issue: /usr/bin/localedef contained in package localedef requires libc.so.6, but no providers found in RDEPENDS_localedef? [file-rdeps] (From OE-Core rev: 2d2b4d7383c93174fe8eeb72440e81345df71295) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12initramfs-framework: bump PR and fix install-efi and setup-live modulesCalifornia Sullivan
Bump initramfs-framework PR, as it was missed in the previous initramfs-framework patch. These modules are shell scripts so they can be allarch. Fix the SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS in layer.conf, as these dependencies moved from the main recipe to these modules. Finally, set the PR to 4 in the new module recipes to avoid breaking package feeds. Fixes [YOCTO #12024]. (From OE-Core rev: d8af496dde699fadb2b21ff45cd20cf31e8abaf7) Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11staging: gracefully abort if two recipes conflict in the sysrootRoss Burton
When building the per-recipe sysroot keep track of what files we're installing and where they came from, so we can detect when a file is installed by two different recipes and tell the user what these recipes are (instead of just showing a os.link() stack trace). [ YOCTO #11631 ] (From OE-Core rev: 606a8e0ca218f023e362c3678122d36d537f95de) (From OE-Core rev: 2ebbeb61114e4b847e9164c621ac87b5cf03a299) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11devtool: upgrade: check that user has configured git properlyPaul Eggleton
If user.name or user.email haven't been set then git rebase can't really work properly. Check that the user has set these and error out if not. (Elsewhere we are relying on OE's git patch functionality which forces a dummy OE value - that's OK there as it's completely under OE's control and therefore it's OK for a dummy OE user to be the committer, but here the rebase may require intervention so it's reasonable to have the user's actual name and email on the operation.) Fixes [YOCTO #11947]. (From OE-Core rev: 129a3be07e272013be2db17552c13b4d8cc2cf6e) (From OE-Core rev: 802829f1c38d8c5eee11ba1d9ddd37cf02597f6e) Signed-off-by: paul <paul@peggleto-mobl.ger.corp.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11go-helloworld: Use the Golang examples repositoryOtavio Salvador
This updates the recipe to use the Golang examples repository so it makes use of the unpack as well as standard tasks showing how easy it can be. (From OE-Core rev: 116d2ea1fe92725bb1265152f3db51598643a481) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11go-dep: Add 0.3.0 releaseOtavio Salvador
This is the Golang dependency management tool under development; it is ready for production use and intended to be merged onto Golang 1.10. Until that, projects are starting to use it and making it available on OE-Core reduces the Golang integration work for new recipes. (From OE-Core rev: 79e0401fa463736f28ad39f2f98cd23d8fd6fe88) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11go.bbclass: add GO_INSTALL_FILTEROUT variableMatt Madison
When using the Go 'vendor' mechanism to bring in dependencies for a Go package, the default GO_INSTALL setting, which uses the '...' wildcard, will include the vendored packages in the build, which produces incorrect results. There are also some Go packages that are structured poorly, so that the '...' wildcard results in building example or test code that should not be included in the build, or fail to build. This patch adds a mechanism for filtering out a subset of the sources. It defaults to filtering out everything under the 'vendor' subdirectory under package's main directory, which is the normal location for vendored packages, but can be overridden by a recipe to filter out other subdirectories, if needed. (From OE-Core rev: 9819353726d85780546158428bd97a253705017d) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11go.bbclass: add do_unpack function to handle common casesMatt Madison
Go source trees have a particular structure, with all sources located under ${GOROOT}/src/<import-path>. The fetcher step implemented by the 'go get' command automatically follows this structure, so we need to do the same here. Since most Go packages are hosted in git repositories, this adds a custom do_unpack() function that sets the destsuffix to match the expected directory structure, for any git SRC_URIs that haven't had a destsuffix explicitly set in the recipe. This simplifies recipe writing for the most common cases. (From OE-Core rev: efcf6513b71021ea4bfe6fbaa326e6591dee487d) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11go.bbclass: separate ${S} and ${B}Matt Madison
Add a do_configure task to populate ${B} by symlinking in the src subdirectory under ${S}, which lets us point GOPATH at ${B}. This lets us take advantage of the automatic directory creation and cleaning for do_configure. This necessitates a change to do_install to split the installation of the sources and built artifacts. Taking advantage of some additional tar options, we can eliminate the extra staging area and extra recursive chown command. So overall efficiency should be improved. (From OE-Core rev: c62a083306c26b7e4deca1ff41336bb6b33d5b3a) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>