1# $FreeBSD$ 2 3PACKAGE= tests 4 5TESTSDIR= ${TESTSBASE}/sys/fs/fusefs 6 7# We could simply link all of these files into a single executable. But since 8# Kyua treats googletest programs as plain tests, it's better to separate them 9# out, so we get more granular reporting. 10GTESTS+= access 11GTESTS+= allow_other 12GTESTS+= bmap 13GTESTS+= create 14GTESTS+= default_permissions 15GTESTS+= default_permissions_privileged 16GTESTS+= destroy 17GTESTS+= dev_fuse_poll 18GTESTS+= fifo 19GTESTS+= flush 20GTESTS+= forget 21GTESTS+= fsync 22GTESTS+= fsyncdir 23GTESTS+= getattr 24GTESTS+= interrupt 25GTESTS+= io 26GTESTS+= link 27GTESTS+= locks 28GTESTS+= lookup 29GTESTS+= mkdir 30GTESTS+= mknod 31GTESTS+= mount 32GTESTS+= nfs 33GTESTS+= notify 34GTESTS+= open 35GTESTS+= opendir 36GTESTS+= read 37GTESTS+= readdir 38GTESTS+= readlink 39GTESTS+= release 40GTESTS+= releasedir 41GTESTS+= rename 42GTESTS+= rmdir 43GTESTS+= setattr 44GTESTS+= statfs 45GTESTS+= symlink 46GTESTS+= unlink 47GTESTS+= write 48GTESTS+= xattr 49 50.for p in ${GTESTS} 51SRCS.$p+= ${p}.cc 52SRCS.$p+= getmntopts.c 53SRCS.$p+= mockfs.cc 54SRCS.$p+= utils.cc 55.endfor 56 57TEST_METADATA.default_permissions+= required_user="unprivileged" 58TEST_METADATA.default_permissions_privileged+= required_user="root" 59TEST_METADATA.mknod+= required_user="root" 60TEST_METADATA.nfs+= required_user="root" 61 62# TODO: drastically increase timeout after test development is mostly complete 63TEST_METADATA+= timeout=10 64 65FUSEFS= ${SRCTOP}/sys/fs/fuse 66MOUNT= ${SRCTOP}/sbin/mount 67# Suppress warnings that GCC generates for the libc++ and gtest headers. 68CXXWARNFLAGS.gcc+= -Wno-placement-new -Wno-attributes -Wno-class-memaccess 69CXXFLAGS+= -I${SRCTOP}/tests 70CXXFLAGS+= -I${FUSEFS} 71CXXFLAGS+= -I${MOUNT} 72.PATH: ${MOUNT} 73CXXSTD= c++14 74 75LIBADD+= pthread 76LIBADD+= gmock gtest 77LIBADD+= util 78 79WARNS?= 6 80 81.include <bsd.test.mk> 82