mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-22 15:02:25 +00:00
95329c82e2
Issue #2451
29 lines
931 B
Makefile
29 lines
931 B
Makefile
SEL4_DIR := $(call select_from_ports,sel4)/src/kernel/sel4
|
|
|
|
#
|
|
# Execute the kernel build only at the second build stage when we know
|
|
# about the complete build settings (e.g., the 'CROSS_DEV_PREFIX') and the
|
|
# current working directory is the library location.
|
|
#
|
|
ifeq ($(called_from_lib_mk),yes)
|
|
all: build_kernel
|
|
else
|
|
all:
|
|
endif
|
|
|
|
LINKER_OPT_PREFIX := -Wl,
|
|
|
|
# memmove is missing in seL4 5.2.0 - code is generated by our gcc compiler
|
|
AVOID_CALLS_TO_MEMMOVE := -fno-tree-loop-distribute-patterns
|
|
|
|
build_kernel:
|
|
$(VERBOSE)$(MAKE) \
|
|
TOOLPREFIX=$(CROSS_DEV_PREFIX) \
|
|
ARCH=x86 SEL4_ARCH=ia32 PLAT=pc99 DEBUG=1 \
|
|
LDFLAGS+=-nostdlib LDFLAGS+=-Wl,-nostdlib \
|
|
$(addprefix LDFLAGS+=$(LINKER_OPT_PREFIX),$(LD_MARCH)) \
|
|
CFLAGS+="-fno-builtin-printf -O3 $(AVOID_CALLS_TO_MEMMOVE)" \
|
|
$(addprefix CFLAGS+=,$(CC_MARCH)) \
|
|
SOURCE_ROOT=$(SEL4_DIR) -f$(SEL4_DIR)/Makefile
|
|
|