xref: /dragonfly/lib/libmagic/Makefile (revision d9d67b59)
1CONTRIBDIR=	${.CURDIR}/../../contrib/file/src
2MAGICDIR= ${CONTRIBDIR}/../magic
3.PATH: ${CONTRIBDIR}
4
5VER!=	grep -w VERSION ${.CURDIR}/config.h | awk -F\" '{print $$2}'
6MAGIC=	${FILESDIR}/magic
7
8LIB=	magic
9SHLIB_MAJOR=	2
10
11DPADD=	${LIBZ}
12LDADD=	-lz
13
14SRCS=	apprentice.c ascmagic.c cdf.c cdf_time.c \
15	compress.c der.c encoding.c fsmagic.c funcs.c \
16	is_tar.c magic.c print.c readcdf.c readelf.c softmagic.c
17INCS=	magic.h
18
19# only when __EMX__ (prog env for DOS and OS/2)
20#SRCS+=	apptype.c
21
22CFLAGS+= -DHAVE_CONFIG_H -DMAGIC=\"${MAGIC}\"
23CFLAGS+= -I${.CURDIR} -I${.OBJDIR} -I${CONTRIBDIR}
24
25MAN=	libmagic.3
26
27MLINKS+=	libmagic.3 magic_open.3
28MLINKS+=	libmagic.3 magic_close.3
29MLINKS+=	libmagic.3 magic_error.3
30MLINKS+=	libmagic.3 magic_errno.3
31MLINKS+=	libmagic.3 magic_descriptor.3
32MLINKS+=	libmagic.3 magic_file.3
33MLINKS+=	libmagic.3 magic_buffer.3
34MLINKS+=	libmagic.3 magic_getflags.3
35MLINKS+=	libmagic.3 magic_setflags.3
36MLINKS+=	libmagic.3 magic_check.3
37MLINKS+=	libmagic.3 magic_compile.3
38MLINKS+=	libmagic.3 magic_list.3
39MLINKS+=	libmagic.3 magic_load.3
40MLINKS+=	libmagic.3 magic_load_buffers.3
41MLINKS+=	libmagic.3 magic_setparam.3
42MLINKS+=	libmagic.3 magic_getparam.3
43MLINKS+=	libmagic.3 magic_version.3
44
45CLEANFILES+=	magic magic.mgc libmagic.3
46
47FILES=		magic magic.mgc
48FILESDIR=	${SHAREDIR}/misc
49
50MAGFILES=	${MAGICDIR}/Header ${MAGICDIR}/Localstuff \
51		${MAGICDIR}/Magdir/[a-z]*
52
53libmagic.3: ${CONTRIBDIR}/../doc/libmagic.man
54	    sed	-e s@__CSECTION__@1@g \
55		-e s@__FSECTION__@5@g \
56		-e s@__MAGIC__@${MAGIC}@g ${.ALLSRC} > ${.TARGET}
57
58magic: ${MAGFILES}
59	cat ${.ALLSRC} > ${.TARGET}
60
61magic.mgc: mkmagic.nx magic
62	./mkmagic.nx magic
63
64CLEANFILES+=   mkmagic.nx
65build-tools: mkmagic.nx
66
67NXCFLAGS+=	-w -DCOMPILE_ONLY
68mkmagic.nx: apprentice.c encoding.c cdf_time.c funcs.c magic.c print.c ${INCS}
69	${NXCC} ${NXCFLAGS} ${NXLDFLAGS} ${.ALLSRC:N*.h} ${NXLDLIBS} -o ${.TARGET}
70
71CLEANFILES+=	${INCS}
72.for inc in ${INCS}
73${inc}: ${inc}.in
74	sed -e 's,X.YY,${VER:S,",,g:S,.,,g},g' ${.ALLSRC} > ${.TARGET}
75.endfor
76
77.include <bsd.lib.mk>
78