svn commit: r257852 - in head: lib lib/tests tests

Julio Merino jmmv at FreeBSD.org
Fri Nov 8 14:29:07 UTC 2013


Author: jmmv
Date: Fri Nov  8 14:29:06 2013
New Revision: 257852
URL: http://svnweb.freebsd.org/changeset/base/257852

Log:
  Install category Kyuafiles from their category directories.
  
  Move the installation of /usr/tests/lib/Kyuafile from src/tests/lib/
  to src/lib/.  This is to keep the src/tests/ hierarchy unaware of the
  rest of the tree, which makes things clearer in general.  In particular:
  
  1) Everything related to the construction of /usr/tests/lib/ is kept
     in src/lib/.  There is no need to think about different directories
     and how they relate to each other.  (The same applies for libexec,
     usr.bin, etc. but these are not yet handled.)
  
  2) src/tests becomes the place to keep cross-functional test programs
     and nothing else, which also helps in simplifying things.
  
  Reviewed by:	freebsd-testing
  Approved by:	rpaulo (mentor)

Added:
  head/lib/tests/
  head/lib/tests/Makefile   (contents, props changed)
Modified:
  head/lib/Makefile
  head/tests/Makefile
  head/tests/README

Modified: head/lib/Makefile
==============================================================================
--- head/lib/Makefile	Fri Nov  8 14:26:52 2013	(r257851)
+++ head/lib/Makefile	Fri Nov  8 14:29:06 2013	(r257852)
@@ -126,7 +126,8 @@ SUBDIR=	${SUBDIR_ORDERED} \
 	libyaml \
 	libz \
 	${_atf} \
-	${_clang}
+	${_clang} \
+	${_tests}
 
 .if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf)
 _csu=csu/${MACHINE_ARCH}-elf
@@ -251,6 +252,7 @@ _libtelnet=	libtelnet
 
 .if ${MK_TESTS} != "no"
 _atf=		atf
+_tests=		tests
 .endif
 
 .if ${MK_UNBOUND} != "no"

Added: head/lib/tests/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lib/tests/Makefile	Fri Nov  8 14:29:06 2013	(r257852)
@@ -0,0 +1,10 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+TESTSDIR=	${TESTSBASE}/lib
+
+.PATH:		${.CURDIR:H:H}/tests
+KYUAFILE=	yes
+
+.include <bsd.test.mk>

Modified: head/tests/Makefile
==============================================================================
--- head/tests/Makefile	Fri Nov  8 14:26:52 2013	(r257851)
+++ head/tests/Makefile	Fri Nov  8 14:29:06 2013	(r257852)
@@ -2,10 +2,9 @@
 
 .include <bsd.own.mk>
 
-TESTS_SUBDIRS= lib
+SUBDIR= # still empty
 
 TESTSDIR= ${TESTSBASE}
-
 KYUAFILE= yes
 
 .include <bsd.test.mk>

Modified: head/tests/README
==============================================================================
--- head/tests/README	Fri Nov  8 14:26:52 2013	(r257851)
+++ head/tests/README	Fri Nov  8 14:29:06 2013	(r257852)
@@ -44,13 +44,12 @@ tree-- the top-level Kyuafile does not k
 exist upfront.  Instead, such Kyuafile automatically detects, at
 run-time, which */Kyuafile files exist and uses those directly.
 
-Similarly, every category subdirectory within src/tests/ provides the
-same Kyuafile with auto-discovery features.  For example: src/tests/lib/
-holds a generic Makefile to install test-suite related material but such
-directory does not know upfront which libraries within src/lib/ will
-install tests.  For this reason, the Kyuafile in src/tests/lib/ has to
-also use the auto-discovery features.  The same applies for any other
-category subdirectory (e.g. bin, usr.sbin, etc.).
+Similarly, every directory in src/ that wants to install a Kyuafile to
+just recurse into other subdirectories reuses this Kyuafile with
+auto-discovery features.  As an example, take a look at src/lib/tests/
+whose sole purpose is to install a Kyuafile into /usr/tests/lib/.
+The goal in this specific case is for /usr/tests/lib/ to be generated
+entirely from src/lib/.
 
 -- 
 $FreeBSD$


More information about the svn-src-head mailing list