Version 6.x of Berkeley DB has been rejected by open source community due to its hostile
AGPLv3 license; both Fedora and Debian are sticking with db 5.x - and by extension,
all the open source projects are still developed and tested with db 5.x
In oe-core the only thing that was requiring db 6.x was rpm 5.x, and so there's no reason
to continue carrying db 6.x in oe-core. If someone needs API features that are only available in
db 6.x, it can be re-added to meta-oe.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
This is replacing Smart package manager, which is unsupported upstream, and has a growing
amount of issues (lack of python 3.x support in particular). We identified dnf as
the only feasible replacement.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
The dnf stack is written and tested against rpm 4.x. So if we want to use dnf for packaging,
we should also use rpm 4 - there's simply too much work involved in making rpm 5 work with it due
to significant API differences, and supporting that going forward.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
package.bbclass: fix locations of debugedit and rpmdeps utilities
rpm4 installs them in different locations than rpm5. This also replaces
our custom rpmdeps-oecore with standard rpmdeps; I'm not seeing a
significant performance penalty.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Jack Mitchell [Sat, 11 Mar 2017 14:16:02 +0000 (14:16 +0000)]
u-boot: fix extlinux creation race
There was a race condition in the uboot-extlinux bbclass where
only a half written extlinux.conf would be put in the deploy
directory. Fix this by adding the deploy task after the do_install
rather than after the do_compile.
Signed-off-by: Jack Mitchell <jack@embed.me.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 13 Mar 2017 09:26:54 +0000 (09:26 +0000)]
terminal: Use original PATH for terminals
Now that we filter out PATH to only the utilities we rely upon, the devshel
terminal was broken since it can no longer find the terminals. Even if
we fix that, the user couldn't access any of their commands within
devshell which somewhat defeats its purpose.
Add the original PATH back to the environment to restore that behaviour
since this is more in line with user expectations and it wouldn't be possible
(or desireable) to whitelist all the commands a user might want to use from
the shell.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
patchelf no longer inflates file sizes. Since the files are no longer
inflated by patchelf, we can skip using cp with the --sparse option.
More details as to how patchelf has changed are available in that
commit log.
Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
base-files: do not write the current date into /etc/issue and /etc/issue.net
This is causing a problem in multilib where base-files and lib64/32-base-files
clash because they may have different dates. Also, if the package is coming
from sstate it has an incorrect date anyway.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It's a machine-specific script, which is causing conflicts
when multiple versions of bash are installed in multilib setting,
and it also does not really make sense for embedded systems anyway.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 10 Mar 2017 14:43:45 +0000 (14:43 +0000)]
glib-2.0: improve determinism for GIO ptests
Previously the GIO tests would be built or not depending on whether the host had
a dbus-daemon binary available. Fix this by seeding the AC_CHECK_PROGS check
with the right value, and adding a RDEPENDS for dbus-daemon on the target.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Joe Slater [Fri, 10 Mar 2017 02:01:29 +0000 (18:01 -0800)]
pkgconfig: specify --disable-indirect-deps to configure
This preserves the current behaviour because the auto
test by configure will never return yes. ./libtool is
needed by the test and it will never exist.
Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Kristian Amlie [Thu, 9 Mar 2017 14:37:09 +0000 (15:37 +0100)]
wic/direct.py: Avoid exception if using multiple rawcopy/no-table entries.
If we are both having a bootloader and a U-Boot environment file, we
can end up with two entries using "--source rawcopy" and "--no-table",
and since they reuse the same file [1], their cleanup handlers will
try to delete the same file twice. So make sure we only do it once.
[1] Although they reuse the same file, the resulting output is
correct, so it appears the file is accessed in properly sequential
order.
Signed-off-by: Kristian Amlie <kristian.amlie@mender.io> Signed-off-by: Ross Burton <ross.burton@intel.com>
The libsolv backend is vastly superior than the currently enabled
internal ad-hoc solver. While the switch does have a small impact on
disk and memory footprint, it make sense to change the default as for
most cases the disk/memory footprint hit should be acceptable.
This variant will have DEFAULT_PREFERENCE set to -1 so it needs to be selected
to be used, and any development-specific tweaks can be done with the
class-devupstream override, for example:
It currently only supports creating a development variant of the target recipe,
not native or nativesdk. The BBCLASSEXTEND syntax (devupstream:target) was
chosen so that support for native and nativesdk can be added at a later date.
Support for other version control systems such as subversion is limited, as
bitbake's automatic fetch dependencies on for example subversion-native are not
generated.
[ YOCTO #10215 ]
Signed-off-by: Ross Burton <ross.burton@intel.com>
Richard Purdie [Thu, 9 Mar 2017 00:14:38 +0000 (00:14 +0000)]
base/bitbake.conf: Filter contents of PATH to only allow whitelisted tools
We currently have a determinism problem in that the host tools present
in PATH can influence the build. In particular, the presence of pkg-config
on the build host can mask missing pkgconfig class dependencies.
This adds in a new HOSTTOOLS variable and then uses it to set up a directory
of symlinks to the whitelisted host tools. This directory is placed as PATH
instead of the usual /usr/bin:/bin and so on.
This should improve determinism of builds and avoid the issues which have
been particularly obvious since the introduction of recipe specific sysroots.
If users find there is a tool missing, they can extend HOSTTOOLS from a global
class or global conf file.
Right now the settings should be enough to build everything in OE-Core.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sat, 11 Mar 2017 10:37:38 +0000 (10:37 +0000)]
u-boot-mkimage: Fix use of 'cc' instead of BUILD_CC
OE needs to be able to change the default compiler. If we pass in HOSTCC
through the make command, it overwrites not only this setting but also the
setting in tools/Makefile wrapped in ifneq ($(CROSS_BUILD_TOOLS),) which
breaks the build.
We therefore add a way of changing the default in the top level Makefile
without interfering with the other setting.
I've emailed this workaround to Masahiro Yamada for discussion.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 10 Mar 2017 12:26:04 +0000 (12:26 +0000)]
quilt: Avoid hardcoding paths into output
Avoids:
quilt-0.65-r0 do_package_qa: QA Issue: /usr/lib/quilt/ptest/quilt/scripts/edmail contained in package
quilt-ptest requires /media/build1/poky/build/tmp/hosttools/perl, but no providers found in
RDEPENDS_quilt-ptest? [file-rdeps]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 9 Mar 2017 13:23:58 +0000 (13:23 +0000)]
quilt: Don't add hardcoded links to utilities
This triggers warnings about absolute symlink paths with the PATH changes.
In reality we simply don't need/care about these so just remove/disable
them.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 9 Mar 2017 22:13:36 +0000 (22:13 +0000)]
toolchain-shar-extract.sh: Ensure sbin directories are in PATH in clean environment
For the PATH host tool whitelisting to work, the sbin directories need to be
in PATH. In the cleaned SDK environment on some distros, this isn't the case
and the SDK would then fail to setup there. This adds code to add such paths
if they do happen to be missing, ugly, but unblocks the PATH whitelisting
which I believe to be important.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Wed, 8 Mar 2017 17:24:14 +0000 (17:24 +0000)]
chkconfig-alternatives-native: fix obey_variables
This postfunc assumes it's run from S, whereas that seems not to always
be the case in practice. Explicitly define the full path of the file
we wish to sed.
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Haiqing Bai [Wed, 8 Mar 2017 09:27:30 +0000 (17:27 +0800)]
busybox: ifupdown:pass interface device name for ipv6 route command
IPv6 routes need the device argument for link-local routes, or they
cannot be used at all. E.g. "gateway fe80::def" seems to be used in
some places, but kernel refuses to insert the route unless device
name is explicitly specified in the route addition.
Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
David Vincent [Mon, 23 Jan 2017 13:59:16 +0000 (14:59 +0100)]
openssl: Fix symlink creation
Symlinking the openssl configuration file at install time results in
errors when overriding it using an external package which also provides
openssl-conf. This should be done as a postinstall task for such
packages.
Signed-off-by: David Vincent <freesilicon@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Daniel Schultz [Tue, 7 Mar 2017 13:41:56 +0000 (14:41 +0100)]
wic: filemap: Fixed spared_copy skip
This patches removes the empty space in front of the copied file which
was skipped. Without this reduction it's not possible to place a
partition with rawcopy and skip parameter on a desired alignment.
Signed-off-by: Daniel Schultz <d.schultz@phytec.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
Andre McCurdy [Mon, 6 Mar 2017 23:29:48 +0000 (15:29 -0800)]
conf/machine/include: enable hardfloat by default for ARMv6 and above
Defaulting to softfp probably isn't the best choice anymore,
especially as there are now ARM BSP layers which leave DEFAULTTUNE
entirely up to the distro:
Andre McCurdy [Tue, 7 Mar 2017 01:42:25 +0000 (17:42 -0800)]
dropbear: drop support for DSA host keys in dropbear init script
Bring the dropbear init script into sync with the systemd service
file (dropbearkey.service supports RSA host keys only) and with
recent versions of openssh which deprecate DSA host keys.
Jussi Kukkonen [Wed, 8 Mar 2017 13:21:52 +0000 (15:21 +0200)]
vulkan: Add recipe for Vulkan common loader
Add a recipe for vulkan loader library and the vulkaninfo binary.
Vulkan can be built to support X11 or wayland or both. There is
currently no support for building tests, validation layers or even
the demos as that would require a bunch of otherwise unnecessary
dependencies.
Fix the build on musl by defaulting to getenv() if secure_getenv()
is not available.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Jussi Kukkonen [Tue, 28 Feb 2017 09:26:57 +0000 (11:26 +0200)]
mesa: Enable vulkan driver for intel
PACKAGECONFIG "vulkan" enables building libvulkan_intel.so.
The radeon driver can be added to recipe as well but it requires
llvm so recent that I couldn't test it.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Ed Bartosh [Mon, 6 Mar 2017 15:31:00 +0000 (17:31 +0200)]
sstate.bbclass: update .siginfo atime
.siginfo files are not being accessed from local or NFS-mounted
sstate mirrors when sstate package is installed, so their atime
is not updated. If sstate mirror is cleaned based on access time,
they get deleted, even though they are still being used.
Updated atime of .siginfo symlinks with 'touch -a'. This command
dereferences symlinks pointing to the local mirror and updates
atime of the .siginfo file on the mirror.
[YOCTO #10857]
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Joshua Lock [Wed, 8 Mar 2017 17:24:17 +0000 (17:24 +0000)]
lib/oeqa/selftest/bbtests: update test_non_gplv3 to use selftest-ed
GPLv2 recipes have been moved to a new layer (meta-gplv2), instead of
readline perform this test on the selftest-ed recipe in meta-selftest
which has gplv2 and gplv3 variants.
Tested with oe-selftest -r bbtests.BitbakeTests.test_non_gplv3
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Joshua Lock [Wed, 8 Mar 2017 17:24:16 +0000 (17:24 +0000)]
lib/oeqa/selftest/oescripts: make test_cleanup_workdir use selftest-ed
Use a recipe which is bundled in the meta-selftest layer for this test,
rather than relying on OE-Core remaining static (or updating the tests
when OE-Core changes recipes).
Tested with oe-selftest -r oescripts.TestScripts.test_cleanup_workdir
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Joshua Lock [Wed, 8 Mar 2017 17:24:15 +0000 (17:24 +0000)]
meta-selftest: add selftest-ed recipes
The oe-selftest oescripts.TestScripts.test_cleanup_workdir was using
gzip and the GPLv2 variant to test cleanup of the workdir. This broke
with the removal of GPLv2 recipes from OE-Core.
Instead of relying on recipes in OE-Core remaining static we should
ensure that meta-selftest provides recipes required for the tests to pass.
To that end we take a copy of the current GPLv2 and GPLv3 variants of ed
and include them in meta-selftest as new recipes.
We chose ed over gzip as gzip has dependencies which would require
additional GPLv2 recipes to be included in meta-selftest.
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Wed, 8 Mar 2017 10:03:15 +0000 (11:03 +0100)]
gcc-runtime: Fix QA issue
ERROR: gcc-runtime-6.3.0-r0 do_package: QA Issue: gcc-runtime: Files/directories were installed but not shipped in any package:
/usr/lib/libmpxwrappers.la
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
gcc-runtime: 1 installed and not shipped files. [installed-vs-shipped]
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter Marko [Mon, 27 Feb 2017 19:26:37 +0000 (20:26 +0100)]
zlib: Upgrade 1.2.8 -> 1.2.11
Licence updated by removing its first line which was containing
copyright notice including year, which could change quite often.
Additional empty line was deleted, too.
Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Pascal Bach <pascal.bach@siemens.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Maxin B. John [Tue, 28 Feb 2017 09:41:15 +0000 (11:41 +0200)]
useradd.bbclass: drop obsolete code
Cleanup useradd class by removing the code made obsolete by
the introduction of Recipe Specific Sysroot.
Signed-off-by: Maxin B. John <maxin.john@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Nikunj Kela [Tue, 14 Feb 2017 18:15:28 +0000 (18:15 +0000)]
relocate_sdk.py: skip debug files from relocation
Debug files only have debug symbols hence don't need
to be relocated. Relocation script throws errors when
run on the debug files. This change skips these files
that have zero size.
Signed-off-by: Nikunj Kela <nkela@cisco.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
Nathan Rossi [Mon, 2 Jan 2017 07:17:56 +0000 (17:17 +1000)]
qemu: Move recipe version specific patches and features to recipe
Move all the version specific patches, overrides and configuration that
are in qemu.inc to the versioned QEMU recipe.
This includes moving patches that target the versioned recipe, ptest
configuration (which is not available in QEMU by default) and the
installing of the powerpc_rom.bin. All these patches/files are also
only located in the FILESEXTRAPATHS that is valid from the recipe file
and not from qemu.inc itself.
The purpose of this change is to make the qemu.inc re-usable for
multiple versions of QEMU as well as forks and recipes that intend to
provide custom patches.
Nathan Rossi [Mon, 2 Jan 2017 07:10:16 +0000 (17:10 +1000)]
qemu: Convert KVMOPTS to PACKAGECONFIG
Move the KVMOPTS configuration checks and option setting to a
PACKAGECONFIG option.
This also changes the checking of KVM support on the host build machine
so that it is processed as a PACKAGECONFIG _remove for class-native
only. The darwin/mingw32 overrides are kept and applied as _remove
overrides.
Nathan Rossi [Mon, 2 Jan 2017 06:57:23 +0000 (16:57 +1000)]
qemu: Consolidate EXTRA_OECONF
Consolidate the configure options into the EXTRA_OECONF variable,
including merging any native(sdk) specific options.
This consolidation also makes the use of 'system' pixman in the
nativesdk case, this is desirable as the QEMU internal pixman may not be
available (using QEMU git as opposed to tarball) and pixman is already
in DEPENDS. Additionally the QEMU configure recommends to use the system
pixman if available.
Additionally move the options specified in the do_configure into the
EXTRA_OECONF variable. And flesh out all the target directories.
Nathan Rossi [Mon, 2 Jan 2017 06:45:40 +0000 (16:45 +1000)]
qemu: Improve and add PACKAGECONFIG options
Move the '--disable-bluez' and '--disable-iscsi' options to
PACKAGECONFIG. And added the ${BLUEZ} dependency.
Fix up the 'gcrypt' option to depend on 'libgcrypt' instead of gcrypt.
This is the expected dependency as noted in the QEMU configure help.
Handle the '--audio-drv-list' option inside the PACKAGECONFIG[alsa]
args. The previous setting uses a ',' to denote the options for the arg
however a space inside quotes is also acceptable and allows the arg to
be used into the PACKAGECONFIG flag.
Ed Bartosh [Mon, 6 Mar 2017 15:10:12 +0000 (17:10 +0200)]
qemurunner.py: ignore decode errors
qemu output can contain control characters. This cause qemurunner
API to crash when decoding the output to utf-8:
Traceback (most recent call last):
File "/usr/lib64/python3.4/threading.py", line 911, in _bootstrap_inner
self.run()
File "meta/lib/oeqa/utils/qemurunner.py", line 472, in run
threading.Thread.run(self)
File "/usr/lib64/python3.4/threading.py", line 859, in run
self._target(*self._args, **self._kwargs)
File "meta/lib/oeqa/utils/qemurunner.py", line 465, in threadtarget
self.eventloop()
File "meta/lib/oeqa/utils/qemurunner.py", line 526, in eventloop
self.logfunc(data)
File "meta/lib/oeqa/utils/qemurunner.py", line 77, in log
msg = msg.decode("utf-8")
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xda in position 0:
unexpected end of data
Added errors='ignore' to decode call to fix this.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Ed Bartosh [Mon, 6 Mar 2017 15:10:10 +0000 (17:10 +0200)]
targetcontrol: add image_fstype argument to commands.runqemu
qemu runner picks up first fsimage type from the hard-coded
list of supported types. This makes it impossible to test
particular image type unless it's not ext4(first type in
the hardcoded list of types).
Added image_fstypes argument to commands.runqemu and QemuTarget
__init__ to specify type of the image to run qemu with.
This will be used to pass wic image type to test efi wic images.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Andre McCurdy [Tue, 7 Mar 2017 04:58:47 +0000 (20:58 -0800)]
meta: start to ignore the largefile distro feature
The largefile distro feature has been enabled by default in oe-core
for a long time and, more recently, also in poky-tiny. Building
without the largefile distro feature receives little or no testing.
Many packages now enable LFS without exposing a configure option, so
there should be very little expectation that disabling the distro
feature will result in a distro which globally disables LFS.
Respecting the distro feature adds a maintenance over-head and may be
the source of configurations oddities (e.g. dbus-native currently
builds with LFS disabled for no clear reason - fixed by this commit).
Ignore the largefile distro feature more widely, as a first step
towards deprecating and eventually removing it.
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Hatle [Tue, 7 Mar 2017 18:54:33 +0000 (12:54 -0600)]
gpgme: Fix issue building for the target
gpgme failed when configuring since you can only configure for one python
system at a time (via the inherits). So we need to have a PACKAGECONFIG
that defines which one [or neither] you want to use.
The prior pkgconfig patch introduced the usage of the variable PKG_CONFIG,
which is not defined anywhere. Define this.
When building the python module, we can not call gpg-error-config, so we
need to find an alternative way of finding the information the setup.py.in
requires. (In this case, it's easy to just use the environment
STAGING_INCDIR.)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>