world: Mark utilities that use out of bounds copies.
[dragonfly.git] / lib / libelf / Makefile
blob312d154d7168021c723de8d2c4278edb1eb586fc
1 # ELF library is a component of ELF Tool Chain (replacement for binutils)
2 # For now, do not expose this library. It is needed for execinfo library.
5 LIB= elf
6 INTERNALLIB= yes
7 INTERNALLIBPROF= yes
8 INSTALL_PIC_ARCHIVE= yes
9 TOOLCHAINDIR= ${.CURDIR}/../../contrib/elftoolchain
10 SRCDIR= ${TOOLCHAINDIR}/libelf
11 COMMON= ${TOOLCHAINDIR}/common
12 CFLAGS+= -I. -I${SRCDIR} -I${COMMON}
14 .PATH: ${SRCDIR}
16 # verbatim from vendor sourcefile
17 SRCS= elf.c \
18 elf_begin.c \
19 elf_cntl.c \
20 elf_end.c elf_errmsg.c elf_errno.c \
21 elf_data.c \
22 elf_fill.c \
23 elf_flag.c \
24 elf_getarhdr.c \
25 elf_getarsym.c \
26 elf_getbase.c \
27 elf_getident.c \
28 elf_hash.c \
29 elf_kind.c \
30 elf_memory.c \
31 elf_next.c \
32 elf_open.c \
33 elf_rand.c \
34 elf_rawfile.c \
35 elf_phnum.c \
36 elf_shnum.c \
37 elf_shstrndx.c \
38 elf_scn.c \
39 elf_strptr.c \
40 elf_update.c \
41 elf_version.c \
42 gelf_cap.c \
43 gelf_checksum.c \
44 gelf_dyn.c \
45 gelf_ehdr.c \
46 gelf_getclass.c \
47 gelf_fsize.c \
48 gelf_move.c \
49 gelf_phdr.c \
50 gelf_rel.c \
51 gelf_rela.c \
52 gelf_shdr.c \
53 gelf_sym.c \
54 gelf_syminfo.c \
55 gelf_symshndx.c \
56 gelf_xlate.c \
57 libelf_align.c \
58 libelf_allocate.c \
59 libelf_ar.c \
60 libelf_ar_util.c \
61 libelf_checksum.c \
62 libelf_data.c \
63 libelf_ehdr.c \
64 libelf_extended.c \
65 libelf_memory.c \
66 libelf_open.c \
67 libelf_phdr.c \
68 libelf_shdr.c \
69 libelf_xlate.c \
70 ${GENSRCS}
72 GENSRCS= libelf_fsize.c libelf_msize.c libelf_convert.c
74 libelf_convert.c: elf_types.m4 libelf_convert.m4
75 libelf_fsize.c: elf_types.m4 libelf_fsize.m4
76 libelf_msize.c: elf_types.m4 libelf_msize.m4
78 # Copy correct headers over to object directory
80 ELFHEAD= sys/elf32.h sys/elf64.h sys/elf_common.h
81 SRCS+= ${ELFHEAD}
83 ${.OBJDIR}/sys:
84 mkdir -p ${.TARGET}
86 ${ELFHEAD}: ${.OBJDIR}/sys ${.CURDIR}/../../sys/${.TARGET}
87 ln -sf ${.CURDIR}/../../sys/${.TARGET} ${.TARGET}
89 CLEANFILES= ${GENSRCS}
90 CLEANDIRS= sys
92 .include <bsd.lib.mk>
94 # Keep the .SUFFIXES line after the include of <bsd.lib.mk>
95 .SUFFIXES: .m4 .c
96 .m4.c:
97 m4 -D SRCDIR=${SRCDIR} ${M4FLAGS} ${.IMPSRC} > ${.TARGET}