summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <andreas.sturmlechner@gmail.com>2016-08-21 20:23:47 +0200
committerAndreas Sturmlechner <andreas.sturmlechner@gmail.com>2016-08-21 20:23:47 +0200
commit24edb3b8d156558891a0161defb28b522cb1b1a5 (patch)
tree0a30d05faa686ad035f15d0cb8f8a1cb45256c6e
parent1e11a0ddc194b3e6943f18c4a2cfee8f2102ad9f (diff)
downloadkde-24edb3b8d156558891a0161defb28b522cb1b1a5.tar.gz
kde-24edb3b8d156558891a0161defb28b522cb1b1a5.tar.bz2
kde-24edb3b8d156558891a0161defb28b522cb1b1a5.zip
kde5.eclass: Add KDE_TEST="forceoptional-recursive" handling
Prime example: dev-util/kdevplatform with 24 test* subdirs
-rw-r--r--eclass/kde5.eclass22
1 files changed, 14 insertions, 8 deletions
diff --git a/eclass/kde5.eclass b/eclass/kde5.eclass
index 8c6a846e897..01d0f97cfca 100644
--- a/eclass/kde5.eclass
+++ b/eclass/kde5.eclass
@@ -91,8 +91,10 @@ EXPORT_FUNCTIONS pkg_setup pkg_nofetch src_unpack src_prepare src_configure src_
# For any other value, add test to IUSE and add a dependency on dev-qt/qttest:5.
# If set to "optional", configure with -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Test=ON
# when USE=!test.
-# If set to "forceoptional", remove a Qt5Test dependency from the root
-# CMakeLists.txt in addition to the above.
+# If set to "forceoptional", remove a Qt5Test dependency and comment test
+# subdirs from the root CMakeLists.txt in addition to the above.
+# If set to "forceoptional-recursive", remove a Qt5Test dependency and comment
+# test subdirs from *any* CMakeLists.txt in addition to the above.
if [[ ${CATEGORY} = kde-frameworks ]]; then
: ${KDE_TEST:=true}
else
@@ -554,13 +556,17 @@ EOF
if [[ ${KDE_TEST} = forceoptional ]] ; then
punt_bogus_dep Qt5 Test
# if forceoptional, also cover non-kde categories
- cmake_comment_add_subdirectory autotests
- cmake_comment_add_subdirectory test
- cmake_comment_add_subdirectory tests
+ cmake_comment_add_subdirectory autotests test tests
+ elif [[ ${KDE_TEST} = forceoptional-recursive ]] ; then
+ local d
+ for d in $(find . -type d -name "autotests" -or -name "tests" -or -name "test"); do
+ pushd ${d%/*} > /dev/null || die
+ punt_bogus_dep Qt5 Test
+ cmake_comment_add_subdirectory autotests test tests
+ popd > /dev/null || die
+ done
elif [[ ${CATEGORY} = kde-frameworks || ${CATEGORY} = kde-plasma || ${CATEGORY} = kde-apps ]] ; then
- cmake_comment_add_subdirectory autotests
- cmake_comment_add_subdirectory test
- cmake_comment_add_subdirectory tests
+ cmake_comment_add_subdirectory autotests test tests
fi
fi
}