16 months ago | Paul Boddie | raw annotate files changeset graph | Changed the process server to act as a plain Opener object, yielding a context through which program invocation details are communicated. Such details include program arguments which are now, once again, passed to the created process. When starting a process, only a collection of argument strings, this including the program filename, are now provided. This is to permit the indication of programs accessible to the process creator that are not necessarily resident in the filesystem of the initiating task. |
1 PKGDIR ?= .. 2 L4DIR ?= $(PKGDIR)/../../.. 3 4 TARGET = exec_region_mapper 5 6 MODE = static 7 8 # Relocate the binary to avoid conflicting with actual payloads. 9 10 DEFAULT_RELOC_x86 := 0xb0000000 11 DEFAULT_RELOC_arm := 0xb0000000 12 DEFAULT_RELOC_arm64 := 0xc0000000 13 DEFAULT_RELOC_ppc32 := 0xb0000000 14 DEFAULT_RELOC_amd64 := 0x70000000 15 DEFAULT_RELOC_mips := 0x70000000 16 17 # Locations for interface input and generated output. 18 19 IDL_DIR = $(PKGDIR)/../libsystypes/idl 20 IDL_MK_DIR = $(L4DIR)/idl4re/mk 21 IDL_BUILD_DIR = . 22 IDL_EXPORT_DIR = . 23 24 include $(IDL_MK_DIR)/idl.mk 25 26 # Required interfaces. 27 28 SERVER_INTERFACES_CC = pager_object 29 30 # Generated and plain source files. 31 32 SERVER_INTERFACES_SRC_CC = $(call interfaces_to_server_cc,$(SERVER_INTERFACES_CC)) 33 34 # Normal source files. 35 36 PLAIN_SRC_CC = region_mapper.cc 37 SRC_CC = $(PLAIN_SRC_CC) $(SERVER_INTERFACES_SRC_CC) 38 39 REQUIRES_LIBS = libc libstdc++ libexec libipc 40 PRIVATE_INCDIR = $(IDL_BUILD_DIR) $(IDL_EXPORT_DIR) 41 42 include $(L4DIR)/mk/prog.mk 43 include $(IDL_MK_DIR)/interface_rules.mk 44 45 $(PLAIN_SRC_CC): $(SERVER_INTERFACES_SRC_CC)