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

59 lines
1.7 KiB
Plaintext

include_rules
GEN_CORE_DIR = $(BASE_DIR)/src/core
CPPFLAGS += \
-I$(TUP_CWD)/include \
-I$(GEN_CORE_DIR)/include \
SRC_CC += *.cc
ifeq (@(TUP_ARCH),i386)
SRC_CC += spec/x86_32/*.cc
endif
ifeq (@(TUP_ARCH),x86_64)
SRC_CC += spec/x86_64/*.cc
endif
SRC_CC += \
$(GEN_CORE_DIR)/core_log.cc \
$(GEN_CORE_DIR)/core_mem_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)/dataspace_component.cc \
$(GEN_CORE_DIR)/default_log.cc \
$(GEN_CORE_DIR)/dump_alloc.cc \
$(GEN_CORE_DIR)/heartbeat.cc \
$(GEN_CORE_DIR)/io_mem_session_component.cc \
$(GEN_CORE_DIR)/main.cc \
$(GEN_CORE_DIR)/pd_session_component.cc \
$(GEN_CORE_DIR)/platform_rom_modules.cc \
$(GEN_CORE_DIR)/ram_dataspace_factory.cc \
$(GEN_CORE_DIR)/region_map_component.cc \
$(GEN_CORE_DIR)/rom_session_component.cc \
$(GEN_CORE_DIR)/signal_receiver.cc \
$(GEN_CORE_DIR)/signal_transmitter_noinit.cc \
$(GEN_CORE_DIR)/spec/x86/io_port_session_component.cc \
$(GEN_CORE_DIR)/spec/x86/io_port_session_support.cc \
$(GEN_CORE_DIR)/stack_area.cc \
$(GEN_CORE_DIR)/trace_session_component.cc \
$(GEN_CORE_DIR)/vm_session_common.cc \
$(GEN_CORE_DIR)/version.cc \
CXXFLAGS_$(GEN_CORE_DIR)/version.cc += -DGENODE_VERSION=\"`git describe`\"
: foreach $(SRC_CC) |> !cxx |> {obj}
: {obj} | \
$(DEV_DIR)/<lib> \
$(DEV_DIR)/<pkg-config> \
$(BASE_DIR)/<base-libs> \
$(REP_DIR)/<base-common> \
$(BASE_DIR)/<cxx> \
$(REP_DIR)/<startup> \
|> $(LD) $(LDFLAGS) -u _start -r \
--whole-archive --start-group %f %<base-libs> %<base-common> %<cxx> %<startup> --no-whole-archive --end-group -o %o \
|> core.o $(REP_DIR)/<core> {core}
: {core} |> cp %f %o |> $(OUT_DIR)/lib/core-nova.o