summaryrefslogtreecommitdiffstats
path: root/meta
Commit message (Collapse)AuthorAgeFilesLines
* openssh: disable ciphers not supported by OpenSSL DESHongxu Jia2018-04-202-0/+40
| | | | | | | | | | | | | | | | While compiling openssl with option `no-des', it caused the openssh build failure ... cipher.c:85:41: error: 'EVP_des_ede3_cbc' undeclared here (not in a function); ... OpenSSL configured that way defines OPENSSL_NO_DES to disable des (From OE-Core rev: 08a5cda85594fca8b352841a26131bfac39c8417) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uninative: Set the dynamic linker to use at compile timeRichard Purdie2018-04-181-2/+3
| | | | | | | | | | | | | | | | | | | | | | | Its possible some dynamic runtime library in the dependency chain may come from sstate and link to libraries which need the libc from uninative. If we don't do this and binaries are run at do_install time they would fail to find the symbols from the later libc. Examples: cmake-native do_install: bin/cmake: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by TOPDIR/tmp/work/x86_64-linux/cmake-native/3.10.3-r0/recipe-sysroot-native/usr/lib/libexpat.so.1) dbus-native do_install: tmp/work/x86_64-linux/dbus-native/1.12.2-r0/build/bus/.libs/lt-dbus-daemon: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-x32/build/build/tmp/work/x86_64-linux/dbus-native/1.12.2-r0/recipe-sysroot-native/usr/lib/libexpat.so.1) This issue is resolved when the interpreter is changed at sstate unpack time but this isn't soon enough to avoid issues at compile/install time. By specifing which dynamic linker/loader to use at compile time, this race window is removed entirely. (From OE-Core rev: 35867ee035030ab76fc9ccdb0eb1c3f80126301c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uninative: Add allow-shlib-undefined to BUILD_LDFLAGS and drop other workaroundsRichard Purdie2018-04-186-50/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have a problem when for example, a glibc 2.27 based system builds some library like libpopt-native and puts it into sstate then it is reused on a pre glibc-2.27 system to build something which depends on popt like rpm-native. This results in an error like: recipe-sysroot-native/usr/lib/libpopt.so: undefined reference to `glob@GLIBC_2.27' In the past we've had this problem with new symbols like getrandom and getentropy, here its with a more complex symbol where there is an old version and a newer version. We've looked into various options, basically we cannot link against our uninative libc/ld.so since we don't have the right headers or compiler link libraries. The compiler doesn't allow you to switch in a new set either, even if we did want to ship them. Shipping a complete compiler, dev headers and libs also isn't an option. On the other hand if we follow the ld man page, it does say: """ The reasons for allowing undefined symbol references in shared libraries specified at link time are that: - A shared library specified at link time may not be the same as the one that is available at load time, so the symbol might actually be resolvable at load time. """ which is exactly this case. By the time the binary runs, it will use our uninative loader and libc and the symbol will be available. Therefore we basically have a choice, we get weird intermittent bugs, we drop uninative entirely, or we pass this option. If we pass the option, we can drop the other workarounds too. (From OE-Core rev: 75a62ede393bf6b4972390ef5290d50add19341a) (From OE-Core rev: d18bf7fa8e80d6cfaf3fdbe1ab06eec84b954432) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Set and export TZ envvar to UTCRichard Purdie2018-04-182-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We just ran into an issue where tar failed to build on one server setup but built everywhere else just fine. It was running makeinfo to regenerate some docs files and makeinfo was too old for the host it was running on. There was no dependency on makeinfo-native as it was not meant to be regenerating the docs. It was being regenerated as a date from a timestamp used in the docs was different in Asian timezones than in the other timezones our builds were being tested in. I added an entry to https://wiki.yoctoproject.org/wiki/TipsAndTricks/ about how this was debugged. As such, lets default to setting and exporting TZ to 'UTC' as was already pioneered by the reproducibile builds work. This makes the builds deterministic. [YOCTO #12665] (From OE-Core rev: 2a90ae7a3286724ff9e3615c4dbf56038f703810) (From OE-Core rev: e31f31f81efe4b60938b724bece2a03c7c74a68d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-uninative: Update to version 1.9 (fedora28 compatible)Richard Purdie2018-04-181-3/+3
| | | | | | | | | | This includes the libxcrypt change which allows uninative to work on fedora28. (From OE-Core rev: 4b27ab6487a54b42a52aa16e98ea4d19fa62b5ae) (From OE-Core rev: 0685eb697f1dfa3b858b6e594cbd8e6070b4fbb8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Add '-b' option to file call in isELFMark Hatle2018-04-182-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The isELF function works by running: result = file <pathname> if 'ELF' in result By default 'file' will prepend the result with the path name of the file that is being checked. This usually works fine, such as: $ file /home/foo/openembedded-core/meta/classes/package.bbclass /home/foo/openembedded-core/meta/classes/package.bbclass: Python script, ASCII text executable, with very long lines However, if the path includes 'ELF', ELF will end up in the result, and then the check will return positive. $ file /home/ELF/openembedded-core/meta/classes/package.bbclass /home/ELF/openembedded-core/meta/classes/package.bbclass: Python script, ASCII text executable, with very long lines This will then result in the isELF coming back true, and possibly causing the checks that use isELF, such as the 'is it already stripped' check, to do the incorrect thing. Adding the '-b' option to file will result in the path being omitted in the result: $ file /home/ELF/openembedded-core/meta/classes/package.bbclass Python script, ASCII text executable, with very long lines (From OE-Core rev: 5a324e9b2cf6378f8eaa4e394f9cb36d4e2680ac) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* run-postinsts: Replace pi_dir variable testNiko Mauno2018-04-182-2/+2
| | | | | | | | | | | | | | | | | Since commit 5159ddcb62682e1b7e63a20a9218ea96e3fe10a2 string length test performed against pi_dir has effectively never been able to succeed. Change this to rather test if pi_dir is not an existing directory. By doing we remove the chance of seeing the following console error message during first boot to a pristine rootfs: 'ls: /etc/ipk-postinsts: No such file or directory' (From OE-Core rev: b1600ec8991dfbd3b73d209b9c620a171c5b13c4) Signed-off-by: Niko Mauno <niko.mauno@iki.fi> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs-postcommands.bbclass: improve binary reproducibilityJuro Bystricky2018-04-181-2/+23
| | | | | | | | | | | | | | | | | | | | Conditionally support binary reproducibility of rootfs images. If REPRODUCIBLE_TIMESTAMP_ROOTFS is specified 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. [YOCTO #11176] [YOCTO #12422] (From OE-Core rev: 11e45082ad00b9c172e59bf6b2a76dd613773f5a) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* core-image-minimal-initramfs: use initramfs-framework for initializationCalifornia Sullivan2018-04-181-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | initramfs-framework is more modular and expandable. This change was proposed in commit 28fc6ba761ed4a47efa7c43e7f7dff5e2fe72b5e "core-image-minimal-initramfs: use initramfs-framework by default" but reverted due to the selftests runqemu.RunqemuTests.test_boot_machine_iso and runqemu.RunqemuTests.test_boot_deploy_hddimg failing. Since then, the kinks have been worked out, and missing functionality that had been missed (non-EFI installation module) has been added. Since the PACKAGE_INSTALL variable was getting so long with all these individual modules getting added, I also introduced a new INITRAMFS_SCRIPTS variable to the core-image-minimal-initramfs recipe. This variable makes the recipe look much cleaner, and also allows easier replacement or additions to the scripts. Fixes [YOCTO #10987]. (From OE-Core rev: 882ae0dcce2d96a7c286fc23b22b07972d3d8f93) Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemu_2.11.1.bb: support mingw buildJuro Bystricky2018-04-181-15/+31
| | | | | | | | | | | | | | | | | | The patch chardev-connect-socket-to-a-spawned-command.patch calls "socketpair". This function is missing in mingw, so the patch needs to be modified accordingly (by conditional compilation using _WIN32 macro where appropriate), otherwise we end up with a broken mingw build. While it is possible to simply remove the whole patch for mingw build (via a .bbappend file in meta-mingw), it makes more sense to modify the patch itself. (From OE-Core rev: 2d955bb53a8ee36c0a648c23293139612f33f97b) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* man-db: add groff to RDEPENDSChen Qi2018-04-181-0/+1
| | | | | | | | | | | Add groff to RDEPENDS_${PN}, otherwise, the 'man' command cannot work correctly on target. (From OE-Core rev: 199d8d53261e22971bd094ddf3318855d539e6be) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Set libc_cv_ssp_all to no as wellKhem Raj2018-04-181-0/+1
| | | | | | | | | | | | This is not a problem right now but if we were to use -fstack-protector-all this can cause build errors (From OE-Core rev: 271831133358b3231808e8fe7aa2817e41d98e2f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testimage: run systemtap test on SDK imagesRoss Burton2018-04-181-2/+4
| | | | | | | (From OE-Core rev: f7f26bd0fe7085515bdebf23107ed8647a0c98fe) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/stap.py: add runtime test for systemtapVictor Kamensky2018-04-182-0/+34
| | | | | | | | | | | | | | | | Add runtime test for stap to test basic SystemTap operations: can compile very basic module and run on target device. Note we disable (-DSTP_NO_VERREL_CHECK) SystemTap additional kernel release check since during OE testing mismatching kernel-devsrc and kernels are used. (From OE-Core rev: 659d19fcddb7edaca8f5221148d479e73304b430) Signed-off-by: Victor Kamensky <kamensky@cisco.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* packagegroup-core-tools-profile: include systemtap on MIPS and aarch64Ross Burton2018-04-181-2/+0
| | | | | | | | | | Modern systemtap builds fine for MIPS and aarch64, so don't exclude it from this packagegroup. (From OE-Core rev: 01658c4e978182a31dc7e2cd4f525066b479c2f9) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemtap: don't build under muslRoss Burton2018-04-181-0/+1
| | | | | | | | | | systemtap uses obstack.h and FTW_SKIP_SUBTREE, both of which are GNU extensions in glibc. (From OE-Core rev: 80286cb2e979097800a51801c92e015421482daa) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* xserver-nodm-init: Respawn service in case of failureRamon Fried2018-04-131-0/+1
| | | | | | | | | | | | | | | | It appears that sometimes xserver-nodm.service is starting before display driver finished loading causing the following failure in Xorg log: (EE) open /dev/dri/card0: No such file or directory The introduced by this patch is to restart the service, hopefully the display driver will finish loading. (From OE-Core rev: c3935f11f2807ef73f224b6690886d863788310d) Signed-off-by: Ramon Fried <rfried@codeaurora.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* valgrind: fix the shared object issue while prelink ptestZhixiong Chi2018-04-132-36/+2
| | | | | | | | | | | | | | | | | | | | | | If valgrind-ptest is installed, we will get the some prelink error like below at do_image: .../usr/sbin/prelink: /usr/lib64/valgrind/ptest/memcheck/tests/wrap7:\ Could not find one of the dependencies: \ .../usr/sbin//prelink-rtld: error \ while loading shared libraries: wrap7so.so: cannot open shared \ object file: No such file or directory The wrap7 needs to link the shared object in the path /usr/lib64/valgrind/ptest/memcheck/tests, but it fails. So we correct the path for ptest. (From OE-Core rev: 1ec0c977c55ae2c38252e1807dc15c56007d30dc) Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com> Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* distro: default: Change Go default version to 1.9Otavio Salvador2018-04-131-1/+1
| | | | | | | | | | | | | | | | | | | | For the time being, there is a serious bug[1] in Go 1.10 when it comes to use the shared runtime support which cases problems in multiple projects. 1. https://github.com/golang/go/issues/24640 It is still unclear if the problem arises from a bug inside the compiler itself or it makes a real problem more visible. Either way, using 1.10 as default seems to be a risk so we are changing back to 1.9 for now. Refs: [YOCTO: #12631] (From OE-Core rev: c5b5055d2dc04317a7a64c150046a6435a6805c2) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* patch: fix CVE-2018-1000156Jackie Huang2018-04-133-0/+255
| | | | | | | | | | | | | | | | | | | * CVE detail: https://nvd.nist.gov/vuln/detail/CVE-2018-1000156 * upstream tracking: https://savannah.gnu.org/bugs/index.php?53566 * Fix arbitrary command execution in ed-style patches: - src/pch.c (do_ed_script): Write ed script to a temporary file instead of piping it to ed: this will cause ed to abort on invalid commands instead of rejecting them and carrying on. - tests/ed-style: New test case. - tests/Makefile.am (TESTS): Add test case. (From OE-Core rev: 6b6ae212837a07aaefd2b675b5b527fbce2a4270) Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* patch: fix CVE-2018-6951Jackie Huang2018-04-132-1/+38
| | | | | | | | | | | | | | | | * CVE detail: https://nvd.nist.gov/vuln/detail/CVE-2018-6951 * upstream tracking: http://savannah.gnu.org/bugs/?53132 * Fix segfault with mangled rename patch - src/pch.c (intuit_diff_type): Ensure that two filenames are specified for renames and copies (fix the existing check). (From OE-Core rev: cdf74e1c67698b2d44a7460ff7d365d6da7b7b96) Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc.bbclass: Bump version numberJoshua Watt2018-04-131-1/+1
| | | | | | | | | | | Bump the version number for force remotes to use a newly generated environment, since the old one potentially had a few bugs (From OE-Core rev: 6c3b2ac41f3412ebce8364df637d64e34daab8a6) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc.bbclass: Improve error reportingJoshua Watt2018-04-131-7/+13
| | | | | | | | | | | | Improve reporting when the icecream environment cannot be created by assigning the flock call a specific error number when the lock fails so it can be distinguished from environment creation errors. (From OE-Core rev: 563448a7a3ca87cc07528c18f8047913e0468e7a) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc.bbclass: Add ICECC_ENV_DEBUG variableJoshua Watt2018-04-131-1/+5
| | | | | | | | | | | The ICECC_ENV_DEBUG variable can be set in local.conf to pass additional debugging options to the Icecream toolchain creation script. (From OE-Core rev: be913284bb34ebf4a71770646044603a2a27d01b) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc-create-env: Add extra tools optionJoshua Watt2018-04-131-0/+12
| | | | | | | | | | | It can often be useful to include additional debugging tools the toolchain such as strace. Add an option to include an arbitrary path. (From OE-Core rev: 1fc1e3d59afd292ff8f7c4e1f64324134b73b8f4) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc-create-env: Fix library interpreter usageJoshua Watt2018-04-131-35/+77
| | | | | | | | | | | | | | | | | | | | | Shared libraries sometimes (frequently?) don't have a program interpreter specified. The previous code would fail to find the library dependencies in these cases because no interpreter could be found. Commonly, this meant that if a library depends on another library, it might not be included toolchain because dependency scanning stops with the first one. Instead, capture the program interpreter from the program or library that starts the dependency chain and use that interpreter to get all of the dependencies in the chain, recursively. Additionally, if no interpreter can be found, fallback to using ldd (From OE-Core rev: 4f55e61e9e3dd921bd71a127580dc5fc71d7b339) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc-create-env: Fix RUNPATH filesJoshua Watt2018-04-131-1/+3
| | | | | | | | | | | | | | Some newer libraries and programs use RUNPATH to specify the library search path. These executables were being skipped by the rpath fixup code because it was grepping the ELF header for RPATH only. A more correct solution is to ask patchelf to report the rpath, as that tool will properly report either RPATH or RUNPATH as appropriate. (From OE-Core rev: d1e88ad01df9b6419e02f632b1ba288d4cc3b2bf) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc-create-env: Allow logging to a fileJoshua Watt2018-04-131-25/+49
| | | | | | | | | | | | | Modifies the icecc-create-env script so that it can log output to a log file. In addition, a --debug flag is added that allows verbose logging. Finally, the silent flag was removed since it was never used in icecc.bbclass (From OE-Core rev: 3d0bd786fd79967cf8754d022044df311dd8ad3e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dhcp: Security Advisory - CVE-2017-3144Yue Tao2018-04-132-0/+75
| | | | | | | | | | | | | | | | | | | Fix CVE-2017-3144 References: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-3144 https://kb.isc.org/article/AA-01541 Patch from: https://source.isc.org/cgi-bin/gitweb.cgi?p=dhcp.git;a=commitdiff;h=5097bc0559f592683faac1f67bf350e1bddf6ed4 (From OE-Core rev: bcbe9025560dee658c0ead566384e1a8647cebf9) Signed-off-by: Yue Tao <Yue.Tao@windriver.com> Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com> Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gconf: fix saving of settings when config folder doesnt existJaewon Lee2018-04-132-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some circumstances, gconf isn't able to save configurations because ~/.config folder aka root_dir doesn't exist. For example when saving settings using matchbox-appearance, the following error is shown: GConf Error: Configuration server couldn't be contacted: D-BUS error: Can't overwrite existing read-only value: Value for `/desktop/poky/interface/font_name' set in a read-only source at the front of your configuration path This issue was not seen before because ~/.config directory is shared between several packages and one of those packages usually creates it by the time gconf wants to use it. This patch makes sure that gconf creates the .config directory if it doesn't exist, along with the gconf directory inside it. [YOCTO #12632] (From OE-Core rev: 4d16fa05e47ccc8425ebb085c295d7d8dca6b2e6) Signed-off-by: Alejandro Hernandez <alejandr@xilinx.com> Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootchart2: update canonical git URLRoss Burton2018-04-131-1/+1
| | | | | | | | | | /mmeeks/bootchart.git is redirecting to /xrmx/bootchart.git so update SRC_URI to match. (From OE-Core rev: c4208f0ef0753a4615cf9dbcfb305f638b262f50) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Add recommended modules to nativesdk installTom Hochstein2018-04-131-0/+1
| | | | | | | | | | | | | | | The python3 installation in the SDK did not include the minimum set of modules to be functional, particularly in the case where Python is brought in through dependencies. Rather than requiring the user to explicitly add the modules, it's better to pull in the modules through RRECOMMENDS. Note that the Python 2 recipe already does this. (From OE-Core rev: 5a88e59e488248b7ec53b072f934052b96c78a51) Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: add missing Signed-off-by and Upstream-Status tagsRoss Burton2018-04-134-1/+6
| | | | | | | (From OE-Core rev: 4612441b59fd8264fdd5bd4f3e5d195f6085c94c) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto/4.14/4.15: deterministic srcversionBruce Ashfield2018-04-136-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Author: Juro Bystricky <juro.bystricky@intel.com> Date: Fri Mar 30 10:14:05 2018 -0700 modpost: srcversion sometimes incorrect "srcversion" field inserted into module modinfo section contains a sum of the source files which made it. However, this field can be incorrect. Building the same module can end up having inconsistent srcversion field eventhough the sources remain the same. This can be reproduced by building modules in a deeply nested directory, but other factors contribute as well. The reason for incorrect srcversion is that some source files can be simply silently skipped from the checksum calculation due to limited buffer space for line parsing. This patch addresses two issues: 1. Allocates a larger line buffer (32k vs 4k). 2. Issues a warning if a line length exceeds the line buffer. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> (From OE-Core rev: 7d92ed3dcd8c4b5f7cde2f521569c792d55fae65) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto-tiny/4.14: fix recipe nameBruce Ashfield2018-04-132-61/+14
| | | | | | | | | | | | | | I guess not many people are building linux-yocto-tiny for v4.15, given that I managed to mangle the name of the recipe when I introduced it. [YOCTO #12640] (From OE-Core rev: 6c1ddbbb0eb9c86646fcb99520e4747cfcd2b418) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto/4.14: add elfutils, util-linux and openssl dependenciesBruce Ashfield2018-04-133-0/+9
| | | | | | | | | | | | | | | | | 4.15+ already has the following dependencies: DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" DEPENDS += "openssl-native util-linux-native" Updates to 4.14 via the -stable releases have also introduced the same dependencies to 4.14's "make scripts". As such, we bring the same lines into 4.14 to restore the ability to build scripts. (From OE-Core rev: 148fd7a5bfea5d18952355a294e6d36ca82291d2) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: use xz -T instead of pixzRoss Burton2018-04-131-2/+2
| | | | | | | | | | | | | | xz has native support for threaded compression now and SDK creation was the only part of oe-core which is using pixz instead of xz. Not only does this remove pixz-native from the SDK dependencies, but in my limited testing xz -T0 is slightly faster and produces smaller archives than pixz for the same input. (From OE-Core rev: ce1cfa57d9828c0898f52e736f671ce8db534031) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types: use pigz to create .gz filesRoss Burton2018-04-131-1/+1
| | | | | | | | | | | Since pigz is no longer a drop-in replacement for gzip (oe-core 1624b7b) the image creation has been using gzip instead of pigz, despite still depending on pigz-native. Fix this by invoking pigz explicitly. (From OE-Core rev: 214fa7fe3b162162d2fa8b31eec28bedd86fcc7d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license.bbclass: be a bit more strict when searching ↵Martin Jansa2018-04-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ${PN}-${LICENSE_PACKAGE_SUFFIX} in packages * linux-firmware contains ${PN}-license package since this commit: commit 1ee083da0730408fffdbbf5f29abc299c0e61be9 Author: Jackie Huang <jackie.huang@windriver.com> Date: Mon Apr 13 10:17:21 2015 +0800 linux-firmware: fix the mess of licenses * LICENSE_CREATE_PACKAGE functionality in license.bbclass when enabled adds new package with suffix: LICENSE_PACKAGE_SUFFIX ??= "-lic" but then it checks if ${PN}-${LICENSE_PACKAGE_SUFFIX} is included in PACKAGES before adding it and when found it shows: WARNING: linux-firmware-1_0.0+gitAUTOINC+4c0bf113a5-r0 do_package: linux-firmware-lic package already existed in linux-firmware. and doesn't add the ${PN}-lic to PACKAGES and causes another warning: WARNING: linux-firmware-1_0.0+gitAUTOINC+4c0bf113a5-r0 do_package: QA Issue: linux-firmware: Files/directories were installed but not shipped in any package: /usr /usr/share /usr/share/licenses /usr/share/licenses/linux-firmware that's because it was searching ${PN}-lic in PACKAGES as a string so it found ${PN}-lic as a substring of ${PN}-license, add a split to search in an list (From OE-Core rev: 9b9897fc034819385a9d4ce591cc79dd458f3f24) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libxcrypt: add -std=gnu99 to BUILD_CPPFLAGSMartin Jansa2018-04-101-1/+1
| | | | | | | | | | | | | | * add it to allow older distributions e.g. Ubuntu 14.04 with gcc 4.8 to build this, otherwise it fails with: ../git/gen-des-tables.c: In function 'write_table_u8': ../git/gen-des-tables.c:307:3: error: 'for' loop initial declarations are only allowed in C99 mode for (size_t i = 0; i < m; i++) ^ (From OE-Core rev: 2591741896a6a267ceca9519f21bd39b5b196559) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rpm: build without dbus for rpm-nativeChen Qi2018-04-102-2/+46
| | | | | | | | | | | | | | | | | | | | | | Add option for dbus in configure.ac, and explicitly build without dbus for rpm-native. Previously, the rpm recipe tries to prevent rpm-native from attempting to inhibit shutdown via session dbus by appending '--disable-plugins' to EXTRA_OECONF in case of native. However, some layer may need some functionality via plugin support. And when it enables it, we would meet the following warning at rootfs time. Unable to get systemd shutdown inhibition lock: Socket name too long As plugins/systemd_inhibit.c is the only place that's related to this dependency, we can be sure that dbus is really not needed for rpm-native. (From OE-Core rev: 815ccef2d5bef1e46c51916e694d0974aee394a9) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license.bbclass: Minor simplification of get_deployed_dependencies()Peter Kjellerstedt2018-04-101-3/+1
| | | | | | | | | | | Since ${SSTATE_ARCHS} now contains ${PACKAGE_EXTRA_ARCHS} there is no longer any need to add those extra architectures to the list of architectures handled in get_deployed_dependencies(). (From OE-Core rev: e55e6df4f1434458cdfa0e2d3610b48119e5a782) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate.bbclass: Add ${PACKAGE_EXTRA_ARCHS} to SSTATE_ARCHSPeter Kjellerstedt2018-04-101-2/+3
| | | | | | | | | | | | | | | | | This makes sure files provided by packages that use any of the extra architectures defined using ${PACKAGE_EXTRA_ARCHS} are cleaned from tmp/sysroot-components when sstate_eventhandler2() executes. Without this, changing a package from using one of the extra architectures to another architecture would lead to files being leftover in tmp/sysroot-components, which could later be picked up when creating the RSS for another package rather than the files that belonged to the updated package. (From OE-Core rev: b959b3bd92aa2939d407800fc4167b0535fd4674) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Use ${MACHINE_ARCH} instead of ${MACHINE} for stamp-extra-info task ↵Peter Kjellerstedt2018-04-106-6/+7
| | | | | | | | | | | | | flag Without this change, there will be two sstate index files in tmp/sstate-control for any machine that contains a dash in the name. (From OE-Core rev: 29e7799bdb3773c40492e01448e0c614ed44583d) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* nativesdk-glibc: Split glibc and libcrypt to use libxcrypt insteadRichard Purdie2018-04-0711-7/+461
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fedora28[1] has decided to go ahead and use libxcrypt to replace libcrypt from glibc despite the change not having merged into glibc upstream yet. This breaks the use of uninative in OE on fedora28 since binaries there are now using new symbols only found in libxcrypt. libxcrypt is meant to be backwards compatible with libcrypt but not the reverse. Since this will impact OE in the next release cycle, this changes nativesdk only to use this new model and adds libxcrypt to work in that case. This allows us to build a uninative which is compatible with fedora28 and previous other OSes. In order to work, recipes will now need to depend on virtual/crypt where they use libcrypt since its now a separate library and we can't depend on it from glibc to preseve backwards compatibility since glibc needs to build first. For now, only the problematic nativesdk recipes have been fixed up. For target use, the default provider remains glibc for now. Assuming this change is merged into upstream glibc, we will need to roll this change out for the target but we will do this in the next release cycle when we can better deal with the resulting bugs. [1] https://fedoraproject.org/wiki/Changes/Replace_glibc_libcrypt_with_libxcrypt Original patch from Charles-Antoine Couret <charles-antoine.couret@essensium.com>, tweaked by RP to add virtual provides, SkipRecipe for libxcrypt and other minor tweaks. (From OE-Core rev: c1573cb7faeb296fe7077a60d02443d5ed5bded0) Signed-off-by: Charles-Antoine Couret <charles-antoine.couret@essensium.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: Ensure added layer sets LAYERSERIES_COMPATRichard Purdie2018-04-071-0/+1
| | | | | | | | | | Now that we see warnings if LAYERSERIES_COMPAT is unset, the auto generated code from devtool needs to set this to avoid warnings which break various tests. (From OE-Core rev: f65ebfeda0bfbac78e4a2a6609ba654ca38a8b0e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool/oeqa: Ensure added layers set LAYERSERIES_COMPATRichard Purdie2018-04-071-1/+1
| | | | | | | | | | Now that we see warnings if LAYERSERIES_COMPAT is unset, the auto generated code from devtool/oeqa needs to set this to avoid warnings which break various tests. (From OE-Core rev: 27568410ebb0d40db3428550704f35199df0e034) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "python3: fix create_manifest to handle pycache folders"Richard Purdie2018-04-072-15/+10
| | | | | | | | | Alejandro asked this be reverted as the patch causes more problems than it solves. This reverts commit 5d288d286e0adb221649d896c132a607ecddc490. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* perl: add patch to solve libcrypt incompatibilityCharles-Antoine Couret2018-04-073-0/+30
| | | | | | | | | Add Perl's patch submitted to upstream to be compiled along with glibc with libcrypt split. (From OE-Core rev: 79703d83790a2973fefdb0e12e125b5f17e98cdf) Signed-off-by: Charles-Antoine Couret <charles-antoine.couret@essensium.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemtap: support --sysroot option in variety of situations in cross buildVictor Kamensky2018-04-0710-0/+560
| | | | | | | | | | | For details on issues fixed please look at commit message of individual patches. Upstream-Status: Backport [systemtap@sourceware.org] (From OE-Core rev: 5aa93de3a79c8691e74e982d3d4b0099b04f5555) Signed-off-by: Victor Kamensky <kamensky@cisco.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>