#	$NetBSD: Makefile.rumpvfs,v 1.41 2014/04/27 15:15:13 pooka Exp $
#

.include "${RUMPTOP}/Makefile.rump"

.include <bsd.own.mk>

LIB=	rumpvfs

.PATH:	${RUMPTOP}/librump/rumpvfs ${RUMPTOP}/librump		\
	${RUMPTOP}/../kern					\
	${RUMPTOP}/../miscfs/genfs ${RUMPTOP}/../miscfs/syncfs	\
	${RUMPTOP}/../miscfs/specfs ${RUMPTOP}/../miscfs/deadfs	\
	${RUMPTOP}/../compat/common ${RUMPTOP}/../uvm		\
	${RUMPTOP}/../dev ${RUMPTOP}/../ufs/mfs			\
	${RUMPTOP}/../dev ${RUMPTOP}/../ufs/ufs

#
# Source modules, first the ones specifically implemented for librump.
# 
SRCS+=	rump_vfs.c devnodes.c devnull.c rumpblk.c rumpfs.c vm_vfs.c

SRCS+=	rumpvfs_if_wrappers.c

SRCS+=	rumpvfs_syscalls.c

# sys/kern I/O
SRCS+=	kern_physio.c

# sys/kern vfs
SRCS+=	vfs_bio.c vfs_cache.c vfs_cwd.c vfs_dirhash.c vfs_getcwd.c	\
	vfs_hooks.c vfs_init.c vfs_lockf.c vfs_lookup.c vfs_mount.c	\
	vfs_subr.c vfs_syscalls.c vfs_trans.c vfs_vnode.c vfs_vnops.c	\
	vfs_wapbl.c vfs_xattr.c

# sys/kern module support
SRCS+=	kern_module_vfs.c subr_kobj_vfs.c

# sys/uvm
SRCS+=	uvm_vnode.c

# sys/miscfs/syncfs
SRCS+=	sync_subr.c sync_vnops.c

# sys/miscfs/deadfs
SRCS+=	dead_vfsops.c dead_vnops.c

# sys/miscfs
SRCS+=	genfs_io.c genfs_rename.c genfs_vfsops.c genfs_vnops.c spec_vnops.c

# sys/kern bufq
SRCS+=	subr_bufq.c bufq_disksort.c bufq_fcfs.c bufq_priocscan.c	\
	bufq_readprio.c

# MFS miniroot support
SRCS+=	mfs_miniroot.c

# ktrace vfs part
.if ${RUMP_KTRACE} == "yes"
SRCS+= kern_ktrace_vfs.c
.endif

#quota2 plists
SRCS+= quota1_subr.c vfs_quotactl.c

# dev
# firmload is technically part of rumpdev, but it's pure vfs in nature.
SRCS+=	firmload.c

# compat syscalls
SRCS+=	vfs_syscalls_50.c compat.c

SRCS+=	rumpvnode_if.c

# no shlib_version because this is automatically in sync with lib/librump
SHLIB_MAJOR=    0
SHLIB_MINOR=    0

CPPFLAGS+=	-I${RUMPTOP}/librump/rumpkern

.include <bsd.lib.mk>
.include <bsd.klinks.mk>
