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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
* This change is only aesthetic (unlike indentation in Python
tasks).
* Some recipes were using tabs.
* Some were using 8 spaces.
* Some were using mix or different number of spaces.
* Make them consistently use 4 spaces everywhere.
* Yocto styleguide advises to use tabs (but the only reason to keep
tabs is the need to update a lot of recipes). Lately this advice
was also merged into the styleguide on the OE wiki.
* Using 4 spaces in both types of tasks is better because it's less
error prone when someone is not sure if e.g.
do_generate_toolchain_file() is Python or shell task and also allows
to highlight every tab used in .bb, .inc, .bbappend, .bbclass as
potentially bad (shouldn't be used for indenting of multiline
variable assignments and cannot be used for Python tasks).
* Don't indent closing quote on multiline variables
we're quite inconsistent wheater it's first character on line
under opening quote or under first non-whitespace character in
previous line.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Acked-by: Koen Kooi <koen@dominion.thruhere.net>
* and remove bogus dependencies for the static utils
* introduced by do_split_packages
* bump INC_PR
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
* include last patches of may 2012
* tracking upstream wrt forthcoming 2.0 release
* bump INC_PR
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
* add install-patch creating symlinks as done by debian
* extra add the mtd headers
* refresh patches (split out prefix.patch)
* recipe is now not machine-specific anymore
* bump INC_PR
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
* minor updates, still waiting for release 2.0
* v2 adds another (sometimes) missing header
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
* kernel_3.2__aligned_u64.patch is already upstream
* hack around the missing headers (now in /generated/asm)
* bump INC_PR
* waiting for klibc_2.0 release
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
* After a talk with Beth Flanagan licensing is now clear:
* "LICENSE = "BSD-3-Clause & GPL-2.0 & MIT" (If it's --without-zlib).
* If not then it's: LICENSE = "BSD-3-Clause & GPL-2.0 & MIT & Zlib"
* bump INC_PR
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>