|
|
1.1 root 1: #
2: # Makefile for kernel loadable version of IOStub
3: #
4: BUILD_NAME=myHandler
5: INSTALL_BIN_DIR=
6: INSTALL_HDR_DIR=
7: INSTALLFLAGS=
8:
9: #
10: # Define target architectures.
11: # MACHINE_LIST is the list of architectures to be build for during "make all"
12: # and "make install" if RC_ARCHS is not specified.
13: # TARGET_LIST specify the type of build to be performed during "make all" and
14: # "make install".
15: # MACHINE and first specify the architecture and type of build for a default
16: # 'make' with no arguments.
17: #
18: # Possible values of 'first' and TARGET_LIST are:
19: #
20: # release -- user executable
21: # debug -- user executable, DEBUG
22: # kernrelease -- .o to be linked into kernel code
23: # kerndebug -- .o to be linked into kernel code, DEBUG
24: # relocrelease -- kern-loadable
25: # relocdebug -- kern_loadable, DEBUG
26: #
27: MACHINE_LIST= m88k
28: TARGET_LIST= relocdebug
29: MACHINE= m88k
30: INSTALL_TARGETS=
31: INSTALL_MACHINES=
32:
33: first: relocdebug
34:
35: #
36: # Define machine-dependent subdirectories. Leave commented out if none.
37: #
38: #SOURCE_SUBDIRS=
39:
40: #
41: # Optional CFLAGS for cc runs.
42: #
43: #DEBUG_CFLAGS=
44: #RELEASE_CFLAGS=
45: #
46: # These are for local build within the driverkit project...
47: #
48: DEBUG_CFLAGS= -I../../..
49: RELEASE_CFLAGS= -I../../..
50:
51: # For generating relocatable .o:
52: #
53: #LD= /bin/ld
54: #DEBUG_LDFLAGS= -r
55: #RELEASE_LDFLAGS= -r
56:
57: #
58: # For generating executable:
59: #
60: LD= /bin/cc
61: DEBUG_LDFLAGS=
62: RELEASE_LDFLAGS=
63:
64: #
65: # Options to kl_ld for generating kern-loadable.
66: #
67: KL_DEBUG_FLAGS= -d myHandler_loadable
68: KL_RELEASE_FLAGS=
69:
70: #
71: # Define these for generating a kern_loadable relocatable.
72: #
73: SERVER_NAME= myHandler
74: KS_VAR_NAME= myHandlerInstance
75:
76: MIG_DERIVED= myHandlerHandler.c
77: #
78: # The kl_ld run for kern_loadable module depends on this. It is
79: # typically used to do a mig run.
80: #
81: OTHER_DEPENDS= $(OBJROOT)/$(BUILD_DIR)/$(MIG_DERIVED)
82:
83: MIG_SOURCE= myHandler.defs
84:
85: #
86: # Copy the mig source down the the build directory...
87: #
88: $(OBJROOT)/$(BUILD_DIR)/$(MIG_DERIVED): $(MIG_SOURCE)
89: rm -f $(OBJROOT)/$(BUILD_DIR)/$(MIG_DERIVED) \
90: $(OBJROOT)/$(BUILD_DIR)/$(MIG_SOURCE)
91: cp $(MIG_SOURCE) $(OBJROOT)/$(BUILD_DIR)
92: (cd $(OBJROOT)/$(BUILD_DIR); \
93: mig $(MIG_SOURCE) -handler $(MIG_DERIVED) \
94: -sheader myHandlerHandler.h -user /dev/null \
95: -header myHandler.h )
96:
97: #
98: # Specify name of load_commands and unload_commands text files for
99: # kern-loadable module.
100: #
101: LOAD_COMMANDS= Load_Commands.sect
102: UNLOAD_COMMANDS= Unload_Commands.sect
103:
104: #
105: # Specify the source files common to all machines.
106: #
107: COMMON_MFILES= myHandler.m myDevice.m
108: COMMON_CFILES= myHandlerHandler.c
109: COMMON_PUBLIC_HFILES=
110: COMMON_PRIVATE_HFILES= myHandler.h myDevice.h
111:
112: #
113: # one set of source files sharing a common name in the machine-dependent
114: # build directories.
115: #
116: MACHINE_COMMON_CFILES=
117: MACHINE_COMMON_MFILES=
118:
119: #
120: # optionally, additional source files specific to each machine.
121: #
122: # 88k specific...
123: m88k_CFILES=
124: m88k_MFILES=
125: # 68k specific...
126: m68k_CFILES=
127: m68k_MFILES=
128: # i386 specific...
129: i386_CFILES=
130: i386_MFILES=
131:
132: #
133: # User, kernel, and kern-loadable specific source.
134: #
135: USER_MFILES=
136: USER_CFILES=
137: KERNEL_MFILES=
138: KERNEL_CFILES=
139:
140: #
141: # Other files to installsrc.
142: #
143: OTHER_SOURCE= Load_Commands.sect Unload_Commands.sect $(MIG_SOURCE)
144:
145: #
146: # Other files to clean.
147: #
148: OTHER_CLEAN_FILES= myHandlerHandler.c
149:
150: #
151: # Other install rules (invoked as dependency, so this executes before
152: # the main install rule).
153: #
154: other_install: always
155:
156: #
157: # Libraries. These may be overridden, deleted, or appended to.
158: #
159: RELEASE_LIBS=
160: DEBUG_LIBS=
161: #RELEASE_KERN_LIBS= $(SYMROOT)/../../libDriver/syms/libDriver_kern.o
162: #DEBUG_KERN_LIBS= $(SYMROOT)/../../libDriver/syms/libDriver_kern_g.o
163: RELEASE_KERN_LIBS=
164: DEBUG_KERN_LIBS=
165:
166: #
167: # Typically there is nothing to install; public header files are in
168: # ../driverkit and binaries are linked into libDriver. This can be overridden
169: # to install an executable, though.
170: #
171: install: $(TARGETS)
172:
173: #
174: # This does the rest.
175: #
176: -include ../../../MakefileDir/Makefile.device_common
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.