|
|
1.1 root 1: #
2: # Makefile template for use by driverkit-based driver projects.
3: #
4:
5: MAKEFILEDIR = $(MAKEFILEPATH)/pb_makefiles
6: include $(MAKEFILEDIR)/platform.make
7:
8: BUILD_NAME={IOStub,printerdriver,...}
9:
10: #
11: # Destination of installed binaries and headers.
12: #
13: INSTALL_BIN_DIR=
14: INSTALL_HDR_DIR=
15:
16: #
17: # Options to install.
18: #
19: INSTALLFLAGS=
20:
21: #
22: # Define target architectures.
23: # MACHINE_LIST is the list of architectures to be build for during "make all"
24: # and "make install" if RC_ARCHS is not specified in the Make command
25: # line and RC_ARCHS_LOCAL is not specified in this Makefile.
26: # RC_ARCHS_LOCAL, if specified, overrides RC_ARCHS. This allows builds
27: # to be limited to a particular architecture in case of fat RC
28: # builds.
29: # TARGET_LIST specifies the types of build to be performed during
30: # "make all" and "make install".
31: # MACHINE and 'first' specify the architecture and type of build for a default
32: # 'make' with no arguments.
33: # INSTALL_TARGETS and INSTALL_MACHINES specify the actual target and machine
34: # combinations installed in INSTALL_DIR by the 'make install' target.
35: #
36: # Note that INSTALL_TARGETS and INSTALL_MACHINES must be subsets of
37: # TARGET_LIST and MACHINE_LIST, respectively. Either one (or both)
38: # can be null, resulting in no installation.
39: #
40: # Possible values of 'first', TARGET_LIST, and INSTALL_TARGETS are:
41: #
42: # release -- user executable
43: # debug -- user executable, DEBUG
44: # relocrelease -- kern-loadable
45: # relocdebug -- kern_loadable, DEBUG
46: #
47: MACHINE_LIST= i386
48: TARGET_LIST= debug release
49: MACHINE= i386
50: INSTALL_TARGETS= release
51: INSTALL_MACHINES= i386
52: first: debug
53:
54: #
55: # Define machine-dependent subdirectories. Leave commented out if none.
56: #
57: #SOURCE_SUBDIRS=
58:
59: #
60: # Optional CFLAGS for cc runs.
61: #
62: DEBUG_CFLAGS=
63: RELEASE_CFLAGS=
64:
65: #
66: # Specify LD and *_LDFLAGS for either executable or relocatable.
67: #
68: # For generating relocatable .o:
69: #
70: #LD= /bin/ld
71: #DEBUG_LDFLAGS= -r
72: #RELEASE_LDFLAGS= -r
73:
74: #
75: # For generating executable:
76: #
77: LD= /bin/cc
78: DEBUG_LDFLAGS=
79: RELEASE_LDFLAGS=
80:
81: #
82: # Options to kl_ld for generating kern-loadable.
83: #
84: KL_DEBUG_FLAGS= -d IOStub_loadable
85: KL_RELEASE_FLAGS=
86:
87: #
88: # Specify name of load_commands and unload_commands text files for
89: # kern-loadable module.
90: #
91: LOAD_COMMANDS= Load_Commands.sect
92: UNLOAD_COMMANDS= Unload_Commands.sect
93:
94: #
95: # Define these for generating a kern_loadable relocatable.
96: #
97: SERVER_NAME=IOStub
98: KS_VAR_NAME=stub_var
99:
100: #
101: # The ld run for executables and the kl_ld run for kern_loadable modules
102: # depend on this target.
103: #
104: OTHER_DEPENDS=
105:
106: #
107: # Additional files to be cleaned.
108: #
109: OTHER_CLEAN_FILES=
110:
111: #
112: # Additional directories in which to search for source files.
113: #
114: OPT_VPATH=
115:
116: #
117: # Specify the source files common to all machines.
118: #
119: COMMON_MFILES=
120: COMMON_CFILES=
121: COMMON_PUBLIC_HFILES=
122: COMMON_PRIVATE_HFILES=
123:
124: #
125: # one set of source files sharing a common name in the machine-dependent
126: # build directories.
127: #
128: MACHINE_COMMON_CFILES=
129: MACHINE_COMMON_MFILES=
130:
131: #
132: # optionally, additional source files specific to each machine.
133: #
134: # 88k specific...
135: m88k_CFILES=
136: m88k_MFILES=
137: # 68k specific...
138: m68k_CFILES=
139: m68k_MFILES=
140: # i386 specific...
141: i386_CFILES=
142: i386_MFILES=
143:
144: #
145: # User, kernel, and kern-loadable specific source.
146: #
147: USER_MFILES=
148: USER_CFILES=
149: KERNEL_MFILES=
150: KERNEL_CFILES=
151: LOADABLE_MFILES=
152: LOADABLE_CFILES=
153:
154: #
155: # Other files to installsrc.
156: #
157: OTHER_SOURCE=
158:
159: #
160: # Other install rules (invoked as dependency, so this executes before
161: # the main install rule).
162: #
163: other_install: always
164:
165: #
166: # Libraries. These may be overridden, deleted, or appended to.
167: #
168: LIB_DIR= /usr/lib/
169:
170: RELEASE_LIBS= $(LIB_DIR)/libDriver.a
171: DEBUG_LIBS= $(LIB_DIR)/libDriver_g.a
172: RELEASE_KERN_LIBS=
173: DEBUG_KERN_LIBS=
174:
175: #
176: # This does the rest.
177: #
178: -include $(NEXT_ROOT)$(SYSTEM_DEVELOPER_DIR)/Makefiles/driverkit/Makefile.device_common
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.