L4Re/departure

libfsserver/lib/Makefile

360:92c5f6aa8c36
2022-06-12 Paul Boddie Reintroduced PagerObject code generation required to initiate servers. mmap-region-flags
     1 PKGDIR		?= ..     2 L4DIR		?= $(PKGDIR)/../../..     3      4 TARGET		= libfsserver.so libfsserver.a     5 PC_FILENAME	= libfsserver     6      7 # Locations for interface input and generated output.     8      9 IDL_DIR		= $(PKGDIR)/../libsystypes/idl    10 IDL_MK_DIR	= $(L4DIR)/idl4re/mk    11 IDL_BUILD_DIR	= .    12 IDL_EXPORT_DIR	= $(OBJ_BASE)/include/contrib/$(CONTRIB_INCDIR)/fsserver    13     14 include $(IDL_MK_DIR)/idl.mk    15     16 # Compound interfaces.    17     18 directory_object_NAME			= DirectoryObject    19 directory_object_INTERFACES		= directory notification    20     21 filesystem_object_NAME			= FilesystemObject    22 filesystem_object_INTERFACES		= filesystem filesystem_factory    23     24 mapped_file_object_NAME			= MappedFileObject    25 mapped_file_object_INTERFACES		= dataspace file flush mapped_file notification    26     27 opener_context_object_NAME		= OpenerContextObject    28 opener_context_object_INTERFACES	= dataspace opener_context    29     30 pipe_object_NAME			= PipeObject    31 pipe_object_INTERFACES			= dataspace flush notification pipe    32     33 COMP_INTERFACES_CC			= directory_object filesystem_object mapped_file_object opener_context_object pipe_object    34     35 # Individual interfaces.    36     37 CLIENT_INTERFACES_CC			= notifier    38     39 SERVER_INTERFACES_CC			= opener pipe_opener $(call common_interfaces,$(COMP_INTERFACES_CC))    40     41 # Generated and plain source files.    42     43 CLIENT_INTERFACES_SRC_CC		= $(call interfaces_to_client_cc,$(CLIENT_INTERFACES_CC))    44     45 SERVER_INTERFACES_SRC_CC		= $(call interfaces_to_server_cc,$(SERVER_INTERFACES_CC) $(COMP_INTERFACES_CC))    46     47 PLAIN_SRC_CC				= \    48 					directories/directory_accessor.cc \    49 					directories/directory_provider.cc \    50 					directories/directory_resource.cc \    51 					directories/ext2_directory_accessor.cc \    52 					directories/host_directory_accessor.cc \    53 					files/block_file_accessor.cc \    54 					files/block_file_opener.cc \    55 					files/ext2_file_accessor.cc \    56 					files/ext2_file_opener.cc \    57 					files/ext2_file_operations.cc \    58 					files/ext2_filesystem.cc \    59 					files/file_opening.cc \    60 					files/file_pager.cc \    61 					files/file_provider.cc \    62 					files/filesystem_resource.cc \    63 					files/host_file_accessor.cc \    64 					files/host_file_opener.cc \    65 					files/opener_context_resource.cc \    66 					files/opener_resource.cc \    67 					files/test_file_accessor.cc \    68 					files/test_file_opener.cc \    69 					generic/accessor.cc \    70 					generic/accountable.cc \    71 					generic/provider_registry.cc \    72 					generic/resource_registry.cc \    73 					generic/notification.cc \    74 					generic/pager.cc \    75 					generic/provider.cc \    76 					generic/resource_server.cc \    77 					generic/simple_pager.cc \    78 					mapping/access_map.cc \    79 					mapping/copied_page_mapper.cc \    80 					mapping/generic_page_mapper.cc \    81 					mapping/ipc.cc \    82 					mapping/masked_page_mapper.cc \    83 					mapping/page_mapper.cc \    84 					pages/page_queue.cc \    85 					pages/page_queue_partitioned.cc \    86 					pages/page_queue_shared.cc \    87 					pages/pages.cc \    88 					pipes/pipe_accessor.cc \    89 					pipes/pipe_opener_resource.cc \    90 					pipes/pipe_pager.cc \    91 					pipes/pipe_paging.cc    92     93 # Normal definitions.    94     95 SRC_CC					= \    96 					$(CLIENT_INTERFACES_SRC_CC) \    97 					$(SERVER_INTERFACES_SRC_CC) \    98 					$(PLAIN_SRC_CC)    99    100 REQUIRES_LIBS	= \   101 		l4re_c-util libmem libipc libstdc++ libsystypes libfsclient \   102 		libext2fs libext2fs_blockserver libe2access libe2access_blockserver   103    104 PRIVATE_INCDIR	= $(PKGDIR)/include $(PKGDIR)/include/fsserver \   105 		  $(IDL_BUILD_DIR) $(IDL_EXPORT_DIR)   106    107 CONTRIB_INCDIR	= libfsserver   108    109 include $(L4DIR)/mk/lib.mk   110 include $(IDL_MK_DIR)/interface_rules.mk   111    112 $(PLAIN_SRC_CC): $(CLIENT_INTERFACES_SRC_CC)   113    114 $(PLAIN_SRC_CC): $(SERVER_INTERFACES_SRC_CC)