Print this page
8114 EOF rwho
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/head/Makefile
+++ new/usr/src/head/Makefile
1 1 #
2 2 # CDDL HEADER START
3 3 #
4 4 # The contents of this file are subject to the terms of the
5 5 # Common Development and Distribution License (the "License").
6 6 # You may not use this file except in compliance with the License.
7 7 #
8 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 # or http://www.opensolaris.org/os/licensing.
10 10 # See the License for the specific language governing permissions
11 11 # and limitations under the License.
12 12 #
13 13 # When distributing Covered Code, include this CDDL HEADER in each
14 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 15 # If applicable, add the following below this CDDL HEADER, with the
16 16 # fields enclosed by brackets "[]" replaced with your own identifying
17 17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 18 #
19 19 # CDDL HEADER END
20 20 #
21 21
22 22 #
23 23 # Copyright 2010 Sun Microsystems, Inc. All rights reserved.
24 24 # Use is subject to license terms.
25 25 # Copyright 2013 Garrett D'Amore <garrett@damore.org>
26 26 # Copyright 2015 Igor Kozhukhov <ikozhukhov@gmail.com>
27 27 # Copyright 2016 Nexenta Systems, Inc.
28 28 #
29 29
30 30 #
31 31 # head/Makefile
32 32 #
33 33 # include global definitions
34 34 include ../Makefile.master
35 35
36 36 sparc_HDRS=
37 37 i386_HDRS= stack_unwind.h
38 38
39 39 # Headers are listed one per line so that TeamWare can auto-merge most changes
40 40
41 41 KRB5HDRS= mit_copyright.h mit-sipb-copyright.h
42 42
43 43 ATTRDB_HDRS= secdb.h auth_attr.h exec_attr.h prof_attr.h user_attr.h \
44 44 auth_list.h
45 45
46 46 HDRS= $($(MACH)_HDRS) $(ATTRDB_HDRS) \
47 47 aio.h \
48 48 alloca.h \
49 49 apptrace.h \
50 50 apptrace_impl.h \
51 51 ar.h \
52 52 archives.h \
53 53 assert.h \
54 54 atomic.h \
55 55 attr.h \
56 56 complex.h \
57 57 config_admin.h \
58 58 cpio.h \
59 59 crypt.h \
60 60 ctype.h \
61 61 deflt.h \
62 62 devid.h \
63 63 devmgmt.h \
64 64 devpoll.h \
65 65 dial.h \
66 66 dirent.h \
67 67 dlfcn.h \
68 68 door.h \
69 69 elf.h \
70 70 endian.h \
71 71 err.h \
72 72 errno.h \
73 73 euc.h \
74 74 exacct.h \
75 75 exacct_impl.h \
76 76 execinfo.h \
77 77 fatal.h \
78 78 fcntl.h \
79 79 fenv.h \
80 80 float.h \
81 81 floatingpoint.h \
82 82 fmtmsg.h \
83 83 fnmatch.h \
84 84 ftw.h \
85 85 gelf.h \
86 86 getopt.h \
87 87 getwidth.h \
88 88 glob.h \
89 89 grp.h \
90 90 iconv.h \
91 91 ieeefp.h \
92 92 ifaddrs.h \
93 93 inttypes.h \
94 94 iso646.h \
95 95 klpd.h \
96 96 langinfo.h \
97 97 lastlog.h \
98 98 lber.h \
99 99 ldap.h \
100 100 libelf.h \
101 101 libgen.h \
102 102 libintl.h \
103 103 libw.h \
104 104 libzonecfg.h \
105 105 limits.h \
106 106 linenum.h \
107 107 link.h \
108 108 listen.h \
109 109 locale.h \
110 110 macros.h \
111 111 malloc.h \
112 112 math.h \
113 113 memory.h \
114 114 mon.h \
115 115 monetary.h \
116 116 mp.h \
117 117 mqueue.h \
118 118 nan.h \
119 119 ndbm.h \
120 120 ndpd.h \
121 121 netconfig.h \
122 122 netdb.h \
123 123 netdir.h \
124 124 nl_types.h \
125 125 nlist.h \
126 126 note.h \
127 127 nsctl.h \
128 128 nsswitch.h \
129 129 nss_common.h \
130 130 nss_dbdefs.h \
131 131 nss_netdir.h \
132 132 paths.h \
133 133 pcsample.h \
134 134 pfmt.h \
135 135 pkgdev.h \
136 136 pkginfo.h \
137 137 pkglocs.h \
138 138 pkgstrct.h \
139 139 pkgtrans.h \
140 140 poll.h \
141 141 port.h \
142 142 priv.h \
143 143 priv_utils.h \
144 144 proc_service.h \
145 145 procfs.h \
146 146 prof.h \
147 147 project.h \
148 148 pthread.h \
149 149 pw.h \
150 150 pwd.h \
151 151 rctl.h \
152 152 re_comp.h \
153 153 regex.h \
154 154 regexp.h \
155 155 resolv.h \
156 156 rje.h \
157 157 rtld_db.h \
158 158 sac.h \
159 159 sched.h \
160 160 schedctl.h \
161 161 search.h \
162 162 semaphore.h \
163 163 setjmp.h \
164 164 sgtty.h \
165 165 shadow.h \
166 166 siginfo.h \
167 167 signal.h \
168 168 spawn.h \
169 169 stdalign.h \
170 170 stdarg.h \
171 171 stdbool.h \
172 172 stddef.h \
173 173 stdint.h \
174 174 stdio.h \
175 175 stdio_ext.h \
176 176 stdio_tag.h \
177 177 stdio_impl.h \
178 178 stdlib.h \
179 179 stdnoreturn.h \
180 180 storclass.h \
181 181 string.h \
182 182 strings.h \
183 183 stropts.h \
184 184 synch.h \
185 185 sysexits.h \
186 186 syslog.h \
187 187 syms.h \
188 188 tar.h \
189 189 termio.h \
190 190 termios.h \
191 191 tgmath.h \
192 192 thread.h \
193 193 thread_db.h \
194 194 threads.h \
195 195 time.h \
196 196 tiuser.h \
197 197 tzfile.h \
198 198 ucontext.h \
199 199 ucred.h \
200 200 ulimit.h \
201 201 unistd.h \
202 202 userdefs.h \
203 203 ustat.h \
204 204 utime.h \
205 205 utmp.h \
206 206 utmpx.h \
207 207 valtools.h \
208 208 values.h \
209 209 varargs.h \
210 210 wait.h \
211 211 wchar.h \
212 212 wchar_impl.h \
213 213 wctype.h \
214 214 widec.h \
215 215 wordexp.h \
216 216 xlocale.h \
217 217 xti.h \
218 218 xti_inet.h \
219 219 zone.h
220 220
221 221 ISOHDRS = \
222 222 ctype_iso.h \
223 223 limits_iso.h \
224 224 locale_iso.h \
225 225 math_c99.h \
226 226 math_iso.h \
227 227 setjmp_iso.h \
228 228 signal_iso.h \
229 229 stdarg_c99.h \
230 230 stdarg_iso.h \
231 231 stddef_iso.h \
232 232 stdio_c99.h \
233 233 stdio_iso.h \
234 234 stdlib_c99.h \
235 235 stdlib_c11.h \
236 236 stdlib_iso.h \
237 237 string_iso.h \
238 238 time_iso.h \
239 239 wchar_c99.h \
240 240 wchar_iso.h \
241 241 wctype_iso.h
242 242
243 243 ARPAHDRS = \
244 244 ftp.h \
245 245 inet.h \
246 246 nameser.h \
247 247 telnet.h \
248 248 tftp.h \
249 249 nameser_compat.h
250 250
251 251 AUDIOHDRS = \
252 252 au.h
253 253
254 254 UUIDHDRS = \
255 255 uuid.h
256 256
257 257 # rpcsvc headers which are just headers (not derived from a .x file)
258 258 RPCSVC_SRC_HDRS = \
259 259 bootparam.h \
260 260 daemon_utils.h \
261 261 dbm.h \
262 262 nis_db.h \
263 263 nislib.h \
264 264 svc_dg_priv.h \
265 265 yp_prot.h \
266 266 ypclnt.h \
267 267 yppasswd.h \
268 268 ypupd.h \
269 269 rpc_sztypes.h
270 270
271 271 # rpcsvc headers which are generated from .x files
272 272 RPCSVC_GEN_HDRS = \
273 273 bootparam_prot.h \
274 274 mount.h \
275 275 nfs_prot.h \
276 276 nfs4_prot.h \
277 277 nis.h \
278 278 rquota.h \
279 279 rstat.h \
280 280 rusers.h \
281 281 rwall.h \
282 282 spray.h \
283 283 ufs_prot.h \
284 284 nfs_acl.h
285 285
286 286 SYMHDRASSERT = $(ROOT)/usr/include/iso/assert_iso.h
287 287 SYMHDRERRNO = $(ROOT)/usr/include/iso/errno_iso.h
288 288 SYMHDRFLOAT = $(ROOT)/usr/include/iso/float_iso.h
289 289 SYMHDRISO646 = $(ROOT)/usr/include/iso/iso646_iso.h
290 290
291 291 RPCGENFLAGS = -C -h
292 292 rpcsvc/rwall.h := RPCGENFLAGS += -M
293 293
294 294 # rpcsvc rpcgen source (.x files)
295 295 #
296 296 # yp.x is an attempt at codifying what was hand coded in RPCL.
297 297 # Unfortunately it doesn't quite work. (The handcoded stuff isn't
298 298 # expressable in RPCL) this is due to the fact that YP was written
↓ open down ↓ |
298 lines elided |
↑ open up ↑ |
299 299 # before rpcgen existed. Hence, yp_prot.h cannot be derived from yp.x
300 300 #
301 301 # There is no `.h' for nis_object.x because it is included by nis.x and
302 302 # the resulting .h is nis.h.
303 303
304 304 RPCSVCPROTS = \
305 305 $(RPCSVC_GEN_HDRS:%.h=%.x) nis_object.x yp.x
306 306
307 307 RPCSVCHDRS= $(RPCSVC_SRC_HDRS) $(RPCSVC_GEN_HDRS)
308 308
309 -PROTOHDRS= dumprestore.h routed.h ripngd.h rwhod.h timed.h
309 +PROTOHDRS= dumprestore.h routed.h ripngd.h timed.h
310 310
311 311 ROOTHDRS= $(HDRS:%=$(ROOT)/usr/include/%) \
312 312 $(KRB5HDRS:%=$(ROOT)/usr/include/kerberosv5/%) \
313 313 $(ISOHDRS:%=$(ROOT)/usr/include/iso/%) \
314 314 $(ARPAHDRS:%=$(ROOT)/usr/include/arpa/%) \
315 315 $(AUDIOHDRS:%=$(ROOT)/usr/include/audio/%) \
316 316 $(UUIDHDRS:%=$(ROOT)/usr/include/uuid/%) \
317 317 $(RPCSVCHDRS:%=$(ROOT)/usr/include/rpcsvc/%) \
318 318 $(RPCSVCPROTS:%=$(ROOT)/usr/include/rpcsvc/%) \
319 319 $(PROTOHDRS:%=$(ROOT)/usr/include/protocols/%)
320 320
321 321 DIRS= iso arpa audio rpcsvc protocols security uuid kerberosv5
322 322 ROOTDIRS= $(DIRS:%=$(ROOT)/usr/include/%)
323 323
324 324 # check files really don't exist
325 325 #
326 326 # should do something with the rpcsvc headers
327 327
328 328 iso/%.check: iso/%.h
329 329 $(DOT_H_CHECK)
330 330
331 331 arpa/%.check: arpa/%.h
332 332 $(DOT_H_CHECK)
333 333
334 334 audio/%.check: audio/%.h
335 335 $(DOT_H_CHECK)
336 336
337 337 rpcsvc/%.check: rpcsvc/%.h
338 338 $(DOT_H_CHECK)
339 339
340 340 rpcsvc/%.check: rpcsvc/%.x
341 341 $(DOT_X_CHECK)
342 342
343 343 protocols/%.check: protocols/%.h
344 344 $(DOT_H_CHECK)
345 345
346 346 kerberosv5/%.check: kerberosv5/%.h
347 347 $(DOT_H_CHECK)
348 348
349 349 uuid/%.check: uuid/%.h
350 350 $(DOT_H_CHECK)
351 351
352 352 # Note that the derived headers (rpcgen) are not checked at this time. These
353 353 # need work at the source level and rpcgen itself has a bug which causes a
354 354 # cstyle violation. Furthermore, there seems to be good reasons for the
355 355 # generated headers to not pass all of the hdrchk rules.
356 356 #
357 357 # Add the following to the CHECKHDRS list to activate the .x checks:
358 358 # $(RPCSVCPROTS:%.x=rpcsvc/%.check) \
359 359 #
360 360 CHECKHDRS= $(HDRS:%.h=%.check) \
361 361 $(KRB5HDRS:%.h=kerberosv5/%.check) \
362 362 $(ISOHDRS:%.h=iso/%.check) \
363 363 $(ARPAHDRS:%.h=arpa/%.check) \
364 364 $(AUDIOHDRS:%.h=audio/%.check) \
365 365 $(UUIDHDRS:%.h=uuid/%.check) \
366 366 $(RPCSVC_SRC_HDRS:%.h=rpcsvc/%.check) \
367 367 $(PROTOHDRS:%.h=protocols/%.check)
368 368
369 369 # headers which won't quite meet the standards...
370 370 #
371 371 # assert.h is required by ansi-c to *not* be idempotent (section 4.1.2).
372 372 # Hence the trailing guard is not the last thing in the file nor can it
373 373 # be without playing silly games.
374 374
375 375 assert.check := HDRCHK_TAIL = | grep -v "end guard wrong" | true
376 376
377 377 # install rules
378 378
379 379 $(ROOT)/usr/include/security/%: security/%
380 380 $(INS.file)
381 381
382 382 $(ROOT)/usr/include/protocols/%: protocols/%
383 383 $(INS.file)
384 384
385 385 $(ROOT)/usr/include/rpcsvc/%: rpcsvc/%
386 386 $(INS.file)
387 387
388 388 $(ROOT)/usr/include/kerberosv5/%: kerberosv5/%
389 389 $(INS.file)
390 390
391 391 $(ROOT)/usr/include/arpa/%: arpa/%
392 392 $(INS.file)
393 393
394 394 $(ROOT)/usr/include/audio/%: audio/%
395 395 $(INS.file)
396 396
397 397 $(ROOT)/usr/include/iso/%: iso/%
398 398 $(INS.file)
399 399
400 400 $(ROOT)/usr/include/uuid/%: uuid/%
401 401 $(INS.file)
402 402
403 403 $(ROOT)/usr/include/%: %
404 404 $(INS.file)
405 405
406 406 .KEEP_STATE:
407 407
408 408 .PARALLEL: $(ROOTHDRS) $(CHECKHDRS)
409 409
410 410 install_h: $(ROOTDIRS) .WAIT $(ROOTHDRS) $(SYMHDRASSERT) $(SYMHDRERRNO) \
411 411 $(SYMHDRFLOAT) $(SYMHDRISO646)
412 412
413 413 check: $(CHECKHDRS)
414 414
415 415 clean clobber:
416 416 cd rpcsvc ; $(RM) $(RPCSVC_GEN_HDRS)
417 417
418 418 $(ROOTDIRS):
419 419 $(INS.dir)
420 420
421 421 $(SYMHDRASSERT):
422 422 -$(RM) $@; $(SYMLINK) ../assert.h $@
423 423
424 424 $(SYMHDRERRNO):
425 425 -$(RM) $@; $(SYMLINK) ../errno.h $@
426 426
427 427 $(SYMHDRFLOAT):
428 428 -$(RM) $@; $(SYMLINK) ../float.h $@
429 429
430 430 $(SYMHDRISO646):
431 431 -$(RM) $@; $(SYMLINK) ../iso646.h $@
432 432
433 433 rpcsvc/%.h: rpcsvc/%.x
434 434 $(RPCGEN) $(RPCGENFLAGS) $< -o $@
435 435
436 436 rpcsvc/nis.h: rpcsvc/nis.x
437 437 $(RPCGEN) $(RPCGENFLAGS) rpcsvc/nis.x |\
438 438 $(SED) -e '/EDIT_START/,$$ d' > $@
↓ open down ↓ |
119 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX