commit:     03bf9f353b7014ff61ed61b381ab517b73a69608
Author:     orbea <orbea <AT> riseup <DOT> net>
AuthorDate: Fri Apr  9 18:43:53 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Mar 23 19:31:21 2023 +0000
URL:        https://gitweb.gentoo.org/proj/kde.git/commit/?id=03bf9f35

cmake.eclass: Support dev-util/samurai

samurai is a ninja-compatible build tool written in C which
works with cmake, meson and other users of ninja.

It is feature-complete and supports most of the same options
as ninja.

Signed-off-by: orbea <orbea <AT> riseup.net>
Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 eclass/cmake.eclass | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index 1986e5cf08..5f8fd04aaf 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -143,7 +143,7 @@ case ${CMAKE_MAKEFILE_GENERATOR} in
                BDEPEND="sys-devel/make"
                ;;
        ninja)
-               BDEPEND="dev-util/ninja"
+               BDEPEND="${NINJA_DEPEND}"
                ;;
        *)
                eerror "Unknown value for \${CMAKE_MAKEFILE_GENERATOR}"
@@ -370,13 +370,6 @@ cmake_src_prepare() {
                die "FATAL: Unable to find CMakeLists.txt"
        fi
 
-       # if ninja is enabled but not installed, the build could fail
-       # this could happen if ninja is manually enabled (eg. make.conf) but 
not installed
-       if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]] && ! has_version -b 
dev-util/ninja; then
-               eerror "CMAKE_MAKEFILE_GENERATOR is set to ninja, but ninja is 
not installed."
-               die "Please install dev-util/ninja or unset 
CMAKE_MAKEFILE_GENERATOR."
-       fi
-
        local modules_list
        if [[ ${EAPI} == 7 && $(declare -p CMAKE_REMOVE_MODULES_LIST) != 
"declare -a"* ]]; then
                modules_list=( ${CMAKE_REMOVE_MODULES_LIST} )
@@ -714,11 +707,7 @@ cmake_src_test() {
 cmake_src_install() {
        debug-print-function ${FUNCNAME} "$@"
 
-       _cmake_check_build_dir
-       pushd "${BUILD_DIR}" > /dev/null || die
-       DESTDIR="${D}" ${CMAKE_MAKEFILE_GENERATOR} install "$@" ||
-               die "died running ${CMAKE_MAKEFILE_GENERATOR} install"
-       popd > /dev/null || die
+       DESTDIR="${D}" cmake_build install "$@"
 
        if [[ ${EAPI} == 7 ]]; then
                pushd "${S}" > /dev/null || die

Reply via email to