mirror of
https://github.com/mmueller41/genode.git
synced 2026-01-21 12:32:56 +01:00
libc: exclude arm_initfini.c
This compilation unit contains a global constructor, which violates our
assumption that the libc is free of global constructors on ARMv7.
Specifically, the graphical terminal fails with the following message:
[init -> terminal] Error: Component::construct() returned without executing
pending static constructors (fix by calling
Genode::Env::exec_static_constructors())
[init -> terminal] Error: Uncaught exception of type 'Linker::Fatal'
In this case, the libc-less terminal uses the VFS. The VFS mounts the
ttf VFS plugin. The ttf VFS plugin depends on the libc.
The compilation unit 'arm_initfini.c' can safely be excluded because it
merely initializes the global '_libc_arm_fpu_present' variable, which
is not used by the current version of our libc/libm.
Fixes #4080
This commit is contained in:
@@ -4,7 +4,7 @@ LIBC_GEN_ARM_DIR = $(LIBC_DIR)/lib/libc/arm/gen
|
||||
|
||||
#FILTER_OUT_S += rfork_thread.S sigsetjmp.S setjmp.S _setjmp.S divsi3.S
|
||||
FILTER_OUT_S += rfork_thread.S divsi3.S setjmp.S _setjmp.S
|
||||
FILTER_OUT_C += _set_tp.c fabs.c frexp.c modf.c
|
||||
FILTER_OUT_C += _set_tp.c fabs.c frexp.c modf.c arm_initfini.c
|
||||
|
||||
INC_DIR += $(LIBC_DIR)/lib/libc/arm/softfloat
|
||||
INC_DIR += $(LIBC_DIR)/lib/libc/softfloat
|
||||
|
||||
Reference in New Issue
Block a user