Leaving -Wcross out of the bbnote version of the autoreconf command
seems to be a long standing inconsistency (dating back to the very
first commit in oe-core) but there's no obvious reason to do so.
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* grub-efi support on arm is enabled as below
commit:
commit 65f9fb788371a9a08e3b0e6febecb9cc2aaeefe7
Author: Kristian Amlie <kristian.amlie@northern.tech>
Date: Tue Jul 10 16:07:12 2018 +0200
grub-efi: Provide target architecture for 32-bit ARM.
* But it fails on arm as below:
| grub-mkimage: error: cannot open `./grub-core//serial.mod': No such file or directory.
Set GRUBPLATFORM_arm = "efi" to fix the above error
Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
systemd: Explicitly add hidden attribute to __start_BUS_ERROR_MAP and __stop_BUS_ERROR_MAP
These symbols appear in dynsyms of libsystemd.so and musl loader
doesnt like it
Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __start_BUS_ERROR_MAP: symbol not found
Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __stop_BUS_ERROR_MAP: symbol not found
[YOCTO #12577]
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Upgrade systemtap from 3.2 to 3.3: Removed all backported patches.
Removed "remove quotes around -I include" pending patch since 3.3
got similar fix already. Resolved merge conflict in and
regenerated monitor-option.patch patch.
Signed-off-by: Victor Kamensky <kamensky@cisco.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
${base_prefix} is set in bitbake.conf to empty. This makes lsb_release
always install under /bin which is a problem if usrmerge is in
DISTRO_FEATURES, because it needs to be installed under /usr/bin.
By using ${root_prefix} instead, we fix the usrmerge install path and
the following QA warning goes away while keeping the non-usrmerge path
identical.
WARNING: lsb-5.0-r0 do_package: QA Issue: lsb: Files/directories were
installed but not shipped in any package:
/bin
/bin/lsb_release
Please set FILES such that these items are packaged. Alternatively
if they are unneeded, avoid installing them or delete them within do_install.
lsb: 2 installed and not shipped files. [installed-vs-shipped]
Also if usrmerge is defined don't try to create the lib64 symlink
because base-files handles it to avoid the do_rootfs error
Collected errors:
* check_data_file_clashes: Package lsb wants to install file
tmp-glibc/work/x64-nilrt-linux/test-image/1.0-r0/rootfs/lib64
But that file is already provided by package * base-files
Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Fri, 20 Jul 2018 11:15:27 +0000 (11:15 +0000)]
linux-firmware: add separate packages for all brcm files
* 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>
Martin Jansa [Fri, 20 Jul 2018 11:15:25 +0000 (11:15 +0000)]
linux-firmware: add ${PN}-cypress-license handling from meta-raspberrypi
* 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>
wic/engine: improve error reporting when using rm with wic
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>
logrotate: Improve configurability of the installed systemd service files
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>
Ross Burton [Mon, 23 Jul 2018 12:36:57 +0000 (13:36 +0100)]
iputils: upgrade to s20190629
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>
base-files: profile: Avoid using "command" to determine if programs exist
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>
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>
python-setuptools.inc: clean up useless local var-DISTUTILS_INSTALL_ARGS
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>
- 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>
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>
Andre McCurdy [Tue, 17 Jul 2018 18:06:57 +0000 (11:06 -0700)]
curl: disable C source code generator
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>
distutils/setuptools-native, distutils3/setuptools3-native: do not try to 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>
Ross Burton [Wed, 18 Jul 2018 15:54:50 +0000 (16:54 +0100)]
cmake: put cmake.m4 and toolchain file in PN
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>
Cody P Schafer [Mon, 1 May 2017 19:29:39 +0000 (15:29 -0400)]
cmake: in SDK use OE env var to set default toolchain
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>
Richard Purdie [Wed, 25 Jul 2018 13:39:40 +0000 (13:39 +0000)]
selftest/bblayers: Place the test layer directory in builddir
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>
Richard Purdie [Mon, 23 Jul 2018 16:22:55 +0000 (16:22 +0000)]
license_image: Fix race
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'
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>
Paul Eggleton [Mon, 23 Jul 2018 12:40:14 +0000 (14:40 +0200)]
oe-selftest: fix for changes to buildhistory-diff
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>
Richard Purdie [Fri, 20 Jul 2018 15:44:05 +0000 (15:44 +0000)]
package: Clean up getstatusoutput usage
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>
Richard Purdie [Fri, 20 Jul 2018 10:25:17 +0000 (10:25 +0000)]
sstate/bitbake.conf: Use pigz if available
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>
Richard Purdie [Fri, 20 Jul 2018 08:45:28 +0000 (08:45 +0000)]
package: Refactor to remove isElf/is_elf function duplication
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>
Richard Purdie [Fri, 20 Jul 2018 08:32:49 +0000 (08:32 +0000)]
package: Allow parallel processing of shlib analysis
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>
Richard Purdie [Fri, 20 Jul 2018 08:31:59 +0000 (08:31 +0000)]
package: Allow parallel processing of debug splitting
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>
Richard Purdie [Thu, 19 Jul 2018 20:59:05 +0000 (20:59 +0000)]
package: Drop subshell usage for dwarfsrcfile generation.
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>
Richard Purdie [Thu, 19 Jul 2018 20:32:44 +0000 (20:32 +0000)]
package_ipk|deb: Use oe.utils.multiprocess_launch
The current code had broken exception handling due to the use of a
"traceback" variable as well as an import. Use the new library code
for this instead which reduces code duplication and has fixed/improved
exception handling.
The chdir code can be dropped since any directory changes are in other
processes now so there is no need for it here and the code no longer
changes directory.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 18 Jul 2018 12:54:05 +0000 (13:54 +0100)]
package: Rework PACKAGELOCK based upon sstate for do_packagedata
I think this lock dates from before we had sstate for do_packagedata.
Since WORKDIR is recipe specific and we write into WORKDIR, we no longer need
any write locks in the do_packagedata code itself, its handled by the sstate
task lock for the final copy in at the end. The final write lock can be simply
removed.
The only time we need read locking is when actually reading data from the
shared directory. We can therefore reduce the window the lock is held
significantly as well, hence improving the speed of packagedata tasks running
in parallel.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 19 Jul 2018 20:31:35 +0000 (20:31 +0000)]
utils: Add multiprocess_launch API and testcase
The current methods of spawning processes for parallel execution have
issues around collection of results or exceptions.
Take the code from package_ipk/deb, make it generic, add a results
collection mechanism, fix the exception handling and for it into a
standard library function.
Also add a test case which tests both the success and failure modes
of operation to stop this functionality regressiing again.
In particular, compared to multiprocess_exec, this fork off the parent
approach means we can pass in the datastore and functions work in the
same scope as the parent. This removes some of the complexities
found trying to scale multiprocess_exec to wider use.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
New version adds support for command line options
(-e and -- command) which can be used for launching
programs or running commands through matchbox-terminal.
Signed-off-by: Devarsh Thakkar <devarsht@xilinx.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ruslan Bilovol [Wed, 22 Nov 2017 11:20:05 +0000 (13:20 +0200)]
relocate_sdk.py: remove hardcoded SDK path
This patch removes hardcodes added to relocate_sdk.py
during SDK build, making it flexible and reusable.
Now default SDK path is passed to the script as
parameter rather then harcoded inside it.
This allows to reuse this script for multiple
relocations, and adds possibility to relocate
SDK multiple times
Signed-off-by: Ruslan Bilovol <rbilovol@cisco.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Tue, 17 Jul 2018 12:34:17 +0000 (14:34 +0200)]
oe-run-native: ensure arguments get quoted
If you pass quoted arguments to oe-run-native, they need to be passed
as-is to the underlying tool. Putting quotes around $@ ensures each
argument is quoted individually.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Tue, 17 Jul 2018 16:38:56 +0000 (17:38 +0100)]
bc: upgrade to 1.07.1
Relicensed to just GPLv3+, update LICENSE and checksums.
The build dependency for flex should be flex-native.
libmath.h is missing from the tarball (it was present in 1.06) and the
generation rules are not cross-friendly, so delete the rules and copy in a
pre-generated libmath.h.
Remove fix-segment-fault.patch as the fixes are now upstream.
Add PACKAGECONFIG for readline and libedit, defaulting to readline.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
package.bbclass: exclude packages as shlib providers
Some packages containing shared libraries might be registered
as shlib providers when they shouldn't (for example, the lib is for
their private use and must not generate any dependency).
EXCLUDE_FROM_SHLIBS is targeted at that, but it could be set
for entire recipe only.
This patch allows to set list of packages that are not candidates
for shlib providers.
Variable EXCLUDE_PACKAGES_FROM_SHLIBS is used, e.g.:
EXCLUDE_PACKAGES_FROM_SHLIBS = "glibc-ptest glibc-mtest"
* Dropped Patches and Reasons
0001-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch
This patch is dropped because the problem has been fixed by
binutils upstream. And this workaround could be dropped.
https://sourceware.org/bugzilla/show_bug.cgi?id=18548
0007-Revert-rules-remove-firmware-loading-rules.patch
0008-Revert-udev-remove-userspace-firmware-loading-suppor.patch
These two patches are dropped because they are for kernel < 3.7.
But the current minimal requirement of kernel to build systemd
is as below.
REQUIREMENTS:
Linux kernel >= 3.13
Linux kernel >= 4.2 for unified cgroup hierarchy support
So these two patches no long make any sense.
Also remove non-exist firmware-path option
0009-remove-duplicate-include-uchar.h.patch
0010-check-for-uchar.h-in-meson.build.patch
These two patches are dropped because musl has implemented
uchar.h. See commit below from musl repo.
""" ab9672ae73248f51e30f4553c4b8878525e46383
implement uchar.h (C11 UTF-16/32 conversion) interfaces
"""
0018-check-for-missing-canonicalize_file_name.patch
The above patch is dropped because current systemd does not need
canonicalize_file_name.
0025-Define-_PATH_WTMPX-and-_PATH_UTMPX-if-not-defined.patch
The above patch is dropped because utmp makes no sense in musl.
Check code below from musl.
include/utmp.h:#define _PATH_UTMP "/dev/null/utmp"
And utmp PACKAGECONFIG has been explicitly disabled for musl.
So we don't need this patch.
0032-memfd.patch
0033-basic-macros-rename-noreturn-into-_noreturn_-8456.patch
libmount.patch
0034-Fix-format-truncation-compile-failure-by-typecasting.patch
The above patches are dropped because they are backported patches.
And current systemd has contained these patches.
0036-time-util-fix-build-with-gcc8-Werror-format-truncati.patch
The above patch is dropped because it has been merged and is now
in new version.
* Newly Added Patch
0005-include-gshadow-only-if-ENABLE_GSHADOW-is-1.patch
This patch is added to fix build for musl.
0019-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
This patch is added to fix the following error which caused system
unable to boot up.
systemd-udevd.service: Failed to adjust OOM setting: Invalid argument
dbus.service: Failed to adjust OOM setting: Invalid argument
0020-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
This patch is added to fix segment fault error on musl systems.
0001-login-use-parse_uid-when-unmounting-user-runtime-dir.patch
This patch is backported to solve a race condition between
user-runtime-dir@xxx.service stop and user deletion.
2. PACKAGECONFIG and Dependency Changes
* Add a new PACKAGECONFIG item 'gshadow'. Enable it by default for glibc
but disable it by default for musl. This is because musl does not provide
gshadow.h.
* Add a new PACKAGECONFIG item 'portabled'. Default to disable it because
it's still experimental, according to the announcement letter.
"""
Currently, the support is still experimental, but this is expected to
change soon. Reflecting this experimental state, the "portablectl" binary
is not installed into /usr/bin yet.
"""
* Change 'kmod' from a hard dependency to a PACKAGECONFIG item. Default
to enable it.
* Change 'acl' from a hard dependency to a PACKAGECONFIG item. Default
to enable it.
* Remove 'readline' from DEPENDS. systemd does not need it.
* Remove 'libcgroup' from DEPENDS. The dependency on libcgroup has been
removed from systemd a long time ago. We now remove this unnecessary
dependency from DEPENDS.
3. update-alternatives changes
The utilities like shutdown, poweroff, etc. are now created as symlinks
at do_install. So there's no need to use update-alternatives mechanism
anymore to create the symlinks now. In addtion, I don't think we now
support multiple init systems at one running system, so there's really
no need to use update-alternatives mechanism here.
Also update the FILES_${PN} to include these files to avoid QA issue.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Andre McCurdy [Fri, 13 Jul 2018 21:12:25 +0000 (14:12 -0700)]
curl: add PACKAGECONFIG options for brotli, built-in manpages, etc
- Add PACKAGECONFIG option for brotli (disable by default)
- Add PACKAGECONFIG option for built-in manpages (disabled by
default). Embedding a copy of the manpages within the curl binary
adds approx 60k of gzipped data and duplicates the contents of the
curl-doc package.
- Add PACKAGECONFIG option for verbose error messages (enabled by
default)
- Disable legacy NTLM http authentication via delegation to the
external winbind ntlm_auth helper (which isn't going to work
without a runtime dependency on samba).
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Ross Burton [Mon, 16 Jul 2018 15:27:47 +0000 (16:27 +0100)]
atk: add explicit gettext-native dependency
In native builds we attempt to turn off i18n but this doesn't work in Meson
yet[1] but as the gettext class reduces dependencies in native builds we need to
add gettext-native to DEPENDS explicitly.
When wayland and egl both are on then it enables the wayland
plugin which actually fails to build because its not finding wayland-protocol
xml templates in proper location which is recipe sysroot since
we are cross compiling
Fixes build errors e.g.
make[4]: *** No rule to make target `//usr/share/wayland-protocols/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml', needed by `drivers/dri2/linux-dmabuf-unstable-v1-client-protocol.h'. Stop.
make[4]: *** Waiting for unfinished jobs....
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Rui Wang [Mon, 16 Jul 2018 02:55:08 +0000 (10:55 +0800)]
bash: fix wrong exit status offset
In Linux,8 bits of the return code and 8 bits of the number of
the killing signal are mixed into a single value on the exit code,
so the exit status offset should be 8. But the autoconf checker
can not determine it while cross compiling, and then it is set to
the default value 0, which will cause generating the wrong exit
code if program exit with an error code.
Signed-off-by: Rui Wang <rui.wang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>