Age | Commit message (Collapse) | Author |
|
Otherwise we have link errors because of unresolved refs in libgcc.a:
ld: /lib/gcc/arm-none-uclinuxfdpiceabi/9.0.0/libgcc.a(pr-support.o): in function `_Unwind_GetDataRelBase':
/libgcc/config/arm/pr-support.c:378: undefined reference to `abort'
ld: /lib/gcc/arm-none-uclinuxfdpiceabi/9.0.0/libgcc.a(unwind-arm.o): in function `unwind_phase2_forced':
/libgcc/unwind-arm-common.inc:511: undefined reference to `memcpy'
* ldso/ldso/Makefile.in (CFLAGS-rtld): Always use
-fno-unwind-tables -fno-asynchronous-unwind-tables on arm
Signed-off-by: Christophe Lyon <christophe.lyon@st.com>
|
|
the --discard-* toggles take away the symbols which comes in the way
when staring at objdumps for debugging low level issues
So don't discard symbols for DODEBUG builds
before
-----
3388: j_s.d [blink]
338a: add_s sp,sp,0x18
338c: b.d 332c <_dl_add_elf_hash_table+0x50>
3390: mov_s r2,0
3392: nop_s
3394: push_s blink <--- function not called out
3396: st.aw r13,[sp,-20]
339a: std r14r15,[sp,4]
339e: std r16r17,[sp,12]
after
-----
3388: j_s.d [blink]
338a: add_s sp,sp,0x18
338c: b.d 332c <_dl_add_elf_hash_table+0x50>
3390: mov_s r2,0
3392: nop_s
00003394 <add_ldso.isra.9>:
3394: push_s blink
3396: st.aw r13,[sp,-20]
339a: std r14r15,[sp,4]
339e: std r16r17,[sp,12]
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
|
|
... before falling back to ld.so installation path (it is not the same -
gcc uses /lib/ld-uClibc-x86-64.so.0 for uClibc) or default /lib:/usr/lib.
This matches glibc behavior (see trusted-dirs.h generated during glibc
build).
Signed-off-by: Alexey Neyman <stilor@att.net>
|
|
|
|
Even though by default for ARC uClibc gets compiled with
disabled long-calls user may provide UCLIBC_EXTRA_CFLAGS
with "-mlong-calls". With this option uClibc will be
successfully compiled but later it will fail in runtime
because dynamic loader cannot deal with relocations
at least very early on its start.
In particular it will be seen as call to non-relocated
symbol _dl_parse_dynamic_info() which ends-up as a segfault
like this:
------------------------>8--------------------
potentially unexpected fatal signal 11.
Path: /bin/test
CPU: 0 PID: 63 Comm: test Not tainted 4.5.2 #7
task: 9f13f180 ti: 9f166000 task.ti: 9f166000
[ECR ]: 0x00040000 => Insn could not be fetched
[EFA ]: 0x0000283c
[BLINK ]: 0x2000407c
[ERET ]: 0x283c
@No matching VMA found
[STAT32]: 0x8008009e : IE U
BTA: 0x0000283c SP: 0x5fef5ccc FP: 0x00000000
LPS: 0x20004080 LPE: 0x20004064 LPC: 0x00000000
r00: 0x20006684 r01: 0x5fef5db0 r02: 0x00000000
r03: 0x20000000 r04: 0x80808080 r05: 0x2f2f2f2f
r06: 0x41464d00 r07: 0x00000080 r08: 0x000000dd
r09: 0x00000000 r10: 0x00000073 r11: 0x80808080
r12: 0x2000407c r13: 0x20000000 r14: 0x5fef5e74
r15: 0x000ceb3c r16: 0x5fef5e7c r17: 0x5fef5d44
r18: 0x000ceb0c r19: 0xffffffff r20: 0x000ceb1c
r21: 0x00000000 r22: 0x00000000 r23: 0x000d08a5
r24: 0x00000000 r25: 0x80808080
Segmentation fault
------------------------>8--------------------
Solution to this issue is simple we make sure dynamic
loader never gets compiled with "-mlong-calls" by forcing
"-mno-long-calls" on it.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Vineet Gupta <vgupta@synopsys.com>
Cc: Anton Kolesov <akolesov@synopsys.com>
Cc: linux-snps-arc@lists.infradead.org
|
|
Avoids following linking error:
/usr/lib/gcc/arm-openadk-linux-uclibceabihf/5.3.0/libgcc.a(unwind-arm.o):
In function `unwind_phase2':
../w-gcc-5.3.0-1/gcc-5.3.0/libgcc/unwind-arm-common.inc:289:
undefined reference to `abort'
/usr/lib/gcc/arm-openadk-linux-uclibceabihf/5.3.0/libgcc.a(unwind-arm.o):
In function `unwind_phase2_forced':
../w-gcc-5.3.0-1/gcc-5.3.0/libgcc/unwind-arm-common.inc:346:
undefined reference to `memcpy'
collect2: error: ld returned 1 exit status
|
|
An abort() is only generated when gcc does not implement
a trap handler for the target architecture.
This fixes the abort() generation. Latest gcc git master
also contains a trap handler for xtensa.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Walemar Brodkorb <wbx@uclibc-ng.org>
|
|
Simplify the switch from uClibc to uClibc-ng suggested
by Alexey Brodkin <Alexey.Brodkin@synopsys.com>.
Gcc always uses .0 ld.so link, so install it by default.
|
|
This reverts commit f52fb21a7af0aa4e983b3e6c2ddd1b6a526b5169.
Totally wrong patch.
|
|
Simplify the switch from uClibc to uClibc-ng suggested
by Alexey Brodkin <Alexey.Brodkin@synopsys.com>.
Gcc always uses .0 ld.so link, so install it by default.
|
|
|
|
The nostartfiles is redundant but better be safe
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
|
|
This reverts commit 69ba9dcaa13bb8bbdc8630265d73298c39945416.
|
|
No need to build crt when just generating headers
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
No need to build crt when just generating headers
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
For sh4/xtensa architectures there is an optimization
bug, which does not allow to compile ld.so with gcc 4.9.2.
Disable this optimization for sh4/xtensa and ld.so compile.
|
|
define NOT_IN_libc / IS_IN_libxxx appropriately
to fix pthread_once
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Running `make clean` atm takes like 20 seconds because every subdir
re-evaluates all the toolchain flags. Add some helpers to automate
the process of setting up variables to cache the result of tests,
as well as the checking of an already set flag.
Now `make clean` takes like 2 seconds on my system.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
* origin/master: (137 commits)
utils/ldd: Check for returned pointer from strrchr not the value it holds
cris: add provide arch-specific vfork implementation
lutimes.c, stubs.c: fix compiling lutimes, if __NR_utimensat is not defined
bump version to 0.9.32-rc3-git
release 0.9.32-rc3
memalign: include sys/param.h for MAX
arm/bits/atomic.h: Include common/bit/atomic.h for thumb1
wctype.h: fix libc_hidden_proto for iswupper and add it for iswspace
add libc_hidden_proto for wcs[n]casecmp_l
really fix missing __libc_drand48_data
Revert "missing prototype of __libc_drand48_data fixed"
missing prototype of __libc_drand48_data fixed
time.c, time.h: remove unused hidden strftime/strptime
nanosleep.c: remove duplicated libc_hidden_proto
ctype.c, ctype.h: remove commented parts that were banned for removal after 0.9.31
_wctype.c, wctype.h: remove unused isw* and wctype_l hidden functions
time.c, wchar.h: remove unused hidden wcsftime
str[n]casecmp.c: fix hidden usage
remove unused hidden functions
frv/memset.S: add missing libc_hidden_def
...
Conflicts:
ldso/ldso/ldso.c
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
This adds support for a new binary format, DSBT ELF, to the Makefiles.
Every shared library is assigned a DSBT index, and the link.so macro is
adjusted to ensure the correct linker argument is passed.
Configuration and ldso support will follow in separate commits.
Signed-off-by: Bernd Schmidt <bernds@codesourcery.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Added runtime prelink support to be able to run a prelinked
application; at process startup only the conflicts will be relocated.
This speed up the startup time.
Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
Since sublevel releases are not ABI compatible we need to adjust
the soname to include the sublevel version.
This makes it possible to install ABI incompatible versions of the
library side by side so clean upgrades are possible.
Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
gold does not currently implement these.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
|
Handle O=
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
|
|
|
|
- tidy up PTHREADS_DEBUG_SUPPORT by using per-target STRIP_FLAGS for the few
This fixes the spurious rebuilds bernd and vda were seeing with libpthreads.
|
|
Previously a touch ldso/ldso/dl-debug.c && make ldso/ldso/ldso.oS did nothing
|
|
- adjust setting flags accordingly to use (hardcoded, see below) -Wl,
Potential improvements:
*) --warn-unresolved-symbols should perhaps be used for all libs
*) eventually rename LDFLAGS to CC_LDFLAGS
*) probe for compiler driver's notion of flag to use for passing in
linker flags (i.e. don't hardcode "-Wl,")
|
|
|
|
|
|
|
|
work in the build system
|
|
|
|
is a useless attempt
|
|
|
|
|
|
|
|
only headers
|
|
|
|
|
|
ldso/ldso, that will exist if top_srcdir != top_builddir.
|
|
|
|
|
|
|