From 39ac592d96a91fc379d17655201b826e2da0d2e5 Mon Sep 17 00:00:00 2001 From: jmmv Date: Fri, 8 Nov 2013 14:29:06 +0000 Subject: [PATCH] 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) --- lib/Makefile | 4 +++- lib/tests/Makefile | 10 ++++++++++ tests/Makefile | 3 +-- tests/README | 13 ++++++------- 4 files changed, 20 insertions(+), 10 deletions(-) create mode 100644 lib/tests/Makefile diff --git a/lib/Makefile b/lib/Makefile index 2db83a6fbf69..8af9f5fac44a 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -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" diff --git a/lib/tests/Makefile b/lib/tests/Makefile new file mode 100644 index 000000000000..935fd709df02 --- /dev/null +++ b/lib/tests/Makefile @@ -0,0 +1,10 @@ +# $FreeBSD$ + +.include + +TESTSDIR= ${TESTSBASE}/lib + +.PATH: ${.CURDIR:H:H}/tests +KYUAFILE= yes + +.include diff --git a/tests/Makefile b/tests/Makefile index 1e2595470fdd..88386eb37009 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -2,10 +2,9 @@ .include -TESTS_SUBDIRS= lib +SUBDIR= # still empty TESTSDIR= ${TESTSBASE} - KYUAFILE= yes .include diff --git a/tests/README b/tests/README index 2dfbc764da1f..416cea7f0aed 100644 --- a/tests/README +++ b/tests/README @@ -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$