Commit Graph

265 Commits

Author SHA1 Message Date
Khem Raj
95bf58c16e kexecboot: Use -fcommon to compile
gcc10 defaults to -fno-common and kexecboot does not compile with
-fno-common, so use -fcommon explicitly

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-13 22:32:07 -07:00
Khem Raj
000c6a181e klibc: Compile with -fcommon
gcc 10 defaults to -fno-common, but klibc does not build with
-fno-common, it will need some work to get there, until then use
-fcommon explicitly

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-13 22:32:07 -07:00
Andrea Adami
8c6ffb685b packagegroup-meta-initramfs: remove klibc utilities and kexec-tools-klibc
klibc utils have no update-alternatives because these live ideally alone
in the initramfs. mwta-initramfs image is not minimal having busybox, linux-
utils,coreutils so to resolve the conflict we remove the shared klibc utils.

The image is mostly for build-tests and contains dracut, which does not have
runtime dependencies on kexec-tools, so we can safely remove the klibc
static version of kexec and vmcore-dmesg (not availaible on some archs).
Doing this we can safely remove EXCLUDE_FROM_WORLD

Fix:
ERROR: meta-initramfs-image-1.0-r0 do_rootfs:
Postinstall scriptlets of ['busybox', 'util-linux-umount',
'util-linux-dmesg','coreutils', 'util-linux-mount', 'cpio',
'util-linux-kill', 'util-linux-losetup'] have failed.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-27 17:58:54 -07:00
Andrea Adami
b5f510e480 Remove LICENSE = "MIT" from images
As in commit 9d55993
This is the default in the packagegroup and image classes.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-21 13:03:35 -07:00
Andrea Adami
bf41d89325 meta-initramfs: put images and initrdscripts in recipes-core
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-21 13:03:35 -07:00
Andrea Adami
345f610b12 kexecboot(-klibc): update recipe to master on github (5a5e04b)
fix injection of compiler flags (static and debug)

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-20 10:59:47 -07:00
Khem Raj
46ae08202a layers: update LAYERSERIES_COMPAT to dunfell
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-03-20 07:44:29 -07:00
Khem Raj
bd2ad24d7b recipes: Make powerpc64le overrides
The existing conditions for ppc64/be are applicable for le as well

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-01-19 02:20:59 -08:00
Khem Raj
69bc6ff2fb klibc: Apply -no-integrated-as on mips/clang
Fixes build error

| /mnt/b/yoe/build/tmp/work/mips32r2-yoe-linux-musl/klibc/2.0.7-r0/klibc-2.0.7/usr/klibc/syscalls.pl: usr/klib
c/syscalls/typesize.bin: magic number not found

...

| usr/klibc/sigsuspend.c:8:10: fatal error: 'klibc/havesyscall.h' file not found
| #include <klibc/havesyscall.h>
|          ^~~~~~~~~~~~~~~~~~~~~
| 1 error generated.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2019-12-14 21:10:18 -08:00
Adrian Bunk
5a4d3da0c5 klibc: Upgrade 2.0.6 -> 2.0.7
Patches applied upstream removed.

Use the release tarball.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-10-28 15:26:42 -07:00
Palmer Dabbelt
fd1a0c9210 Add zeus compatibility to all layer.conf files
I have no idea if this is the right thing to do, but without the patch I
can't actually buil OE because none of these layers are compatible
with the change in openembedded-core to move to zeus.

Fixes: a5c9709b8d ("layer.conf: Update for zeus series") # openembedded-core

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-10-08 15:58:14 -07:00
Khem Raj
ab3072ee4c klibc: Fix build with 5.2+ kernel headers
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-09-03 16:02:03 -07:00
Adrian Bunk
9d559933d7 Remove LICENSE = "MIT" from packagegroups and images
This is the default in the packagegroup and image classes.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-08-30 09:27:57 -07:00
Changqing Li
00582ff496 grubby: support usrmerge
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-08-30 06:45:52 -07:00
Khem Raj
38f6350def grubby: Add bash to rdeps
Fixes
ERROR: QA Issue: /sbin/new-kernel-pkg contained in package grubby requires /bin/bash, but no providers found in RDEPENDS_grubby? [file-rdeps]

I wonder if new-kernel-pkg should be packaged at all, but dracut might
need to be cleaned first to not need it

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-08-17 12:41:58 -07:00
Khem Raj
806fbbf817 klibc: Disable bcmp builtin for clang on glibc as well
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-08-17 12:20:48 -07:00
Khem Raj
11bc2775af klibc: Pass -fno-builtin-bcmp with musl/clang combo
clang would emit bcmp built-in for musl bases system
but here we do not link in musl C library, so its best
to disable it

Fixes
git/usr/klibc/memmem.c:38: undefined reference to `bcmp'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2019-08-08 10:01:45 -07:00
Khem Raj
3c5db8fc61 klcc-cross: Recognise --unwindlib clang option
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2019-08-03 12:31:16 -07:00
Khem Raj
4ee778798d kexec-tools-klibc: Refresh patch with no code change
Fixes
kexec-tools-klibc-2.0.18+gitAUTOINC+5750980cdb: Patch log indicates that patches do not apply cleanly. [patch-fuzz]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-07-21 09:40:20 -07:00
Hongxu Jia
4d45ebe7ad dracut: fix generated initramfs boot failure under bash 5
If shebang is set to /bin/sh and /bin/sh is a symlink to /bin/bash,
bash turn on posix mode.

Since bash is upgraded to 5.0, it follows 'IEEE 1003.2 POSIX Shell
Standard', to implement 'functions do not have local traps or options,
and it is not possible to define local variables'

For more detail, see variables.c:push_posix_temp_var in the following commit
http://git.savannah.gnu.org/cgit/bash.git/commit/?id=d233b485e83c3a784b803fb894280773f16f2deb

The IEEE 1003.2 POSIX Shell Standard:
https://www.cs.ait.ac.th/~on/O/oreilly/unix/ksh/appa_02.htm

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-06-21 06:22:19 -07:00
Hongxu Jia
9fce979252 dracut: fix udevdir not found
In commit [9d1b81c dracut.sh: improve udevdir and systemdutildir
fallback logic], it checked a common binary `collect' to localte
udevdir.

While upgrading systemd to 241, it dropped binary `collect'.
[a168792c2d]

So check binary `ata_id' to instead.

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-04-06 08:22:22 -07:00
Khem Raj
0435c9e193 layer.conf: Add warrior to compatible release series
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-04-01 19:49:48 -07:00
Khem Raj
98461f1c2e klibc.bbclass: Add libc-klibc to overrides
We can use this to apply klibc specific patches

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-03-15 16:53:56 -07:00
Khem Raj
60f872278d kexec-tools,kexec: Fix build with latest klibc
klibc has changed its signature of reboot() API
adapt the use here

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-03-15 09:17:11 -07:00
Khem Raj
9d8943fd2e klibc: Upgrade to 2.0.6 release
Drop staging related patches which are not needed anymore

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2019-03-14 07:24:03 -07:00
André Draszik
88f2b979ca meta-initramfs: remove True option to getVar calls (again)
A couple have still been missed in the past despite multiple
attempts at doing so (or simply have re-appeared?).

Search & replace made using the following command:
    sed -e 's|\(d\.getVar \?\)( \?\([^,()]*\), \?True)|\1(\2)|g' \
        -i $(git grep -E 'getVar ?\( ?([^,()]*), ?True\)' \
             | cut -d':' -f1 \
             | sort -u)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-01-13 10:28:01 -08:00
Armin Kuster
264b8c1f48 meta-initramfs: add pkg group and image
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-01-13 07:51:58 -08:00
Andrea Adami
47d5d28972 kexecboot: update to latest master (7409a1e0aaea)
implemening --no-dtb option for older mips/mipsel

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-20 10:20:35 -08:00
Andrea Adami
6277939065 kexec-tools-klibc: implement the --no-dtb option for older mips kernels
Fix borrowed from LEDE-DEV.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-18 18:44:59 -08:00
Andrea Adami
9dde42319a kexec-tools-klibc: update to 2.0.18
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-12 17:26:44 -08:00
Andrea Adami
06dbfb8571 kexec-tools-klibc: fix build for mipsel and mips64el
Builds with little endianness were not tested before.

Fix for:
purgatory.c:2:10: fatal error: limits.h:
 No such file or directory

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-10 14:51:06 -08:00
Khem Raj
2a3c90d2ab klibc: Fix build with clang
Newer versions of clang optimize the calls to use unlocked variants of
these functions

Fixes
| capabilities.c:(.text+0xb4): undefined reference to `fread_unlocked'
| arm-yoe-linux-gnueabi-ld.bfd: capabilities.c:(.text+0x11a): undefined
reference to `fwrite_unlocked'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2018-12-09 16:53:16 -08:00
Andrea Adami
981aa87a23 klibc: fix build for mipsel and mips64el with security flags enabled
Fix relocations like:
| mipsel-oe-linux-musl-ld.bfd: usr/klibc/libc.a(kill.o):
 relocation R_MIPS_26 against `__syscall_common' can not be used when making a shared object; recompile with -fPIC

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-04 17:51:35 -08:00
Hong Liu
d6bd1edc2b dracut: 048->049
Upgrade dracut from 048 to 049.

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-10-16 21:23:47 -07:00
Andrea Adami
aa19346e44 klibc-static-utils: really fix build for x86 with security flags enabled
There were some shared binaries built together with the static ones and this
was leading to the infamous:

 i586-oe-linux-musl-ld.bfd: discarded output section: `.got.plt'

Fix this by purging the Kbuild files.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-10-10 08:49:36 -07:00
Khem Raj
d273070293 layers: Update layer compatibility to thud
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andreas Müller <schnitzeltony@googlemail.com>
Cc: Derek Straka <derek@asterius.io>
Cc: Tim Orling <TicoTimo@gmail.com>
Cc: Hongxu Jia <hongxu.jia@windriver.com>
Cc: Armin Kuster <akuster808@gmail.com>
Cc: Joe MacDonald <joe_macdonald@mentor.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2018-09-30 10:17:48 -07:00
Andrea Adami
db89a0df16 klibc.inc: lazy assign GCCPIE in case security_flags.inc was not included
fix build error (GCCPIE is unset):

EXTRA_KLIBCAFLAGS=${SECURITY_CFLAGS} -Wa,--noexecstack
EXTRA_KLIBCLDFLAGS=${@-z relro -z now -pie if  else } -z noexecstack
| make: invalid option -- 'z'
| make: invalid option -- ' '

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-25 22:24:15 -07:00
Andrea Adami
94f4f52101 klibc-utils: remove the two static binaries (kinit and gzip)
The shared utils can be built with security flags enabled.
This breaks however build of kinit and gzipm both static.

Remove them from this recipe.

Fix QA Issue:
 'klibc-utils-gzip/bin/gzip' has relocations in .text [textrel]
 'klibc-utils-kinit/bin/kinit' has relocations in .text [textrel]

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-17 22:21:42 -07:00
Andrea Adami
ed34bf11ab klibc-static-utils: fix textrel, disable security flags for the static utils
Fix
WARNING: klibc-static-utils-2.0.4-r0 do_package_qa:
 QA Issue: ELF binary 'X' has relocations in .text [textrel]

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-17 22:21:36 -07:00
Andrea Adami
a06c29be2f klibc: fix build with GCC and -pie for mips, mips64, aarch64
The MCONFIG makefiles for mips/mips64 do disable pic so we do not insist
linking it with -pie.

For aarch64 we have to readd the -Os optimization to avoid

 | usr/dash/shell.h:103:25: error:
 '-mgeneral-regs-only' is incompatible with floating-point argument

as committed (c296fb707a klibc: Pass Optimization with KLIBCOPTFLAGS)
but reverted (76bc58e932 klibc: Fix build with security flags) trying to
fix the i386 build (see ld.bfd: discarded output section: `.got.plt').
This latter issue was fixed for i386 passing -pie to the linker.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-15 07:37:11 -07:00
Andrea Adami
a95dde2868 klibc: fix build on i386 with GCC and security flags enabled
ld fails if distro's security-flags are enabled:
Inject the SECURITY_XFLAGS if security_flags.inc was included.

Fix on i386: ld: discarded output section: `.got.plt'

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-15 07:36:21 -07:00
Khem Raj
e5c84d8365 kexec-tools-klibc: Deliberately add -O2
This helps the compiler to be more aggressive and do the expected
optimizations to remove unused code which otherwise gets flagged on some
architectures e.g. armv7l

errors like
undefined reference to `bad_unaligned_access_length'

Also see
http://lists.infradead.org/pipermail/kexec/2009-August/003488.html

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2018-09-14 19:01:41 -07:00
Khem Raj
76bc58e932 klibc: Fix build with security flags
Drop -Os which is also causing the relro
Fixes
| x86_64-bec-linux-musl-ld.bfd: discarded output section: `.got.plt'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2018-09-11 22:48:21 -07:00
Khem Raj
77922f115a klcc-cross: Recognise clang options
Let klcc understand '-no-integrated-as' which is a clang option used by
meta-clang for compiler defaults

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
2018-09-09 22:50:06 -07:00
Andrea Adami
7aba8f58ff kexecboot-cfg: add new options for DTB and CMDLINE
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-08 00:06:24 -07:00
Andrea Adami
6bed5b3d74 kexecboot: upgrade to rev. 4c01d6960aa6
Remove upstreamed patches, get new options for kexec.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-08 00:06:24 -07:00
Andrea Adami
47544dbdea kexec-tools-klibc: remove unneeded aarch64 patch
Remove temporary development leftover (hack).

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-06 10:38:06 -07:00
Andrea Adami
005093bac5 kexec-tools-klibc: remove unneeded x86-64 patch
The issue with -mcmodel=large is already solved by the oe-core's patch

 "kexec-x32.patch"

so we can remove this one.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-05 13:59:16 -07:00
Andrea Adami
d1efc0181d kexec-tools-klibc: fix build for qemuarm64
Since c3f043241a86 upstream the getrandom() syscall is used.
Last recipe bump overlooked that.

The syscall has been added to OE's klibc so we can fix this.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-05 13:59:16 -07:00
Andrea Adami
e874880813 kexec-tools-klibc: rebase x86-64 patch to remove -mcmodel=large
Patch did not apply after upgrade to latest master.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-05 13:59:15 -07:00