1 # Copyright (c) David E. O'Brien, 2000-2004, 2006, 2009
4 CONTRDIR= ${SRCTOP}/contrib/file
11 .if !make(build-tools)
14 MAN= libmagic.3 magic.5
16 SRCS= apprentice.c apptype.c ascmagic.c buffer.c cdf.c cdf_time.c \
17 compress.c der.c encoding.c fsmagic.c funcs.c is_json.c \
19 is_tar.c magic.c print.c readcdf.c readelf.c seccomp.c softmagic.c
22 MAGICPATH?= /usr/share/misc
24 CFLAGS+= -DMAGIC='"${MAGICPATH}/magic"' -DHAVE_CONFIG_H
25 CFLAGS+= -I${.CURDIR} -I${.OBJDIR} -I${CONTRDIR}/src
29 CLEANFILES+= magic magic.mgc
31 FILES= magic magic.mgc
32 FILESDIR= ${MAGICPATH}
34 MAGFILES= ${CONTRDIR}/magic/Header \
35 ${CONTRDIR}/magic/Localstuff \
36 ${CONTRDIR}/magic/Magdir/[a-z]*
39 PACKAGE_VERSION!= sed -n '/define.*PACKAGE_VERSION/{s,[^0-9.],,gp;q;}' ${.CURDIR}/config.h
41 libmagic.pc: libmagic.pc.in
42 sed -e 's,@prefix@,/usr,g ; \
43 s,@exec_prefix@,$${prefix},g ; \
44 s,@libdir@,${LIBDIR},g ; \
45 s,@sharedlibdir@,${SHLIBDIR},g ; \
46 s,@includedir@,${INCLUDEDIR},g ; \
47 s,@VERSION@,${PACKAGE_VERSION},g ; \
49 ${.ALLSRC} > ${.TARGET}
52 cat ${.ALLSRC:O} > ${.TARGET}
55 ${BTOOLSPATH:U.}/mkmagic magic
57 .if ${MACHINE} == "host" || ${MK_DIRDEPS_BUILD} == "no"
61 mkmagic: apprentice.c cdf_time.c encoding.c funcs.c magic.c print.c ${INCS} ${BUILD_TOOLS_META}
62 ${CC:N${CCACHE_BIN}} ${CFLAGS} -DCOMPILE_ONLY ${LDFLAGS} -o ${.TARGET} \
63 ${.ALLSRC:N*.h:O:u} ${LDADD}
66 .if ${MK_DIRDEPS_BUILD} == "yes"
67 BTOOLSPATH= ${HOST_OBJTOP}/${RELDIR}
72 FILEVER!= awk '$$1 == "\#define" && $$2 == "VERSION" { print $$3; exit }' \
76 ${mp}: ${mp:C/[0-9]/man/}
77 sed -e 's/__FSECTION__/5/g' -e 's/__CSECTION__/1/g' \
78 -e 's/__VERSION__/${FILEVER}/g' \
79 -e 's,__MAGIC__,${MAGICPATH}/magic,g' ${.ALLSRC} > ${.TARGET}
85 sed -e 's,X.YY,${FILEVER:S,",,g:S,.,,g},g' ${.ALLSRC} > ${.TARGET}