1.1 --- a/test_files/programs/Makefile Sun Jun 12 18:56:25 2022 +0200
1.2 +++ b/test_files/programs/Makefile Sun Jun 12 23:08:19 2022 +0200
1.3 @@ -1,12 +1,47 @@
1.4 PKGDIR ?= ..
1.5 L4DIR ?= $(PKGDIR)/../../..
1.6
1.7 -TARGET = dstest_exec_payload
1.8 +TARGET = dstest_exec_payload dstest_region_mapper
1.9
1.10 MODE = static
1.11
1.12 -SRC_C_dstest_exec_payload = exec_payload.c
1.13 +# Locations for interface input and generated output.
1.14 +
1.15 +IDL_DIR = $(PKGDIR)/../libsystypes/idl
1.16 +IDL_MK_DIR = $(L4DIR)/idl4re/mk
1.17 +IDL_BUILD_DIR = .
1.18 +IDL_EXPORT_DIR = .
1.19 +
1.20 +include $(IDL_MK_DIR)/idl.mk
1.21 +
1.22 +# Compound interfaces.
1.23 +
1.24 +pager_object_NAME = PagerObject
1.25 +pager_object_INTERFACES = region_mapper system_pager
1.26 +
1.27 +COMP_INTERFACES_CC = pager_object
1.28 +
1.29 +# Individual interfaces.
1.30
1.31 -REQUIRES_LIBS = libc
1.32 +SERVER_INTERFACES_CC = $(call common_interfaces,$(COMP_INTERFACES_CC))
1.33 +
1.34 +# Generated and plain source files.
1.35 +
1.36 +SERVER_INTERFACES_SRC_CC = $(call interfaces_to_server_cc,$(SERVER_INTERFACES_CC) $(COMP_INTERFACES_CC))
1.37 +
1.38 +# Normal source files.
1.39 +
1.40 +SRC_C_dstest_exec_payload = exec_payload.c
1.41 +
1.42 +PLAIN_SRC_CC_dstest_region_mapper = region_mapper.cc
1.43 +SRC_CC_dstest_region_mapper = \
1.44 + $(PLAIN_SRC_CC_dstest_region_mapper) \
1.45 + $(SERVER_INTERFACES_SRC_CC)
1.46 +
1.47 +REQUIRES_LIBS = libc libstdc++ libexec libipc
1.48 +PRIVATE_INCDIR = $(IDL_BUILD_DIR) $(IDL_EXPORT_DIR)
1.49
1.50 include $(L4DIR)/mk/prog.mk
1.51 +include $(IDL_MK_DIR)/interface_rules.mk
1.52 +
1.53 +$(PLAIN_SRC_CC_dstest_region_mapper): $(SERVER_INTERFACES_SRC_CC)