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)
This commit is contained in:
jmmv 2013-11-08 14:29:06 +00:00
parent 86297e7ee9
commit 39ac592d96
4 changed files with 20 additions and 10 deletions

View File

@ -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"

10
lib/tests/Makefile Normal file
View File

@ -0,0 +1,10 @@
# $FreeBSD$
.include <bsd.own.mk>
TESTSDIR= ${TESTSBASE}/lib
.PATH: ${.CURDIR:H:H}/tests
KYUAFILE= yes
.include <bsd.test.mk>

View File

@ -2,10 +2,9 @@
.include <bsd.own.mk>
TESTS_SUBDIRS= lib
SUBDIR= # still empty
TESTSDIR= ${TESTSBASE}
KYUAFILE= yes
.include <bsd.test.mk>

View File

@ -44,13 +44,12 @@ tree-- the top-level Kyuafile does not know which subdirectories may
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$