1export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 6include $(MakeInc_cmd) 7include $(MakeInc_def) 8 9MIG_TYPES = \ 10 default_pager_types.defs 11 12MIG_DEFS = \ 13 14MIG_USHDRS = \ 15 16MIG_UUHDRS = \ 17 18MIGINCLUDES = ${MIG_UUHDRS} ${MIG_USHDRS} 19 20DATAFILES = \ 21 default_pager_types.h \ 22 ${MIG_DEFS} 23 24INSTALL_MI_LIST = ${DATAFILES} 25 26INSTALL_SF_MI_LCL_LIST = ${DATAFILES} 27 28INSTALL_MI_GEN_LIST = ${MIGINCLUDES} 29 30INSTALL_SF_MI_LCL_GEN_LIST = ${MIGINCLUDES} 31 32INSTALL_MI_DIR = default_pager 33 34EXPORT_MI_LIST = \ 35 ${DATAFILES} 36 37EXPORT_MI_GEN_LIST = \ 38 ${MIGINCLUDES} 39 40EXPORT_MI_DIR = default_pager 41 42${MIGINCLUDES} : ${MIG_TYPES} 43 44${MIG_UUHDRS} : \ 45 %.h : %.defs 46 @$(LOG_MIG) $@ 47 $(_v)$(MIG) $(MIGFLAGS) \ 48 -server /dev/null \ 49 -user /dev/null \ 50 -header $@ \ 51 $< 52 53${MIG_USHDRS} : \ 54 %_server.h : %.defs 55 @$(LOG_MIG) $@ 56 $(_v)$(MIG) $(MIGFLAGS) \ 57 -server /dev/null \ 58 -user /dev/null \ 59 -header /dev/null \ 60 -sheader $@ \ 61 $< 62 63# 64# Build path 65# 66INCFLAGS_MAKEFILE= -I.. 67 68MIGKSFLAGS = -DMACH_KERNEL_PRIVATE -DKERNEL_SERVER=1 69MIGKUFLAGS = -DMACH_KERNEL_PRIVATE -DKERNEL_USER=1 -maxonstack 1024 70 71# 72# MIG-generated headers that are traditionally used by kernel 73# level code. 74# 75MIG_KUHDRS = \ 76 77MIG_KUSRC = \ 78 79MIG_KSHDRS = \ 80 81MIG_KSSRC = \ 82 83# 84# JMM - 85# Since there are two generated header files with the same name, one for 86# install and export, the other for internal use (and they are different) 87# we can't explicitly list two rules for the same target. So rules for 88# generating internal headers will be handled implicitly by creating rules 89# to generate the internal C sources, and the headers get created as a 90# side-effect. 91# 92# This is all temporary scaffolding, as we are moving to a model where 93# the MIG-generated code is identical in all environments. At first, it 94# will contain some environment-specific ifdefs, but over time should not 95# even require that as we move towards making all the environments look 96# the same. 97# 98COMP_FILES = ${MIG_KUSRC} ${MIG_KSSRC} 99 100do_build_all:: $(COMP_FILES) 101 102${COMP_FILES} : ${MIG_TYPES} 103 104${MIG_KUSRC} : \ 105 %_user.c : %.defs 106 @$(LOG_MIG) $@ 107 $(_v)${MIG} ${MIGFLAGS} ${MIGKUFLAGS} \ 108 -user $*_user.c \ 109 -header $*.h \ 110 -server /dev/null \ 111 -sheader /dev/null \ 112 $< 113 114${MIG_KSSRC}: \ 115 %_server.c : %.defs 116 @$(LOG_MIG) $@ 117 $(_v)${MIG} ${MIGFLAGS} ${MIGKSFLAGS} \ 118 -user /dev/null \ 119 -header /dev/null \ 120 -server $*_server.c \ 121 -sheader $*_server.h \ 122 $< 123 124include $(MakeInc_rule) 125include $(MakeInc_dir) 126