180c86c36SDavid E. O'Brien# Copyright (c) David E. O'Brien, 2000-2004, 2006, 2009 220164649SDavid E. O'Brien 3a70cba95SGlen BarberPACKAGE=lib${LIB} 41ec0c0f5SEnji CooperCONTRDIR= ${SRCTOP}/contrib/file 52726a701SXin LI.PATH: ${CONTRDIR} 6b6cee71dSXin LI.PATH: ${CONTRDIR}/src 7b6cee71dSXin LI.PATH: ${CONTRDIR}/doc 820164649SDavid E. O'Brien 920164649SDavid E. O'BrienLIB= magic 103ca3047aSKen SmithSHLIB_MAJOR= 4 117fe5130dSBryan Drewery.if !make(build-tools) 126b129086SBaptiste DaroussinLIBADD= z 137fe5130dSBryan Drewery.endif 14031e7116SLexi Winter 15031e7116SLexi WinterMAN= libmagic.3 16031e7116SLexi WinterMANNODEV= magic.5 1720164649SDavid E. O'Brien 1898131b3eSCy SchubertSRCS= apprentice.c apptype.c ascmagic.c buffer.c cdf.c cdf_time.c \ 1948c779cdSXin LI compress.c der.c encoding.c fsmagic.c funcs.c is_json.c \ 20d38c30c0SXin LI is_csv.c \ 21898496eeSXin LI is_simh.c \ 22*8929675eSXin LI is_tar.c magic.c print.c readcdf.c readelf.c seccomp.c softmagic.c \ 23*8929675eSXin LI swap.c 24*8929675eSXin LISRCS+= magic.h 258e6acec2SDavid E. O'BrienINCS= magic.h 2620164649SDavid E. O'Brien 277866c62aSDavid E. O'BrienMAGICPATH?= /usr/share/misc 2820164649SDavid E. O'Brien 29b3f1b4a2SDavid E. O'BrienCFLAGS+= -DMAGIC='"${MAGICPATH}/magic"' -DHAVE_CONFIG_H 30424340f2SXin LICFLAGS+= -I${.CURDIR} -I${.OBJDIR} -I${CONTRDIR}/src 3120164649SDavid E. O'Brien 329433144dSMarius StroblWARNS?= 3 33daaf5759SEd Schouten 34008ca870SDavid E. O'BrienCLEANFILES+= magic magic.mgc 3520164649SDavid E. O'Brien 36008ca870SDavid E. O'BrienFILES= magic magic.mgc 3720164649SDavid E. O'BrienFILESDIR= ${MAGICPATH} 3820164649SDavid E. O'Brien 39b6cee71dSXin LIMAGFILES= ${CONTRDIR}/magic/Header \ 40b6cee71dSXin LI ${CONTRDIR}/magic/Localstuff \ 41b6cee71dSXin LI ${CONTRDIR}/magic/Magdir/[a-z]* 4220164649SDavid E. O'Brien 432726a701SXin LI 442726a701SXin LIPACKAGE_VERSION!= sed -n '/define.*PACKAGE_VERSION/{s,[^0-9.],,gp;q;}' ${.CURDIR}/config.h 452726a701SXin LI 462726a701SXin LIlibmagic.pc: libmagic.pc.in 472726a701SXin LI sed -e 's,@prefix@,/usr,g ; \ 482726a701SXin LI s,@exec_prefix@,$${prefix},g ; \ 49ac175bd3SAlex Richardson s,@libdir@,${LIBDIR},g ; \ 50ac175bd3SAlex Richardson s,@sharedlibdir@,${SHLIBDIR},g ; \ 51ac175bd3SAlex Richardson s,@includedir@,${INCLUDEDIR},g ; \ 522726a701SXin LI s,@VERSION@,${PACKAGE_VERSION},g ; \ 532726a701SXin LI s,@LIBS@,,g ;' \ 542726a701SXin LI ${.ALLSRC} > ${.TARGET} 552726a701SXin LI 5620164649SDavid E. O'Brienmagic: ${MAGFILES} 5728ab4bb8SXin LI cat ${.ALLSRC:O} > ${.TARGET} 5820164649SDavid E. O'Brien 59b114e8fcSSimon J. Gerratymagic.mgc: magic 6029df9f6bSBryan Drewery ${BTOOLSPATH:U.}/mkmagic magic 6120164649SDavid E. O'Brien 62312809feSSimon J. Gerraty.if ${MACHINE} == "host" || ${MK_DIRDEPS_BUILD} == "no" 6320164649SDavid E. O'BrienCLEANFILES+= mkmagic 64c63c5ab0SBryan DreweryDEPENDOBJS+= mkmagic 6520164649SDavid E. O'Brienbuild-tools: mkmagic 6639f6f6f1SStephen J. Kiernan# For the non-dirdeps build, HOST_CC is CC by default 67*8929675eSXin LImkmagic: apprentice.c cdf_time.c encoding.c funcs.c magic.c print.c swap.c ${INCS} ${BUILD_TOOLS_META} 6839f6f6f1SStephen J. Kiernan ${HOST_CC:N${CCACHE_BIN}} ${CFLAGS} -DCOMPILE_ONLY ${LDFLAGS} -o ${.TARGET} \ 69c63c5ab0SBryan Drewery ${.ALLSRC:N*.h:O:u} ${LDADD} 7020164649SDavid E. O'Brien 71312809feSSimon J. Gerraty.endif 7239f6f6f1SStephen J. Kiernan.if ${MK_DIRDEPS_BUILD} == "yes" && ${MACHINE} != "host" 73312809feSSimon J. GerratyBTOOLSPATH= ${HOST_OBJTOP}/${RELDIR} 74b114e8fcSSimon J. Gerraty.else 75b114e8fcSSimon J. Gerratymagic.mgc: mkmagic 76312809feSSimon J. Gerraty.endif 77312809feSSimon J. Gerraty 786bd0a54aSRuslan ErmilovFILEVER!= awk '$$1 == "\#define" && $$2 == "VERSION" { print $$3; exit }' \ 796bd0a54aSRuslan Ermilov ${.CURDIR}/config.h 80031e7116SLexi WinterCLEANFILES+= ${MAN} ${MANNODEV} 81031e7116SLexi Winter.for mp in ${MAN} ${MANNODEV} 8220164649SDavid E. O'Brien${mp}: ${mp:C/[0-9]/man/} 8320164649SDavid E. O'Brien sed -e 's/__FSECTION__/5/g' -e 's/__CSECTION__/1/g' \ 8420164649SDavid E. O'Brien -e 's/__VERSION__/${FILEVER}/g' \ 8520164649SDavid E. O'Brien -e 's,__MAGIC__,${MAGICPATH}/magic,g' ${.ALLSRC} > ${.TARGET} 8620164649SDavid E. O'Brien.endfor 8720164649SDavid E. O'Brien 88282e23f0SXin LICLEANFILES+= ${INCS} 89282e23f0SXin LI.for inc in ${INCS} 90282e23f0SXin LI${inc}: ${inc}.in 91282e23f0SXin LI sed -e 's,X.YY,${FILEVER:S,",,g:S,.,,g},g' ${.ALLSRC} > ${.TARGET} 92282e23f0SXin LI.endfor 93282e23f0SXin LI 94500f4659SEmmanuel VadotPCFILES= libmagic.pc 952726a701SXin LI 9620164649SDavid E. O'Brien.include <bsd.lib.mk> 97