cmake-utils.eclass: die if ninja is enabled but not installed
authorMichael Palimaka <kensington@gentoo.org>
Thu, 15 Oct 2015 14:03:23 +0000 (01:03 +1100)
committerMichael Palimaka <kensington@gentoo.org>
Sat, 17 Oct 2015 17:23:56 +0000 (04:23 +1100)
This could happen if ninja is manually enabled (eg. make.conf) but not installed

Gentoo-bug: 561570

eclass/cmake-utils.eclass

index 480cd099648c4dcac380e3744c3fc5db0c64d4fa..012b13f059c821aadcf75b54952e265a71b8b534 100644 (file)
@@ -228,6 +228,11 @@ _generator_to_use() {
 
        case ${CMAKE_MAKEFILE_GENERATOR} in
                ninja)
+                       # 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 ! has_version dev-util/ninja; then
+                               die "CMAKE_MAKEFILE_GENERATOR is set to ninja, but ninja is not installed. Please install dev-util/ninja or unset CMAKE_MAKEFILE_GENERATOR."
+                       fi
                        generator_name="Ninja"
                        ;;
                emake)