svn commit: r300695 - projects/zfsd/head/cddl/usr.sbin/zfsd/tests

Alan Somers asomers at FreeBSD.org
Wed May 25 20:11:28 UTC 2016


Author: asomers
Date: Wed May 25 20:11:26 2016
New Revision: 300695
URL: https://svnweb.freebsd.org/changeset/base/300695

Log:
  Convert the zfsd unittests from an ATF test to a plain test
  
  This abandons the gcov integration, but that doesn't work with clang anyway.
  There's no reduction in the granularity of test visibility to Kyua, because
  the entire file was a single test from the perspective of ATF.
  
  Sponsored by:	Spectra Logic Corp

Deleted:
  projects/zfsd/head/cddl/usr.sbin/zfsd/tests/zfsd_test.sh
Modified:
  projects/zfsd/head/cddl/usr.sbin/zfsd/tests/Makefile

Modified: projects/zfsd/head/cddl/usr.sbin/zfsd/tests/Makefile
==============================================================================
--- projects/zfsd/head/cddl/usr.sbin/zfsd/tests/Makefile	Wed May 25 19:44:26 2016	(r300694)
+++ projects/zfsd/head/cddl/usr.sbin/zfsd/tests/Makefile	Wed May 25 20:11:26 2016	(r300695)
@@ -4,45 +4,42 @@ SRCDIR=${.CURDIR}/../../../..
 .include "${.CURDIR}/../Makefile.common"
 .PATH:	${.CURDIR}/..
 
-PROG_CXX=	zfsd_unittest
-SRCS:=		${SRCS:Nzfsd_main.cc}
-SRCS+=		libmocks.c zfsd_unittest.cc
+TESTSDIR?=	${TESTSBASE}/cddl/sbin/zfsd
+
+PLAIN_TESTS_CXX=	zfsd_unittest
+SRCS.zfsd_unittest:=		${SRCS:Nzfsd_main.cc}
+SRCS.zfsd_unittest+=		libmocks.c zfsd_unittest.cc
+SRCS=
 
 # Use #include <zfsd/xxx.h> in test programs.
-INCFLAGS+=	-I ${.CURDIR}/../..
+INCFLAGS+=	-I${.CURDIR}/../..
 
 .if defined(DESTDIR)
-INCFLAGS+=	-I ${DESTDIR}/usr/include
+INCFLAGS+=	-I${DESTDIR}/usr/include
 LIBRARY_PATH=	${DESTDIR}/lib:${DESTDIR}/usr/lib
-LDFLAGS+=	-L ${DESTDIR}/lib -L ${DESTDIR}/usr/lib
+LDFLAGS.zfsd_unittest+=	-L${DESTDIR}/lib -L${DESTDIR}/usr/lib
 .elif defined(WORLDTMP)
-INCFLAGS+=	-I ${WORLDTMP}/usr/include
+INCFLAGS+=	-I${WORLDTMP}/usr/include
 LIBRARY_PATH=	${WORLDTMP}/lib:${WORLDTMP}/usr/lib
-LDFLAGS+=	-L ${WORLDTMP}/lib -L ${WORLDTMP}/usr/lib
+LDFLAGS.zfsd_unittest+=	-L${WORLDTMP}/lib -L${WORLDTMP}/usr/lib
 .else
 LIBRARY_PATH=
 .endif
-ZFSD_UNITTEST=	env LD_LIBRARY_PATH=${LIBRARY_PATH} ./zfsd_unittest
 
 # Googletest options
 LOCALBASE?=	/usr/local
-INCFLAGS+=	-I ${LOCALBASE}/include -D_THREAD_SAFE -pthread
-LDFLAGS+=	-L ${LOCALBASE}/lib -D_THREAD_SAFE -pthread
-LDADD+=		${LOCALBASE}/lib/libgtest.a
+INCFLAGS+=	-I${LOCALBASE}/include -D_THREAD_SAFE -pthread
+LDFLAGS.zfsd_unittest+=	-L${LOCALBASE}/lib -D_THREAD_SAFE -pthread
+LDADD.zfsd_unittest+=		${LOCALBASE}/lib/libgtest.a
 
 # GoogleMock options
-LDADD+= ${LOCALBASE}/lib/libgmock.a ${LOCALBASE}/lib/libgmock_main.a
+LDADD.zfsd_unittest+= ${LOCALBASE}/lib/libgmock.a ${LOCALBASE}/lib/libgmock_main.a
 
 # Googlemock fails if we don't have this line
 # https://groups.google.com/forum/#!msg/googletestframework/h8ixEPCFm0o/amwfu4xGJb0J
-CFLAGS+= -DGTEST_HAS_PTHREAD
+CFLAGS.zfsd_unittest+= -DGTEST_HAS_PTHREAD
 
 # Install the tests
 TESTSBASE?=	/usr/tests
-TESTSDIR?=	${TESTSBASE}/cddl/sbin/zfsd
-# TODO: Convert from an ATF SH test to a Kyua plain test
-# Long term TODO: Convert to a Kyua googletest test
-ATF_TESTS_SH+=	zfsd_test
-BINDIR=		${TESTSDIR}
 
 .include <bsd.test.mk>


More information about the svn-src-projects mailing list