genode/repos/base-linux/src/core/Tupfile

56 lines
1.6 KiB
Plaintext

include_rules
GEN_CORE_DIR = $(BASE_DIR)/src/core
CPPFLAGS += -D_GNU_SOURCE
CPPFLAGS += \
-I$(REP_DIR)/src/core/include \
-I$(GEN_CORE_DIR)/include \
SRC_CC += *.cc
SRC_CC += \
$(GEN_CORE_DIR)/capability_space.cc \
$(GEN_CORE_DIR)/core_log.cc \
$(GEN_CORE_DIR)/core_rpc_cap_alloc.cc \
$(GEN_CORE_DIR)/cpu_session_component.cc \
$(GEN_CORE_DIR)/cpu_session_support.cc \
$(GEN_CORE_DIR)/cpu_thread_component.cc \
$(GEN_CORE_DIR)/default_log.cc \
$(GEN_CORE_DIR)/heartbeat.cc \
$(GEN_CORE_DIR)/main.cc \
$(GEN_CORE_DIR)/pd_session_component.cc \
$(GEN_CORE_DIR)/pd_session_support.cc \
$(GEN_CORE_DIR)/platform_services.cc \
$(GEN_CORE_DIR)/ram_dataspace_factory.cc \
$(GEN_CORE_DIR)/rpc_cap_factory_l4.cc \
$(GEN_CORE_DIR)/signal_receiver.cc \
$(GEN_CORE_DIR)/signal_source_component.cc \
$(GEN_CORE_DIR)/signal_transmitter_proxy.cc \
$(GEN_CORE_DIR)/trace_session_component.cc \
$(GEN_CORE_DIR)/version.cc \
CXXFLAGS_$(GEN_CORE_DIR)/version.cc += -DGENODE_VERSION=\"`git describe`\"
: foreach $(SRC_CC) |> !cxx |> {obj}
LDFLAGS += -gc-sections
LDFLAGS += -z max-page-size=0x1000
LDFLAGS += -nostdlib
LDFLAGS += -Ttext=0x01000000
LDFLAGS += -T$(BASE_DIR)/src/ld/genode.ld
LDFLAGS += -T$(REP_DIR)/src/ld/stack_area.ld
PKG_LIBS = -L$(DEV_DIR)/lib `$(PKG_CONFIG) --libs cxx`
: {obj} | \
$(DEV_DIR)/<lib> \
$(DEV_DIR)/<pkg-config> \
$(REP_DIR)/<base-common> \
$(REP_DIR)/<startup> \
$(REP_DIR)/<syscall> \
|> $(LD) -o %o $(LD_MARCH) $(LDFLAGS) --start-group %f %<base-common> %<startup> %<syscall> $(PKG_LIBS) -end-group $(LIBGCC) \
|> core-linux $(REP_DIR)/<core> {bin}
: {bin} |> !collect_bin |>