llvm.eclass: Add initial tests
[gentoo.git] / eclass / cmake-multilib.eclass
index 3e40e33890372d13a09483e59c16c7d1cd7c5ec6..2693d9c72e2b913962585425db35945ad1a3bdcf 100644 (file)
@@ -1,12 +1,12 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
-# $Id$
 
 # @ECLASS: cmake-multilib.eclass
 # @MAINTAINER:
 # gx86-multilib team <multilib@gentoo.org>
 # @AUTHOR:
 # Author: Michał Górny <mgorny@gentoo.org>
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: cmake-utils wrapper for multilib builds
 # @DESCRIPTION:
 # The cmake-multilib.eclass provides a glue between cmake-utils.eclass(5)
 # in multilib-minimal, yet they ought to call appropriate cmake-utils
 # phase rather than 'default'.
 
-# EAPI=5 is required for meaningful MULTILIB_USEDEP.
+# @ECLASS-VARIABLE: CMAKE_ECLASS
+# @DESCRIPTION:
+# Default is "cmake-utils" for compatibility. Specify "cmake" for ebuilds
+# that ported from cmake-utils.eclass to cmake.eclass already.
+: ${CMAKE_ECLASS:=cmake-utils}
+
 case ${EAPI:-0} in
-       5|6) ;;
+       [67]) ;;
        *) die "EAPI=${EAPI} is not supported" ;;
 esac
 
@@ -29,7 +34,15 @@ if [[ ${CMAKE_IN_SOURCE_BUILD} ]]; then
        die "${ECLASS}: multilib support requires out-of-source builds."
 fi
 
-inherit cmake-utils multilib-minimal
+case ${CMAKE_ECLASS} in
+       cmake-utils|cmake) ;;
+       *)
+               eerror "Unknown value for \${CMAKE_ECLASS}"
+               die "Value ${CMAKE_ECLASS} is not supported"
+               ;;
+esac
+
+inherit ${CMAKE_ECLASS} multilib-minimal
 
 EXPORT_FUNCTIONS src_configure src_compile src_test src_install
 
@@ -40,7 +53,7 @@ cmake-multilib_src_configure() {
 }
 
 multilib_src_configure() {
-       cmake-utils_src_configure "${_cmake_args[@]}"
+       ${CMAKE_ECLASS}_src_configure "${_cmake_args[@]}"
 }
 
 cmake-multilib_src_compile() {
@@ -50,7 +63,7 @@ cmake-multilib_src_compile() {
 }
 
 multilib_src_compile() {
-       cmake-utils_src_compile "${_cmake_args[@]}"
+       ${CMAKE_ECLASS}_src_compile "${_cmake_args[@]}"
 }
 
 cmake-multilib_src_test() {
@@ -60,7 +73,7 @@ cmake-multilib_src_test() {
 }
 
 multilib_src_test() {
-       cmake-utils_src_test "${_cmake_args[@]}"
+       ${CMAKE_ECLASS}_src_test "${_cmake_args[@]}"
 }
 
 cmake-multilib_src_install() {
@@ -70,5 +83,5 @@ cmake-multilib_src_install() {
 }
 
 multilib_src_install() {
-       cmake-utils_src_install "${_cmake_args[@]}"
+       ${CMAKE_ECLASS}_src_install "${_cmake_args[@]}"
 }