5 TESTSDIR= ${TESTSBASE}/sys/fs/fuse
10 ATF_TESTS_CXX+= getattr
12 ATF_TESTS_CXX+= lookup
16 ATF_TESTS_CXX+= readlink
17 ATF_TESTS_CXX+= release
18 ATF_TESTS_CXX+= rename
20 ATF_TESTS_CXX+= setattr
21 ATF_TESTS_CXX+= statfs
22 ATF_TESTS_CXX+= symlink
23 ATF_TESTS_CXX+= unlink
26 SRCS.access+= access.cc
27 SRCS.access+= getmntopts.c
28 SRCS.access+= mockfs.cc
29 SRCS.access+= utils.cc
31 SRCS.create+= create.cc
32 SRCS.create+= getmntopts.c
33 SRCS.create+= mockfs.cc
34 SRCS.create+= utils.cc
37 SRCS.flush+= getmntopts.c
38 SRCS.flush+= mockfs.cc
41 SRCS.getattr+= getattr.cc
42 SRCS.getattr+= getmntopts.c
43 SRCS.getattr+= mockfs.cc
44 SRCS.getattr+= utils.cc
46 SRCS.link+= getmntopts.c
51 SRCS.lookup+= getmntopts.c
52 SRCS.lookup+= lookup.cc
53 SRCS.lookup+= mockfs.cc
54 SRCS.lookup+= utils.cc
56 SRCS.mkdir+= getmntopts.c
57 SRCS.mkdir+= mockfs.cc
61 SRCS.mknod+= getmntopts.c
62 SRCS.mknod+= mockfs.cc
66 SRCS.open+= getmntopts.c
71 SRCS.readlink+= getmntopts.c
72 SRCS.readlink+= mockfs.cc
73 SRCS.readlink+= readlink.cc
74 SRCS.readlink+= utils.cc
76 SRCS.release+= getmntopts.c
77 SRCS.release+= mockfs.cc
78 SRCS.release+= release.cc
79 SRCS.release+= utils.cc
81 SRCS.rename+= getmntopts.c
82 SRCS.rename+= mockfs.cc
83 SRCS.rename+= rename.cc
84 SRCS.rename+= utils.cc
86 SRCS.rmdir+= getmntopts.c
87 SRCS.rmdir+= mockfs.cc
91 SRCS.setattr+= getmntopts.c
92 SRCS.setattr+= mockfs.cc
93 SRCS.setattr+= setattr.cc
94 SRCS.setattr+= utils.cc
96 SRCS.statfs+= getmntopts.c
97 SRCS.statfs+= mockfs.cc
98 SRCS.statfs+= statfs.cc
99 SRCS.statfs+= utils.cc
101 SRCS.symlink+= getmntopts.c
102 SRCS.symlink+= mockfs.cc
103 SRCS.symlink+= symlink.cc
104 SRCS.symlink+= utils.cc
106 SRCS.unlink+= getmntopts.c
107 SRCS.unlink+= mockfs.cc
108 SRCS.unlink+= unlink.cc
109 SRCS.unlink+= utils.cc
111 SRCS.write+= getmntopts.c
112 SRCS.write+= mockfs.cc
113 SRCS.write+= write.cc
114 SRCS.write+= utils.cc
116 # TODO: drastically increase timeout after test development is mostly complete
117 TEST_METADATA+= timeout=10
119 FUSEFS= ${.CURDIR:H:H:H:H}/sys/fs/fuse
120 MOUNT= ${.CURDIR:H:H:H:H}/sbin/mount
121 CFLAGS+= -I${.CURDIR:H:H:H}
126 LIBADD+= util pthread
128 NO_WTHREAD_SAFETY= # GoogleTest fails Clang's thread safety check
130 # Use googlemock from ports until after the import-googletest-1.8.1 branch
132 CXXFLAGS+= -I/usr/local/include
133 CXXFLAGS+= -DGTEST_HAS_POSIX_RE=1
134 CXXFLAGS+= -DGTEST_HAS_PTHREAD=1
135 CXXFLAGS+= -DGTEST_HAS_STREAM_REDIRECTION=1
137 CXXFLAGS+= -std=c++14
138 LDADD+= ${LOCALBASE}/lib/libgmock.a
139 LDADD+= ${LOCALBASE}/lib/libgtest.a
140 # Without -lpthread, gtest fails at _runtime_ with the error pthread_key_create(&key, &DeleteThreadLocalValue)failed with error 78
143 .include <bsd.test.mk>