# # Copyright (c) 2000-2004 Apple Computer, Inc. All rights reserved. # # @APPLE_LICENSE_HEADER_START@ # # The contents of this file constitute Original Code as defined in and # are subject to the Apple Public Source License Version 1.1 (the # "License"). You may not use this file except in compliance with the # License. Please obtain a copy of the License at # http://www.apple.com/publicsource and read it before using this file. # # This Original Code and all software distributed under the License are # distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER # EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, # INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the # License for the specific language governing rights and limitations # under the License. # # @APPLE_LICENSE_HEADER_END@ # # # Mach Operating System # Copyright (c) 1986 Carnegie-Mellon University # All rights reserved. The CMU software License Agreement specifies # the terms and conditions for use and redistribution. # # # Export IDENT for sub-makefiles # export IDENT export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir include $(MakeInc_cmd) include $(MakeInc_def) # # XXX: CFLAGS # CFLAGS+= -imacros meta_features.h -DARCH_PRIVATE -DKERNEL -DDRIVER_PRIVATE \ -D_KERNEL_BUILD -DKERNEL_BUILD -DMACH_KERNEL -DBSD_BUILD \ -DBSD_KERNEL_PRIVATE -DLP64KERN=1 -DLP64_DEBUG=0 -I. $(CFLAGS_INLINE_CONFIG) # # Directories for mig generated files # COMP_SUBDIRS = # # Make sure we don't remove this by accident if interrupted at the wrong # time. # .PRECIOUS: Makefile # # Theses macros are filled in by the config program depending on the # current configuration. The MACHDEP macro is replaced by the # contents of the machine dependent makefile template and the others # are replaced by the corresponding symbol definitions for the # configuration. # %OBJS %CFILES %MFILES %SFILES %BFILES %ORDERED %MACHDEP # # This rule insures that the subr_prof.c does NOT get compiled with # profiling. It implements mcount() and profiling it leads to recursion. # subr_prof.o_CFLAGS_RM = -pg # # OBJSDEPS is the set of files (defined in the machine dependent # template if necessary) which all objects depend on (such as an # in-line assembler expansion filter) # ${OBJS}: ${OBJSDEPS} %LOAD LDOBJS = $(OBJS) $(COMPONENT).o: $(LDOBJS) @echo LDFILELIST $(COMPONENT) $(_v)( for obj in ${LDOBJS}; do \ echo $(TARGET)$(COMP_OBJ_DIR)/$(KERNEL_CONFIG)/$${obj}; \ done; ) > $(COMPONENT).o MAKESYSCALLS = $(SRCROOT)/bsd/kern/makesyscalls.sh init_sysent.c: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS) @echo "Generating $@ from $<"; $(_v)$(MAKESYSCALLS) $< table > /dev/null syscalls.c: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS) @echo "Generating $@ from $<"; $(_v)$(MAKESYSCALLS) $< names > /dev/null audit_kevents.c: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS) @echo "Generating $@ from $<"; $(_v)$(MAKESYSCALLS) $< audit > /dev/null do_depend: do_all $(_v)${MD} -u Makedep -f -d `ls *.d`; do_all: $(COMPONENT).o do_build_all: do_depend %RULES include $(MakeInc_rule) include $(MakeInc_dir)