1#
2# This file and its contents are supplied under the terms of the
3# Common Development and Distribution License ("CDDL"), version 1.0.
4# You may only use this file in accordance with the terms of version
5# 1.0 of the CDDL.
6#
7# A full copy of the text of the CDDL should have accompanied this
8# source.  A copy of the CDDL is also available via the Internet at
9# http://www.illumos.org/license/CDDL.
10#
11
12#
13# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
14#
15
16# These macros should be kept synchronised with those in
17# usr/src/contrib/ast/src/lib/libast/Makefile
18
19AST_LICENSE = -o since=1985,author=gsf+dgk+kpv
20ASTLIB= libast
21ASTSRC= $(C_AST)/src/lib/$(ASTLIB)
22HDRGUARD= ast
23
24FEATURES= common lib sys fs tty standards param \
25	align api aso asometh botch ccode dirent eaccess errno \
26	fcntl float hack iconv libpath limits locale mmap \
27	mode ndbm nl_types omitted options preroot prog \
28	sfinit sfio sig siglist signal sizeof stdio \
29	syscall time tmlib tmx tv tvlib uwin vfork vmalloc wait \
30	wchar wctype map
31
32HEADERSTD= dirent.h iconv.h nl_types.h stdio.h wchar.h wctype.h
33
34HEADERSRC= \
35	ast.h ast_dir.h ast_getopt.h ast_std.h ast_namval.h ast_windows.h \
36	ccode.h cdt.h cdtlib.h cmdarg.h debug.h dt.h error.h find.h ftw.h \
37	ftwalk.h fts.h fs3d.h getopt.h glob.h hash.h hashkey.h hashpart.h \
38	ip6.h ls.h magic.h mc.h mime.h mnt.h modecanon.h modex.h \
39	namval.h option.h proc.h re_comp.h recfmt.h regex.h regexp.h \
40	sfio.h sfio_s.h sfio_t.h sfdisc.h shcmd.h \
41	stack.h stak.h stk.h swap.h tar.h times.h tm.h tok.h \
42	usage.h vdb.h vecargs.h vmalloc.h wait.h wordexp.h \
43	bytesex.h endian.h fnmatch.h magicid.h fnv.h aso.h \
44	$(HEADERSTD)
45
46HEADERGEN= \
47	align.h preroot.h sig.h tmx.h tv.h \
48	ast_api.h ast_botch.h ast_ccode.h ast_fcntl.h ast_float.h \
49	ast_fs.h ast_lib.h ast_map.h ast_mmap.h ast_mode.h ast_ndbm.h \
50	ast_param.h ast_sys.h ast_time.h ast_tty.h \
51	ast_vfork.h ast_wait.h ast_limits.h ast_standards.h ast_sizeof.h \
52	$(HEADERSTD:%=ast_%)
53
54HEADERINSTALL= $(HEADERSRC) $(HEADERGEN) ast_common.h lc.h prototyped.h
55
56LOBJDIRS= \
57	aso cdt comp dir disc hash misc obsolete path port preroot \
58	regex sfio stdio string tm uwin vec vmalloc
59
60LIBOBJS= \
61	aso/aso-fcntl.o \
62	aso/aso-sem.o \
63	aso/aso.o \
64	aso/asolock.o \
65	aso/asometh.o \
66	aso/asorelax.o \
67	cdt/dtclose.o \
68	cdt/dtcomp.o \
69	cdt/dtdisc.o \
70	cdt/dthash.o \
71	cdt/dtlist.o \
72	cdt/dtmethod.o \
73	cdt/dtnew.o \
74	cdt/dtopen.o \
75	cdt/dtstrhash.o \
76	cdt/dttree.o \
77	cdt/dtview.o \
78	cdt/dtwalk.o \
79	comp/atexit.o \
80	comp/basename.o \
81	comp/catopen.o \
82	comp/closelog.o \
83	comp/creat64.o \
84	comp/dirname.o \
85	comp/dup2.o \
86	comp/eaccess.o \
87	comp/errno.o \
88	comp/execlp.o \
89	comp/execve.o \
90	comp/execvp.o \
91	comp/execvpe.o \
92	comp/fcntl.o \
93	comp/fmtmsglib.o \
94	comp/fnmatch.o \
95	comp/frexp.o \
96	comp/frexpl.o \
97	comp/fsync.o \
98	comp/ftw.o \
99	comp/getdate.o \
100	comp/getgroups.o \
101	comp/getlogin.o \
102	comp/getopt.o \
103	comp/getoptl.o \
104	comp/getpgrp.o \
105	comp/getsubopt.o \
106	comp/getwd.o \
107	comp/gross.o \
108	comp/hsearch.o \
109	comp/iconv.o \
110	comp/killpg.o \
111	comp/link.o \
112	comp/localeconv.o \
113	comp/lstat.o \
114	comp/memccpy.o \
115	comp/memchr.o \
116	comp/memcmp.o \
117	comp/memcpy.o \
118	comp/memmove.o \
119	comp/memset.o \
120	comp/mkdir.o \
121	comp/mkfifo.o \
122	comp/mknod.o \
123	comp/mktemp.o \
124	comp/mktime.o \
125	comp/mount.o \
126	comp/nftw.o \
127	comp/omitted.o \
128	comp/open.o \
129	comp/openlog.o \
130	comp/putenv.o \
131	comp/re_comp.o \
132	comp/readlink.o \
133	comp/realpath.o \
134	comp/regcmp.o \
135	comp/regexp.o \
136	comp/remove.o \
137	comp/rename.o \
138	comp/resolvepath.o \
139	comp/rmdir.o \
140	comp/setenv.o \
141	comp/setlocale.o \
142	comp/setlogmask.o \
143	comp/setpgid.o \
144	comp/setsid.o \
145	comp/sigunblock.o \
146	comp/sigflag.o \
147	comp/spawnveg.o \
148	comp/statvfs.o \
149	comp/strcasecmp.o \
150	comp/strchr.o \
151	comp/strftime.o \
152	comp/strncasecmp.o \
153	comp/strptime.o \
154	comp/strrchr.o \
155	comp/strstr.o \
156	comp/strtod.o \
157	comp/strtol.o \
158	comp/strtold.o \
159	comp/strtoll.o \
160	comp/strtoul.o \
161	comp/strtoull.o \
162	comp/swab.o \
163	comp/symlink.o \
164	comp/syslog.o \
165	comp/system.o \
166	comp/tempnam.o \
167	comp/tmpnam.o \
168	comp/transition.o \
169	comp/tsearch.o \
170	comp/unlink.o \
171	comp/unsetenv.o \
172	comp/vfork.o \
173	comp/waitpid.o \
174	comp/wc.o \
175	comp/wordexp.o \
176	dir/getdents.o \
177	dir/opendir.o \
178	dir/readdir.o \
179	dir/rewinddir.o \
180	dir/seekdir.o \
181	dir/telldir.o \
182	disc/memfatal.o \
183	disc/sfdcdio.o \
184	disc/sfdcdos.o \
185	disc/sfdcfilter.o \
186	disc/sfdcmore.o \
187	disc/sfdcprefix.o \
188	disc/sfdcseekable.o \
189	disc/sfdcslow.o \
190	disc/sfdcsubstr.o \
191	disc/sfdctee.o \
192	disc/sfdcunion.o \
193	disc/sfkeyprintf.o \
194	disc/sfstrtmp.o \
195	hash/hashalloc.o \
196	hash/hashdump.o \
197	hash/hashfree.o \
198	hash/hashlast.o \
199	hash/hashlook.o \
200	hash/hashscan.o \
201	hash/hashsize.o \
202	hash/hashview.o \
203	hash/hashwalk.o \
204	hash/memhash.o \
205	hash/memsum.o \
206	hash/strhash.o \
207	hash/strkey.o \
208	hash/strsum.o \
209	misc/astintercept.o \
210	misc/conformance.o \
211	misc/debug.o \
212	misc/cmdarg.o \
213	misc/error.o \
214	misc/errorf.o \
215	misc/errormsg.o \
216	misc/errorx.o \
217	misc/fastfind.o \
218	misc/fmtrec.o \
219	misc/fs3d.o \
220	misc/fts.o \
221	misc/ftwalk.o \
222	misc/ftwflags.o \
223	misc/getcwd.o \
224	misc/getenv.o \
225	misc/glob.o \
226	misc/magic.o \
227	misc/mime.o \
228	misc/mimetype.o \
229	misc/optesc.o \
230	misc/optget.o \
231	misc/optjoin.o \
232	misc/optctx.o \
233	misc/procclose.o \
234	misc/procfree.o \
235	misc/procopen.o \
236	misc/procrun.o \
237	misc/recfmt.o \
238	misc/reclen.o \
239	misc/recstr.o \
240	misc/setenviron.o \
241	misc/sigcrit.o \
242	misc/sigdata.o \
243	misc/signal.o \
244	misc/stack.o \
245	misc/state.o \
246	misc/stk.o \
247	misc/systrace.o \
248	misc/translate.o \
249	misc/univdata.o \
250	obsolete/spawn.o \
251	path/pathaccess.o \
252	path/pathbin.o \
253	path/pathcanon.o \
254	path/pathcat.o \
255	path/pathcd.o \
256	path/pathcheck.o \
257	path/pathexists.o \
258	path/pathfind.o \
259	path/pathgetlink.o \
260	path/pathkey.o \
261	path/pathnative.o \
262	path/pathpath.o \
263	path/pathposix.o \
264	path/pathprobe.o \
265	path/pathprog.o \
266	path/pathrepl.o \
267	path/pathsetlink.o \
268	path/pathshell.o \
269	path/pathstat.o \
270	path/pathtemp.o \
271	path/pathtmp.o \
272	port/astconf.o \
273	port/astcopy.o \
274	port/astdynamic.o \
275	port/astlicense.o \
276	port/astquery.o \
277	port/aststatic.o \
278	port/astwinsize.o \
279	port/iblocks.o \
280	port/lc.o \
281	port/mc.o \
282	port/mnt.o \
283	port/touch.o \
284	preroot/getpreroot.o \
285	preroot/ispreroot.o \
286	preroot/realopen.o \
287	preroot/setpreroot.o \
288	regex/regalloc.o \
289	regex/regcache.o \
290	regex/regclass.o \
291	regex/regcoll.o \
292	regex/regcomp.o \
293	regex/regdecomp.o \
294	regex/regerror.o \
295	regex/regexec.o \
296	regex/regfatal.o \
297	regex/reginit.o \
298	regex/regnexec.o \
299	regex/regrecord.o \
300	regex/regrexec.o \
301	regex/regstat.o \
302	regex/regsub.o \
303	regex/regsubcomp.o \
304	regex/regsubexec.o \
305	sfio/_sfclrerr.o \
306	sfio/_sfdlen.o \
307	sfio/_sfeof.o \
308	sfio/_sferror.o \
309	sfio/_sffileno.o \
310	sfio/_sfgetc.o \
311	sfio/_sfgetl.o \
312	sfio/_sfgetl2.o \
313	sfio/_sfgetu.o \
314	sfio/_sfgetu2.o \
315	sfio/_sfllen.o \
316	sfio/_sfopen.o \
317	sfio/_sfputc.o \
318	sfio/_sfputd.o \
319	sfio/_sfputl.o \
320	sfio/_sfputm.o \
321	sfio/_sfputu.o \
322	sfio/_sfslen.o \
323	sfio/_sfstacked.o \
324	sfio/_sfulen.o \
325	sfio/_sfvalue.o \
326	sfio/sfclose.o \
327	sfio/sfclrlock.o \
328	sfio/sfcvt.o \
329	sfio/sfdisc.o \
330	sfio/sfdlen.o \
331	sfio/sfecvt.o \
332	sfio/sfexcept.o \
333	sfio/sfextern.o \
334	sfio/sffcvt.o \
335	sfio/sffilbuf.o \
336	sfio/sfflsbuf.o \
337	sfio/sfgetd.o \
338	sfio/sfgetl.o \
339	sfio/sfgetm.o \
340	sfio/sfgetr.o \
341	sfio/sfgetu.o \
342	sfio/sfllen.o \
343	sfio/sfmode.o \
344	sfio/sfmove.o \
345	sfio/sfmutex.o \
346	sfio/sfnew.o \
347	sfio/sfnotify.o \
348	sfio/sfnputc.o \
349	sfio/sfopen.o \
350	sfio/sfpeek.o \
351	sfio/sfpkrd.o \
352	sfio/sfpoll.o \
353	sfio/sfpool.o \
354	sfio/sfpopen.o \
355	sfio/sfprintf.o \
356	sfio/sfprints.o \
357	sfio/sfpurge.o \
358	sfio/sfputd.o \
359	sfio/sfputl.o \
360	sfio/sfputm.o \
361	sfio/sfputr.o \
362	sfio/sfputu.o \
363	sfio/sfraise.o \
364	sfio/sfrd.o \
365	sfio/sfread.o \
366	sfio/sfreserve.o \
367	sfio/sfresize.o \
368	sfio/sfscanf.o \
369	sfio/sfseek.o \
370	sfio/sfset.o \
371	sfio/sfsetbuf.o \
372	sfio/sfsetfd.o \
373	sfio/sfsize.o \
374	sfio/sfsk.o \
375	sfio/sfstack.o \
376	sfio/sfstrtod.o \
377	sfio/sfswap.o \
378	sfio/sfsync.o \
379	sfio/sftable.o \
380	sfio/sftell.o \
381	sfio/sftmp.o \
382	sfio/sfungetc.o \
383	sfio/sfvprintf.o \
384	sfio/sfvscanf.o \
385	sfio/sfwalk.o \
386	sfio/sfwr.o \
387	sfio/sfwrite.o \
388	stdio/_doprnt.o \
389	stdio/_doscan.o \
390	stdio/_filbuf.o \
391	stdio/_flsbuf.o \
392	stdio/_stdfun.o \
393	stdio/_stdopen.o \
394	stdio/_stdprintf.o \
395	stdio/_stdscanf.o \
396	stdio/_stdsprnt.o \
397	stdio/_stdvbuf.o \
398	stdio/_stdvsnprnt.o \
399	stdio/_stdvsprnt.o \
400	stdio/_stdvsscn.o \
401	stdio/asprintf.o \
402	stdio/clearerr.o \
403	stdio/fclose.o \
404	stdio/fcloseall.o \
405	stdio/fdopen.o \
406	stdio/feof.o \
407	stdio/ferror.o \
408	stdio/fflush.o \
409	stdio/fgetc.o \
410	stdio/fgetpos.o \
411	stdio/fgets.o \
412	stdio/fgetwc.o \
413	stdio/fgetws.o \
414	stdio/fileno.o \
415	stdio/flockfile.o \
416	stdio/fmemopen.o \
417	stdio/fopen.o \
418	stdio/fprintf.o \
419	stdio/fpurge.o \
420	stdio/fputc.o \
421	stdio/fputs.o \
422	stdio/fputwc.o \
423	stdio/fputws.o \
424	stdio/funlockfile.o \
425	stdio/fread.o \
426	stdio/freopen.o \
427	stdio/fscanf.o \
428	stdio/fseek.o \
429	stdio/fseeko.o \
430	stdio/fsetpos.o \
431	stdio/ftell.o \
432	stdio/ftello.o \
433	stdio/ftrylockfile.o \
434	stdio/fwide.o \
435	stdio/fwprintf.o \
436	stdio/fwrite.o \
437	stdio/fwscanf.o \
438	stdio/getc.o \
439	stdio/getchar.o \
440	stdio/getdelim.o \
441	stdio/getline.o \
442	stdio/getw.o \
443	stdio/getwc.o \
444	stdio/getwchar.o \
445	stdio/pclose.o \
446	stdio/popen.o \
447	stdio/printf.o \
448	stdio/putc.o \
449	stdio/putchar.o \
450	stdio/puts.o \
451	stdio/putw.o \
452	stdio/putwc.o \
453	stdio/putwchar.o \
454	stdio/rewind.o \
455	stdio/scanf.o \
456	stdio/setbuf.o \
457	stdio/setbuffer.o \
458	stdio/setlinebuf.o \
459	stdio/setvbuf.o \
460	stdio/snprintf.o \
461	stdio/sprintf.o \
462	stdio/sscanf.o \
463	stdio/stdio_c99.o \
464	stdio/swprintf.o \
465	stdio/swscanf.o \
466	stdio/tmpfile.o \
467	stdio/ungetc.o \
468	stdio/ungetwc.o \
469	stdio/vasprintf.o \
470	stdio/vfprintf.o \
471	stdio/vfscanf.o \
472	stdio/vfwprintf.o \
473	stdio/vfwscanf.o \
474	stdio/vprintf.o \
475	stdio/vscanf.o \
476	stdio/vsnprintf.o \
477	stdio/vsprintf.o \
478	stdio/vsscanf.o \
479	stdio/vswprintf.o \
480	stdio/vswscanf.o \
481	stdio/vwprintf.o \
482	stdio/vwscanf.o \
483	stdio/wprintf.o \
484	stdio/wscanf.o \
485	string/base64.o \
486	string/ccmap.o \
487	string/ccmapid.o \
488	string/ccnative.o \
489	string/chresc.o \
490	string/chrtoi.o \
491	string/fmtbase.o \
492	string/fmtbuf.o \
493	string/fmtclock.o \
494	string/fmtdev.o \
495	string/fmtelapsed.o \
496	string/fmterror.o \
497	string/fmtesc.o \
498	string/fmtfmt.o \
499	string/fmtfs.o \
500	string/fmtgid.o \
501	string/fmtident.o \
502	string/fmtint.o \
503	string/fmtip4.o \
504	string/fmtip6.o \
505	string/fmtls.o \
506	string/fmtmatch.o \
507	string/fmtmode.o \
508	string/fmtnum.o \
509	string/fmtperm.o \
510	string/fmtre.o \
511	string/fmtscale.o \
512	string/fmtsignal.o \
513	string/fmttime.o \
514	string/fmttmx.o \
515	string/fmttv.o \
516	string/fmtuid.o \
517	string/fmtversion.o \
518	string/memdup.o \
519	string/modedata.o \
520	string/modei.o \
521	string/modex.o \
522	string/stracmp.o \
523	string/strcopy.o \
524	string/strdup.o \
525	string/strelapsed.o \
526	string/strerror.o \
527	string/stresc.o \
528	string/streval.o \
529	string/strexpr.o \
530	string/strgid.o \
531	string/strlcat.o \
532	string/strlcpy.o \
533	string/strlook.o \
534	string/strmatch.o \
535	string/strmode.o \
536	string/strnacmp.o \
537	string/strncopy.o \
538	string/strnpcmp.o \
539	string/strntod.o \
540	string/strntol.o \
541	string/strntold.o \
542	string/strntoll.o \
543	string/strnton.o \
544	string/strntoul.o \
545	string/strntonll.o \
546	string/strntoull.o \
547	string/strnvcmp.o \
548	string/stropt.o \
549	string/strpcmp.o \
550	string/strperm.o \
551	string/strpsearch.o \
552	string/strsearch.o \
553	string/strsort.o \
554	string/strtape.o \
555	string/strtoip4.o \
556	string/strtoip6.o \
557	string/strton.o \
558	string/strtonll.o \
559	string/struid.o \
560	string/struniq.o \
561	string/strvcmp.o \
562	string/swapget.o \
563	string/swapmem.o \
564	string/swapop.o \
565	string/swapput.o \
566	string/tok.o \
567	string/tokline.o \
568	string/tokscan.o \
569	string/wc2utf8.o \
570	tm/tmdata.o \
571	tm/tmdate.o \
572	tm/tmequiv.o \
573	tm/tmfix.o \
574	tm/tmfmt.o \
575	tm/tmform.o \
576	tm/tmgoff.o \
577	tm/tminit.o \
578	tm/tmleap.o \
579	tm/tmlex.o \
580	tm/tmlocale.o \
581	tm/tmmake.o \
582	tm/tmpoff.o \
583	tm/tmscan.o \
584	tm/tmsleep.o \
585	tm/tmtime.o \
586	tm/tmtype.o \
587	tm/tmweek.o \
588	tm/tmword.o \
589	tm/tmxdate.o \
590	tm/tmxduration.o \
591	tm/tmxfmt.o \
592	tm/tmxgettime.o \
593	tm/tmxleap.o \
594	tm/tmxmake.o \
595	tm/tmxscan.o \
596	tm/tmxsettime.o \
597	tm/tmxsleep.o \
598	tm/tmxtime.o \
599	tm/tmxtouch.o \
600	tm/tmzone.o \
601	tm/tvcmp.o \
602	tm/tvgettime.o \
603	tm/tvsettime.o \
604	tm/tvsleep.o \
605	tm/tvtouch.o \
606	uwin/a64l.o \
607	uwin/acosh.o \
608	uwin/asinh.o \
609	uwin/atanh.o \
610	uwin/cbrt.o \
611	uwin/crypt.o \
612	uwin/erf.o \
613	uwin/err.o \
614	uwin/exp.o \
615	uwin/exp__E.o \
616	uwin/expm1.o \
617	uwin/gamma.o \
618	uwin/getpass.o \
619	uwin/lgamma.o \
620	uwin/log.o \
621	uwin/log1p.o \
622	uwin/log__L.o \
623	uwin/rand48.o \
624	uwin/random.o \
625	uwin/rcmd.o \
626	uwin/rint.o \
627	uwin/support.o \
628	vec/vecargs.o \
629	vec/vecfile.o \
630	vec/vecfree.o \
631	vec/vecload.o \
632	vec/vecstring.o \
633	vmalloc/malloc.o \
634	vmalloc/vmbest.o \
635	vmalloc/vmclear.o \
636	vmalloc/vmclose.o \
637	vmalloc/vmdcheap.o \
638	vmalloc/vmdebug.o \
639	vmalloc/vmdisc.o \
640	vmalloc/vmexit.o \
641	vmalloc/vmgetmem.o \
642	vmalloc/vmlast.o \
643	vmalloc/vmmopen.o \
644	vmalloc/vmopen.o \
645	vmalloc/vmpool.o \
646	vmalloc/vmprivate.o \
647	vmalloc/vmprofile.o \
648	vmalloc/vmregion.o \
649	vmalloc/vmsegment.o \
650	vmalloc/vmset.o \
651	vmalloc/vmstat.o \
652	vmalloc/vmstrdup.o \
653	vmalloc/vmtrace.o \
654	vmalloc/vmwalk.o
655