Commit Graph

74 Commits

Author SHA1 Message Date
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
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
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
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
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
641dff9768 klibc_2.0.4: add kexec_file_load() and getrandom() syscalls
Needed by kexec-tools afer 2.0.17

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
Andrea Adami
ddda5e7b68 klibc-2.0.4: refresh patches (using devtool)
Silence warnings about ingnored context.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2018-05-01 18:11:03 -07:00
Martin Jansa
99aa19ff53 recipes: use oe.utils.conditional instead of deprecated base_conditional
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-02-01 13:48:27 +00:00
Khem Raj
c296fb707a klibc: Pass Optimization with KLIBCOPTFLAGS
Overriding KLIBCOPTFLAGS also meant that -Ox flags
were taken off. Which results in errors like

| usr/dash/shell.h: In function 'max_int_length':
| usr/dash/shell.h:103:25: error: '-mgeneral-regs-only' is incompatible with floating-point code
|   return (bytes * 8 - 1) * 0.30102999566398119521 + 14;
|          ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
| usr/dash/shell.h:103:25: error: '-mgeneral-regs-only' is incompatible with floating-point argument

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-10-04 14:53:37 +00:00
Khem Raj
028eeb8ca6 klibc: Edit out gcc hardcoding in do_compile
This is needed when building klcc-cross and klcc-cross
does not have do_configure, therefore stick this just before
do_compile

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-09-18 10:16:23 +02:00
Khem Raj
a2bdc3b9fb klibc: Fix include_next stdarg.h with clang
Fixes build

git/usr/klibc/../include/stdarg.h:9:15: fatal error: 'stdarg.h' file not found
| #include_next <stdarg.h>
|               ^~~~~~~~~~

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-09-13 11:13:22 +02:00
Khem Raj
8f65c719c7 klibc: Fix build with clang
Remove gcc specific options use common one instead

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-08-13 13:20:57 +02:00
Khem Raj
cafe21e8a2 klibc: Fix build issue when default ISA is not thumb
We were passing empty string '' to make as option when
ISA was not thumb this breaks build for machines/distros
which do not use ARM_INSTRUCTION_SET = thumb

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-24 18:57:33 +02:00
Khem Raj
a52f2cb2e9 klibc: Fix linking by using bfd linker when default linker is gold
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-14 23:44:33 +02:00
Khem Raj
15266c135a klibc: Fix build with musl
klibc failed to build with armv7+ when using thumb2
it needed to resepct TUNE_CCARGS

Add patches to fix build with musl, to sort out
the linux header maze.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-14 23:44:33 +02:00
Andrea Adami
85b4e2e146 klibc: disable PARALLEL_MAKE
On modern buidsystems with many cores there are sporadic build failures.
The issue is known and a fix in the sources is awaited (new Kbuild).

http://www.zytor.com/pipermail/klibc/2013-May/003420.html

For the moment, disable PARALLEL_MAKE.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-04-24 10:59:27 +02:00
Andrea Adami
520034a86d klibc-utils_2.0.4: remove blacklisting
Recipe does build with the pending changes for meta-initramfs.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-02-16 12:06:36 +01:00
Andrea Adami
54f8d31797 klcc-cross: Use SYSROOT_DIRS to add dirs to stage in sysroot
As done for libtool-cross in oe-core.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-02-16 12:06:36 +01:00
Andrea Adami
2b9068b689 klcc-cross: restrict scope of SSTATE_SCAN_FILES
As done in libtool-cross from oe-core we prefer to be specific even when
there is just one file.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-02-16 12:06:35 +01:00
Andrea Adami
f6649fa311 klcc-cross: disable packaging using appropriate
Instead of deleting the packaging tasks we simply inherit
nopackages.bbclass.
Done that we do set PACKAGES to empty.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-02-16 12:06:35 +01:00
Andrea Adami
f4fd9a0289 klcc-cross: fixes for recipe specific sysroot
The klcc script encodes the paths with custom escaping.
As stated in the patch "Turn the horribly encoded paths into something which
sstate can transform using its ususal magic by removing all the crazy escaping".

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-02-16 12:06:35 +01:00
Martin Jansa
b7f480cc4c python-edbus exquisite elementary libeweather unionfs-fuse xfsprogs gmtk devilspie2 gnome-backgrounds gnome-desktop gnome-mime-data gtk-engines gtksourceview2 libgnomekbd libidl-native onboard libgpewidget ubi-utils-klibc kexec-tools-klibc gupnp-igd gupnp-tools dvb-apps gstreamer mpd crda netcat-openbsd wireshark gnokii libmbim mosh networkmanager-openvpn libtelepathy dbus-daemon-proxy libdbus-c++ php vala-dbus-binding-tool collectd libgxim pywbem gtkhtml2 fbida fontforge libsexy wayland-fits xstdcmap xf86-video-glamo font-adobe-100dpi font-adobe-utopia-100dpi font-bh-100dpi font-bh-lucidatypewriter-100dpi font-misc-misc crash a2jmidid libsdl2-mixer libsdl-mixer minidlna sylpheed libsdl2-ttf libsdl-ttf ode pidgin postgresql syslog-ng usb-modeswitch xdg-user-dirs gateone python3-cryptography-vectors python3-ndg-httpsclient python-cryptography-vectors python-pbr bundler netdata menulibre openzone xfce4-verve-plugin iperf terminus-font xf86-video-nouveau ipmiutil klibc-utils pmbw multipath-tools gparted, gnome-system-monitor, php, vala-dbus-binding-tool, gtkmathview, lmsensors, postgresql: Blacklist
* fails repeatedly as reported in:
  http://lists.openembedded.org/pipermail/openembedded-devel/2017-February/111112.html

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-02-13 18:44:34 +01:00
Joshua Lock
efd3696e70 remove True option to getVar calls
getVar() now defaults to expanding by default, thus remove the True
option from getVar() calls with a regex search and replace.

Search made with the following regex: getVar ?\(( ?[^,()]*), True\)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
2016-12-02 09:16:17 +01:00
Michael Walle
ba733d1ae9 klibc: fix install destination in 64bit env
klibc installs everything into /usr/lib by default. But the recipe assumes
it installs to ${libdir} which is /usr/lib64 in 64bit environment. Package
generation fails badly in this case. Set INSTALLDIR to fix this.

Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-07-29 11:00:56 +02:00
Andrea Adami
807b7c58ae klibc: fix sh deps ver (PR is needed after PV)
Revert commit dd1ca18 removing ${PR}. Bad idea.
The shared lib could not be found giving this error:

Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for
   klibc-utils-XXX:
 * 	libklibc (= 2.0.4) *
 * opkg_install: Cannot install package klibc-utils-XXX.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-02-25 17:45:46 +01:00
Andrea Adami
36972191e8 klibc_2.0.4: Silence Warning about klibc-xxx-so already stripped
Fixes:
WARNING: File 'usr/lib/klibc-HWWIvOaMdZy4N4-6rLLHAB2TjFQ.so'
from klibc  was already stripped, this will prevent future debugging!
WARNING: File 'usr/lib/klibc/lib/klibc-HWWIvOaMdZy4N4-6rLLHAB2TjFQ.so'
from klibc was already stripped, this will prevent future debugging!

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-02-25 17:45:45 +01:00
Andrea Adami
e1a1fa2383 klibc_2.0.4: Silence QA Error about non-symlink so [dev-elf]
Following debian packaging-style we have a copy of klibc-xxx.so in libklibc-dev.
(Comments can be found in klibc.spec.in)

Fixes:
ERROR: QA Issue: -dev package contains non-symlink .so:
ibklibc-dev path 'work/i586-oe-linux/klibc/2.0.4-r0/packages-split/
libklibc-dev/usr/lib/klibc/lib/klibc-HWWIvOaMdZy4N4-6rLLHAB2TjFQ.so'
-dev package contains non-symlink .so:
libklibc-dev path 'work/i586-oe-linux/klibc/2.0.4-r0/packages-split/
libklibc-dev/usr/lib/klibc/lib/libc.so' [dev-elf]

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-02-25 17:45:45 +01:00
Andrea Adami
187ed64811 klibc_2.0.4: update to 4d1997d - Fix build for qemux86
Minimally rebase staging.patch and follow upstream commits.

Fixes:
| usr/klibc/socketcalls/socket.o: In function `socket':
| .../usr/klibc/socketcalls/socket.S:8: multiple definition of `socket'

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-02-25 17:45:44 +01:00
Andre McCurdy
87577ec070 klibc.inc: use x86 over-ride instead of i486/i586/i686/pentium
32bit x86 is covered by the x86 over-ride, so duplicate over-rides for
i486/i586/i686/pentium are not required.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-06-08 14:15:23 +02:00
Andrea Adami
65007b398c klibc: define KLIBCLIBGCC
Fix build of klibc extending the EXTRA_OEMAKE.

|   LIST    usr/klibc/klib.list
|   KLIBCAR usr/klibc/libc.a
|   KLIBCLD usr/klibc/libc.so
| arm-oe-linux-gnueabi-ld: cannot find libgcc.a: No such file or directory
| make[2]: *** [usr/klibc/libc.so] Error 1
| make[2]: *** Waiting for unfinished jobs....
| make[1]: *** [all] Error 2
| make: *** [klibc] Error 2
| ERROR: oe_runmake failed

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2014-11-17 10:00:45 +00:00
Andrea Adami
0a67b9f3fd klibc: klcc: consider --sysroot option and override gcc-cross encoded sysroot
For the recipes built with klcc-cross it is necessary to
pass --sysroot otherwise we default to the one encoded in gcc-cross which
actually is the 'first one' built.
The issue was revealed when building for armv4 after having built for armv5te:
the produced binaries did contain Illegal Instruction (bx lr).

Use ${TOOLCHAIN_OPTIONS} variable to specify --sysroot=${STAGING_DIR_TARGET}

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2014-09-26 05:41:54 +02:00
Andrea Adami
60e1d5463f klibc-utils: add explicit dependency on klibc for the shared utils
The two recipes for klibc-utils (static and shared) have been split-off
from a single original recipe for more granular packaging and share the
same SRC_URI set in the .inc file so there is an implicit dependency.
Make it explicit for the utils needing the shared klibc lib at runtime.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2014-07-28 12:13:11 +01:00
Andrea Adami
2f85f5a948 klibc: upgrade to released 2.0.4
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2014-07-24 15:32:55 +02:00
Andrea Adami
55b09e522c klcc_cross: move in target sysroot as crossscript
Klcc-cross is properly a crosscript so avoid to inherit cross.bbclass and stage
it in target sysroot under usr/bin/crossscripts.
Minor adjustment is necessary for INSTALLDIR.

Finally some magic mangling is applied fixing the paths of sstate so that it is
invalidated in case of subsequent builds targeting machines with the same
arch and in case of builds sharing the sstate cache.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2014-05-04 11:41:12 +01:00
Andrea Adami
477ccd867c klibc: restylize a bit the recipes
No runtime changes.
Reorder and fix some typos in the comments.
Remove unneeded empty do_install from utils.
Fix bogus PACKAGES_${PN} = "${PN}".

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2014-04-06 13:36:20 +01:00
Andrea Adami
56dde5189f klcc-cross: force rebuild for each MACHINE of the same arch
In case of subsequent builds for machines belonging to the same arch
we have to rebuild the klcc-cross wrapper because it is harcoding
the path to the headers in machine sysroot.
This hack is necessary to avoid to mark the klibc infrastructure as
machine-specific.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2014-02-28 23:36:59 +00:00
Koen Kooi
2397f51915 klibc: ensure package strip logic stays the same after oe-core package.bbclass changes
See http://patches.openembedded.org/patch/65311/

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
2014-02-17 15:36:43 +00:00
Andrea Adami
dd1ca18fb9 klibc.inc: remove ${PR} leftover
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2014-02-16 21:34:49 +00:00
Andrea Adami
d4ba54f15f klibc: upgrade from 2.0.2 to release 2.0.3
Klibc now supports aarch64 / arm64
While there, remove PR/INC_PR from the recipes

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2013-12-17 20:53:23 +00:00
Koen Kooi
5782b2d27b klibc.inc: add mapping for 64-bit ARM builds
Klibc is following the kernel naming ('arm64') instead of the toolchain naming ('aarch64').

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
2013-12-17 20:53:14 +00:00
Andrea Adami
832aa22f1e klcc-cross: disable more unused tasks
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2013-09-30 21:52:24 +01:00
Jackie Huang
b79176adb3 remove the unnecessary protocol parameters
It's not necessary to specify the protocol parameter when it's the
default protocol for the fetcher, e.g. the default protocol for
git fetcher it git, "protocol=git" isn't needed.

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2013-09-03 16:59:13 +02:00
Andrea Adami
61398c6959 klcc-cross_2.0.2: refactor recipe to respect exec_prefix
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
2013-09-03 14:53:44 +01:00