xref: /freebsd/lib/libelf/Makefile (revision 4c8945a06b01a5c8122cdeb402af36bb46a06acc)
1# $FreeBSD$
2
3LIB=	elf
4
5SRCS=	elf_begin.c						\
6	elf_cntl.c						\
7	elf_end.c elf_errmsg.c elf_errno.c			\
8	elf_data.c						\
9	elf_fill.c						\
10	elf_flag.c						\
11	elf_getarhdr.c						\
12	elf_getarsym.c						\
13	elf_getbase.c						\
14	elf_getident.c						\
15	elf_hash.c						\
16	elf_kind.c						\
17	elf_memory.c						\
18	elf_next.c						\
19	elf_rand.c						\
20	elf_rawfile.c						\
21	elf_phnum.c						\
22	elf_shnum.c						\
23	elf_shstrndx.c						\
24	elf_scn.c						\
25	elf_strptr.c						\
26	elf_update.c						\
27	elf_version.c						\
28	gelf_cap.c						\
29	gelf_checksum.c						\
30	gelf_dyn.c						\
31	gelf_ehdr.c						\
32	gelf_getclass.c						\
33	gelf_fsize.c						\
34	gelf_move.c						\
35	gelf_phdr.c						\
36	gelf_rel.c						\
37	gelf_rela.c						\
38	gelf_shdr.c						\
39	gelf_sym.c						\
40	gelf_syminfo.c						\
41	gelf_symshndx.c						\
42	gelf_xlate.c						\
43	libelf.c						\
44	libelf_align.c						\
45	libelf_allocate.c					\
46	libelf_ar.c						\
47	libelf_ar_util.c					\
48	libelf_checksum.c					\
49	libelf_data.c						\
50	libelf_ehdr.c						\
51	libelf_extended.c					\
52	libelf_phdr.c						\
53	libelf_shdr.c						\
54	libelf_xlate.c						\
55	${GENSRCS}
56INCS=	libelf.h gelf.h
57
58GENSRCS=	libelf_fsize.c libelf_msize.c libelf_convert.c
59CLEANFILES=	${GENSRCS}
60CFLAGS+=	-I. -I${.CURDIR}
61
62SHLIB_MAJOR=	1
63
64MAN=	elf.3							\
65	elf_begin.3						\
66	elf_cntl.3						\
67	elf_end.3						\
68	elf_errmsg.3						\
69	elf_fill.3						\
70	elf_flagdata.3						\
71	elf_getarhdr.3						\
72	elf_getarsym.3						\
73	elf_getbase.3						\
74	elf_getdata.3						\
75	elf_getident.3						\
76	elf_getscn.3						\
77	elf_getphdrnum.3					\
78	elf_getphnum.3						\
79	elf_getshdrnum.3					\
80	elf_getshnum.3						\
81	elf_getshdrstrndx.3					\
82	elf_getshstrndx.3					\
83	elf_hash.3						\
84	elf_kind.3						\
85	elf_memory.3						\
86	elf_next.3						\
87	elf_rawfile.3						\
88	elf_rand.3						\
89	elf_strptr.3						\
90	elf_update.3						\
91	elf_version.3						\
92	gelf.3							\
93	gelf_checksum.3						\
94	gelf_fsize.3						\
95	gelf_getcap.3						\
96	gelf_getclass.3						\
97	gelf_getdyn.3						\
98	gelf_getehdr.3						\
99	gelf_getmove.3						\
100	gelf_getphdr.3						\
101	gelf_getrel.3						\
102	gelf_getrela.3						\
103	gelf_getshdr.3						\
104	gelf_getsym.3						\
105	gelf_getsyminfo.3					\
106	gelf_getsymshndx.3					\
107	gelf_newehdr.3						\
108	gelf_newphdr.3						\
109	gelf_update_ehdr.3					\
110	gelf_xlatetof.3
111
112MLINKS+= \
113	elf_errmsg.3 elf_errno.3		\
114	elf_flagdata.3 elf_flagehdr.3		\
115	elf_flagdata.3 elf_flagelf.3		\
116	elf_flagdata.3 elf_flagphdr.3		\
117	elf_flagdata.3 elf_flagscn.3		\
118	elf_flagdata.3 elf_flagshdr.3		\
119	elf_getdata.3 elf_newdata.3		\
120	elf_getdata.3 elf_rawdata.3		\
121	elf_getscn.3 elf_ndxscn.3		\
122	elf_getscn.3 elf_newscn.3		\
123	elf_getscn.3 elf_nextscn.3		\
124	elf_getshstrndx.3 elf_setshstrndx.3	\
125	gelf_getcap.3 gelf_update_cap.3		\
126	gelf_getdyn.3 gelf_update_dyn.3		\
127	gelf_getmove.3 gelf_update_move.3	\
128	gelf_getrel.3 gelf_update_rel.3		\
129	gelf_getrela.3 gelf_update_rela.3	\
130	gelf_getsym.3 gelf_update_sym.3		\
131	gelf_getsyminfo.3 gelf_update_syminfo.3	\
132	gelf_getsymshndx.3 gelf_update_symshndx.3 \
133	gelf_update_ehdr.3 gelf_update_phdr.3	\
134	gelf_update_ehdr.3 gelf_update_shdr.3	\
135	gelf_xlatetof.3 gelf_xlatetom.3
136
137.for E in 32 64
138MLINKS+= \
139	gelf_checksum.3	elf${E}_checksum.3 	\
140	gelf_fsize.3	elf${E}_fsize.3 	\
141	gelf_getehdr.3	elf${E}_getehdr.3	\
142	gelf_getphdr.3	elf${E}_getphdr.3	\
143	gelf_getshdr.3	elf${E}_getshdr.3	\
144	gelf_newehdr.3	elf${E}_newehdr.3	\
145	gelf_newphdr.3	elf${E}_newphdr.3	\
146	gelf_xlatetof.3	elf${E}_xlatetof.3	\
147	gelf_xlatetof.3	elf${E}_xlatetom.3
148.endfor
149
150VERSION_MAP=		${.CURDIR}/Version.map
151
152LIBELF_TEST_HOOKS?=	1
153.if defined(LIBELF_TEST_HOOKS) && (${LIBELF_TEST_HOOKS} > 0)
154CFLAGS+= -DLIBELF_TEST_HOOKS
155.endif
156
157libelf_convert.c:	elf_types.m4 libelf_convert.m4
158libelf_fsize.c:		elf_types.m4 libelf_fsize.m4
159libelf_msize.c:		elf_types.m4 libelf_msize.m4
160
161.include <bsd.lib.mk>
162
163# Keep the .SUFFIXES line after the include of bsd.lib.mk
164.SUFFIXES:	.m4 .c
165.m4.c:
166	m4 -D SRCDIR=${.CURDIR} ${.IMPSRC} > ${.TARGET}
167