Skip to content

Commit

Permalink
Enable -ffreestanding by default
Browse files Browse the repository at this point in the history
Fixes #5429
  • Loading branch information
nfeske authored and chelmuth committed Jan 30, 2025
1 parent 9dee2fb commit 63b49fc
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 1 deletion.
4 changes: 4 additions & 0 deletions repos/base-linux/lib/import/import-syscall-linux.mk
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,7 @@ HOST_INC_DIR += /usr/include/aarch64-linux-gnu
#
CC_OPT += -D_GNU_SOURCE

#
# Enable definition of __STDC_HOSTED__
#
CC_OPT_FREESTANDING =
8 changes: 7 additions & 1 deletion repos/base/mk/global.mk
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,11 @@ ifneq ($(STDLIB),yes)
LD_OPT_NOSTDLIB := -nostdlib -Wl,-nostdlib
endif

#
# Prevent the definition of __STDC_HOSTED__ by default
#
CC_OPT_FREESTANDING ?= -ffreestanding

#
# Add coverage options
#
Expand Down Expand Up @@ -166,7 +171,8 @@ CC_ADA_WARN ?= -gnatwa $(CC_ADA_WARN_STRICT)
#
# Aggregate compiler options that are common for C and C++
#
CC_OPT += $(CC_OPT_NOSTDINC) -g $(CC_MARCH) $(CC_OLEVEL) $(CC_OPT_DEP) $(CC_WARN)
CC_OPT += $(CC_OPT_NOSTDINC) $(CC_OPT_FREESTANDING) -g \
$(CC_MARCH) $(CC_OLEVEL) $(CC_OPT_DEP) $(CC_WARN)

#
# Incorporate source-file-specific compiler options
Expand Down
5 changes: 5 additions & 0 deletions repos/libports/lib/import/import-libc.mk
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,11 @@ endif
#
REP_INC_DIR += include/libc-genode

#
# Enable definition of __STDC_HOSTED__
#
CC_OPT_FREESTANDING =

#
# Prevent gcc headers from defining __size_t. This definition is done in
# machine/_types.h.
Expand Down
2 changes: 2 additions & 0 deletions repos/libports/lib/mk/libgcov.mk
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ LIBGCOV_INTERFACE = _gcov_dump \

LIBGCOV_DRIVER = _gcov

CC_OPT_FREESTANDING =

CC_OPT += -fbuilding-libgcc -DIN_GCC -DIN_LIBGCC2

CC_OPT += $(addprefix -DL,$(LIBGCOV_MERGE))
Expand Down
2 changes: 2 additions & 0 deletions repos/libports/lib/mk/x86emu.mk
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ X86EMU_DIR := $(call select_from_ports,x86emu)/src/lib/x86emu/contrib
INC_DIR += $(X86EMU_DIR) $(REP_DIR)/include/x86emu
CC_OPT += -fomit-frame-pointer -Wno-maybe-uninitialized

CC_OPT_FREESTANDING =

SRC_C = decode.c fpu.c ops.c ops2.c prim_ops.c sys.c

vpath %.c $(X86EMU_DIR)
Expand Down

0 comments on commit 63b49fc

Please sign in to comment.