# $MirOS: src/usr.sbin/makefs/Makefile,v 1.28 2019/01/05 16:39:26 tg Exp $
# $NetBSD: Makefile,v 1.25 2009/04/22 15:23:05 lukem Exp $

WARNS?=	3	# XXX -Wsign-compare

.include <bsd.own.mk>

PROG=	makefs
SRCS=	cd9660.c ffs.c \
	getid.c \
	makefs.c misc.c \
	pack_dev.c \
	spec.c \
	walk.c
MAN=	makefs.8

OStype?=	unknown
.if (${OStype} == "MirBSD") || defined(GNUPORT)
MAKEFS_PORT=	#defined
.endif

.ifdef MAKEFS_PORT
HOSTPROG=	#defined, empty
NETBSDSRCDIR?=	${.CURDIR}/nbsrc
CDIAGFLAGS+=	-Wmissing-declarations -Wmissing-prototypes
CPPFLAGS+=	-DLIBC_SCCS -DHAVE_STRUCT_STAT_BIRTHTIME=0 \
		-DHAVE_NBTOOL_CONFIG_H=0 -DHAVE_NETDB_H=1 \
		-DHAVE_PWCACHE_USERDB=0 -DHAVE_STRSUFTOLL=0
.endif

MKNODSRC=	${NETBSDSRCDIR}/sbin/mknod
MTREESRC=	${NETBSDSRCDIR}/usr.sbin/mtree

CPPFLAGS+=	-I${.CURDIR} -I${MKNODSRC} -I${MTREESRC}
.PATH:		${MKNODSRC} ${MTREESRC}

.include "cd9660/Makefile.inc"
.include "ffs/Makefile.inc"

.ifdef MAKEFS_PORT
CPPFLAGS+=	-I${NETBSDSRCDIR}/sys \
		-I${BSDSRCDIR}/sbin/mknod -I${BSDSRCDIR}/usr.sbin/mtree \
		-I${BSDSRCDIR}/sys -I${BSDSRCDIR}/sys/isofs/cd9660
.PATH:		${BSDSRCDIR}/sys/ufs/ffs ${BSDSRCDIR}/sys/isofs/cd9660 \
		${BSDSRCDIR}/sbin/mknod ${BSDSRCDIR}/usr.sbin/mtree
.endif

.if !defined(GNUPORT) && (${HOSTPROG:U} == "")
DPADD+= ${LIBUTIL}
LDADD+= -lutil
.endif

.ifdef MAKEFS_PORT
SRCS+=		pwcache.c
CPPFLAGS+=	-I${NETBSDSRCDIR}/lib/libc/gen
.PATH: ${NETBSDSRCDIR}/lib/libc/gen

SRCS+=		strsuftoll.c
CPPFLAGS+=	-I${NETBSDSRCDIR}/lib/libc/stdlib
.PATH: ${NETBSDSRCDIR}/lib/libc/stdlib

.  ifndef GNUPORT
SRCS+=		stat_flags.c
.PATH: ${NETBSDSRCDIR}/lib/libutil

.  else
CPPFLAGS+=	-D_GNU_SOURCE -DGNUPORT
SRCS+=		fparseln.c
.PATH: ${BSDSRCDIR}/lib/libutil

CPPFLAGS+=	-I${BSDSRCDIR}/include
SRCS+=		setmode.c unvis.c
.PATH: ${BSDSRCDIR}/lib/libc/gen

SRCS+=		fgetln.c
.PATH: ${BSDSRCDIR}/../contrib/code/mirmake/dist/contrib

SRCS+=		strlfun.c
CPPFLAGS+=	-DOUTSIDE_OF_LIBKERN -DNEED_STRLFUN_PROTOS
CPPFLAGS+=	-DL_strlcpy -DL_strlcat
.PATH: ${BSDSRCDIR}/kern/c
.  endif
.endif

.include <bsd.prog.mk>
