summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--UPDATING11
-rw-r--r--etc/mtree/BSD.tests.dist6
-rw-r--r--libexec/atf/Makefile2
-rw-r--r--libexec/atf/Makefile.inc2
-rw-r--r--libexec/atf/atf-check/Makefile1
-rw-r--r--libexec/atf/atf-sh/Makefile54
-rw-r--r--libexec/atf/atf-sh/tests/Makefile28
-rw-r--r--share/mk/atf.test.mk9
-rw-r--r--share/mk/plain.test.mk3
-rw-r--r--share/mk/tap.test.mk2
-rw-r--r--tools/build/mk/OptionalObsoleteFiles.inc12
-rw-r--r--usr.bin/Makefile2
12 files changed, 117 insertions, 15 deletions
diff --git a/UPDATING b/UPDATING
index 5e1ce7e..a3bb9ea 100644
--- a/UPDATING
+++ b/UPDATING
@@ -33,11 +33,16 @@ older version of current is a bit fragile.
programs once the operator executes "make delete-old-libs" after a
"make installworld".
+ Additionally, the atf-sh binary was made private by moving it into
+ /usr/libexec/. Already-built shell test programs will keep the
+ path to the old binary so they will break after "make delete-old"
+ is run.
+
If you are using WITH_TESTS=yes (not the default), wipe the object
tree and rebuild from scratch to prevent spurious test failures.
- This is only needed once: the old, misnumbered libraries have been
- added to OptionalObsoleteFiles.inc so they will be removed during a
- clean upgrade.
+ This is only needed once: the misnumbered libraries and misplaced
+ binaries have been added to OptionalObsoleteFiles.inc so they will
+ be removed during a clean upgrade.
20140814:
The ixgbe tunables now match their sysctl counterparts, for example:
diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist
index 2e4b31c..928ac8a 100644
--- a/etc/mtree/BSD.tests.dist
+++ b/etc/mtree/BSD.tests.dist
@@ -92,6 +92,8 @@
atf
atf-check
..
+ atf-sh
+ ..
..
..
sbin
@@ -133,10 +135,6 @@
usr.bin
apply
..
- atf
- atf-sh
- ..
- ..
calendar
..
comm
diff --git a/libexec/atf/Makefile b/libexec/atf/Makefile
index 6749db5..db7554d 100644
--- a/libexec/atf/Makefile
+++ b/libexec/atf/Makefile
@@ -25,6 +25,6 @@
#
# $FreeBSD$
-SUBDIR= atf-check tests
+SUBDIR= atf-check atf-sh tests
.include <bsd.subdir.mk>
diff --git a/libexec/atf/Makefile.inc b/libexec/atf/Makefile.inc
index 392bbb2..2521be6 100644
--- a/libexec/atf/Makefile.inc
+++ b/libexec/atf/Makefile.inc
@@ -28,3 +28,5 @@
CFLAGS+= -DHAVE_CONFIG_H
WARNS?= 3
+
+.include "../Makefile.inc"
diff --git a/libexec/atf/atf-check/Makefile b/libexec/atf/atf-check/Makefile
index 0841498..4e6d8df 100644
--- a/libexec/atf/atf-check/Makefile
+++ b/libexec/atf/atf-check/Makefile
@@ -30,7 +30,6 @@
ATF= ${.CURDIR:H:H:H}/contrib/atf
.PATH: ${ATF}/atf-sh
-BINDIR= /usr/libexec
PROG_CXX= atf-check
SRCS= atf-check.cpp
MAN= atf-check.1
diff --git a/libexec/atf/atf-sh/Makefile b/libexec/atf/atf-sh/Makefile
new file mode 100644
index 0000000..c407a41
--- /dev/null
+++ b/libexec/atf/atf-sh/Makefile
@@ -0,0 +1,54 @@
+#-
+# Copyright (c) 2011 Google, Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+ATF= ${.CURDIR:H:H:H}/contrib/atf
+.PATH: ${ATF}/atf-sh
+
+PROG_CXX= atf-sh
+SRCS= atf-sh.cpp
+MAN= atf-sh.1 atf-sh-api.3
+
+CFLAGS+= -DHAVE_CONFIG_H
+CFLAGS+= -I${ATF}
+
+DPADD+= ${LIBATF_C} ${LIBATF_CXX}
+LDADD+= -latf-c++ -latf-c
+USEPRIVATELIB= atf-c++ atf-c
+
+FILESGROUPS= SUBR
+
+SUBRDIR= ${SHAREDIR}/atf
+SUBR= libatf-sh.subr
+
+.if ${MK_TESTS} != "no"
+SUBDIR+= tests
+.endif
+
+.include "../../../lib/atf/common.mk"
+.include <bsd.prog.mk>
diff --git a/libexec/atf/atf-sh/tests/Makefile b/libexec/atf/atf-sh/tests/Makefile
new file mode 100644
index 0000000..c7a8ffb
--- /dev/null
+++ b/libexec/atf/atf-sh/tests/Makefile
@@ -0,0 +1,28 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+TESTSDIR= ${TESTSBASE}/libexec/atf/atf-sh
+
+ATF= ${.CURDIR:H:H:H:H}/contrib/atf
+.PATH: ${ATF}/atf-sh
+
+ATF_TESTS_SH+= atf_check_test
+ATF_TESTS_SH+= config_test
+ATF_TESTS_SH+= integration_test
+ATF_TESTS_SH_SED_integration_test= \
+ -e 's,/usr/bin/env *atf-sh,/usr/libexec/atf-sh,g'
+ATF_TESTS_SH+= normalize_test
+ATF_TESTS_SH+= tc_test
+ATF_TESTS_SH+= tp_test
+
+SCRIPTS+= misc_helpers
+SCRIPTSDIR_misc_helpers=${TESTSDIR}
+CLEANFILES+= misc_helpers misc_helpers.tmp
+misc_helpers: misc_helpers.sh
+ echo '#! /usr/libexec/atf-sh' >${.TARGET}.tmp
+ cat ${.ALLSRC} >>${.TARGET}.tmp
+ chmod +x ${.TARGET}.tmp
+ mv ${.TARGET}.tmp ${.TARGET}
+
+.include <bsd.test.mk>
diff --git a/share/mk/atf.test.mk b/share/mk/atf.test.mk
index c82557c..f7d66bf 100644
--- a/share/mk/atf.test.mk
+++ b/share/mk/atf.test.mk
@@ -98,10 +98,15 @@ _TESTS+= ${ATF_TESTS_SH}
SCRIPTSDIR_${_T}= ${TESTSDIR}
TEST_INTERFACE.${_T}= atf
CLEANFILES+= ${_T} ${_T}.tmp
+# TODO(jmmv): It seems to me that this SED and SRC functionality should
+# exist in bsd.prog.mk along the support for SCRIPTS. Move it there if
+# this proves to be useful within the tests.
+ATF_TESTS_SH_SED_${_T}?= # empty
ATF_TESTS_SH_SRC_${_T}?= ${_T}.sh
${_T}: ${ATF_TESTS_SH_SRC_${_T}}
- echo '#! /usr/bin/atf-sh' > ${.TARGET}.tmp
- cat ${.ALLSRC} >> ${.TARGET}.tmp
+ echo '#! /usr/libexec/atf-sh' > ${.TARGET}.tmp
+ cat ${.ALLSRC:N*Makefile*} \
+ | sed ${ATF_TESTS_SH_SED_${_T}} >>${.TARGET}.tmp
chmod +x ${.TARGET}.tmp
mv ${.TARGET}.tmp ${.TARGET}
.endfor
diff --git a/share/mk/plain.test.mk b/share/mk/plain.test.mk
index 99685ef..f26bab3 100644
--- a/share/mk/plain.test.mk
+++ b/share/mk/plain.test.mk
@@ -57,7 +57,8 @@ CLEANFILES+= ${_T} ${_T}.tmp
PLAIN_TESTS_SH_SED_${_T}?= # empty
PLAIN_TESTS_SH_SRC_${_T}?= ${_T}.sh
${_T}: ${PLAIN_TESTS_SH_SRC_${_T}}
- cat ${.ALLSRC} | sed ${PLAIN_TESTS_SH_SED_${_T}} >${.TARGET}.tmp
+ cat ${.ALLSRC:N*Makefile*} \
+ | sed ${PLAIN_TESTS_SH_SED_${_T}} >${.TARGET}.tmp
chmod +x ${.TARGET}.tmp
mv ${.TARGET}.tmp ${.TARGET}
.endfor
diff --git a/share/mk/tap.test.mk b/share/mk/tap.test.mk
index 4c05661..058ebdf 100644
--- a/share/mk/tap.test.mk
+++ b/share/mk/tap.test.mk
@@ -66,7 +66,7 @@ TAP_TESTS_PERL_SRC_${_T}?= ${_T}.pl
${_T}: ${TAP_TESTS_PERL_SRC_${_T}}
{ \
echo '#! ${TAP_PERL_INTERPRETER}'; \
- cat ${.ALLSRC} | sed ${TAP_TESTS_PERL_SED_${_T}}; \
+ cat ${.ALLSRC:N*Makefile*} | sed ${TAP_TESTS_PERL_SED_${_T}}; \
} >${.TARGET}.tmp
chmod +x ${.TARGET}.tmp
mv ${.TARGET}.tmp ${.TARGET}
diff --git a/tools/build/mk/OptionalObsoleteFiles.inc b/tools/build/mk/OptionalObsoleteFiles.inc
index b3fad77..62542b7 100644
--- a/tools/build/mk/OptionalObsoleteFiles.inc
+++ b/tools/build/mk/OptionalObsoleteFiles.inc
@@ -4070,6 +4070,7 @@ OLD_FILES+=usr/share/man/man8/telnetd.8.gz
.endif
.if ${MK_TESTS} == yes
+OLD_FILES+=usr/bin/atf-sh
OLD_LIBS+=usr/lib/libatf-c++.a
OLD_LIBS+=usr/lib/libatf-c++.so
OLD_LIBS+=usr/lib/libatf-c++.so.1
@@ -4130,6 +4131,17 @@ OLD_FILES+=usr/tests/lib/atf/libatf-c/process_test
OLD_FILES+=usr/tests/lib/atf/libatf-c/sanity_test
OLD_FILES+=usr/tests/lib/atf/libatf-c/text_test
OLD_FILES+=usr/tests/lib/atf/libatf-c/user_test
+OLD_FILES+=usr/tests/usr.bin/atf/Kyuafile
+OLD_FILES+=usr/tests/usr.bin/atf/atf-sh/Kyuafile
+OLD_FILES+=usr/tests/usr.bin/atf/atf-sh/atf_check_test
+OLD_FILES+=usr/tests/usr.bin/atf/atf-sh/config_test
+OLD_FILES+=usr/tests/usr.bin/atf/atf-sh/integration_test
+OLD_FILES+=usr/tests/usr.bin/atf/atf-sh/misc_helpers
+OLD_FILES+=usr/tests/usr.bin/atf/atf-sh/normalize_test
+OLD_FILES+=usr/tests/usr.bin/atf/atf-sh/tc_test
+OLD_FILES+=usr/tests/usr.bin/atf/atf-sh/tp_test
+OLD_DIRS+=usr/tests/usr.bin/atf/atf-sh
+OLD_DIRS+=usr/tests/usr.bin/atf
.if ${MK_MAKE} == yes && ${MK_BMAKE} == yes
OLD_FILES+=usr/tests/usr.bin/make/archives/fmt_44bsd/legacy_test
OLD_FILES+=usr/tests/usr.bin/make/archives/fmt_44bsd/Kyuafile
diff --git a/usr.bin/Makefile b/usr.bin/Makefile
index 3f0fd83..785d17b 100644
--- a/usr.bin/Makefile
+++ b/usr.bin/Makefile
@@ -12,7 +12,6 @@
SUBDIR= alias \
apply \
asa \
- ${_atf} \
awk \
banner \
basename \
@@ -335,7 +334,6 @@ SUBDIR+= telnet
.endif
.if ${MK_TESTS} != "no"
-_atf= atf
_tests= tests
.endif
OpenPOWER on IntegriCloud