aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-07-26linux-firmware: add separate packages for all brcm filesMartin Jansa
* no changes in the content of previously existing packages * include some silly commands I've used to "parse" WHENCE file to generate these, some manual changes are still needed, like separating cypress licensed files, removing duplicates when 2 files are included in the same package (bcm4356-pcie is exception because sdio and pcie files have different license). Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26linux-firmware: update LICENSE for bcm43* packages according to WHENCE fileMartin Jansa
* the license was updated brcm/brcmfmac43430-sdio.bin: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=ec734a30 brcm/brcmfmac43340-sdio.bin: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=5ac5ad5c brcm/brcmfmac43362-sdio.bin: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=be1c535e brcm/brcmfmac4354-sdio.bin: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=a2921812 * this shows that with every upgrade the changes in WHENCE file should checked carefully Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26linux-firmware: add ${PN}-cypress-license handling from meta-raspberrypiMartin Jansa
* this will break meta-raspberrypi once more, by including ${PN}-cypress-license package twice in PACKAGES I've sent fix here: https://github.com/agherzan/meta-raspberrypi/pull/295 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26systemtap: improve reproducibilityHongxu Jia
- Fix build path issue of .pyc files: Supply "--root" directory to the "install" command. - Fix build path issue of c++ object files: Use relative dir to include header string_ref. - Fix build path issue of c library generated by distutils: Add OE's CFLAGS which contains `-fdebug-prefix-map' options to setup.py [YOCTO #12528] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26wic/engine: improve error reporting when using rm with wicAnuj Mittal
When trying to delete something from an ext partition using debugfs, we don't show any error to the user when that operation fails. Change this behavior to show the error generated by debugfs. Also, fallback to use rmdir in case we are trying to delete a directory. However, unlike mdeltree that is used for a FAT partition, there's no easy way to delete a non empty directory. Show an error instead when that happens so user can take appropriate action. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26logrotate: Improve configurability of the installed systemd service filesPeter Kjellerstedt
This makes it possible to add extra options to the logrotate application (via ${LOGROTATE_OPTIONS}), and it allows the Persistent option in logrotate.timer to be configured via ${LOGROTATE_SYSTEMD_TIMER_PERSISTENT}. It also changes the sed expressions to allow for ${LOGROTATE_SYSTEMD_TIMER_BASIS} to contain commas without having to prefix them with backslahes, e.g.: LOGROTATE_SYSTEMD_TIMER_BASIS = "*-*-* *:00,30:00" Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26iputils: upgrade to s20190629Ross Burton
License-Update: change license checksums to check the License files themselves (BSD3 and GPL2), and the tool-to-license file (LICENSE). Changes to LICENSE will now be detected. Backport a patch to fix the build with musl. Drop upstreamed patch. Update libidn build-dependency to libidn2. Patch in an install target and use that to install binaries, to avoid upstream adding binaries that we don't ship. Also ship all binaries that are installed. Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26gnutls: rationalise libunistring argumentsRoss Burton
No need to pass --without-libunistring-prefix, and it looks a lot like we're trying to disable it. Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26lib/oe: split out machine to ELF data dictionaryRoss Burton
2018-07-26binutils: Upgrade to 2.31 release branchKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26grub: fix build with new binutilsRoss Burton
2018-07-26base-files: profile: Avoid using "command" to determine if programs existPeter Kjellerstedt
Since the existence of "command" in itself is not guaranteed, using it to determine if other executables exist is moot. Instead just run the executables and let the shell determine if they exist. By piping stderr to /dev/null we avoid unnecessary warnings in case they do not exist. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26python3-pip: clean up obsoleteHongxu Jia
Since unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools, - The local DISTUTILS_INSTALL_ARGS assignment is obsolete; - The site.py is not be generated any more; - The layout is in a standard pip dir (such as /usr/lib/python3.5/site- packages/pip rather than /lib/python3.5/site-packages/pip-10.0.1- py3.5.egg/pip), the pth file is not required; `#!/usr/bin/env python3' is already used, do not manually sed. [YOCTO #8446] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26python-setuptools.inc: clean up useless local var-DISTUTILS_INSTALL_ARGSHongxu Jia
Since unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools, The local var-DISTUTILS_INSTALL_ARGS broke do_install ... error: option --script-dir not recognized ERROR: python3 setup.py install execution failed. ... [YOCTO #8446] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26distutils/setuptools, distutils3/setuptools3: improve reproducibilityHongxu Jia
- Unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools - Supply "--root" directory to the "install" command, and use it as a prefix to strip off the purported filename encoded in bytecode files. (It strips build path prefix from .pyc files) [YOCTO #8446] [YOCTO #12084] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26oeqa/sdk/sdkbuildproject: use os.path.joinRoss Burton
Instead of mushing two paths together and hoping that the slashes line up correctly, use os.path.join. Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26oeqa: rationalise Perl testsRoss Burton
As with the Python test, this can be both better and faster. No need to copy a file, just run a one-liner. Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26libnss-mdns: Fix search path for avahi socket fileBetacentauri
Since v0.7 avahi uses /run/avahi-daemon/socket. libnss searches in $(localstatedir)/run/avahi-daemon/. Set localstatedir to / to fix mdns resolving. Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26logging: use warning instead warnChen Qi
The warn method is deprecated. We should use the documented warning instead. Quoting from the python's official doc: """ Note: There is an obsolete method warn which is functionally identical to warning. As warn is deprecated, please do not use it - use warning instead. """ Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26bind: update to 9.11.4Armin Kuster
include: CVE-2018-5738 Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26tiff: security fix CVE-2018-7456Joe Slater
NULL pointer use as described at nvd.nist.gov/vuln/detail/CVE-2018-7456. Signed-off-by: Joe Slater <joe.slater@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26tiff: security fix CVE-2018-8905Joe Slater
Buffer overflow described at nvd.nits.gov/vuln/detail/CVE-2018-8905. Signed-off-by: Joe Slater <joe.slater@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26libx11: remove redundant siteinfo inheritRoss Burton
The recipe doesn't use the variables, and autotools inherits this already. Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26gnu-config: update to 2018-07-13Ross Burton
License checksum updated as URL changed. Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26gnu-config: remove obsolete versionRoss Burton
2018-07-26curl: disable C source code generatorAndre McCurdy
The --libcurl command line option causes curl to generate C source code which, when compiled and linked with libcurl, creates a binary which behaves in the same way as curl when run with the other options passed on the curl command line. https://curl.haxx.se/docs/manpage.html#--libcurl It's a development tool and not generally useful on the target, especially if the target doesn't contain a toolchain etc. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26distutils/setuptools-native, distutils3/setuptools3-native: do not try to ↵Hongxu Jia
fetch code during do_compile If a python recipe is using setuptools and the setup_requires argument, where setuptools will use easy_install to fetch the module if it isn't present. The build failed on a machine where a proxy was required, but succeeded on a machine which had direct access to the internet Add var-NO_FETCH_BUILD, and set it in distutils_do_compile which does not allow to fetch code from internet during do_compile. Example result: ... ERROR: Do not try to fetch `pytest-runner1' for building. Please add its native recipe to DEPENDS. Traceback (most recent call last): File "setup.py", line 56, in <module> ... The improvement is flexible for test_requirements argument (used at `setup.py test'), where use easy_install also. [YOCTO #12084] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26cmake: put cmake.m4 and toolchain file in PNRoss Burton
Previously cmake-dev held some files which should be in cmake. - cmake.m4 should be in installed in cmake so it can be used out of the box - nativesdk-specific OEToolchainConfig.cmake file used to be in cmake, but the change of default packaging rules move it into cmake-dev. This recipe is the exception and it should be moved back. Add the extra paths to cmake, and clear FILES for cmake-dev to ensure nothing else slips in. Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26cmake: in SDK use OE env var to set default toolchainCody P Schafer
Patch the location in cmake where the toolchain file is loaded to use the (new) OE_CMAKE_TOOLCHAIN_FILE variable to select a default toolchain if no toolchain has been specified. The cmake alias is removed. The alternatives: - shell alias fails when cmake is called indirectly (ex: a makefile managing several projects which calls cmake for some of them) because aliases are not inherited - wrapper script that unconditionally adds "-D..." breaks cmake's build tests and many other things as it causes cmake to believe it should be configuring things when it should not be. For example, `cmake -DCMAKE_TOOLCHAIN_FILE=... --build .` does not work (note that this also breaks people directly using `cmake --build .` with the current alias). Signed-off-by: Cody P Schafer <dev@codyps.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26yocto-uninative: Upgrade to version 2.2Richard Purdie
This version adds nativesdk-libnss-nis to resolve glibc symbol issues We need this to avoid symbol mismatch issues for binaries that use this on newer systems which then won't run on older ones where it isn't present. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25selftest/bbtests: Add test for bitbake execution outside the build directoryRichard Purdie
Also fix a related test's error message to match what it does. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25selftest/bblayers: Place the test layer directory in builddirRichard Purdie
Placing the layer in meta means the directory is in an unclean state which may influence other tests. Use our build directory instead since we 'own' that. This helps keep oe-selftest parallelisation clean. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25license_image: Fix raceRichard Purdie
The current code pokes into do_deploy manifests from do_image_complete when the do_image_complete task may or may not depend upon the do_deploy tasks in question. Often it gets lucky, sometimes it results in build failures. To fix this, split the functionality to its own task which can have the correct task dependencies. This means the data in BB_TASKDEPDATA is definitive, the other code can be dropped, as can the IMAGE_EXTRATYPES do_populate_lic dependencies from image.bbclass. This fixes bugs which show up as: NOTE: recipe linux-yocto-4.14.48+gitAUTOINC+d64aec9793_97c8063d2d-r0: task do_deploy: Started ERROR: core-image-minimal-1.0-r0 do_image_complete: Error executing a python function in exec_python_func() autogenerated: The stack trace of python calls that resulted in this exception/failure was: File: 'exec_python_func() autogenerated', lineno: 2, function: <module> 0001: *** 0002:write_deploy_manifest(d) 0003: File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 33, function: write_deploy_manifest 0029: 'w+').write(output) 0030:} 0031: 0032:python write_deploy_manifest() { *** 0033: license_deployed_manifest(d) 0034:} 0035: 0036:python license_create_manifest() { 0037: import oe.packagedata File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 191, function: license_deployed_manifest 0187: # It is necessary to mark this will be used for image manifest 0188: man_dic[dep]["IMAGE_MANIFEST"] = True 0189: man_dic[dep]["PN"] = dep 0190: man_dic[dep]["FILES"] = \ *** 0191: " ".join(get_deployed_files(dep_dic[dep])) 0192: with open(os.path.join(lic_dir, dep, "recipeinfo"), "r") as f: 0193: for line in f.readlines(): 0194: key,val = line.split(": ", 1) 0195: man_dic[dep][key] = val[:-1] File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 289, function: get_deployed_files 0285: """ 0286: 0287: dep_files = [] 0288: excluded_files = [] *** 0289: with open(man_file, "r") as manifest: 0290: all_files = manifest.read() 0291: for f in all_files.splitlines(): 0292: if ((not (os.path.islink(f) or os.path.isdir(f))) and 0293: not os.path.basename(f) in excluded_files): Exception: FileNotFoundError: [Errno 2] No such file or directory: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build-st-730/tmp/sstate-control/manifest-qemux86_64-linux-yocto.deploy' ERROR: core-image-minimal-1.0-r0 do_image_complete: Function failed: write_deploy_manifest ERROR: Logfile of failure stored in: /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build-st-730/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/temp/log.do_image_complete.50537 NOTE: recipe core-image-minimal-1.0-r0: task do_image_complete: Failed ERROR: Task (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/recipes-core/images/core-image-minimal.bb:do_image_complete) failed with exit code '1' NOTE: recipe linux-yocto-4.14.48+gitAUTOINC+d64aec9793_97c8063d2d-r0: task do_deploy: Succeeded Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25license: Split image license functions to a separate classRichard Purdie
This means the image code is only included in image recipes through the IMAGE_CLASSES variable. This sets things up to allow us to fix image deploy dependency problems. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25package: Use subprocess to be consistent with the rest of the classRichard Purdie
Using 'sub' in one function just confuses things, standardise and fix formatting of the parameters too. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25selftest/wic: clean up runCmd error code handlingRichard Purdie
runCmd handles checking exit 0 internally unless specified otherwise and its error messages are much more useful including the failed command output. Clean up the unneeded 0 exit code checks in the wic tests. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25selftest/wic: Improve error message for test_fixed_sizeRichard Purdie
Currently this can fail with a message like 127 != 0 which is unhelpful. If we remove the ignore_status=False, the debugging from runCmd is much more helpful printing status.output. Also remove the now unneeded exit code check. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25Revert "relocate_sdk.py: remove hardcoded SDK path"Richard Purdie
This reverts commit 6671a4d980c8bef8f402780a308f6c43a25044aa. This breaks uninative tarball since the call of relocate_sdk.py from uninative.bbclass wasn't updated to account for this change. It isn't clear what value that code could pass in and this isn't simple to fix so revert until a better fix can be found that doesn't break uninative. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24uninative-tarball: Add nativesdk-libnss-nis to resolve glibc symbol issuesRichard Purdie
We need this to avoid symbol mismatch issues for binaries that use this on newer systems which then won't run on older ones where it isn't present. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24oe-selftest: fix for changes to buildhistory-diffPaul Eggleton
Now we're not reporting the related fields (as of openembedded-core 8658b3677b9f7cb70806061c41570c709086ef05) we shouldn't expect to see PR reported here since it's not monitored by buildhistory-diff. However, with a bit of messing about we can check for the exact output that we should now see as a result of the test changing PR to go backwards. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24lib/oe/utils: Drop now unused multiprocess_execRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24package/package_manager: multiprocess_exec -> multiprocess_launchRichard Purdie
After this replacement, the parent exception handling works so we don't need subprocess wrapping with bb.error in the underlying functions. The underlying contexts also have better module handling so the imports can be cleaned up. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24package: Clean up getstatusoutput usageRichard Purdie
Replace usage of oe.utils.getstatusoutput() with direct subprocess calls. The call is just a wraper to the subprocess call of the same name and requires the caller to handle exceptions themselves. We usually do this badly, failing to show the output or the command or the return code. Its much safer to rely on a call like subprocess.check_output() instead. This also makes it easier to spot and remove cases where shell=True isn't needed in a later cleanup. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24sstate/bitbake.conf: Use pigz if availableRichard Purdie
Currently the compression of sstate objects is single threaded. In the case of ltp, this takes around 33s. If we add pigz into the list of non-fatal HOSTTOOLS and then use if it available when building the sstate object, this time drops to around 6s. Since pigz is now widely available this is an optimisation we should utilise. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24package: Call file to determine elf status in parallelRichard Purdie
This allows the calls to is_elf (which calls file) to happen in parallel allowing a speedup of do_package and do_populate_sysroot for native recipes. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24package: Refactor to remove isElf/is_elf function duplicationRichard Purdie
There are probably further cleanups needed here but this at least removes the major code duplication between these two similar funcitons, keeping the kernel module ".ko" extension check for efficiency to avoid opening and reading file contents in the general case. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24package: Allow parallel processing of shlib analysisRichard Purdie
This function is a bit more invasive to add parallelism to but allows the shlibs analysis to happen in multiple threads. In order to return values correctly/safely the data types needed tweaking to avoid lists and use immutable objects. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24package: Allow parallel processing of debug splittingRichard Purdie
Adjust the code so that the splitting of debug symbols from files happens in parallel. To to this we need to move some path handling code into the main function and pass more parameters in. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24package: Don't use subshell to execute fileRichard Purdie
We don't need any functionality from the shell here, its just extra fork overhead. Therefore remove it and use subprocess directly. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24package: Drop subshell usage for dwarfsrcfile generation.Richard Purdie
The command for running dwarfsrcfiles is simple and does not need a subshell for each execution. By expanding out this function to use check_output() from subprocess and a list of arguments, the shell overhead can be dropped. For recipes with lots of files this gives a significant saving. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>