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