Jon Mason [Tue, 25 Jun 2019 16:06:58 +0000 (12:06 -0400)]
oe_syslog.py: Handle syslogd/klogd restart race
syslogd and klogd can occasionally take too long to restart, which
causes tests to fail by starting before the log daemons are ready. To
work around this problem, poll for up to 30 seconds on the processes to
verify the old ones are killed and the new ones are up and running.
Similarly, add checks for rsyslogd and systemd-journald to possibly
catch issues with those daemons.
[YOCTO #13379]
Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Tue, 25 Jun 2019 06:45:37 +0000 (14:45 +0800)]
target-sdk-provides-dummy: add libperl.so.5 64bit
With postgresql added to IMAGE_INSTALL, we will get the following
error when building for 64bit BSPs.
Problem: package postgresql-11.3-r0.corei7_64 requires libperl.so.5()(64bit), but none of the providers can be installed
A previous patch has added libperl.so.5 to DUMMY_PROVIDES, but this
is not enough. Because for 64bit BSP, it should also provide libperl.so.5()(64bit).
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
$ bitbake core-image-minimal
update-alternatives: libtool has multiple providers with the same priority,
please check
/path/to/rootfs/usr/lib/opkg/alternatives/libtool for details
Both libtool and lib32-libtool have the same priority (as they're the same
recipe), so update-alternatives won't deterministically pick a provider. This
means you could end up with an image using a 32-bit pkgconfig and 64-bit
libtool, for example.
Make extended recipes reduce priority by 1 (or 2, 3 ... when there are multiple
variants in MULTILIB_VARIANTS) to fix the problem.
[YOCTO #13418]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Wed, 26 Jun 2019 07:40:22 +0000 (15:40 +0800)]
busybox: make postinst run firstly before update-alternatives
The update-alternatives.bbclass' postinst script runs firstly before other
postinst, but busybox needs set basic tools such as sed command firstly,
otherwise, update-alternatives doesn't work, so run busybox' postinst firstly
to fix the problem.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Wed, 26 Jun 2019 07:40:21 +0000 (15:40 +0800)]
update-alternatives.bbclass: run update-alternatives firstly in postinst script
Recipes like postfix run command newaliases in postinst, but newaliases is
installed as newaliases.postfix, it needs run update-alternatives to update it
to newaliases, so there was an error when installed postinst on target.
Fixed:
$ opkg install postfix
Configuring postfix.
///var/lib/opkg/info/postfix.postinst: line 4: newaliases: command not found
Run update-alternatives firstly will fix the problem.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
KERNEL_VERSION gets expanded at runtime to contain the real kernel
version. There is code to ensure the signatures are determinisic but
the multilib expansion code breaks this.
Exclude the variable from the datastore used for expansion to avoid this.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 25 Jun 2019 14:21:45 +0000 (15:21 +0100)]
multilib_global: Fix multilib rebuild issue
Building lttng-modules for a "lib32" multilib, then changing to a "lib64"
multilib with "lib32" removed doesn't rebuild lttng-modules.
This is due to the multilib pieces in RPROVIDES being added after RecipeParsed
which is after the signatures are generated.
Changing this to RecipeTaskPreProcess allows the multilib components to be
accounted for correctly in the task hashes.
This addresses failures on the autobuilder seen in lib64-core-image-sato-sdk
builds where lttng-modules was being reused from qemux86 world build's lib32
version.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Way back in
http://lists.openembedded.org/pipermail/openembedded-core/2014-April/210138.html
a few of us discussed not exporting TARGET_LDFLAGS. There seemed to be
support for this idea, and I modified our tree to not do so. I then seem to
have dropped the ball. :( We've been running like that for over five years,
and not observed any problems.
It seems sensible to stop exporting TARGET_CPPFLAGS, TARGET_CFLAGS and
TARGET_CXXFLAGS too.
I've successfully compile-tested core-image-minimal and core-image-sato for
x86_64 and qemuarm64 with these changes.
Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
- Drop 0001-libopkg-add-add-ignore-recommends-option.patch
- Drop 0001-opkg-add-target-for-testsuite-installation.patch
- Drop 0001-regress-issue72.py-resolve-paths-before-comparision.patch
- Remove test binaries tests\libopkg_test, leftovers from make dist
process
Signed-off-by: Alejandro del Castillo <alejandro.delcastillo@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Mon, 24 Jun 2019 16:27:11 +0000 (17:27 +0100)]
gtk-icon-cache: rename intercept to update_gtk_icon_cache
The intercept is called update_icon_cache which is vague: rename to
update_gtk_icon_cache to make it clearer what it is for, and add a comment
explaining what class caused it to be used.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changqing Li [Mon, 24 Jun 2019 06:41:09 +0000 (14:41 +0800)]
quilt: run-ptest remove Interactive Input
adduser in busybox and adduser under meta-openembeded have different
behavior, adduser under meta-openembeded need Interactive Input like
below if you manually run ptest.
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
...
remove the "Interactive Input" by add --gecos "" to align the behavior
also it is better for automation without interactive input
Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
urllib3 was used in this recipe but it was not set as a
dependency. As it is not specifically needed, rewrite the recipe with
urllib from the standard library.
Signed-off-by: Pierre Le Magourou <pierre.lemagourou@softbankrobotics.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Mon, 24 Jun 2019 12:44:42 +0000 (08:44 -0400)]
linux-yocto/5.0: make scsi-debug include scsi core configs
Updating the scsi-debug fragment to include the core scsi config
options. This allows standalone use of the fragment, since all
supporting options will be enabled simply by including the top
level config in a BSP.
This also removes a configuration warning on qemuarm, since we
will no longer have missing / unavailable options during the
config audit.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Mon, 24 Jun 2019 12:44:41 +0000 (08:44 -0400)]
linux-yocto/5.0: bsp: add basic xilinx zynqmp support
Zumeng Chen has added core/basic support for the zynqmp that is bootable
using the 5.0 and 5.2-rcX kernels. This makes the fragments available
for future refinement and factoring. A bootlog follows:
Filename 'Image'.
Load address: 0x10000000
Loading:
###########
11.3 MiB/s
done
Bytes transferred = 16378368 (f9ea00 hex)
Using ethernet@ff0e0000 device
TFTP from server 128.224.162.211; our IP address is 128.224.162.99
Filename 'dtb'.
Load address: 0x11800000
Loading: ##
4.7 MiB/s
done
Bytes transferred = 19746 (4d22 hex)
Booting using the fdt blob at 0x11800000
Loading Device Tree to 0000000007ff8000, end 0000000007fffd21 ... OK
clk: Not disabling unused clocks
md: Waiting for all devices to be available before autodetect
md: If you don't use raid, use raid=noautodetect
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts:
(null)
VFS: Mounted root (ext4 filesystem) on device 179:3.
devtmpfs: mounted
Freeing unused kernel memory: 1216K
Run /sbin/init as init process
random: fast init done
systemd[1]: systemd 242-19-gdb2e367+ running in system mode. (+PAM
-AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP
-GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN
-)
systemd[1]: Detected architecture arm64.
Welcome to Wind River Linux development 19.23 Update 0!
systemd[1]: Set hostname to <xilinx-zynqmp>.
random: systemd: uninitialized urandom read (16 bytes read)
systemd[1]: Initializing machine ID from random generator.
systemd[1]: Failed to bump fs.file-max, ignoring: Invalid argument
systemd[1]: /lib/systemd/system/dbus.socket:4: ListenStream= references
a path below legacy directory /var/run/, updating
/var/run/dbus/system_bus_socket �→ /run/dbus/system_bus_socket; please
update the unit f.
systemd[1]: /lib/systemd/system/rpcbind.socket:4: ListenStream=
references a path below legacy directory /var/run/, updating
/var/run/rpcbind.sock �→ /run/rpcbind.sock; please update the unit file
accordingly.
random: systemd: uninitialized urandom read (16 bytes read)
systemd[1]: Listening on Journal Socket (/dev/log).
[ OK ] Listening on Journal Socket (/dev/log).
random: systemd: uninitialized urandom read (16 bytes read)
systemd[1]: Listening on Syslog Socket.
[ OK ] Listening on Syslog Socket.
systemd[1]: Listening on udev Kernel Socket.
[ OK ] Listening on udev Kernel Socket.
[ OK ] Listening on udev Control Socket.
[ OK ] Created slice User and Session Slice.
[ OK ] Listening on initctl Compatibility Named Pipe.
[ OK ] Reached target Swap.
[ OK ] Created slice system-serial\x2dgetty.slice.
[ OK ] Reached target Slices.
[ OK ] Listening on Journal Socket.
Starting udev Coldplug all Devices...
Mounting POSIX Message Queue File System...
Mounting Temporary Directory (/tmp)...
Starting Journal Service...
Starting Remount Root and Kernel File Systems...
Mounting Kernel Debug File System...
EXT4-fs (mmcblk0p3): re-mounted. Opts: (null)
Starting Create list of re�…odes for the current kernel...
[ OK ] Started Forward Password R�…uests to Wall Directory Watch.
[ OK ] Reached target Remote File Systems.
[ OK ] Listening on Network Service Netlink Socket.
Starting Apply Kernel Variables...
[ OK ] Started Dispatch Password �…ts to Console Directory Watch.
[ OK ] Reached target Paths.
[ OK ] Created slice system-getty.slice.
Mounting Huge Pages File System...
[ OK ] Started Journal Service.
[ OK ] Mounted POSIX Message Queue File System.
[ OK ] Mounted Temporary Directory (/tmp).
[ OK ] Started Remount Root and Kernel File Systems.
[ OK ] Mounted Kernel Debug File System.
[ OK ] Started Create list of req�… nodes for the current kernel.
[ OK ] Started Apply Kernel Variables.
[ OK ] Mounted Huge Pages File System.
Starting Create System Users...
Starting Rebuild Hardware Database...
Starting Flush Journal to Persistent Storage...
[ OK ] Started udev Coldplug all Devices.
systemd-journald[148]: Received request to flush runtime journal from
PID 1
[ OK ] Started Flush Journal to Persistent Storage.
[ OK ] Started Create System Users.
Starting Create Static Device Nodes in /dev...
[ OK ] Started Create Static Device Nodes in /dev.
[ OK ] Reached target Local File Systems (Pre).
Mounting /var/volatile...
[ OK ] Mounted /var/volatile.
[ OK ] Reached target Local File Systems.
Starting Create Volatile Files and Directories...
Starting Load/Save Random Seed...
[ OK ] Started Load/Save Random Seed.
[ OK ] Started Create Volatile Files and Directories.
Starting Network Time Synchronization...
Starting Rebuild Journal Catalog...
Starting Update UTMP about System Boot/Shutdown...
Starting Run pending postinsts...
[ OK ] Started Update UTMP about System Boot/Shutdown.
[ OK ] Started Network Time Synchronization.
[ OK ] Reached target System Time Set.
[ OK ] Reached target System Time Synchronized.
[ OK ] Started Rebuild Journal Catalog.
[ OK ] Started Run pending postinsts.
[ OK ] Started Rebuild Hardware Database.
Starting udev Kernel Device Manager...
Starting Update is Completed...
[ OK ] Started Update is Completed.
[ OK ] Started udev Kernel Device Manager.
[ OK ] Reached target System Initialization.
Starting Console System Startup Logging...
[ OK ] Listening on RPCbind Server Activation Socket.
[ OK ] Listening on D-Bus System Message Bus Socket.
[ OK ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[ OK ] Listening on dropbear.socket.
[ OK ] Reached target Sockets.
[ OK ] Reached target Basic System.
[ OK ] Started System Logging Service.
[ OK ] Started Dynamic Host Configuration Protocol (DHCP).
[ OK ] Started Kernel Logging Service.
Starting Login Service...
[ OK ] Started D-Bus System Message Bus.
[ OK ] Started Xserver startup without a display manager.
[ OK ] Started Daily Cleanup of Temporary Directories.
[ OK ] Reached target Timers.
Starting Telephony service...
Starting Network Service...
[ OK ] Started Console System Startup Logging.
[ OK ] Found device /dev/ttyPS0.
[ OK ] Listening on Load/Save RF �…itch Status /dev/rfkill Watch.
[ OK ] Started Network Service.
Starting Network Name Resolution...
[ OK ] Started Login Service.
[ OK ] Started Network Name Resolution.
[ OK ] Started Telephony service.
[ OK ] Reached target Network.
Starting Berkeley Internet Name Domain (DNS)...
Starting /etc/rc.local Compatibility...
Starting Permit User Sessions...
Starting Avahi mDNS/DNS-SD Stack...
[ OK ] Started /etc/rc.local Compatibility.
[ OK ] Started Permit User Sessions.
[ OK ] Started Getty on tty1.
[ OK ] Started Serial Getty on ttyPS0.
[ OK ] Started Avahi mDNS/DNS-SD Stack.
[ OK ] Started Berkeley Internet Name Domain (DNS).
[ OK ] Reached target Host and Network Name Lookups.
Wind River Linux development 19.23 Update 0 xilinx-zynqmp ttyPS0
xilinx-zynqmp login: root
root@xilinx-zynqmp:~# uname 0a
uname: extra operand '0a'
Try 'uname --help' for more information.
root@xilinx-zynqmp:~# uname -a
Linux xilinx-zynqmp 5.2.0-rc3-yoctodev-standard #1 SMP PREEMPT Thu Jun 6
00:53:26 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
Signed-off-by: Zumeng Chen <zchen@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Watt [Fri, 21 Jun 2019 13:33:56 +0000 (08:33 -0500)]
bash: Remove .build files for reproducible builds
Bash has an internal "build number" that it tracks and automatically
increments ever time a given builds is made from the same sandbox.
However, this can make builds non-reproducible in the event that a build
directory is reused multiple times.
Remove the .build files after every build if reproducible builds have
been requested which will reset the build build number for the next
build.
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Watt [Fri, 21 Jun 2019 13:35:54 +0000 (08:35 -0500)]
python3: Reformat sysconfig
Reformats the sysconfig file when packaging. This file is output by
using the python pprint function. This function will wrap long lines at
80 characters by default, and will even split strings at whitespace
boundaries to do so, e.g.:
'A': 'B is really'
' long'
This causes a problem for reproducibility however because there might be
lines of differing lengths depending on the build path. These
non-reproducible paths are removed, but their effect on string wrapping
from pprint remains.
To correct this, reformat the entire sysconfig file by re-printing using
pprint with an (effectively) unlimited line length.
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 21 Jun 2019 09:09:54 +0000 (10:09 +0100)]
pigz: bump alternative priority
As pigz is compatible with gzip, but better performing, if it is installed it
should be used by default. Currently gzip has priority of 100 but pigz has
priority of 80, so gzip is still used by default.
Change the pigz priority to 110 so that it wins of gzip.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gcc-runtime: fix C++ header mapping for n32/x32 tune
gcc-runtime.do_install is failing with:
ln: failed to create symbolic link 'work/aarch64-oemllib32-linux-gnueabi/lib32-gcc-runtime/9.1.0-r0/image/usr/include/c++/9.1.0/arm-oe-linux-gnueabi/bits': No such file or directory
WARNING: exit code 1 from a shell command.
ERROR: Function failed: do_install (log file is located at work/aarch64-oemllib32-linux-gnueabi/lib32-gcc-runtime/9.1.0-r0/temp/log.do_install.31049)
There is only empty directory without the -gnueabi suffix:
work/aarch64-oemllib32-linux-gnueabi/lib32-gcc-runtime/9.1.0-r0/image/usr/include/c++/9.1.0/arm-oe-linux/
Fixes:
ERROR: go-cross-dbfp4-1.12.1-r0 do_compile: Function failed: do_compile (log file is located at /workdir/build/tmp/work/x86_64-linux/go-cross-dbfp4/1.12.1-r0/temp/log.do_compile.8120)
ERROR: Logfile of failure stored in: /workdir/build/tmp/work/x86_64-linux/go-cross-dbfp4/1.12.1-r0/temp/log.do_compile.8120
Log data follows:
| DEBUG: Executing shell function do_compile
| Building Go cmd/dist using /workdir/build/tmp/work/x86_64-linux/go-cross-dbfp4/1.12.1-r0/recipe-sysroot-native/usr/lib/go.
| failed to initialize build cache at /home/pokyuser/.cache/go-build: mkdir /home/pokyuser/.cache: permission denied
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /workdir/build/tmp/work/x86_64-linux/go-cross-dbfp4/1.12.1-r0/temp/log.do_compile.8120)
ERROR: Task (/workdir/repo/poky/meta/recipes-devtools/go/go-cross_1.12.bb:do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 23 tasks of which 16 didn't need to be rerun and 1 failed.
Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changqing Li [Fri, 21 Jun 2019 02:08:14 +0000 (10:08 +0800)]
update-rc.d: support enable/disable options
* update-rc.d has added support of enable/disable options, which are
expected to keep the previous configuration even after upgrade the packages.
With support for these options, it will only create start/stop link
when there are none, or it will keep the previous configuration.
Our preinst uses "-f remove" to remove any links under the /etc/rcrunlevel.d
which is conflicting behavior with disable/enable options, so remove it.
For example, if a user disabled one service before upgrade,
then after upgrade the service could be started. This happens because during preinst,
all links have been deleted, then postinst may create the link to start service.
With this change, we remove preinst and therefore keep the previous links
so that after upgrade, if a link existed for the package, then the postinst
will not create new start/stop links.
* remove '-f' for postinst. Previously, the keepalived recipe used 'remove'
during postinst, so we needed the -f, but now the keepalived recipe has fixed
this problem, so it's safe to remove '-f'.
[Yocto #12955]
Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Fri, 21 Jun 2019 01:18:03 +0000 (09:18 +0800)]
oeqa: avoid class setup method to run when skipping the whole class
For now, even if we have specified to skip the whole module/class via
command line, e.g., `oe-selftest -R gotoolchain', the class setup method
is still run. This at least results in unnecessary builds, and at worst
results in ERROR, if the setup method fails.
So improve the skipping mechanism to avoid class setup method to run
when specified to skip.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Fri, 21 Jun 2019 01:18:02 +0000 (09:18 +0800)]
context.py: avoid skipping tests by meaningless command argument
Currently `oe-selftest -R a' will skip 'archiver' tests. This is
not expected. Fix it so that the '-R' should be followed by actual
module/class/test names.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joseph Reynolds [Thu, 20 Jun 2019 21:29:15 +0000 (16:29 -0500)]
dropbear: new feature: disable-weak-ciphers
Enhances dropbear with a new feature "disable-weak-ciphers", on by default.
This feature disables all CBC, SHA1, and diffie-hellman group1 ciphers in
the dropbear ssh server and client.
Disable this feature if you need to connect to the ssh server from older
clients. Additional customization can be done with local_options.h as usual.
Tested: On dropbear_2019.78.
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Joseph Reynolds <joseph.reynolds1@ibm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Watt [Thu, 20 Jun 2019 15:48:44 +0000 (10:48 -0500)]
perl: Improve ptest package reproducibility
Fixes a few reproducibility issues in the perl ptest package:
1) config.log has a lot of paths encoded in it. This file is
unnecessary for ptest, so it is omitted from the package
2) Makefile.config has a lot of paths encoded in it. This file should
be fixed up using the same rules as several other files that are in
the package
3) Paths in DEBUG_PREFIX_MAP are not being correctly removed from files
because DEBUG_PREFIX_MAP is now several command line arguments.
Instead of requiring an exact match for all arguments, remove any
matching argument.
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Thu, 20 Jun 2019 14:53:25 +0000 (15:53 +0100)]
python: make 'python' install everything instead of just the interpretter
Follow the python3 behaviour, and common sense, by making 'python' install
python-modules instead of python-core. This means a user installing python gets
all of Python, instead of just a fraction of the library.
[ YOCTO #13402 ]
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| CC arch/AArch64/AArch64InstPrinter.o
| {standard input}: Assembler messages:
| {standard input}:36033: Error: branch out of range
| {standard input}:36257: Error: branch out of range
Disable capstone for mips o32 in this situation as a workround.
Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 20 Jun 2019 14:05:28 +0000 (15:05 +0100)]
uninative: Update to 2.6 release
The 2.6 release contains both libcrypt.so.1 and libcrypt.so.2 which fixes
compatibility with recent fedora/suse releases.
The difference is one is built with obsolete APIs enabled and one disabled.
We now ship both in uninative for compatibility regardless of which distro
a binary is built on.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
$ bitbake world
ERROR: Task do_compile in make-mod-scripts_1.0.bb depends upon non-existent task do_compile_kernelmodules in linux-dummy.bb
ERROR: Command execution failed: Exited with 1
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mingli Yu [Thu, 20 Jun 2019 09:34:48 +0000 (02:34 -0700)]
bitbake: add iconv to HOSTTOOLS
Some package such as vim depends on iconv.
Without iconv, vim-common which is the
sub-pakcage of vim may include different files
as failed to use iconv to generate the *.po file.
Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 20 Jun 2019 10:15:44 +0000 (11:15 +0100)]
cmake: Clarify comment in cmake toolchain file
The comment is misleading and there was confusion in a bug report. In the native
case STAGING_DATADIR would be equal to the native value so there isn't any issue
but tweak the comment.
[YOCTO #12761]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
cve-check: Consider CVE that affects versions with less than operator
In the NVD json CVE feed, affected versions can be strictly matched to a
version, but they can also be matched with the operator '<='.
Add a new condition in the sqlite query to match affected versions that
are defined with the operator '<='. Then use LooseVersion to discard all
versions that are not relevant.
Signed-off-by: Pierre Le Magourou <pierre.lemagourou@softbankrobotics.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
cve-check-tool-native do_populate_cve_db task was using deprecated NVD
xml data feeds, cve-update-db uses NVD json data feeds.
Sqlite database schema was updated to take into account CVSSv3 CVE
scores and operator in affected product versions.
A new META table was added to store the last modification date of the
NVD json data feeds.
Signed-off-by: Pierre Le Magourou <pierre.lemagourou@softbankrobotics.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 19 Jun 2019 13:52:35 +0000 (14:52 +0100)]
uninative-tarball: Add libxcrypt-compat
This avoids sstate/uninative relocation issues where a binary was built against
a system with libcrypt.so.1 or libcrypt.so.2 and then run on the opposite by
ensuring both libraries are in uninative.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 19 Jun 2019 13:51:27 +0000 (14:51 +0100)]
libxcrypt-compat: Add recipe to build the obsolete APIs
Add a recipe which is able to build the obsolete APIs. This is mainly
to support uninative which needs to have both the new and obsolete APIs
available to support the different host combinations.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When building x86->x86 the system will try to execute .so and related items
from the default PYTHONPATH. This will fail if the target CPU contains
instructions that the host CPU does not have, add CROSSPYTHONPATH
into PYTHONPATH so we can prepend the list to find correct libs.
File "/workdir/build/tmp/work/dbfp4-poky-linux/qv4l2/1.17.0+gitAUTOINC+95f39aae48-r0/recipe-sysroot-native/usr/lib/python3.7/site-packages/mesonbuild/dependencies/base.py", line 574, in _call_pkgbin
cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env, use_native)
File "/workdir/build/tmp/work/dbfp4-poky-linux/qv4l2/1.17.0+gitAUTOINC+95f39aae48-r0/recipe-sysroot-native/usr/lib/python3.7/site-packages/mesonbuild/dependencies/base.py", line 556, in _call_pkgbin_real
cmd = self.pkgbin.get_command() + "-native" + args
TypeError: can only concatenate list (not "str") to list
Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Tue, 18 Jun 2019 15:12:29 +0000 (16:12 +0100)]
glib-2.0: fix host path appearing in gsocketclient-slow test script
Glib's build looks for the 'env' binary and embeds that path into the test
script, but thanks to hosttools this is /path/to/tmpdir/hosttools/env.
Fix this by hardcoding the path to env in the cross file.
Also as the cross file is only used in target builds only add it to SRC_URI for
target builds, so that changes to the cross file don't cause a rebuild of
glib-2.0-native.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Adrian Bunk [Tue, 18 Jun 2019 19:59:45 +0000 (22:59 +0300)]
wireless-regdb: Add recipe
Since wpa-supplicant is provided,
the database of permitted frequencies should also be provided.
wireless-regdb-static should be used with kernel >= 4.15.
wireless-regdb can be used with older kernels and is mostly
irrelevant here, but keeping it in meta-networking would
create needless recipe duplication.
This package was previously in meta-networking.
Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Tue, 18 Jun 2019 21:45:34 +0000 (21:45 +0000)]
serf: stop scons trying to create directories in hosts rootfs
* since 1522f09a4d serf: cleanup recipe
serf.do_install fails in builds with multilib enabled (with
libdir=/usr/lib64 on host where /usr/lib64 doesn't exist)
DEBUG: Executing shell function do_install
scons: Reading SConscript files ...
PermissionError: [Errno 13] Permission denied: '/usr/lib64':
File "TOPDIR/BUILD/work/qemux86-signage-linux/serf/1.3.9-r0/serf-1.3.9/SConstruct", line 158:
ENV = os.environ,
File "/TOPDIR/BUILD/work/qemux86-signage-linux/serf/1.3.9-r0/recipe-sysroot-native/usr/bin/../../usr/lib/python3.7/site-packages/SCons/Environment.py", line 965:
variables.Update(self)
File "/TOPDIR/BUILD/work/qemux86-signage-linux/serf/1.3.9-r0/recipe-sysroot-native/usr/bin/../../usr/lib/python3.7/site-packages/SCons/Variables/__init__.py", line 227:
option.validator(option.key, env.subst('${%s}'%option.key), env)
File "TOPDIR/BUILD/work/qemux86-signage-linux/serf/1.3.9-r0/serf-1.3.9/SConstruct", line 60:
return PathVariable.PathIsDirCreate(key, val, env)
File "/TOPDIR/BUILD/work/qemux86-signage-linux/serf/1.3.9-r0/recipe-sysroot-native/usr/bin/../../usr/lib/python3.7/site-packages/SCons/Variables/PathVariable.py", line 101:
os.makedirs(val)
File "TOPDIR/BUILD/work/qemux86-signage-linux/serf/1.3.9-r0/recipe-sysroot-native/usr/lib/python3.7/os.py", line 221:
mkdir(name, mode)
ERROR: scons install execution failed.
* I don't know how exactly --install-sandbox is supposed to work but
in this case it's trying to mkdir /usr/lib64 on the host rootfs
which is clearly wrong and if I set LIBDIR together with
--install-sandbox then the install paths are prefixed with $D twice
in some cases (not for includedir and empty libdir at the end).
So in the end I think it was an issue caused by the custom path
validator in serf's SConstruct, removing that stops touching host
and the installed paths (including the paths inside libserf*.pc)
look correct
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Wed, 19 Jun 2019 05:09:48 +0000 (13:09 +0800)]
target-sdk-provides-dummy: add libperl.so.5 to DUMMY_PROVIDES
Add libperl.so.5 to DUMMY_PROVIDES to avoid do_rootfs failure like
below.
Error:
Problem: package postgresql-11.3-r0.core2_32 requires libperl.so.5, but none of the providers can be installed
package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with perl provided by perl-5.30.0-r0.core2_32
package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with perl-module-strict provided by perl-5.30.0-r0.core2_32
This problem could be reproduced by add 'postgresql' to IMAGE_INSTALL
and then `bitbake core-image-minimal -c populate_sdk'.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Anuj Mittal [Wed, 19 Jun 2019 03:13:26 +0000 (11:13 +0800)]
runtime/cases/logrotate: make test more reliable
By default logrotate uses 'dateext' in logrotate.conf which results in a
date string being appended at the end of log name. In cases when a test
that installs configuration in logrotate.d is executed first (dnf for
example), it might result in errors when logrotate test is executed:
Changqing Li [Tue, 18 Jun 2019 07:46:56 +0000 (15:46 +0800)]
gcc-runtime: fix C++ header mapping for n32/x32 tune
The SDK was unable to find the C++ header pieces correctly since it's
using a generic compiler, not one specifically targeting the multilib
vendor prefix and default tune. This adds the right mapping to ensure
SDKs work as expected. And fix problem in below configurations:
For this configuration:
for target gcc-runtime, need to create symlink like mips64-poly-linux --> mips64-poky-linux-gnu32
for target lib64-gcc-runtime, need to create symlink like mips64-poly-linux/32 --> mips64-pokymllib64-linux
in order to avoid conflict during populate_sdk, create symlink for subfoler bits/ext for target gcc-runtime,
this is ugly, but seems no better way to cover all kinds of configuration.
single lib configuration:
MACHINE="qemumips64"
DEFAULTTUNE = "mips64-n32"
Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>