#       $NetBSD: Makefile,v 1.20 2024/11/22 15:12:38 riastradh Exp $
#

USE_FORT?= yes  # data driven bugs?

include <bsd.own.mk>

include "../Makefile.inc"

LIB=            magic
LIBDPLIBS+=     ${DPLIBS}
CPPFLAGS+=-I.

# XXX Avoid exporting symbols of statically linked deps like zstd.
# XXX Should do this in bsd.lib.mk, perhaps.
for _lib _dir in ${LIBDPLIBS}
LDADD+=         -Wl,--exclude-libs,lib${_lib}
endfor

if ${MACHINE_ARCH} == "i386"
# Set lint to exit on warnings
# XXX: Soon
#LINTFLAGS+=    -w
endif

SRCS=           magic.c apprentice.c softmagic.c ascmagic.c compress.c  \
               is_json.c is_tar.c readelf.c print.c fsmagic.c apptype.c \
               funcs.c cdf.c readcdf.c cdf_time.c encoding.c der.c buffer.c \
               is_csv.c is_simh.c
DPSRCS=         magic.h
MAN=            libmagic.3
MLINKS+=        libmagic.3 magic_open.3 \
               libmagic.3 magic_close.3 \
               libmagic.3 magic_error.3 \
               libmagic.3 magic_file.3 \
               libmagic.3 magic_buffer.3 \
               libmagic.3 magic_setflags.3 \
               libmagic.3 magic_check.3 \
               libmagic.3 magic_compile.3 \
               libmagic.3 magic_load.3
INCS=           magic.h
INCSDIR=        /usr/include

COPTS.softmagic.c+=     -Wno-format-nonliteral
COPTS.readelf.c+=       ${CC_WNO_MAYBE_UNINITIALIZED}
CPPFLAGS+= ${ZSTDCPPFLAGS}

magic.c:        magic.h
magic.h:        magic.h.in
       ${TOOL_SED} -e "s/X.YY/${VERSION:S/.//g}/" < ${.ALLSRC} > ${.TARGET}
CLEANFILES+=    magic.h

include <bsd.lib.mk>