Commit Graph

7759 Commits

Author SHA1 Message Date
Bruce Ashfield
aa7fc34dc4 kernel-yocto: propagate configuration errors to bbclass
As pointed out by klapperichpaul@johndeere.com, missing configuration
fragments were being picked up twice, once by the tools and once by the
bbclass. Unfortunately, the tools error message was being detected as
configs, and hence no error was reported at all.

Rather than catching the output of the tools, we can instead check the
return code and propagate the error message from the tools directly to
the user.

[YOCTO #11649]

(From OE-Core rev: 960652416e2390337df6d9734375d6829ceb6420)

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>
2017-07-17 14:01:38 +01:00
Lans Zhang
30ba8b6894 sign_rpm: support signing files in RPM payload
Currently, RPM4 supports to sign the files in RPM payload with plugin
mechanism. We introduce more definitions to make the file signing
available for the users:

- RPM_FILE_CHECKSUM_DIGEST
  Global switch to enable file signing.
- RPM_FSK_PATH
  The file signing key.
- RPM_FSK_PASSWORD
  The password of file signing key.
- RPM_FILE_CHECKSUM_DIGEST
  The file checksum digest.

(From OE-Core rev: 95b9ee33d5595078e90c633f6155ec9ba3d184f0)

Signed-off-by: Lans Zhang <jia.zhang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:37 +01:00
Ed Bartosh
b15df41d7d image_types: fix squashfs-lzo and squashfs-xz builds
Dependencies required for squashfs-lzo and squashfs-xz image builds were
assigned to do_image_squashfs-lzo and do_image_squashfs-xz. As these
tasks don't exist the dependencies were not installed and builds
were failing.

Correct task names for these image types are: do_image_squashfs_lzo and
do_image_squashfs_xz because '-' and '.' are replaced by '_' in all
do_image* task names.

[YOCTO #11760]

(From OE-Core rev: 1f8fc803262cdcc26dabc28af70bf0fdaf2e5847)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:37 +01:00
Ed Bartosh
393e55c1ff image_types_wic: set default WKS_FILE_DEPENDS
The default set of dependencies used via wic-tools is not used
anymore as wic images don't depend on wic-tools.

Set of packages required to produce wic image depends on the content
of the .wks file, so WKS_FILE_DEPENDS variable should be used to
provide correct list of dependencies when WKS_FILE variable is set.

As WKS_FILE_DEPENDS is not used in many existing recipes yet we need
to provide default value for it to ensure that removal of wic-tool
dependency doesn't cause image build failures.

Initialized WKS_FILE_DEPENDS with the set of dependencies previously
brought by wic-tool. This is done to provide compatibility and to
avoid breakages of existing image recipes that rely on current set
of dependencies.

Note: This is a temporary solution for transition period.
After some time the list will be either reduced or removed.
Recommended solution is to use WKS_FILE_DEPENDS in image recipes
together with WKS_FILE to specify dependencies.

(From OE-Core rev: 01fc31854f7da6b3a4546121f809875c35bbf0e0)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:37 +01:00
Ed Bartosh
b6dd87f2a8 wic: get rid of using wic-tools
At the moment, when building images with IMAGE_FSTYPES=wic one ends up
depending on wic-tools and thus syslinux and grub-efi even when not
using those at all. Ideally, building an image with wic should only
build the tools and components really needed.

The problem is that "wic-tools" is needed also for the manual
invocations of wic, in which case everything that might be needed has to
be built in advance.

Replaced dependency on wic-tools with dependency to a much shorter set
of tools that wic uses almost for any image: 'parted', 'gptfdisk',
'dosfstools' and 'mtools'.

[YOCTO #11552]

(From OE-Core rev: 33ca15b94dbe7204c556c4b5526edd529f6d85f4)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:37 +01:00
Ed Bartosh
223d3b44c0 live-vm-common: add MKDOSFS_EXTRAOPTS variable
Sometimes it's needed to create FAT filesystem with specific
sector or cluster size, FAT size or to use one of other useful
mkdosfs options.

Introduced MKDOSFS_EXTRAOPTS variable to set options for mkdosfs.

[YOCTO #11709]

(From OE-Core rev: 18b52577484d3b86bc31980a50da04141afda5f9)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:37 +01:00
Joshua Lock
ca98a339c5 image_types: remove Hob convenience variable
IMAGE_EXTENSION_live is no longer used. It was used by Hob to map the
live image type, but Hob is no longer part of the Bitbake codebase.

(From OE-Core rev: 2b30dcdc903c1b0c18e14e39b954177628d058bd)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:37 +01:00
Ross Burton
6e46b4c1b2 classes/sanity: check for case-sensitive file systems
Case-insensitive file systems fail during builds in very mysterious ways, such
as mpfr:

  ERROR: patch_do_patch: Not a directory

The problem here being that mpfr has a PATCHES file, so when we try to copy the
patches into ${S}/patches/ it fails.

We can't and won't support case-insensitive file systems so add a sanity check
to abort the build if one is found.

(From OE-Core rev: 20ce04fb64f559e64490d53678fa00644a92894a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:37 +01:00
Ross Burton
11f6f7c617 ccache: let ccache create CCACHE_DIR, reducing hash changes
(From OE-Core rev: 408c5c0f942fa4a7b4df6aacf336d685037ca76c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:36 +01:00
Ross Burton
c895ddb56b ccache: don't export CCACHE_DISABLE globally
CCACHE_DISABLE was added to bitbake.conf in oe-core dd2bab (June 2012) because
autogen-native exports HOME=/dev/null during the build, which is then used by a
host ccache to construct the path to it's cache (/dev/null/.ccache) and this
fails.

However we now always export CCACHE_DIR to solve the same problem in a more
efficient way so CCACHE_DISABLE can be deleted.

(From OE-Core rev: ef33a3138384667f819688141086102e6e83ec44)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:36 +01:00
Patrick Ohly
8839ed1620 distrooverrides.bbclass: fix default configuration
When using distrooverrides.bbclass without setting
DISTRO_FEATURES_OVERRIDES, the code failed because of a spelling error
in the default.

[YOCTO #11759]

(From OE-Core rev: 174277176fcdc13b4a29e291dafc2f508ff9da66)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-17 14:01:36 +01:00
Richard Purdie
af950e2c09 staging: Ensure a clean recipe sysroot removes addto_recipe_sysroot stamps
The commands:

bitbake nodejs-native;
bitbake nodejs-native -c clean;
bitbake nodejs-native;
bitbake -c addto_recipe_sysroot nodejs-native;
bitbake -c devshell nodejs-native;
bitbake -c addto_recipe_sysroot nodejs-native;
bitbake -c devshell nodejs-native;

never result in npm in the sysroot within devshell. The reason is the
addto_recipe_sysroot stamp isn't removed when do_fetch is run but the sysroot
is cleaned.

With this patch, the second devshell will contain npm, which I think is probably
the best outcome we can hope for here.

[YOCTO #11461]

(From OE-Core rev: c440298674ab3b960c83a127eedb9e1b66bddf78)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08 13:34:46 +01:00
Khem Raj
3df1c95ba7 testimage: Use the renamed buildlzip
buildiptables has been replaced with buildlzip

(From OE-Core rev: 57cd682e05f82b63090b0cbb4a1d8feb3bfbff23)

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>
2017-07-08 13:34:46 +01:00
Andre McCurdy
72bdc49547 mirrors.bbclass: remove stale lsof ftp mirrors
Replace with an mapping for http://www.mirrorservice.org to align
with recent changes to SRC_URI in the lsof recipe and allow
non-current lsof tar files to be found in the /OLD subdirectory.

(From OE-Core rev: 2ea075ffd6a4d68be546f0c10fc94f7a27e8f761)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08 13:34:46 +01:00
Leonardo Sandoval
9bf53388ad image_types: fix kernel target on elf's image dependencies
Kernel recipes provides 'virtual/kernel' so remove the native part.

(From OE-Core rev: 50e6f23ef1e304c335d44e3e8e7a6cfa5a93fa86)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08 13:34:46 +01:00
Ming Liu
59ec03c5bc linuxloader.bbclass: add musl libc support
Current linuxloader.bbclass does not support musl libc ldso, so add it
in.

After changing, now the linuxloader function will call a subfunction
according to which virtual/libc is being used, glibc or musl, the
linuxloader_musl function is made on top of the LDSO macro defined
in musl source, by mapping related OE variables to it.

Change tested on following machines:
"genericx86"
"genericx86-64"
"beaglebone"
"qemumips64"
"qemuarm64"
"mpc8315e-rdb"
"edgerouter"
"qemumips"
"kc705-microblazeel" - meta-xilinx
"qemuppc"

(From OE-Core rev: 5d4acaed81a811912e60d85c507bee819623369e)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08 13:34:46 +01:00
sweeaun
0d5488b0bf siteinfo.bbclass: Support musl-x32
Modified targetinfo and osinfo to support musl-x32.

(From OE-Core rev: 94ed793a704dadf55481305b6ed49ae3f3e1fc66)

Signed-off-by: sweeaun <swee.aun.khor@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08 13:34:45 +01:00
sweeaun
f33627f30b insane.bbclass: Support musl-x32
Added musl-x32 elf header into dictionary.

(From OE-Core rev: 305e2b3b3de1af0001d534e5c9ec126481dfd9dd)

Signed-off-by: sweeaun <swee.aun.khor@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08 13:34:45 +01:00
Khem Raj
9deacd7f9e distutils,setuptools: Delete use of SECURITY_NO_PIE_CFLAGS
gcc can handle PIE in gcc driver

(From OE-Core rev: fcfe6d4ab4460f8358e13023022a5e909941ca93)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08 13:34:45 +01:00
Richard Purdie
a12d9164ea base: Add MultiConfigParsed handler to deal with unstable build signatures
This uses the newly added MultiConfigParsed event to handle problems where
checksums in multiconfig build were not fuctioning as expected.

The issue arises around SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS which contains
entries like:

* gcc-cross-${TARGET_ARCH}->virtual/${TARGET_PREFIX}libc-for-gcc
* gcc-cross-${TARGET_ARCH}->linux-libc-headers

These need to be expanded in the multiconfig data store but then placed
into the shared main datastore used by the siggen code. The only other
alternative would be a siggen instance for each multiconfig however that
seemed even more complex and invasive.

In real world usage, this issue would mean a qemux86 base config with
other armv5 and armv7 configs (e.g. beaglebone and qemuarm) would
try and build gcc-cross twice since dependencies normaly excluded
(e.g. linux-libc-headers) would now be included. This breaks sstate reuse
as well as breaking builds unless separate tmpdirs are used.

This patch adds all the entries for each multiconfig. Whilst there may
be duplicates, this shouldn't be an issue.

(From OE-Core rev: 7267e7c000c76c44d09835d4cd2bc485b6a39a2a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08 13:34:45 +01:00
Amarnath Valluri
96e3848ba0 image.bbclass: create root symlinks in nativesdk target sysroot
To match with the target image, the generated nativesdk's target sysroot also
should have the root symlinks(/lib*, /bin/, /sbin). So, extended the
'create_merged_usr_symlinks' to reuse symlink creation part even for nativesdk
using POPULATE_SDK_PRE_TARGET_COMMAND.

(From OE-Core rev: 2d7a58ef7a9597fde868a0582153d1f9a3007f1e)

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:15 +01:00
Amarnath Valluri
2ea87f74da insane.bbclass: Add package QA check for merged /usr.
This check makes sure that, when usrmerge distro feature enabled, no package
installs files to root (/bin, /sbin, /lib, /lib64) folders.

(From OE-Core rev: 9f52f9f60f5680d7a824dafb3334de624eceed4c)

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:15 +01:00
Amarnath Valluri
66cf94e740 image: create symlinks needed for merged /usr
Prepare the symlinks required for merged /usr at the time of rootfs creation.

The links created in rootfs are:
/bin --> /usr/sbin
/sbin --> /usr/sbin
/lib --> /usr/lib
/lib64 --> /usr/lib64

We cannot make these symlinks as part of 'base-files' or some other package.
Because at rootfs creation, installation of the package(say kernel) that depends
on these root folders/links fails, if package manager installs this package
prior to base-files.

These symbolic links in top level folder should be present as long as
 - kernel tools use /lib/{module,firmware}
 - shell scripts uses "#!/bin/sh"

(From OE-Core rev: 3f978f24ae2cf831bd2b82270f6353edda6364a5)

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:15 +01:00
Amarnath Valluri
d8232565dc cross.bbclass: merged /usr support
Use ${root_prefix} instead of ${base_prefix} while setting
${target_base_prefix}, otherwise we might loose the root prefix configuration
change in case of 'usrmerge' distro feature is enabled.

(From OE-Core rev: 3ebb2da2eb1ff2f6072a2909e0ac71614e0db0bd)

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:15 +01:00
Soren Brinkmann
ec9e631f2f mirrors: Add HTTP mirrors for ftp://sourceware.org
(From OE-Core rev: 081c7b3d474461905eda89f77c760f1453a33e44)

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:15 +01:00
Mikko Ylinen
26fc1f18a6 sanity.bbclass: fix AttributeError in mirror format checks
mirrors is a list after split() and results in:

AttributeError: 'list' object has no attribute 'strip'

when the 'mirror values are pairs' check fails.

(From OE-Core rev: 2b7232f2913cc3c8463f136bad7dd06b690c5141)

Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:14 +01:00
Aníbal Limón
2d84c7a55d classes/populate_sdk_base: Fix SDK manifest generation
The write_{host,target}_sdk_manifest don't need to be set as
SDK_POSTPROCESS_COMMAND because are already append to
POPULATE_SDK_POST_{HOST,TARGET}_COMMAND and the if doesn't
make sense because are only added for populate sdk task.

[YOCTO #11741]

(From OE-Core rev: b10ecbab3acd46e48d36910e30544e9f5f08d6d7)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:14 +01:00
Ross Burton
43ff2881f1 insane: remove obsolete gcc 4.5 check
As gcc 4.5 is very old now (released in 2010, gcc 4.6 released in 2011)
this check can be removed now.

(From OE-Core rev: 78ea1af6bc5d314781be4a3c2d28347312238115)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:13 +01:00
Ross Burton
0efe636e39 sanity.bbclass: remove ASSUME_PROVIDED checks that can't succeed
qemu-arm and libsdl-native are not in HOSTTOOLS, so there's no point in
checking that they're on PATH.

Also qemu uses pkg-config to find SDL, so libsdl-native isn't required.

(From OE-Core rev: a8d8b0d9e1c2346d5a314ed0a7bf5be66044a51d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:13 +01:00
Amarnath Valluri
a4ada62a21 meta/lib/oe/sdk.py: support added for executing pre-target commands
Added a new POPULATE_SDK_PRE_TARGET_COMMAND variable, which can contain
functions need to be executed at pre traget sysroot creation phase.

classes/populate_sdk_base.bbclass: Added POPULATE_SDK_PRE_TARGET_COMMAND to sdk
command variables list.

(From OE-Core rev: b0c65c8a64cd0b77629c9f3c65fc827d4cdcf026)

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-06 14:38:13 +01:00
André Draszik
1ce923bfe1 copyleft_filter.bbclass: restore possiblity to filter on type
Since the changes introduced in ae9102bda3
("copyleft_filter.bbclass: Allow to filter on name"), it is
impossible to filter on the recipe type, all recipes are
treated as though they should be included if the license
matches, irrespective of the COPYLEFT_RECIPE_TYPES
variable.

Fix this.

(From OE-Core rev: e612dfa520c7d7ecf58006e82189be601204f38d)

Signed-off-by: André Draszik <adraszik@tycoint.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 20:55:08 +01:00
André Draszik
aec7969f49 base.bbclass: extend PACKAGECONFIG to also allow RRECOMMENDS
It can be useful to add RRECOMMENDS to packages created, based
on certain PACKAGECONFIGs.

In particular where a package depends on certain linux kernel
infrastructure (kernel modules) which might or might not be
built as a module, being able to RRECOMMENDS instead of
RDEPENDS on the relevant packages avoids build failures in
case those modules are built statically into the kernel, i.e.
in case no package is being created for them.

Add another field to the PACKAGECONFIG syntax to achieve just
that.

(From OE-Core rev: ec96c985ce1c888c3ce3c4d964d7a106c3c88a5c)

Signed-off-by: André Draszik <adraszik@tycoint.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 20:55:08 +01:00
Ed Bartosh
6fa6099b49 image.bbclass: use prependVarFlag for postfuncs
It would be possible to achieve any order of calling functions if
prefuncs are added with appendVarFlag and postfuncs with prependVarFlag.
Then image_X.bbclass can add code with either pre/post-funcs or
do_image_x_append or _prepend.

The execution order would be:

image_X prefuncs
image prefuncs
do_image_X_prepend from image_X.bbclass
do_image_X from image.bbclass
do_image_X_append from image_X.bbclass
image postfuncs
image_X postfuncs

[YOCTO #11372]

Thanks to Ola Nillsson for the idea.

(From OE-Core rev: c5fa6034708b344e184bb6fa361d5ea41371008f)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 20:55:08 +01:00
Ed Bartosh
f93d58378f image_types.bbclass: get rid of IMAGE_DEPENDS
The IMAGE_DEPENDS_<type> variables can be set to add dependencies for
individual image types.  Those dependencies are added to the do_rootfs
task, while they really should be added to the specific image type tasks.

These variables are not documented anywhere.

Replaced usage of IMAGE_DEPENDS_<type> with explicitly added
dependencies to do_image_<type> tasks.

[YOCTO #11302]

(From OE-Core rev: c5f33d466122e53be910fa448af60ef3937eb828)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 20:55:08 +01:00
Choong YinThong
b1ea384edb image_types.bbclass: Prompt error message on missing setting in UBI and UBIFS
Prompt error message to guide user add argument
MKUBIFS_ARGS and UBINIZE_ARGS on
every UBI and UBIFS image creation.

[YOCTO #11589]

(From OE-Core rev: 4a63fa70462eb5a780380b92f916cc8e295246fc)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 20:55:08 +01:00
Mikko Rapeli
b090ff6a27 meta: Fix return value checks from subprocess.call()'s
Python function subprocess.call() returns the return value of the
executed process. If return values are not checked, errors may
go unnoticed and bad things can happen.

Change all callers of subprocess.call() which do not check for
the return value to use subprocess.check_call() which raises
CalledProcessError if the subprocess returns with non-zero value.

https://docs.python.org/2/library/subprocess.html#using-the-subprocess-module

All users of the function were found with:

$ git grep "subprocess\.call" | \
  egrep -v 'if.*subprocess\.call|=\ +subprocess\.call|return.*subprocess\.call'

Tested similar patch on top of yocto jethro. Only compile tested
core-image-minimal on poky master branch.

(From OE-Core rev: 578c8205fd14c48c6d30ef2889d86f1b4aee060a)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 20:55:08 +01:00
Tobias Hagelborn
73c590ea9e staging.bbclass: Make use of oe.package.strip_execs
Make use of the library function oe.package.strip_execs for stripping
sysroot executables. oe.packge.strip_execs is based on code previously
residing in sysroot_strip.

(From OE-Core rev: fc4e6a30c51f8b15b667c21aaa6de9ba45217c1e)

Signed-off-by: Tobias Hagelborn <tobiasha@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 20:55:08 +01:00
Ross Burton
1558ff69e0 insane: add extensible framework for recipe-wide QA tests
Following QAPATHTEST (QA hook for each file in each package) and QAPKGTEST (QA
hook for each package), add QARECIPETEST: a hook which is executed once per
recipe in do_package_qa.

This makes it trivial to add recipe-wide QA tests that integrate with the
existing tests.

(From OE-Core rev: 656780b79e55498250d14b2cbe3bed3849fa690d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 15:52:17 +01:00
Ross Burton
e83d446939 insane: rename pkg to pn because that is what it is
(From OE-Core rev: 0a390fc8076d9a4295c693e60335d2f26216671f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 15:52:17 +01:00
Alexander Kanavin
0c6396b74a gnomebase.bbclass: add datadir/icons and datadir/appdata to standard FILES list
Gnome apps seem to increasingly package those, so let's make it common.

(From OE-Core rev: fc318fb191b68232cc400db2d5eb543d296ee884)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 15:52:17 +01:00
Denys Dmytriyenko
3c2cd780f8 toolchain-scripts: add check for LD_LIBRARY_PATH in the SDK env setup script
Provide a descriptive error message and exit the environment-setup script,
when LD_LIBRARY_PATH is set on the host system.

(From OE-Core rev: 2ad6c563828e70728eb48095b2326b52342df37c)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-28 15:52:17 +01:00
Nathan Rossi
bd1beb3545 kernel-uimage.bbclass: Fix up generation of uImage from vmlinux
Fix up the generation of uImage from vmlinux when KEEPUIMAGE != 'yes'.
This fixes up the working directory that do_uboot_mkimage is run from,
such that it is run from the ${B} directory to access built artefacts.

Simplify the logic in the task so that the parse step either adds the
task or not if the conditions are met. This reduces the need for the
task to run in cases when it is not used. The task is also changed to
depend on the kernel_link_images task as arch/<arch>/boot/* is not
available until after kernel_link_images in certain cases (e.g.
vmlinux/uImage only KERNEL_IMAGETYPES).

Fix up the use of ${S}/vmlinux when pulling the entry symbols
address so that it accesses the vmlinux in ${B}.

(From OE-Core rev: e0b4f018d1c2a65e66c81e5be1da8894e9a6c132)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-23 11:44:13 +01:00
Peter Kjellerstedt
e45de1fcfc insane.bbclass: Ignore perl as dependency for nativesdk packages
(From OE-Core rev: b3b768536322f3a79fe7f46f62d949fc976a12c7)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-23 11:44:13 +01:00
Petter Mabäcker
b3c3f9aaa9 multilib.bbclass: fix faulty redefinition of STAGING_KERNEL_DIR
Due to the problem fixed in
'56c677a multilib: Move redefinition of STAGING_DIR_KERNEL'
STAGING_KERNEL_DIR must be redefined for lib32 in multilib.bbclass.
However this redefinition expanded STAGING_KERNEL_DIR to an absolute
path. This unconsciously added the TMPDIR path in the sstate object,
causing packages depended on STAGING_KERNEL_DIR being rebuild if the
TMPDIR was changed.

Solve this by forcing the unexpanded TMPDIR variable to remain in the
beginning of STAGING_DIR_KERNEL (as default). Since TMPDIR is included in
BB_HASHBASE_WHITELIST, the sstate object will not be depended on the
expanded path anymore.

(From OE-Core rev: 30238852a53d221ebcaa5b2dc30ea9617c2715a1)

Signed-off-by: Petter Mabäcker <petter@technux.se>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-23 11:44:13 +01:00
Paul Eggleton
43ceb87454 classes/buildhistory: fix failures collecting output signatures
It's possible for tasks to stage symlinks that point to non-existent
files; an example is ncurses-native.do_populate_sysroot. There wasn't
any error checking here so this broke the build when "task" was included
in BUILDHISTORY_FEATURES. In any case we shouldn't be following symlinks
and getting the sha256sum of the link target - we need concern ourselves
only with the target path, so check if the file is a link and sha256 the
target path instead if it is. If it's neither a regular file nor a
symlink (perhaps a pipe or a device), just skip it.

(From OE-Core rev: f60520d97f53dafe783f61eb58fe249798a1e1be)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-23 11:44:12 +01:00
Richard Purdie
4c2d0b1205 meta: Remove further uclibc remnants (inc. patches and site files)
Some of these are clearly dead, e.g. one binutils patch reverts the effects
of the earlier one.

This also removes the uclibc site files. We now have mechanisms to allow these
to be extended from another layer should someone ever wish to do that.

(From OE-Core rev: e01e7c543a559c8926d72159b5cd55db0c661434)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-22 09:16:00 +01:00
Richard Purdie
f09b074de8 meta: Drop further remnants of uclibc support
uclibc support was removed a while ago and musl works much better. Start to
remove the various overrides and patches related to uclibc which are no longer
needed.

uclibc support in a layer would still be possible. I have strong reasons to
believe nobody is still using uclibc since patches are missing and I doubt
the metadata even parses anymore.

(From OE-Core rev: ec03023d2165b49a52b83bac1ea2f0bfded7b852)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-22 09:16:00 +01:00
Richard Purdie
c1b4bea9a1 package_deb: Drop obsolete comments/variables
These comments/variables appear to be long dead, remove them.

(From OE-Core rev: a50c8fa7c6c9d40279724a04fb616462b1b491ff)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-22 09:16:00 +01:00
Richard Purdie
1b489073dc package_ipk: Parallelise ipk creation
Allow the creation of ipks to happen in parallel, making best use of resources
on multiprocessor systems.

(From OE-Core rev: 07f6c0b464f0671bc39116317138e4ddf27bdae9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-22 09:16:00 +01:00
Richard Purdie
d28f9b0c86 package_deb: Enable multithreaded package creation
Allow the creation of debs to happen in parallel, making best use of resources
on multiprocessor systems.

(From OE-Core rev: dd540fba6c65fb74df014f5d9d2965078314a790)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-22 09:16:00 +01:00