xref: /freebsd/lib/libc/stdlib/Makefile.inc (revision d59c7ea2701fe7b73b32eef49a7c712ef38de5a0)
1# machine-independent stdlib sources
2.PATH: ${LIBC_SRCTOP}/${LIBC_ARCH}/stdlib ${LIBC_SRCTOP}/stdlib
3
4MISRCS+= \
5	C99_Exit.c \
6	a64l.c \
7	abort.c \
8	abs.c \
9	atexit.c \
10	atof.c \
11	atoi.c \
12	atol.c \
13	atoll.c \
14	bsearch.c \
15	bsearch_b.c \
16	bsearch_s.c \
17	cxa_thread_atexit.c \
18	cxa_thread_atexit_impl.c \
19	div.c \
20	exit.c \
21	getenv.c \
22	getopt.c \
23	getopt_long.c \
24	getsubopt.c \
25	hcreate.c \
26	hcreate_r.c \
27	hdestroy_r.c \
28	heapsort.c \
29	heapsort_b.c \
30	hsearch_r.c \
31	imaxabs.c \
32	imaxdiv.c \
33	insque.c \
34	l64a.c \
35	labs.c \
36	ldiv.c \
37	llabs.c \
38	lldiv.c \
39	lsearch.c \
40	memalignment.c \
41	merge.c \
42	mergesort_b.c \
43	ptsname.c \
44	qsort.c \
45	qsort_r.c \
46	qsort_r_compat.c \
47	qsort_s.c \
48	quick_exit.c \
49	radixsort.c \
50	rand.c \
51	random.c \
52	reallocarray.c \
53	reallocf.c \
54	realpath.c \
55	recallocarray.c \
56	remque.c \
57	set_constraint_handler_s.c \
58	strfmon.c \
59	strfrom.c \
60	strfromd.c \
61	strfromf.c \
62	strfroml.c \
63	strtoimax.c \
64	strtol.c \
65	strtold.c \
66	strtoll.c \
67	strtoq.c \
68	strtoul.c \
69	strtonum.c \
70	strtoull.c \
71	strtoumax.c \
72	strtouq.c \
73	system.c \
74	tdelete.c \
75	tdestroy.c \
76	tfind.c \
77	tsearch.c \
78	twalk.c
79
80CFLAGS.qsort.c+= -Wsign-compare
81
82# Work around an issue on case-insensitive file systems.
83# libc has both _Exit.c and _exit.s and they both yield
84# _exit.o (case insensitively speaking).
85CLEANFILES+=C99_Exit.c
86C99_Exit.c: ${LIBC_SRCTOP}/stdlib/_Exit.c .NOMETA
87	ln -sf ${.ALLSRC} ${.TARGET}
88
89SYM_MAPS+= ${LIBC_SRCTOP}/stdlib/Symbol.map
90
91.include "${LIBC_SRCTOP}/stdlib/malloc/Makefile.inc"
92
93# machine-dependent stdlib sources
94.sinclude "${LIBC_SRCTOP}/${LIBC_ARCH}/stdlib/Makefile.inc"
95
96MAN+=	a64l.3 abort.3 abs.3 atexit.3 atof.3 \
97	atoi.3 atol.3 at_quick_exit.3 bsearch.3 \
98	div.3 exit.3 getenv.3 getopt.3 getopt_long.3 getsubopt.3 \
99	hcreate.3 insque.3 \
100	lsearch.3 memalignment.3 memory.3 ptsname.3 qsort.3 \
101	quick_exit.3 \
102	radixsort.3 rand.3 random.3 reallocarray.3 reallocf.3 realpath.3 \
103	set_constraint_handler_s.3 \
104	strfmon.3 strfromd.3 strtod.3 strtol.3 strtonum.3 strtoul.3 system.3 \
105	tsearch.3
106
107MLINKS+=a64l.3 l64a.3 \
108	a64l.3 l64a_r.3
109MLINKS+=abs.3 labs.3 \
110	abs.3 llabs.3 \
111	abs.3 imaxabs.3
112MLINKS+=atol.3 atoll.3
113MLINKS+=bsearch.3 bsearch_b.3 \
114	bsearch.3 bsearch_s.3
115MLINKS+=div.3 ldiv.3 \
116	div.3 lldiv.3 \
117	div.3 imaxdiv.3
118MLINKS+=exit.3 _Exit.3
119MLINKS+=getenv.3 clearenv.3 \
120	getenv.3 putenv.3 \
121	getenv.3 secure_getenv.3 \
122	getenv.3 setenv.3 \
123	getenv.3 unsetenv.3
124MLINKS+=getopt_long.3 getopt_long_only.3
125MLINKS+=hcreate.3 hdestroy.3 \
126	hcreate.3 hsearch.3
127MLINKS+=hcreate.3 hcreate_r.3 \
128	hcreate.3 hdestroy_r.3 \
129	hcreate.3 hsearch_r.3
130MLINKS+=insque.3 remque.3
131MLINKS+=lsearch.3 lfind.3
132MLINKS+=ptsname.3 grantpt.3 \
133	ptsname.3 ptsname_r.3 \
134	ptsname.3 unlockpt.3
135MLINKS+=qsort.3 heapsort.3 \
136	qsort.3 heapsort_b.3 \
137	qsort.3 mergesort.3 \
138	qsort.3 mergesort_b.3 \
139	qsort.3 qsort_b.3 \
140	qsort.3 qsort_r.3 \
141	qsort.3 qsort_s.3
142MLINKS+=rand.3 rand_r.3 \
143	rand.3 srand.3
144MLINKS+=random.3 initstate.3 \
145	random.3 setstate.3 \
146	random.3 srandom.3 \
147	random.3 srandomdev.3
148MLINKS+=radixsort.3 sradixsort.3
149MLINKS+=reallocarray.3 recallocarray.3
150MLINKS+=set_constraint_handler_s.3 abort_handler_s.3
151MLINKS+=set_constraint_handler_s.3 ignore_handler_s.3
152MLINKS+=strfmon.3 strfmon_l.3
153MLINKS+=strfromd.3 strfromf.3 \
154	strfromd.3 strfroml.3
155MLINKS+=strtod.3 strtof.3 \
156	strtod.3 strtold.3
157MLINKS+=strtol.3 strtoll.3 \
158	strtol.3 strtoq.3 \
159	strtol.3 strtoimax.3
160MLINKS+=strtonum.3 strtonumx.3
161MLINKS+=strtoul.3 strtoull.3 \
162	strtoul.3 strtouq.3 \
163	strtoul.3 strtoumax.3
164MLINKS+=tsearch.3 tdelete.3 \
165	tsearch.3 tfind.3 \
166	tsearch.3 twalk.3 \
167	tsearch.3 tdestroy.3
168