]> git.saurik.com Git - apple/libc.git/blob - gen/Makefile.inc
cfa49114ba20710a7863b0831ba60771559549fd
[apple/libc.git] / gen / Makefile.inc
1 # @(#)Makefile.inc 8.6 (Berkeley) 5/4/95
2 # $FreeBSD: src/lib/libc/gen/Makefile.inc,v 1.80 2001/08/17 22:09:15 dd Exp $
3
4 .ifnmake autopatch
5 # machine-dependent gen sources
6 .if exists(${.CURDIR}/${MACHINE_ARCH}/gen/Makefile.inc)
7 .include "${.CURDIR}/${MACHINE_ARCH}/gen/Makefile.inc"
8 .endif
9 .endif # !autopatch
10
11 # machine-independent gen sources
12 .PATH: ${.CURDIR}/gen
13
14 CFLAGS += -I${.CURDIR}/gen
15
16 GENMIGDEFS += asl_ipc.defs
17 GENMIGHDRS += ${GENMIGDEFS:.defs=.h}
18 GENMIGSRCS += ${GENMIGDEFS:.defs=User.c}
19
20 MISRCS += ${GENMIGSRCS} NSSystemDirectories.c OSSystemInfo.c \
21 asl.c asl_util.c \
22 backtrace.c \
23 cache.c confstr.c crypt.c devname.c disklabel.c errlst.c \
24 filesec.c fts.c \
25 get_compat.c getloadavg.c getttyent.c getusershell.c getvfsbyname.c \
26 isinf.c isnan.c \
27 malloc.c nanosleep.c nftw.c nlist.c scalable_malloc.c setlogin.c \
28 sigsetops.c _simple.c stack_logging.c stack_logging_disk.c strtofflags.c syslog.c \
29 thread_stack_pcs.c uname.c utmpx-darwin.c wordexp.c zone.c
30
31 # Force these files to build after the mig stuff
32 asl.So asl.po asl.do asl.o: asl_ipcUser.c
33 utmpx-darwin.So utmpx-darwin.po utmpx-darwin.do utmpx-darwin.o: asl_ipcUser.c
34
35 CLEANFILES += ${GENMIGHDRS} ${GENMIGSRCS} ${GENMIGDEFS:.defs=Server.c}
36
37 PRECFLAGS-asl.c = -I${OBJROOT}
38 LOCALHDRS += ${.CURDIR}/gen/asl_private.h ${.CURDIR}/gen/_simple.h ${.CURDIR}/gen/stack_logging.h
39
40 CFLAGS-confstr.c += -I${.CURDIR}/darwin
41
42 CFLAGS-glob-fbsd.c += -UDEBUG
43
44 # 4840357: workaround for compiler failure building libc_debug.a
45 .if make(lib${LIB}_debug.a)
46 CFLAGS-scalable_malloc.c += -funit-at-a-time
47 .endif
48
49 # also build 64-bit long double versions (ppc only)
50 LDBLSRCS += asl.c err.c syslog.c
51
52 .include "Makefile.fbsd_begin"
53 FBSDMISRCS = _rand48.c alarm.c arc4random.c assert.c \
54 basename.c clock.c closedir.c ctermid.c \
55 daemon.c dirname.c drand48.c erand48.c err.c errno_.c exec.c \
56 fmtcheck.c fmtmsg.c fnmatch.c ftok.c \
57 getbsize.c getcap.c getcwd.c gethostname.c getpeereid.c \
58 getlogin.c getmntinfo.c getpagesize.c getprogname.c glob.c isatty.c \
59 jrand48.c lcong48.c lockf.c lrand48.c mrand48.c nice.c nrand48.c \
60 opendir.c pause.c popen.c pselect.c psignal.c raise.c readdir.c \
61 readpassphrase.c rewinddir.c scandir.c seed48.c seekdir.c \
62 sethostname.c setmode.c setprogname.c siginterrupt.c siglist.c \
63 signal.c sleep.c srand48.c stringlist.c sysconf.c sysctl.c \
64 sysctlbyname.c sysctlnametomib.c \
65 telldir.c termios.c time.c times.c \
66 ttyname.c ttyslot.c ualarm.c ulimit.c unvis.c usleep.c utime.c vis.c \
67 wait.c wait3.c waitpid.c
68
69 # special case: getmntinfo64-fbsd.c is derived from getmntinfo.c with getmntinfo64.c.patch
70 .ifmake autopatch
71 AUTOPATCHSRCS+= getmntinfo64-fbsd.c
72 getmntinfo64-fbsd.c: FreeBSD/getmntinfo.c
73 cp ${.ALLSRC} ${.TARGET}
74 patch ${.TARGET} ${.ALLSRC:S/getmntinfo/getmntinfo64/}.patch
75 .else # !autopatch
76 MISRCS+= getmntinfo64.c
77 .endif # autopatch
78
79 PRE1050SRCS+= daemon.c
80 .ifdef LP64
81 PRE1050SRCS+= pselect.c
82 .else # !LP64
83 # only patch timezone.c; don't build in base variant, but in other variants
84 FBSDPATCHSRCS += timezone.c
85 .endif
86 FBSDHDRS = rand48.h telldir.h
87 .include "Makefile.fbsd_end"
88
89 .include "Makefile.nbsd_begin"
90 NBSDMISRCS = utmpx.c
91 .include "Makefile.nbsd_end"
92
93 # private header files
94 INSTHDRS += ${.CURDIR}/gen/get_compat.h \
95 ${.CURDIR}/gen/execinfo.h
96 PRIV_INSTHDRS += ${.CURDIR}/gen/stack_logging.h
97
98 LEGACYSRCS += clock.c closedir.c confstr.c crypt.c fnmatch.c \
99 lockf.c nanosleep.c nftw.c nice.c opendir.c \
100 pause.c pselect.c rewinddir.c \
101 seekdir.c sleep.c telldir.c termios.c timezone.c ttyname.c \
102 usleep.c wait.c waitpid.c
103 INODE32SRCS += fts.c getmntinfo.c glob.c nftw.c opendir.c \
104 readdir.c rewinddir.c scandir.c seekdir.c telldir.c
105 CANCELABLESRCS += lockf.c nanosleep.c pause.c pselect.c sleep.c termios.c \
106 usleep.c wait.c waitpid.c
107 CANCELABLE-DARWINEXTSNSRCS += pselect.c
108 DARWINEXTSNSRCS += pselect.c
109
110 # include __dirent.h to rename DIR structure elements
111 .for _src in closedir-fbsd.c opendir-fbsd.c readdir-fbsd.c rewinddir-fbsd.c \
112 scandir-fbsd.c seekdir-fbsd.c telldir-fbsd.c
113 CFLAGS-${_src} += -I${.CURDIR}/gen -include __dirent.h
114 .endfor
115
116 # ppc optimizer hacks:
117 #drand48-fbsd.c is better with -O1 than -Os.
118 #erand48-fbsd.c is better with -O3 than -Os.
119 .if !make(lib${LIB}_debug.a)
120 .if (${MACHINE_ARCH} == ppc)
121 OPTIMIZE-drand48-fbsd.c += -O1
122 OPTIMIZE-erand48-fbsd.c += -O3
123 .endif
124 .endif
125
126 # set the LIBC_ALIAS_* macros so we can decorate the symbol independent
127 # of other macro settings
128 CFLAGS-clock-fbsd.c += -DLIBC_ALIAS_CLOCK
129 CFLAGS-closedir-fbsd.c += -DLIBC_ALIAS_CLOSEDIR
130 CFLAGS-confstr.c += -DLIBC_ALIAS_CONFSTR
131 CFLAGS-crypt.c += -DLIBC_ALIAS_ENCRYPT -DLIBC_ALIAS_SETKEY
132 CFLAGS-fnmatch-fbsd.c += -DLIBC_ALIAS_FNMATCH
133 CFLAGS-fts.c += -DLIBC_ALIAS_FTS_CHILDREN -DLIBC_ALIAS_FTS_CLOSE -DLIBC_ALIAS_FTS_OPEN -DLIBC_ALIAS_FTS_READ -DLIBC_ALIAS_FTS_SET
134 CFLAGS-glob-fbsd.c += -DLIBC_ALIAS_GLOB
135 CFLAGS-lockf-fbsd.c += -DLIBC_ALIAS_LOCKF
136 CFLAGS-nanosleep.c += -DLIBC_ALIAS_NANOSLEEP
137 CFLAGS-nftw.c += -DLIBC_ALIAS_FTW -DLIBC_ALIAS_NFTW
138 CFLAGS-nice-fbsd.c += -DLIBC_ALIAS_NICE
139 CFLAGS-opendir-fbsd.c += -DLIBC_ALIAS___OPENDIR2 -DLIBC_ALIAS_OPENDIR
140 CFLAGS-rewinddir-fbsd.c += -DLIBC_ALIAS_REWINDDIR
141 CFLAGS-pause-fbsd.c += -DLIBC_ALIAS_PAUSE
142 CFLAGS-seekdir-fbsd.c += -DLIBC_ALIAS_SEEKDIR
143 CFLAGS-sleep-fbsd.c += -DLIBC_ALIAS_SLEEP
144 CFLAGS-telldir-fbsd.c += -DLIBC_ALIAS__SEEKDIR -DLIBC_ALIAS_TELLDIR
145 CFLAGS-termios-fbsd.c += -DLIBC_ALIAS_TCDRAIN
146 CFLAGS-ttyname-fbsd.c += -DLIBC_ALIAS_TTYNAME_R
147 CFLAGS-usleep-fbsd.c += -DLIBC_ALIAS_USLEEP
148 CFLAGS-wait-fbsd.c += -DLIBC_ALIAS_WAIT
149 CFLAGS-waitpid-fbsd.c += -DLIBC_ALIAS_WAITPID
150
151 .if ${LIB} == "c"
152
153 MAN3 += asl.3 \
154 backtrace.3 \
155 confstr.3 crypt.3 devname.3 directory.3 fts.3 ftw.3 \
156 getdomainname.3 getloadavg.3 \
157 getttyent.3 getusershell.3 getvfsbyname.3 \
158 malloc.3 malloc_size.3 nlist.3 \
159 pwcache.3 setjmp.3 sigsetops.3 strtofflags.3 syslog.3 \
160 tcgetpgrp.3 tcsendbreak.3 tcsetattr.3 tcsetpgrp.3 tzset.3 \
161 uname.3 wordexp.3 intro.3
162
163 MAN5 += compat.5
164
165 .include "Makefile.fbsd_begin"
166 FBSDMAN3= alarm.3 arc4random.3 basename.3 clock.3 ctermid.3 \
167 daemon.3 dirname.3 err.3 exec.3 \
168 fmtcheck.3 fmtmsg.3 fnmatch.3 ftok.3 \
169 getbsize.3 getcap.3 getcontext.3 getcwd.3 \
170 gethostname.3 getmntinfo.3 getpagesize.3 getpass.3 \
171 getpeereid.3 getprogname.3 glob.3 \
172 isgreater.3 lockf.3 makecontext.3 nice.3 \
173 pause.3 popen.3 pselect.3 psignal.3 \
174 raise.3 rand48.3 readpassphrase.3 \
175 scandir.3 setmode.3 \
176 siginterrupt.3 signal.3 signbit.3 sleep.3 \
177 stringlist.3 sysconf.3 sysctl.3 \
178 time.3 times.3 timezone.3 ttyname.3 \
179 ualarm.3 ucontext.3 ulimit.3 unvis.3 usleep.3 utime.3 \
180 vis.3
181 .include "Makefile.fbsd_end"
182
183 .include "Makefile.nbsd_begin"
184 NBSDMAN3= endutxent.3 getlastlogx.3
185 NBSDMAN5= utmpx.5
186 .include "Makefile.nbsd_end"
187
188 MLINKS+= arc4random.3 arc4random_addrandom.3 \
189 arc4random.3 arc4random_stir.3
190
191 MLINKS+= asl.3 asl_add_log_file.3 \
192 asl.3 asl_close.3 \
193 asl.3 asl_free.3 \
194 asl.3 asl_get.3 \
195 asl.3 asl_key.3 \
196 asl.3 asl_log.3 \
197 asl.3 asl_new.3 \
198 asl.3 asl_open.3 \
199 asl.3 asl_remove_log_file.3 \
200 asl.3 asl_search.3 \
201 asl.3 asl_send.3 \
202 asl.3 asl_set.3 \
203 asl.3 asl_set_filter.3 \
204 asl.3 asl_set_query.3 \
205 asl.3 asl_unset.3 \
206 asl.3 asl_vlog.3 \
207 asl.3 aslresponse_free.3 \
208 asl.3 aslresponse_next.3
209
210 MLINKS+= backtrace.3 backtrace_symbols.3 \
211 backtrace.3 backtrace_symbols_fd.3
212
213 MLINKS+= crypt.3 encrypt.3 \
214 crypt.3 setkey.3
215
216 MLINKS+= ctermid.3 ctermid_r.3
217
218 MLINKS+= devname.3 devname_r.3
219
220 MLINKS+= directory.3 closedir.3 \
221 directory.3 dirfd.3 \
222 directory.3 opendir.3 \
223 directory.3 readdir.3 \
224 directory.3 readdir_r.3 \
225 directory.3 rewinddir.3 \
226 directory.3 seekdir.3 \
227 directory.3 telldir.3
228
229 MLINKS+= endutxent.3 getutxent.3 \
230 endutxent.3 getutxid.3 \
231 endutxent.3 getutxline.3 \
232 endutxent.3 pututxline.3 \
233 endutxent.3 setutxent.3
234
235 MLINKS+= err.3 err_set_exit.3 \
236 err.3 err_set_file.3 \
237 err.3 errc.3 \
238 err.3 errx.3 \
239 err.3 verr.3 \
240 err.3 verrc.3 \
241 err.3 verrx.3 \
242 err.3 vwarn.3 \
243 err.3 vwarnc.3 \
244 err.3 vwarnx.3 \
245 err.3 warn.3 \
246 err.3 warnc.3 \
247 err.3 warnx.3
248
249 MLINKS+= exec.3 execl.3 \
250 exec.3 execle.3 \
251 exec.3 execlp.3 \
252 exec.3 execv.3 \
253 exec.3 execvp.3
254
255 MLINKS+= fts.3 fts_children.3 \
256 fts.3 fts_close.3 \
257 fts.3 fts_open.3 \
258 fts.3 fts_read.3 \
259 fts.3 fts_set.3
260
261 MLINKS+= ftw.3 nftw.3
262
263 MLINKS+= getcap.3 cgetcap.3 \
264 getcap.3 cgetclose.3 \
265 getcap.3 cgetent.3 \
266 getcap.3 cgetfirst.3 \
267 getcap.3 cgetmatch.3 \
268 getcap.3 cgetnext.3 \
269 getcap.3 cgetnum.3 \
270 getcap.3 cgetset.3 \
271 getcap.3 cgetstr.3 \
272 getcap.3 cgetustr.3
273
274 MLINKS+= getcontext.3 setcontext.3
275
276 MLINKS+= getcwd.3 getwd.3
277
278 MLINKS+= getdomainname.3 setdomainname.3
279
280 MLINKS+= getlastlogx.3 getlastlogxbyname.3 \
281 getlastlogx.3 getutmp.3 \
282 getlastlogx.3 getutmpx.3 \
283 getlastlogx.3 utmpxname.3
284
285 MLINKS+= gethostname.3 sethostname.3
286
287 MLINKS+= getprogname.3 setprogname.3
288
289 MLINKS+= getttyent.3 endttyent.3 \
290 getttyent.3 getttynam.3 \
291 getttyent.3 setttyent.3
292
293 MLINKS+= getusershell.3 endusershell.3 \
294 getusershell.3 setusershell.3
295
296 MLINKS+= glob.3 globfree.3
297
298 MLINKS+= isgreater.3 isgreaterequal.3 \
299 isgreater.3 isless.3 \
300 isgreater.3 islessequal.3 \
301 isgreater.3 islessgreater.3 \
302 isgreater.3 isunordered.3
303
304 MLINKS+= malloc.3 calloc.3 \
305 malloc.3 free.3 \
306 malloc.3 realloc.3 \
307 malloc.3 reallocf.3 \
308 malloc.3 valloc.3
309
310 MLINKS+= makecontext.3 swapcontext.3
311
312 MLINKS+= malloc_size.3 malloc_good_size.3
313
314 MLINKS+= popen.3 pclose.3
315
316 MLINKS+= psignal.3 sys_siglist.3 \
317 psignal.3 sys_signame.3
318
319 MLINKS+= psignal.3 strsignal.3 \
320 psignal.3 sys_siglist.3 \
321 psignal.3 sys_signame.3
322
323 MLINKS+= pwcache.3 group_from_gid.3 \
324 pwcache.3 user_from_uid.3
325
326 MLINKS+= rand48.3 _rand48.3 \
327 rand48.3 drand48.3 \
328 rand48.3 erand48.3 \
329 rand48.3 jrand48.3 \
330 rand48.3 lcong48.3 \
331 rand48.3 lrand48.3 \
332 rand48.3 mrand48.3 \
333 rand48.3 nrand48.3 \
334 rand48.3 seed48.3 \
335 rand48.3 srand48.3
336
337 MLINKS+= scandir.3 alphasort.3
338
339 MLINKS+= strtofflags.3 fflagstostr.3
340
341 MLINKS+= setjmp.3 _longjmp.3 \
342 setjmp.3 _setjmp.3 \
343 setjmp.3 longjmp.3 \
344 setjmp.3 longjmperr.3 \
345 setjmp.3 longjmperror.3 \
346 setjmp.3 siglongjmp.3 \
347 setjmp.3 sigsetjmp.3
348
349 MLINKS+= setmode.3 getmode.3
350
351 MLINKS+= sigsetops.3 sigaddset.3 \
352 sigsetops.3 sigdelset.3 \
353 sigsetops.3 sigemptyset.3 \
354 sigsetops.3 sigfillset.3 \
355 sigsetops.3 sigismember.3
356
357 MLINKS+= stringlist.3 sl_add.3 \
358 stringlist.3 sl_find.3 \
359 stringlist.3 sl_free.3 \
360 stringlist.3 sl_init.3
361
362 MLINKS+= sysctl.3 sysctlbyname.3 \
363 sysctl.3 sysctlnametomib.3
364
365 MLINKS+= syslog.3 closelog.3 \
366 syslog.3 openlog.3 \
367 syslog.3 setlogmask.3 \
368 syslog.3 vsyslog.3
369
370 MLINKS+= tcsendbreak.3 tcdrain.3 \
371 tcsendbreak.3 tcflow.3 \
372 tcsendbreak.3 tcflush.3
373
374 MLINKS+= tcsetattr.3 cfgetispeed.3 \
375 tcsetattr.3 cfgetospeed.3 \
376 tcsetattr.3 cfmakeraw.3 \
377 tcsetattr.3 cfsetispeed.3 \
378 tcsetattr.3 cfsetospeed.3 \
379 tcsetattr.3 cfsetspeed.3 \
380 tcsetattr.3 tcgetattr.3
381
382 MLINKS+= ttyname.3 isatty.3 \
383 ttyname.3 ttyslot.3
384
385 MLINKS+= tzset.3 tzsetwall.3
386
387 MLINKS+= unvis.3 strunvis.3 \
388 unvis.3 strunvisx.3
389
390 MLINKS+= vis.3 strvis.3 \
391 vis.3 strvisx.3
392
393 MLINKS+= wordexp.3 wordfree.3
394 .endif