|
|
1.1 ! root 1: # ! 2: # Mach Operating System ! 3: # Copyright (c) 1986 Carnegie-Mellon University ! 4: # All rights reserved. The CMU software License Agreement specifies ! 5: # the terms and conditions for use and redistribution. ! 6: # ! 7: ! 8: # ! 9: # Export IDENT for sub-makefiles ! 10: # ! 11: export IDENT ! 12: ! 13: # ! 14: # XXX: INCFLAGS to include libsa prototypes ! 15: # ! 16: INCFLAGS_MAKEFILE= -I$(SOURCE)libsa ! 17: ! 18: export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd ! 19: export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def ! 20: export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule ! 21: export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir ! 22: ! 23: include $(MakeInc_cmd) ! 24: include $(MakeInc_def) ! 25: ! 26: # ! 27: # XXX: CFLAGS ! 28: # ! 29: CFLAGS+= -DMACH_KERNEL_PRIVATE ! 30: ! 31: # ! 32: # Directories for mig generated files ! 33: # ! 34: COMP_SUBDIRS = \ ! 35: default_pager \ ! 36: device \ ! 37: mach_debug \ ! 38: mach ! 39: ! 40: COMP_SUBDIRS_I386 = \ ! 41: mach ! 42: ! 43: # ! 44: # Make sure we don't remove this by accident if interrupted at the wrong ! 45: # time. ! 46: # ! 47: .PRECIOUS: Makefile ! 48: ! 49: VERSION_FILES= \ ! 50: $(SOURCE_DIR)/$(COMPONENT)/conf/version.major \ ! 51: $(SOURCE_DIR)/$(COMPONENT)/conf/version.minor \ ! 52: $(SOURCE_DIR)/$(COMPONENT)/conf/version.variant ! 53: ! 54: COPYRIGHT_FILES = \ ! 55: $(SOURCE_DIR)/$(COMPONENT)/conf/copyright.osf \ ! 56: $(SOURCE_DIR)/$(COMPONENT)/conf/copyright.cmu ! 57: ! 58: # ! 59: # Theses macros are filled in by the config program depending on the ! 60: # current configuration. The MACHDEP macro is replaced by the ! 61: # contents of the machine dependent makefile template and the others ! 62: # are replaced by the corresponding symbol definitions for the ! 63: # configuration. ! 64: # ! 65: ! 66: %OBJS ! 67: ! 68: %CFILES ! 69: ! 70: %MFILES ! 71: ! 72: %SFILES ! 73: ! 74: %BFILES ! 75: ! 76: %ORDERED ! 77: %MACHDEP ! 78: ! 79: # ! 80: # OBJSDEPS is the set of files (defined in the machine dependent ! 81: # template if necessary) which all objects depend on (such as an ! 82: # in-line assembler expansion filter) ! 83: # ! 84: ${OBJS}: ${OBJSDEPS} ! 85: ! 86: ! 87: %LOAD ! 88: ! 89: LDOBJS = $(OBJS) ! 90: ! 91: $(COMPONENT).o: $(LDOBJS) assym.s ! 92: @echo "[ creating $(COMPONENT).o ]" ! 93: $(RM) $(RMFLAGS) vers.c ! 94: $(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/newvers \ ! 95: `$(CAT) ${VERSION_FILES}` ${COPYRIGHT_FILES} ! 96: ${KCC} $(CFLAGS) $(INCLUDES) -c vers.c ! 97: @echo [ updating $(COMPONENT).o ${OSFMK_KERNEL_CONFIG} ] ! 98: $(LD) $(LDFLAGS_COMPONENT) -o $(COMPONENT).o ${LDOBJS} vers.o ! 99: ! 100: do_depend: ! 101: ${MD} -u Makedep -f -d `ls *.d`; ! 102: ! 103: do_all: $(COMPONENT).o ! 104: ! 105: .ORDER: do_all do_depend ! 106: ! 107: do_build_all: do_all do_depend ! 108: ! 109: # genassym.o actually is an assembly file, ! 110: # we name it genassym.o to help with the automatic ! 111: # dependency generation ! 112: ! 113: genassym.o: $(SOURCE_DIR)/$(COMPONENT)/$(arch_config)/genassym.c ! 114: ${KCC} ${CFLAGS} -MD ${_HOST_EXTRA_CFLAGS} -S -o ${@} -c ${INCFLAGS} $< ! 115: ! 116: assym.s: genassym.o ! 117: sed -e '/#DEFINITION#/!d' -e 's/^.*#DEFINITION#//' -e 's/\$$//' genassym.o > ${@} ! 118: ! 119: ${SOBJS}: assym.s ! 120: ! 121: ! 122: %RULES ! 123: ! 124: -include Makedep ! 125: ! 126: include $(MakeInc_rule) ! 127: include $(MakeInc_dir) ! 128:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.