The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/conf/template.mk

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 #
    2 # Mach Operating System
    3 # Copyright (c) 1993-1986 Carnegie Mellon University
    4 # All Rights Reserved.
    5 # 
    6 # Permission to use, copy, modify and distribute this software and its
    7 # documentation is hereby granted, provided that both the copyright
    8 # notice and this permission notice appear in all copies of the
    9 # software, derivative works or modified versions, and any portions
   10 # thereof, and that both notices appear in supporting documentation.
   11 # 
   12 # CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
   13 # CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
   14 # ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
   15 # 
   16 # Carnegie Mellon requests users of this software to return to
   17 # 
   18 #  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
   19 #  School of Computer Science
   20 #  Carnegie Mellon University
   21 #  Pittsburgh PA 15213-3890
   22 # 
   23 # any improvements or extensions that they make and grant Carnegie Mellon
   24 # the rights to redistribute these changes.
   25 #  
   26 #
   27 # HISTORY
   28 # $Log: template.mk,v $
   29 # Revision 2.11  93/11/17  16:18:38  dbg
   30 #       Added rules to build real-time interface files.
   31 #       [93/06/04            dbg]
   32 # 
   33 # Revision 2.10  93/08/02  21:43:37  mrt
   34 #       Added rule for mach_norma_user.c and mach_norma.h
   35 #       [93/06/28            mrt]
   36 # 
   37 # Revision 2.9  93/06/02  20:49:55  rvb
   38 #       Added definition of NOSTRIP.
   39 #       [93/06/02            mrt]
   40 # 
   41 # Revision 2.8  93/05/28  17:40:45  mrt
   42 #       Change relink rule to build mach.boot as well as linking the
   43 #       kernel.
   44 #       [93/05/28            mrt]
   45 # 
   46 # Revision 2.7  93/05/17  17:17:17  mrt
   47 #       Removed EXPORTBASE/kernel from list of INDIRS. We now
   48 #       put all those files in the regular export dir.
   49 #       Removed use of version.minor
   50 #       [93/05/14            mrt]
   51 # 
   52 # Revision 2.6  93/05/11  12:55:27  rvb
   53 #       We don't profile the kernel yet.
   54 # 
   55 # Revision 2.5  93/05/10  19:40:54  rvb
   56 #       Added trailing ` on cat ${VERSION_FILES_SOURCE line.
   57 #       Fix courtesy of Ian Dall.
   58 #       [93/04/29            mrt]
   59 # 
   60 # Revision 2.4  93/05/10  17:45:50  rvb
   61 #       Typo missing `
   62 #       Ian Dall <DALL@hfrd.dsto.gov.au>        4/28/93
   63 #       [93/05/10  13:17:11  rvb]
   64 # 
   65 #       Use CC_OPT_LEVEL and CC_OPT_EXTRA for max flexibility
   66 #       [93/05/07            rvb]
   67 # 
   68 # Revision 2.3  93/02/15  14:18:09  mrt
   69 #       Fixed it to only install the bootable kernel.
   70 #       Added the CFLAGS macro
   71 #       [93/02/05            mrt]
   72 # 
   73 # Revision 2.2  93/02/05  12:36:11  danner
   74 #       Fixed support for profiling.
   75 #       Added mach4.  - danner
   76 #       Renamed Makefile.template to template.mk and modifed for ODE
   77 #       make.
   78 #       [93/01/21            mrt]
   79 # 
   80 # Revision 2.34  92/04/05  18:28:30  rpd
   81 #       Added ${VOLATILE} to genassym.c processing.
   82 #       [92/03/27            rpd]
   83 #       Changed to use Makefile-common (for some definitions).
   84 #       New cross-compilation support.
   85 #       [92/03/18            jvh]
   86 # 
   87 # Revision 2.33  92/03/05  18:53:45  rpd
   88 #       Corrected the dependencies for device/dev_forward.c
   89 #       and mach/mach_norma_user.c.
   90 #       Added a rule for mach/mach_user.c.
   91 #       [92/03/04            rpd]
   92 # 
   93 # Revision 2.32  92/02/29  15:33:24  rpd
   94 #       Restored explicit vers.c/vers.o rules.
   95 #       [92/02/27            rpd]
   96 # 
   97 # Revision 2.31  92/02/25  14:13:22  elf
   98 #       Defined ASCPP and initialized it to ${CPP}
   99 #       [92/02/23            elf]
  100 # 
  101 #       Moved definition of MKDIRS to where it can be overriden by the
  102 #       machine dependent makefile fragment.
  103 #       [92/02/21            elf]
  104 # 
  105 # Revision 2.30  92/02/19  15:07:08  elf
  106 #       Simplified - no more *_RULE_[1234] stuff.
  107 #       Condensed history.
  108 #       [92/02/12            rpd]
  109 # 
  110 #
  111 # Condensed history:
  112 #       Changes for out-of-kernel bootstrap (dbg).
  113 #       Changes for norma (jsb).
  114 #       Changes for MACH_KERNEL (dbg).
  115 #       Added mach_host.defs and related files (dlb).
  116 #       Mucho hacking at Mig rules (rpd).
  117 #       Lint hacking (mwyoung).
  118 #       New memory_object files (mwyoung).
  119 #       CPATH and -I hacking (mja, rpd).
  120 #       Running Mig in the build directory (mwyoung).
  121 #       VOLATILE hacking (rvb).
  122 #       Created from old Makefile.vax (mja).
  123 #       Reorganized for simplified config program (mja).
  124 #       Introduced new make depend stuff (rvb).
  125 
  126 VPATH           =..
  127 
  128 # We want the MK version & configuration to be part of this name.
  129 # Makeconf defined KERNEL_CONFIG and VERSION for us.
  130 
  131 CONFIG          ?=${KERNEL_${TARGET_MACHINE}_CONFIG:U${KERNEL_CONFIG:UDEFAULT}}
  132 
  133 .if exists( ${MAKETOP}Makefile-version)
  134 .include "${MAKETOP}Makefile-version"
  135 .endif
  136 
  137 # set BINARIES to get the osf.obj.mk rules included
  138 BINARIES        =
  139 
  140 MACH_KERNEL     = mach_kernel.${VERSION}.${CONFIG}
  141 MACH_BOOT       = mach.boot.${VERSION}.${CONFIG}
  142 BOOTSTRAP       = bootstrap.${VERSION}
  143 MKODIRS         = mach/ mach_debug/ device/
  144 
  145 OTHERS          = ${MACH_BOOT}
  146 ILIST           = ${MACH_BOOT}
  147 IDIR            = /special/
  148 NOSTRIP         =
  149 
  150 DEPENDENCIES    =
  151 
  152 INCFLAGS        = -I..
  153 
  154 
  155 #  Pre-processor environment.
  156 #  config outputs a definition of IDENT.
  157 #  LOCAL_DEFINES can be set by makeoptions in MASTER.local.
  158 #  LINENO is (optionally) set from the config file
  159 #  (eg. -DTIMEZONE=-120)
  160 #  (VOLATILE should be defined as "-Dvolatile=" if your
  161 #  compiler doesn't support volatile declarations.)
  162 
  163 VOLATILE        ?=
  164 DEFINES         = ${LOCAL_DEFINES} ${IDENT} -DKERNEL ${VOLATILE}
  165 CC_OPT_EXTRA    ?= ${LINENO}
  166 
  167 # CFLAGS are for all normal files
  168 # DRIVER_CFLAGS are for files marked as device-driver
  169 # NPROFILING_CFLAGS are for files which support profile and thus
  170 #       should not be compiled with the profiling flags
  171 #CFLAGS         = ${DEFINES} ${PROFILING:D-pg -DGPROF} 
  172 CFLAGS          = ${DEFINES}
  173 DRIVER_CFLAGS   =${CFLAGS}
  174 NPROFILING_CFLAGS=${DEFINES}
  175 
  176 
  177 #
  178 # Mig variables
  179 #
  180 
  181 MIGKSFLAGS      = -DKERNEL -DKERNEL_SERVER
  182 MIGKUFLAGS      = -DKERNEL -DKERNEL_USER
  183 _MIGKSFLAGS_    = -DKERNEL -DKERNEL_SERVER ${_MIGFLAGS_}
  184 _MIGKUFLAGS_    = -DKERNEL -DKERNEL_USER ${_MIGFLAGS_}
  185 
  186 # Files where mig only needs to produce one target and the
  187 # standard mig rules can be used
  188 
  189 
  190 MIG_HDRS        = ${EXC_FILE} 
  191 MIG_SRVS        = ${MACH_FILE} ${MACH_PORT_FILE} \
  192                   ${MACH_HOST_FILE} ${MACH_DEBUG_FILE} \
  193                   ${DEVICE_FILE} ${DEVICE_PAGER_FILE} \
  194                   ${DEFAULT_PAGER_OBJECT_FILE} \
  195                   ${MACH_NORMA_FILE} \
  196                   ${NORMA_INTERNAL_FILE} \
  197                   ${MACH4_FILE}
  198 
  199 EXC_FILE                                = mach/exc.h
  200 ${EXC_FILE}_MIGFLAGS                    = ${MIGKUFLAGS}
  201 
  202 MACH_FILE                               = mach/mach_server.c
  203 ${MACH_FILE}_MIGFLAGS                   = ${MIGKSFLAGS}
  204 ${MACH_FILE}_MIGSDEF                    = mach/mach.defs
  205 
  206 MACH_PORT_FILE                          = mach/mach_port_server.c
  207 ${MACH_PORT_FILE}_MIGFLAGS              = ${MIGKSFLAGS}
  208 ${MACH_PORT_FILE}_MIGSDEF               = mach/mach_port.defs
  209 
  210 MACH_HOST_FILE                          = mach/mach_host_server.c
  211 ${MACH_HOST_FILE}_MIGFLAGS              = ${MIGKSFLAGS}
  212 ${MACH_HOST_FILE}_MIGSDEF               = mach/mach_host.defs
  213 
  214 MACH_DEBUG_FILE                         = mach_debug/mach_debug_server.c
  215 ${MACH_DEBUG_FILE}_MIGFLAGS             = ${MIGKSFLAGS}
  216 ${MACH_DEBUG_FILE}_MIGSDEF              = mach_debug/mach_debug.defs
  217 
  218 DEVICE_FILE                             = device/device_server.c
  219 ${DEVICE_FILE}_MIGFLAGS                 = ${MIGKSFLAGS}
  220 ${DEVICE_FILE}_MIGSDEF                  = device/device.defs
  221 
  222 DEVICE_PAGER_FILE                       = device/device_pager_server.c
  223 ${DEVICE_PAGER_FILE}_MIGFLAGS           = ${MIGKSFLAGS}
  224 ${DEVICE_PAGER_FILE}_MIGSDEF            = mach/memory_object.defs
  225 
  226 DEFAULT_PAGER_OBJECT_FILE               = mach/default_pager_object_server.c
  227 ${DEFAULT_PAGER_OBJECT_FILE}_MIGFLAGS   = ${MIGKSFLAGS}
  228 ${DEFAULT_PAGER_OBJECT_FILE}_MIGSDEF    = mach/default_pager_object.defs
  229 
  230 MACH_NORMA_FILE                         = mach/mach_norma_server.c
  231 ${MACH_NORMA_FILE}_MIGFLAGS             = ${MIGKSFLAGS}
  232 ${MACH_NORMA_FILE}_MIGSDEF              = mach/mach_norma.defs
  233 
  234 NORMA_INTERNAL_FILE                     = mach/norma_internal_server.c
  235 ${NORMA_INTERNAL_FILE}_MIGFLAGS         = ${MIGKSFLAGS}
  236 ${NORMA_INTERNAL_FILE}_MIGSDEF          = norma/norma_internal.defs
  237 
  238 MACH4_FILE                              = mach/mach4_server.c
  239 ${MACH4_FILE}_MIGFLAGS                  = ${MIGKSFLAGS}
  240 ${MACH4_FILE}_MIGSDEF                   = mach/mach4.defs
  241 
  242 #
  243 #  LDOBJS is the set of object files which comprise the kernel.
  244 #  LDOBJS_PREFIX and LDOBJS_SUFFIX are defined in the machine
  245 #  dependent Makefile (if necessary).
  246 #
  247 LDOBJS=${LDOBJS_PREFIX} ${OBJS} ${LDOBJS_SUFFIX}
  248 
  249 #
  250 #  LDDEPS is the set of extra dependencies associated with
  251 #  loading the kernel.
  252 #
  253 #  LDDEPS_PREFIX is defined in the machine dependent Makefile
  254 #  (if necessary).
  255 #
  256 LDDEPS=${LDDEPS_PREFIX}
  257 
  258 
  259 LDDEPS          =${LDDEPS_PREFIX} 
  260 
  261 #
  262 #  These macros are filled in by the config program depending on the
  263 #  current configuration.  The MACHDEP macro is replaced by the
  264 #  contents of the machine dependent makefile template and the others
  265 #  are replaced by the corresponding symbol definitions for the
  266 #  configuration.
  267 #
  268 
  269 %OBJS
  270 
  271 %CFILES
  272 
  273 %CFLAGS
  274 
  275 %SFILES
  276 
  277 %BFILES
  278 
  279 %ORDERED
  280 
  281 
  282 #  All macro definitions should be before this point,
  283 #  so that the machine dependent fragment can redefine the macros.
  284 #  All rules (that use macros) should be after this point,
  285 #  so that they pick up any redefined macro values.
  286 
  287 %MACHDEP
  288 
  289 
  290 .include <${RULES_MK}>
  291 
  292 # drop the standard .y .l and other suffixes which are not used
  293 # in the kernel to save time
  294 
  295 .SUFFIXES:
  296 .SUFFIXES:  .o .s .c .b .X .out .h
  297 
  298 #
  299 #  OBJSDEPS is the set of files (defined in the machine dependent
  300 #  template if necessary) which all objects depend on (such as an
  301 #  in-line assembler expansion filter
  302 #
  303 
  304 ${OBJS}: ${OBJSDEPS}
  305 
  306 .PRECIOUS: Makefile
  307 
  308 #
  309 # The machine dependent template.mk may define the load flags
  310 # so this is only a default value.
  311 
  312 MK_LDFLAGS      ?= ${${TARGET_MACHINE}_LDFLAGS:U${LDFLAGS}}
  313 
  314 NEWVERS_DEPS = \
  315         conf/version.major \
  316         conf/version.variant \
  317         conf/version.edit \
  318         conf/version.patch \
  319         conf/newvers.sh \
  320         conf/copyright
  321 
  322 VERSION_FILES_SOURCE = \
  323         ${conf/version.major:P} \
  324         ${conf/version.variant:P} \
  325         ${conf/version.edit:P} \
  326         ${conf/version.patch:P}
  327 
  328 
  329 ${MACH_KERNEL}: ${PRELDDEPS} ${LDOBJS} ${LDDEPS} ${SYSDEPS} \
  330                 ${CC_DEPS_NORMAL} ${NEWVERS_DEPS} LINKKERNEL
  331 
  332 # The relink rule allows you to relink the kernel without checking
  333 #  all the dependencies. 
  334 
  335 relink: ${MACH_KERNEL}.relink
  336 
  337 ${MACH_KERNEL}.relink: ${LDDEPS} ${NEWVERS_DEPS} LINKKERNEL MAKEBOOT
  338 
  339 
  340 #  We create vers.c/vers.o right here so that the timestamp in vers.o
  341 #  always reflects the time that the kernel binary is actually created.
  342 #  We link the kernel binary to "mach_kernel" so that there is a short name
  343 #  for the most recently created binary in the object directory.
  344 
  345 LINKKERNEL:     .USE
  346         @echo "creating vers.o"
  347         @${RM} -f vers.c vers.o
  348         @sh ${conf/newvers.sh:P} ${conf/copyright:P} `cat ${VERSION_FILES_SOURCE}`
  349         @${_CC_} -c ${_CCFLAGS_} vers.c
  350         @${RM} -f ${MACH_KERNEL} ${MACH_KERNEL}.out ${MACH_KERNEL}.unstripped
  351         @echo "loading ${MACH_KERNEL}"
  352         ${_LD_} -o ${MACH_KERNEL}.out ${MK_LDFLAGS} \
  353                 ${LDOBJS} vers.o ${LIBS} ${LDLIBS} && \
  354                 ${MV} ${MACH_KERNEL}.out ${MACH_KERNEL}.unstripped
  355         -${SIZE} ${MACH_KERNEL}.unstripped
  356         ${CP} ${MACH_KERNEL}.unstripped ${MACH_KERNEL}.out
  357         ${XSTRIP} ${MACH_KERNEL}.out && ${MV} ${MACH_KERNEL}.out ${MACH_KERNEL}
  358         @${RM} -f mach_kernel
  359         ln ${MACH_KERNEL} mach_kernel
  360         ${CP} ${MACH_KERNEL} ${EXPORTBASE}/special/${MACH_KERNEL}
  361 
  362 
  363 
  364 # mach.boot is made with makeboot, which combines a kernel image
  365 # and a bootstrap image to produce a single bootable image.
  366 # The sh mess does generates a dependency on makeboot 
  367 #
  368 # Just as ${MACH_KERNEL} is linked to mach_kernel,
  369 # ${MACH_BOOT} is linked to mach.boot.
  370 
  371 # NB: ${MACH_KERNEL} is xstripped; That is the one we want
  372 
  373 bootstrap       = ${EXPORTBASE}/special/${BOOTSTRAP}
  374 ${MACH_BOOT} : ${MACH_KERNEL} ${bootstrap} MAKEBOOT
  375 
  376 MAKEBOOT:       .USE
  377         @echo "${MACH_BOOT}: $${makeboot}"  >> ${MACH_BOOT}.d; \
  378         echo "[ generating ${MACH_BOOT} from ${MACH_KERNEL} and ${bootstrap} ]"; 
  379         makeboot="`${WH} -q makeboot`"; \
  380         ${RM} -f ${MACH_BOOT} mach.boot; \
  381         $${makeboot} -o ${MACH_BOOT} ${MACH_KERNEL} ${bootstrap} && \
  382         ln ${MACH_BOOT} mach.boot
  383         cp ${MACH_BOOT} ${EXPORTBASE}/special/${MACH_BOOT}
  384 
  385 
  386 ${OBJS}: ${OBJSDEPS}
  387 
  388 # Use the standard rules with slightly non-standard .IMPSRC
  389 
  390 ${COBJS}: $${$${.TARGET}_SOURCE}
  391 
  392 ${SOBJS}: $${$${.TARGET}_SOURCE}
  393 
  394 ${BOBJS}: $${$${.TARGET}_SOURCE}
  395 
  396 
  397 #
  398 #  Rules for components which are not part of the kernel proper or that
  399 #  need to be built in a special manner.
  400 #
  401 
  402 # genassym needs to be preprocessed as for the target machine but run
  403 # on the host machine.  In order to get the correct predefines it is
  404 # necessary to use the target preprocessor.
  405 
  406 HOST_INCDIRS    = ${INCDIRS}
  407 HOST_CFLAGS     = ${DEFINES}
  408 HOST_LDFLAGS    = ${LDFLAGS}
  409 genassym_CCTYPE = host
  410 
  411 xxx_genassym.c: ${KERN_MACHINE_DIR}/genassym.c
  412         ${ansi_CPP} -P ${_CCFLAGS_}  ${${KERN_MACHINE_DIR}/genassym.c:P} > xxx_genassym.c
  413         cat /dev/null >> genassym.d
  414         sed 's/^genassym\.o/xxx_genassym.c/' genassym.d > xxx_genassym.c.d;
  415         ${RM} -f genassym.d
  416 
  417 genassym: xxx_genassym.c
  418         ( LPATH="${_host_LPATH_}"; export LPATH; \
  419          ${HOST_CC}  ${_CC_CFLAGS_} -o  genassym.X xxx_genassym.c )
  420         ${MV} genassym.X genassym
  421 
  422 #
  423 #  Special dependencies for locore.
  424 #
  425 
  426 assym.s: genassym
  427         ./genassym > ${.TARGET}
  428 
  429 locore.o: assym.s ${LOCORE_HEADS}
  430 
  431 # Make all the directories in the object directory
  432 
  433 .BEGIN:
  434         -makepath ${MKODIRS}
  435 
  436 vm_pageout.o: mach/memory_object_user.h mach/memory_object_default.h
  437 
  438 vm_object.o: mach/memory_object_user.h mach/memory_object_default.h
  439 
  440 vm_fault.o: mach/memory_object_user.h
  441 
  442 memory_object.o: mach/memory_object_user.h
  443 
  444 exception.o: mach/exc.h
  445 
  446 dev_pager.o : device/device_pager_server.c mach/mach_user_kernel.h
  447 
  448 chario.o : device/device_reply.h
  449 
  450 ds_routines.o : device/device_reply.h
  451 
  452 mach_timer.o: mach/mach_timer_reply.h
  453 
  454 #  The Mig-generated files go into subdirectories.
  455 #  and have non-standard names. Also mig rules that build
  456 #  multiple targets have to generate an intermediate "timestamp"
  457 #  target that the final targets can depend on in order 
  458 #  to avoid being run redundently
  459 
  460 
  461 MACH_KU_FUNCS = \
  462         memory_object_data_provided memory_object_data_unavailable \
  463         memory_object_data_error memory_object_set_attributes \
  464         memory_object_data_supply memory_object_ready \
  465         memory_object_change_attributes
  466 
  467 MACH_KU_FFILES = ${MACH_KU_FUNCS:@.F.@mach/${.F.}.c@}
  468 MACH_KU_FILES = mach/mach_user_kernel.h $(MACH_KU_FFILES)
  469 
  470 $(MACH_KU_FILES): mach_stamp
  471 mach_stamp: mach/mach.defs
  472         @echo ""
  473         @touch mach_stamp
  474         ${MIG} ${_MIGKUFLAGS_} \
  475             -header mach/mach_user_kernel.h \
  476             -i mach/ -user '$$(MACH_KU_FFILES)' \
  477             -server /dev/null \
  478                 ${mach/mach.defs:P}
  479 
  480 MEMORY_OBJECT_FILES = mach/memory_object_user.h mach/memory_object_user.c
  481 
  482 ${MEMORY_OBJECT_FILES}: memory_object_stamp
  483 memory_object_stamp: mach/memory_object.defs
  484         @echo ""
  485         @touch memory_object_stamp
  486         ${MIG}  ${_MIGKUFLAGS_} -DSEQNOS \
  487                 -header mach/memory_object_user.h\
  488                 -user mach/memory_object_user.c\
  489                 -server /dev/null \
  490                 ${mach/memory_object.defs:P} 
  491 
  492 
  493 MEMORY_OBJECT_DEFAULT_FILES = mach/memory_object_default.h \
  494         mach/memory_object_default_user.c
  495 
  496 ${MEMORY_OBJECT_DEFAULT_FILES}: memory_object_default_stamp
  497 memory_object_default_stamp: mach/memory_object_default.defs
  498         @echo ""
  499         @touch memory_object_default_stamp
  500         ${MIG}  ${_MIGKUFLAGS_} -DSEQNOS \
  501                 -header mach/memory_object_default.h\
  502                 -user mach/memory_object_default_user.c\
  503                 -server /dev/null \
  504                 ${mach/memory_object_default.defs:P}
  505 
  506 PROXY_FILES = mach/proxy.h mach/proxy_user.c mach/proxy_server.c
  507 
  508 $(PROXY_FILES): xmm_proxy_stamp
  509 xmm_proxy_stamp: norma/xmm_proxy.defs
  510         @touch xmm_proxy_stamp
  511         @echo ""
  512         $(MIG)  $(_MIGKUFLAGS_) \
  513                 -header mach/proxy.h \
  514                 -user mach/proxy_user.c \
  515                 -server /dev/null \
  516                 ${norma/xmm_proxy.defs:P}
  517         $(MIG)  $(_MIGKSFLAGS_) \
  518                 -header /dev/null \
  519                 -user /dev/null \
  520                 -server mach/proxy_server.c \
  521                 ${norma/xmm_proxy.defs:P}
  522 
  523 DEVKUSER_FILES = mach/dev_forward.c mach/dev_forward.h
  524 
  525 ${DEVKUSER_FILES}: dev_forward_stamp
  526 dev_forward_stamp: device/dev_forward.defs
  527         @touch dev_forward_stamp
  528         @echo ""
  529         ${MIG}  ${_MIGKUFLAGS_}\
  530                 -header mach/dev_forward.h\
  531                 -user mach/dev_forward.c\
  532                 -server /dev/null\
  533                 ${device/dev_forward.defs:P}
  534 
  535 
  536 DEVICE_REPLY_FILES = device/device_reply.h device/device_reply_user.c
  537 
  538 ${DEVICE_REPLY_FILES}: device_reply_stamp
  539 device_reply_stamp: device/device_reply.defs
  540         @touch device_reply_stamp
  541         @echo ""
  542         ${MIG}  ${_MIGKUFLAGS_}\
  543                 -header device/device_reply.h\
  544                 -user device/device_reply_user.c\
  545                 -server /dev/null\
  546                 ${device/device_reply.defs:P}
  547 
  548 MACH_NORMA_USER_FILES   = mach/mach_norma.h mach/mach_norma_user.c
  549 
  550 ${MACH_NORMA_USER_FILES}: mach_norma_user_stamp
  551 mach_norma_user_stamp: mach/mach_norma.defs
  552         @touch mach_norma_user_stamp
  553         @echo "" 
  554         $(MIG)  $(_MIGKUFLAGS_) \
  555             -header mach/mach_norma.h \
  556             -user mach/mach_norma_user.c \
  557             -server /dev/null \
  558                 ${mach/mach_norma.defs:P}
  559 
  560 NORMA_INTERNAL_USER_FILES = mach/norma_internal.h mach/norma_internal_user.c
  561 
  562 $(NORMA_INTERNAL_USER_FILES): norma_internal_stamp
  563 norma_internal_stamp: norma/norma_internal.defs
  564         @touch norma_internal_stamp
  565         @echo ""
  566         $(MIG)  $(_MIGKUFLAGS_) \
  567             -header mach/norma_internal.h \
  568             -user mach/norma_internal_user.c \
  569             -server /dev/null \
  570                 ${norma/norma_internal.defs:P}
  571 
  572 MACH_USER_FILES = mach/mach_user.h mach/mach_user.c
  573 
  574 ${MACH_USER_FILES}: mach_user_stamp
  575 mach_user_stamp: mach/mach.defs
  576         @touch mach_user_stamp
  577         @echo ""
  578         ${MIG} ${_MIGKUFLAGS_} \
  579                 -header mach/mach_user.h \
  580                 -user mach/mach_user.c \
  581                 -server /dev/null \
  582                 ${mach/mach.defs:P}
  583 
  584 
  585 MACH_TIMER_USER_FILES = mach/mach_timer_reply.h mach/mach_timer_reply_user.c
  586 
  587 ${MACH_TIMER_USER_FILES}: mach_timer_reply_stamp
  588 mach_timer_reply_stamp: mach/mach_timer_reply.defs
  589         @touch mach_timer_reply_stamp
  590         @echo ""
  591         ${MIG}  ${_MIGKUFLAGS_}\
  592                 -header mach/mach_timer_reply.h\
  593                 -user mach/mach_timer_reply_user.c\
  594                 -server /dev/null\
  595                 ${mach/mach_timer_reply.defs:P}

Cache object: 2d2f7f257e95cc878408529696de3b44


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.