]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - lib/libelf/Makefile
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / lib / libelf / Makefile
1 # $FreeBSD$
2
3 LIB=    elf
4
5 SRCS=   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}
56 INCS=   libelf.h gelf.h
57
58 #
59 # We need to link against the correct version of these files. One
60 # solution is to include ../../sys in the include path. This causes
61 # problems when a header file in sys depends on a file in another
62 # part of the tree, e.g. a machine dependent header.
63 #
64 SRCS+=  sys/elf32.h sys/elf64.h sys/elf_common.h
65
66 GENSRCS=        libelf_fsize.c libelf_msize.c libelf_convert.c
67 CLEANFILES=     ${GENSRCS}
68 CLEANDIRS=      sys
69 CFLAGS+=        -I${.CURDIR} -I.
70
71 sys/elf32.h sys/elf64.h sys/elf_common.h: ${.CURDIR}/../../sys/${.TARGET}
72         mkdir -p ${.OBJDIR}/sys
73         ln -sf ${.CURDIR}/../../sys/${.TARGET} ${.TARGET}
74
75 SHLIB_MAJOR=    1
76
77 MAN=    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_rawfile.3                                           \
101         elf_rand.3                                              \
102         elf_strptr.3                                            \
103         elf_update.3                                            \
104         elf_version.3                                           \
105         gelf.3                                                  \
106         gelf_checksum.3                                         \
107         gelf_fsize.3                                            \
108         gelf_getcap.3                                           \
109         gelf_getclass.3                                         \
110         gelf_getdyn.3                                           \
111         gelf_getehdr.3                                          \
112         gelf_getmove.3                                          \
113         gelf_getphdr.3                                          \
114         gelf_getrel.3                                           \
115         gelf_getrela.3                                          \
116         gelf_getshdr.3                                          \
117         gelf_getsym.3                                           \
118         gelf_getsyminfo.3                                       \
119         gelf_getsymshndx.3                                      \
120         gelf_newehdr.3                                          \
121         gelf_newphdr.3                                          \
122         gelf_update_ehdr.3                                      \
123         gelf_xlatetof.3
124
125 MLINKS+= \
126         elf_errmsg.3 elf_errno.3                \
127         elf_flagdata.3 elf_flagehdr.3           \
128         elf_flagdata.3 elf_flagelf.3            \
129         elf_flagdata.3 elf_flagphdr.3           \
130         elf_flagdata.3 elf_flagscn.3            \
131         elf_flagdata.3 elf_flagshdr.3           \
132         elf_getdata.3 elf_newdata.3             \
133         elf_getdata.3 elf_rawdata.3             \
134         elf_getscn.3 elf_ndxscn.3               \
135         elf_getscn.3 elf_newscn.3               \
136         elf_getscn.3 elf_nextscn.3              \
137         elf_getshstrndx.3 elf_setshstrndx.3     \
138         gelf_getcap.3 gelf_update_cap.3         \
139         gelf_getdyn.3 gelf_update_dyn.3         \
140         gelf_getmove.3 gelf_update_move.3       \
141         gelf_getrel.3 gelf_update_rel.3         \
142         gelf_getrela.3 gelf_update_rela.3       \
143         gelf_getsym.3 gelf_update_sym.3         \
144         gelf_getsyminfo.3 gelf_update_syminfo.3 \
145         gelf_getsymshndx.3 gelf_update_symshndx.3 \
146         gelf_update_ehdr.3 gelf_update_phdr.3   \
147         gelf_update_ehdr.3 gelf_update_shdr.3   \
148         gelf_xlatetof.3 gelf_xlatetom.3
149
150 .for E in 32 64
151 MLINKS+= \
152         gelf_checksum.3 elf${E}_checksum.3      \
153         gelf_fsize.3    elf${E}_fsize.3         \
154         gelf_getehdr.3  elf${E}_getehdr.3       \
155         gelf_getphdr.3  elf${E}_getphdr.3       \
156         gelf_getshdr.3  elf${E}_getshdr.3       \
157         gelf_newehdr.3  elf${E}_newehdr.3       \
158         gelf_newphdr.3  elf${E}_newphdr.3       \
159         gelf_xlatetof.3 elf${E}_xlatetof.3      \
160         gelf_xlatetof.3 elf${E}_xlatetom.3
161 .endfor
162
163 VERSION_MAP=            ${.CURDIR}/Version.map
164
165 LIBELF_TEST_HOOKS?=     1
166 .if defined(LIBELF_TEST_HOOKS) && (${LIBELF_TEST_HOOKS} > 0)
167 CFLAGS+= -DLIBELF_TEST_HOOKS
168 .endif
169
170 libelf_convert.c:       elf_types.m4 libelf_convert.m4
171 libelf_fsize.c:         elf_types.m4 libelf_fsize.m4
172 libelf_msize.c:         elf_types.m4 libelf_msize.m4
173
174 .include <bsd.lib.mk>
175
176 # Keep the .SUFFIXES line after the include of bsd.lib.mk
177 .SUFFIXES:      .m4 .c
178 .m4.c:
179         m4 -D SRCDIR=${.CURDIR} ${.IMPSRC} > ${.TARGET}