Richard Purdie [Wed, 6 Jan 2016 22:57:46 +0000 (22:57 +0000)]
image: Create separate tasks for rootfs construction
This patch splits the code in lib/oe/image into separate tasks, one per
image type. This removes the need for the simple task graph code and defers
to the bitbake task management code to handle this instead.
This is a good step forward in splitting up the monolithic code and starting
to make it more accessible to people.
It should also make it easier for people to hook in other tasks and processes
into the rootfs code.
Incidentally, the reason this code was all combined originally was due to
limitations of fakeroot where if you exited the session, you lost permissions
data. With pseudo this constraint was removed.
We did start to rework the rootfs/image code previously and got so far with
untangling it however we did prioritise some performance tweaks over splitting
into separate tasks and in hindsight, this was a mistake and should have been done
the other way around. That work was suspended due to changes in the people working
on the project but this split has always been intended, now is the time to finish
it IMO.
There were some side effects of doing this:
* The symlink for the manifest moves to the rootfs-postcommands class and into
the manifest function.
* There is no seperate "symlink removal" and "symlink creation", they are merged
* The date/time stamps of the manifest and the built images can now be different since
the tasks can be run separately and the datetime stamp will then be different
between do_rootfs and the do_image_* tasks.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 6 Jan 2016 22:57:40 +0000 (22:57 +0000)]
image: Move pre/post process commands to bbclass
As the next step in splitting up do_image, move the pre and post processing
commands to separate tasks. This also creates the do_image_complete task
which acts as the end marker task for image generation.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 6 Jan 2016 22:57:34 +0000 (22:57 +0000)]
image.bbclass: Separate out image generation into a new task, do_image
I've heard complaints from people trying to create more interesting image
types about how hard it is to understand the rootfs/image generation code
and that its a pain to develop/test/debug.
Having looked at it myself, the internal construction of shell functions which
then gets passed into a multiprocessing pool is rather convoluted and it places
rather odd constraints on when variables are expanded. Its therefore no wonder
people find it confusing/complex.
This patch starts the process of splitting this up by separating out image
generation from the do_rootfs task into a new do_image task.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 8 Jan 2016 18:22:11 +0000 (18:22 +0000)]
sstatesig: Handle special case of gcc-source shared-workdir for printdiff
Often, bitbake -S printdiff would show that there was a checksum not found
which would turn out to be from gcc-source. This is due to it being a
shared-workdir recipe.
For now, hardcode the special case into the sstatesig code to stop people
(including me) puzzling over this.
If/as/when we add any other shared workdir recipes, we'll need to rethink
this.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 8 Jan 2016 16:25:04 +0000 (16:25 +0000)]
bitbake.conf: add virtual/libiconv-native to ASSUME_PROVIDED
It's possible for a native recipe to have virtual/libiconv-native as a build
dependency, but as we expect that the host provides that add it to
ASSUME_PROVIDED.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:55 +0000 (00:15 +1300)]
devtool: build: support using BBCLASSEXTENDed names
It's logical that you would want to build BBCLASSEXTENDed items
separately through devtool build, so simply allow that - we're just
passing the name verbatim to bitbake, so all it means is adjusting the
validation.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:54 +0000 (00:15 +1300)]
devtool: reset: support recipes with BBCLASSEXTEND
If the recipe file itself was created in the workspace, and it uses
BBCLASSEXTEND (e.g. through devtool add --also-native), then we need to
clean the other variants as well.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:53 +0000 (00:15 +1300)]
devtool: refactor code for getting local recipe file
We're doing this in a couple of places, let's just find the recipe file
if it exists within the workspace (which it will if it's been added
through "devtool add") when we read in the workspace.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:52 +0000 (00:15 +1300)]
devtool: add: support adding a native variant
Sometimes you need to build a variant of a recipe for the build
host as well as for the target (i.e. BBCLASSEXTEND = "native"); add a
--also-native command line option to "recipetool create" that enables
this and plumb it through from an identical option for "devtool add".
(We could conceivably do the same for nativesdk, but I felt it might be
confusing within the context of the extensible SDK, where nativesdk
isn't really relevant to the user.)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:51 +0000 (00:15 +1300)]
devtool: reset: do clean for multiple recipes at once with -a
We need to run the clean for all recipes that are being reset before we
start deleting things from the workspace; if we don't, recipes providing
dependencies may be missing when we come to clean a recipe later (since
we don't and couldn't practically reset them in dependency order). This
also improves performance since we have the startup startup time for the
clean just once rather than for every recipe.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:50 +0000 (00:15 +1300)]
recipetool: create: support creating standalone native/nativesdk recipes
If the recipe name ends with -native then we should inherit native;
likewise if it starts with nativesdk- then inherit nativesdk.
(Note that the recipe name must actually be specified by the user in
order to trigger this - we won't do it based on any name auto-detected
from e.g. the tarball name.)
Since we're doing this based on the name, "devtool add" will also gain
this functionality automatically.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:49 +0000 (00:15 +1300)]
recipetool: create: lower case name when determining from filename
As a matter of general convention we expect recipe names to be lower
case; in fact some of the packaging backends insist upon it. Since in
this part of the code we're auto-determining the name, we should convert
the name to lowercase if it's not already so that we're following
convention and avoiding any validation issues later on.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:47 +0000 (00:15 +1300)]
devtool: sdk-update: fix error checking
Running "raise" with no arguments here is invalid, we're not in
exception handling context. Rather than also adding code to catch the
exception I just moved the check out to the parent function from which
we can just exit.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:46 +0000 (00:15 +1300)]
devtool: sdk-update: fix metadata update step
* Clone the correct path - we need .git on the end
* Pull from the specified path instead of expecting a remote to be set
* up in the repo already (it isn't by default)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:45 +0000 (00:15 +1300)]
devtool: sdk-update: fix not using updateserver config file option
We read the updateserver setting from the config file but we never
actually used that value - the code then went on to use only the value
supplied on the command line.
Fix courtesy of Dmitry Rozhkov <dmitry.rozhkov@intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:43 +0000 (00:15 +1300)]
classes/populate_sdk_ext: fix cascading from preparation failure
During extensible SDK installtion, if the build system preparation step
fails we try to put something at the end of the environment setup script
to show an error when it is sourced, in case the user doesn't realise
that the partially-installed SDK is broken. However, an apostrophe in
the message (actually a single quote) appears to terminate the string
and therefore breaks the command. Drop it to avoid that.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 6 Jan 2016 11:15:42 +0000 (00:15 +1300)]
scripts/oe-publish-sdk: add missing call to git update-server-info
We need to call git update-server-info here on the created repository or
we can't share it over plain http as we need to be able to for the
update process to function as currently implemented.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Thu, 7 Jan 2016 14:42:44 +0000 (15:42 +0100)]
libbsd: upgrade to 0.8.1
* fixes building lldpd from meta-networking, more information in:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=807730
http://cgit.freedesktop.org/libbsd/commit/?id=48ac79b1883981f5135b5b9c76ca268e6cbe65b2
* update LIC_FILES_CHKSUM and LICENSE according to:
http://cgit.freedesktop.org/libbsd/commit/?id=6bcb1312f4691b92d0193e4a923a776dc6f233df
http://cgit.freedesktop.org/libbsd/commit/?id=290a1ce8f262a7f30a77c0a89eaa28876de876ed
be aware that it doesn't list all LICENSEs, only those where
common license text already exists (feel free to add additional
texts).
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Lukas Bulwahn [Tue, 5 Jan 2016 09:32:40 +0000 (10:32 +0100)]
boost: ensure boost to remain an empty metapackage
To ensure that boost remains an empty metapackage after version
updates, we explicitly require boost files to be empty. If new
libraries exist after a version update of the boost recipe,
bitbake will emit a warning at the do_package task. For example,
at the version update from 1.58.0 to 1.59.0, the new timer
library is indicated with:
WARNING: QA Issue: boost: Files/directories were installed but not shipped in any package:
/usr/lib/libboost_timer.so.1.59.0
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
boost: 1 installed and not shipped files. [installed-vs-shipped]
Ross Burton suggested this improvement on the openembedded-core
mailing list during review of the boost recipe version update [1].
Mariano Lopez [Wed, 30 Dec 2015 06:52:54 +0000 (06:52 +0000)]
image_types.bbclass: Rebuild when WICVARS change
The procces to do a wic image is to save a file with
variables required by wic and then call wic using this
file. Because this is external to bitbake if the vars
change, the image won't be rebuild; an example of such
is IMAGE_BOOT_FILES.
This patch adds these variables to vardeps of do_rootfs
when a wic image is build. This will rebuild the image
if a variable needed by wic changes.
[YOCTO #8693]
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Together with the move to meta-oe, all references to x11vnc should be
removed from oe-core. There are three of these: a distro alias, a
packagegroup rdepends and a runtime test.
Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
x11vnc can be configured with --use-system-libvncserver to use an
external libvncserver which will be added to meta-oe. Since oe-core
should not depend on meta-oe, we move x11vnc there.
Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
x11vnc can be configured with --use-system-libvncserver to use an
external libvncserver which will be added to meta-oe. Since oe-core
should not depend on meta-oe, we move x11vnc there.
Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
arch-arm: define different ARMPKGARCH when different CCARGS are used
we don't need to worry about e.g. cortexa7 device upgrading
binary package from armv7a feed which would be built with
-mcpu=cortexa15, so we can use -mcpu instead of -mtune, because
we won't share the binary feed with MACHINEs built with different
tune.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Tue, 6 Oct 2015 15:08:59 +0000 (17:08 +0200)]
arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
* be aware that this -march value is available only in gcc-4.9 and
newer:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
* -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
We either have to stop putting -march in default CCARGS or at
least set it compatible one like this patch does.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Tue, 6 Oct 2015 13:28:11 +0000 (15:28 +0200)]
cortexa{7,15,17}: add VFPv4 tunes
* it was added only to hf cortexa7 in:
commit e97d152ca13556b41a236c1a4cfb11e77ff857d7
Author: Kristof Robot <krirobo@gmail.com>
Date: Sun Jan 26 10:03:56 2014 +0100
Add Cortex A7 support for NEONv2 & FPv4
* add it to softfp cortexa7 and both versions for cortexa15 and
cortexa17 tunes
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Wed, 9 Dec 2015 16:14:26 +0000 (17:14 +0100)]
feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOAT
* add TUNE_CCARGS_MFLOAT variable which is used to set -mfloat-abi
parameter as well as ARMPKGSFX_EABI suffix in TUNE_PKGARCH and
TARGET_FPU
* TARGET_FPU was using ARMPKGSFX_FPU, but in most cases we use it
only to distinguish between hard and soft abi, not various -mfpu
variants which can appear in ARMPKGSFX_FPU
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Mon, 19 Oct 2015 17:59:21 +0000 (19:59 +0200)]
feature-arm-{neon,vfp}.inc: refactor and fix issues
* respect all 4 vfp options ('vfp', 'vfpv3d16', 'vfpv3', 'vfpv4') when
setting -mfloat-abi and ARMPKGSFX_EABI, without this change it wasn't
possible to use call-convention hard together with vfpv4
* move 'vfpv3d16', 'vfpv3', 'vfpv4' support from
feature-arm-vfp.inc
to
feature-arm-neon.inc
the main difference is that feature-arm-vfp.inc is included in
arch-armv5.inc while feature-arm-neon.inc only in armv7*.inc, so
these options should be added to TUNEVALID also only for armv7*
MACHINEs.
* support vfpv4 with or without neon
when both vfpv4 and neon are in TUNE_FEATURES we want to set only one
-mfpu parameter and to neon-vfpv4
* prevent multiple appends to ARMPKGSFX_FPU, we don't want to include
e.g. -vfp as well as -vfpv4 when both "vfp" and "vfpv4" are in
TUNE_FEATURES
* add -mfpu=vfp for tunes with "vfp" in TUNE_FEATURES - before that we
were only adding -vfp to ARMPKGSFX_FPU
* add TUNE_CCARGS_MFPU variable which is used to set -mfpu parameter as
well as ARMPKGSFX_FPU suffix in TUNE_PKGARCH, all enabled values are
appended to it based on TUNE_FEATURES and then the last one is used
in the actual param and suffix
* this prevents multiple -mfpu options in TUNE_CCARGS
* !!!
This means we need to change TUNE_PKGARCH and PACKAGE_EXTRA_ARCHS for
vfpv4, vfpv3d16, vfpv3 tunes, because the -vfp* isn't prependend
multiple times. If you're using one of these new DEFAULTTUNES (which
were at least partially broken anyway) and depend on working binary
package feed upgrade-path, then don't forget to migrate PR service
database to new TUNE_PKGARCH.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* the section bellow the comment adds only HF variants, VFP is already
mixed in the softfp sections above (unlike armv5, armv6 tune files
where it really was above VFP/DSP section)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Fri, 18 Dec 2015 13:14:24 +0000 (14:14 +0100)]
sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS
* sometimes it's hard to see what's wrong here
* error message:
Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (cortexa7t2hfhf-vfp-vfpv4-neon).
doesn't help much to understand what exactly went wrong and where
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Trevor Woerner [Sat, 28 Nov 2015 14:29:51 +0000 (09:29 -0500)]
mkefidisk.sh: add boot log on console
Hooking up a serial console is a "developer mode", the chances are pretty good
developers are interested in watching the kernel boot log on the console so
they can spot any problems or diagnose any failed boots (e.g. can't find root
fs).
Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Trevor Woerner [Sat, 28 Nov 2015 14:43:02 +0000 (09:43 -0500)]
mkefidisk.sh: add startup script for automated boot
Regardless of which image is built using which layers, try to ensure the image
on the SD device being prepared is the one that is booted automatically when
the board is powered.
Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Maxin B. John [Wed, 2 Dec 2015 08:39:35 +0000 (10:39 +0200)]
libjpeg: Replace libjpeg with libjpeg-turbo
Moving libjpeg-turbo from meta-oe as a replacement for libjpeg
package. libjpeg-turbo has same API/ABI as libjpeg. It is
relatively faster in JPEG compression/decompression than libjpeg.
libjpeg-turbo doesn't support x32 ABI. Work around missing x32 ABI support by
building with "--without-simd" option.
Move to recipes-graphics [RB]
[YOCTO #8628]
Signed-off-by: Maxin B. John <maxin.john@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Robert Yang [Wed, 30 Dec 2015 01:39:11 +0000 (17:39 -0800)]
python3: fix installed-vs-shipped when 64bit + multilib
Fixed:
python3-3.5.0: python3: Files/directories were installed but not shipped in any package:
/usr/lib
/usr/lib/python3.5
/usr/lib/python3.5/config-3.5m
/usr/lib/python3.5/config-3.5m/python.o
/usr/lib/python3.5/config-3.5m/Setup.local
/usr/lib/python3.5/config-3.5m/Setup
/usr/lib/python3.5/config-3.5m/python-config.py
/usr/lib/python3.5/config-3.5m/install-sh
/usr/lib/python3.5/config-3.5m/config.c.in
/usr/lib/python3.5/config-3.5m/makesetup
/usr/lib/python3.5/config-3.5m/Setup.config
/usr/lib/python3.5/config-3.5m/config.c
/usr/lib/python3.5/config-3.5m/Makefile
/usr/lib/python3.5/config-3.5m/libpython3.5m.a
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
python3: 14 installed and not shipped files. [installed-vs-shipped]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Mon, 4 Jan 2016 14:13:14 +0000 (15:13 +0100)]
sstate-sysroot-cruft.sh: Extend the whitelist
* add more php5 entries
* add builder user (from builder.bb)
* add .bashrc and .profile in HOME directory of created user
* add imgdata directory generated by image.py
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Maxin B. John [Tue, 29 Dec 2015 13:11:59 +0000 (15:11 +0200)]
iptables: upgrade to 1.6.0
1.4.21 -> 1.6.0
xtables_globals structure layout has changed.
* Refreshed below listed patches to work with this release:
1. 0001-configure-Add-option-to-enable-disable-libnfnetlink.patch
2. 0001-fix-build-with-musl.patch
* Added PACKAGECONFIG for libnftnl
Signed-off-by: Maxin B. John <maxin.john@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Daniel Istrate [Tue, 5 Jan 2016 14:53:34 +0000 (16:53 +0200)]
scripts/oe-selftest: Allow to run tests on random/all MACHINEs
Add an option for random MACHINE into oe-selftest:
--machine [random/all]
1. random: will set a random MACHINE for each test
2. all: will run tests for all machines
Custom machine sets only weak default values (??=) for MACHINE in machine.inc.
This let test cases that require a specific MACHINE to be able to
override it, using (?= or =).
e.g.:
oe-selftest --run-tests signing --machine random -->
will run all tests switching MACHINE randomly for each test
oe-selftest --run-tests signing --machine all -->
for each machine will run all tests
oe-selftest --run-all-tests --machine random
Also update oeqa/selftest/base.py to accomodate this feature.
Fix for [YOCTO #5880].
Signed-off-by: Daniel Istrate <daniel.alexandrux.istrate@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Daniel Istrate [Mon, 4 Jan 2016 13:43:56 +0000 (15:43 +0200)]
oe-selftest: Improved --list-classes when determining test names
--list-classes does a weak validation when determining test names:
(if method.startswith("test_") which could report any class attribute
that starts with 'test_' as a valid test case.
This fix checks that the class attribute that starts with 'test_'
is also callable (is a method).
Fix for [YOCTO #8862]
Signed-off-by: Daniel Istrate <daniel.alexandrux.istrate@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Humberto Ibarra [Wed, 23 Dec 2015 23:36:08 +0000 (17:36 -0600)]
scripts/oe-selftest: Remove extra coverage data added to unittests
Coverage data tracking initiates too early, causing coverage data from the
oe-selftest environment setting to be added to each run. Even when no tests are run
oe-selftest reports around 24% of coverage due to this extra data.
Change the custom resultclass used by the TextTestRunner to one generated from the
command arguments. The generated class processes coverage when needed, running
coverage setup just before the first testcase is run and reporting after the last
one finished.
[Yocto #8846]
Signed-off-by: Humberto Ibarra <humberto.ibarra.lopez@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Noor Ahsan [Wed, 23 Dec 2015 13:50:35 +0000 (15:50 +0200)]
wic: rawcopy: Copy source file to build folder
When a file is given using --sourceparams then wic directly use that file
instead of copying them to build folder. At time of assembling it os.rename
is called which renames all the files to name. In that process the original
file is renamed. When image recipe is rebuilt then wic complains about
missing file which was renamed in previous build.
[YOCTO #8854]
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Ross Burton [Mon, 4 Jan 2016 10:20:25 +0000 (10:20 +0000)]
systemd: add more compression and importd PACKAGECONFIGs
Add explicit PACKAGECONFIGs for all of compression formats that systemd can
detect at configure time, and an explicit enable/disable for importd. importd
defaults to disabled as it needs curl and all the compression formats to be
enabled.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Ross Burton [Mon, 4 Jan 2016 13:02:11 +0000 (13:02 +0000)]
gcc-sanitizers: link directly against sysroot libstc++
Instead of building a shadow libstdc++-v3 directory with symlinks to the sysroot
libstdc++-v3.la, fiddle the Makefiles so that it doesn't attempt to link to a
in-tree library at all.
This fixes builds where .la files are not being installed into the sysroot at
all.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Phil Blundell [Tue, 14 May 2013 10:59:37 +0000 (11:59 +0100)]
openjade: Fix build if not installing libtool .la files
The openjade build system is slightly funky and does strange things with library
dependencies. Fix it up so that it depends on the .so rather than the .la
(which may not exist) for libraries from the sysroot.
Signed-off-by: Phil Blundell <philb@brightsign.biz> Signed-off-by: Ross Burton <ross.burton@intel.com>
Andre McCurdy [Tue, 22 Dec 2015 23:57:58 +0000 (15:57 -0800)]
security_flags.inc: disable -fstack-protector-XXX for valgrind
Valgrind (v3.11.0) expects to build with stack protection disabled
and includes -fno-stack-protector in its default CFLAGS. However, the
CFLAGS provided by OE are included on the compiler command line after
the defaults so any -fstack-protector-all / -fstack-protector-strong
option provided by security_flags.inc will cause problems.
| .../build-bcm97425vms/tmp/work/mips32el-rdk-linux/valgrind/3.11.0-r0/valgrind-3.11.0/coregrind/m_mallocfree.c:892: undefined reference to `__stack_chk_guard'
| .../build-bcm97425vms/tmp/work/mips32el-rdk-linux/valgrind/3.11.0-r0/valgrind-3.11.0/coregrind/m_mallocfree.c:947: undefined reference to `__stack_chk_fail'
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Qt4 is no longer supportd upstream, but it is still needed for LSB compliancy.
Qt4 recipes have been moved to a separate meta-qt4 layer to be consistent with
meta-qt3 and meta-qt5.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Jens Rehsack [Tue, 5 Jan 2016 16:11:42 +0000 (17:11 +0100)]
udev-extraconf: introduce multiple blacklist files for more complex setups
In cases where a target image wants prevent the recovery partition is mounted
automatically, but the recovery partition identifier moves with the device
(internal flash, sd card, usb stick, ...), device/machine dependend extra
blacklists might be desired.
The grep utility prints the file name for each match when there is more
than one file to search. Add -h to suppress the prefixing of file names
on output.
Signed-off-by: Jens Rehsack <sno@netbsd.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 5 Jan 2016 17:52:06 +0000 (17:52 +0000)]
image/rootfs-postcommands: Separate out post rootfs commands to separate class
Reading image.bbclass is a little difficult as it has many post rootfs
helper functions and its hard to separate those from the core contents
of the rootfs/image code.
Moving it to a separate class would be one way of making it clearer
what these functions are. There are some comment layout improvements
but no code changes.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Alejandro Joya [Tue, 17 Nov 2015 22:13:16 +0000 (16:13 -0600)]
packagegroup-core-boot:replace busybox to variable
It replaces the use of busybox as hardcoded dependency to more dynamic
this wouldn't affect the way that the system is build only it let a more
flexible replacement in the core.
Signed-off-by: Alejandro Joya <alejandro.joya.cruz@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Alejandro Joya [Tue, 17 Nov 2015 22:13:15 +0000 (16:13 -0600)]
initramfs-framework_1.0:replace busybox for variable.
It replaces the use of busybox as hardcoded dependency to more dynamic
this wouldn't affect the way that the initrams is build, just it let a more
flexible replacement in the core.
Signed-off-by: Alejandro Joya <alejandro.joya.cruz@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Alejandro Joya [Tue, 17 Nov 2015 22:13:14 +0000 (16:13 -0600)]
core-image-minimal-initramfs: replace base-utils
It replaces the use of busybox as hardcoded dependency to more dynamic
this wouldn't affect the way that the system is build only it let a more
flexible replacement in the core.
Signed-off-by: Alejandro Joya <alejandro.joya.cruz@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Wed, 23 Dec 2015 13:45:23 +0000 (13:45 +0000)]
oeqa/selftest: support sets in devtool comparisons
The devtool and recipetool tests do literal string comparisons, but for some
fields the ordering could be irrelevant and potentially non-deterministic. For
example, the recipetool_create_simple test started failing with:
AssertionError: 'GPLv2 Unknown' != 'Unknown GPLv2' : values for LICENSE do not match
The ordering of the LICENSE field isn't relevant. So, if the expected value is
a set(), split the string into a set too and compare those.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Ross Burton [Tue, 22 Dec 2015 22:12:30 +0000 (22:12 +0000)]
xorg-lib: allow native building without x11 DISTRO_FEATURES
The Xorg libraries use REQUIRED_DISTRO_FEATURES to stop building on
distributions without the x11 feature but this stops people building native
tooling that uses libX11, such as libsdl-native.
Signed-off-by: Ross Burton <ross.burton@intel.com>
busybox: generalize recipe to work with arbitrary install directories
Allow configuring base_bindir, base_sbindir, bindir and sbindir
arbitrarily.
Also change the temporary symlinks created in the postinst script from
relative to absolute to make the code simpler and more flexible. There was
no reason to use relative links anyways, as directly afterwards
update-alternatives would replace them by absolute links anyways.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> Signed-off-by: Ross Burton <ross.burton@intel.com>
Andre McCurdy [Tue, 22 Dec 2015 19:56:56 +0000 (11:56 -0800)]
cairo: update 1.14.4 -> 1.14.6
Release 1.14.6 (2015-12-09 Bryce Harrington <bryce@osg.samsung.com>)
========================================================================
Simple bugfix release to fix one Windows issue.
For a complete log of changes since 1.14.4, please see:
Mark Hatle [Thu, 19 Nov 2015 03:46:02 +0000 (19:46 -0800)]
rpm: Generate per distribution and multilib macro files
The distribution and multilib macro files are required for rpmbuild, on the
target, to work properly. These override the default settings from the
upstream macro files with the proper values for the OE configuration.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Wed, 9 Dec 2015 17:48:28 +0000 (18:48 +0100)]
package_manager.py: add debugging support for rpm scriptlet execution
By default, smart is invoked with --log-level=warning, which hides all
output from pre/post install scriptlets. That makes it hard to debug
scriptlet failure or why they get postponed to first-boot via
/etc/rpm-postinst.
The new ROOTFS_RPM_DEBUG variabled is expected to be set to an integer in
local.conf an incrementally adds more output:
0 = default, only warnings
1 = --log-level=info (includes information about executing scriptlets and their output)
2 = --log-level=debug
3 = --log-level=debug plus dumps of scriplet content and command invocation
The default behavior is not changed yet, but it seems that level 1 would
be a better default.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Jonathan David [Mon, 30 Nov 2015 21:59:50 +0000 (15:59 -0600)]
xinput-calibrator: get screen geometry when calibrating
Calibration acquires a default resolution of 1280x1024 when running
xinput_calibrator_pointercal.sh, obtain correct screen resolution by
using xrandr to grab user-specified geometry and pass to script
Signed-off-by: Jonathan David <jonathan.david@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com>