cmake-utils.eclass: ban helper functions in EAPI 6 and later
authorMichael Palimaka <kensington@gentoo.org>
Mon, 25 Jan 2016 14:04:15 +0000 (01:04 +1100)
committerMichael Palimaka <kensington@gentoo.org>
Mon, 25 Jan 2016 14:07:07 +0000 (01:07 +1100)
The affected helpers are:

* cmake-utils_use_build
* cmake-utils_use_disable
* cmake-utils_use_enable
* cmake-utils_use_has
* cmake-utils_use_no
* cmake-utils_use_use
* cmake-utils_use_want
* cmake-utils_use_with
* cmake-utils_use
* cmake-utils_useno

https://archives.gentoo.org/gentoo-dev/message/6ff6dedb44fff4289764dc5eb960e1c6

Gentoo-bug: 514384

eclass/cmake-utils.eclass

index 8ed1ce9bc43e96ababef314b5f6dd7300c17ed54..6ae357be782b241bff11acbd8a61941f7b0cfb91 100644 (file)
@@ -161,6 +161,11 @@ unset CMAKEDEPEND
 _cmake_use_me_now() {
        debug-print-function ${FUNCNAME} "$@"
 
+       local arg=$2
+       [[ ! -z $3 ]] && arg=$3
+
+       has "${EAPI:-0}" 2 3 4 5 || die "${FUNCNAME[1]} is banned in EAPI 6 and later: use -D$1${arg}=\"\$(usex $2)\" instead"
+
        local uper capitalised x
        [[ -z $2 ]] && die "cmake-utils_use-$1 <USE flag> [<flag name>]"
        if [[ ! -z $3 ]]; then
@@ -178,6 +183,13 @@ _cmake_use_me_now() {
 _cmake_use_me_now_inverted() {
        debug-print-function ${FUNCNAME} "$@"
 
+       local arg=$2
+       [[ ! -z $3 ]] && arg=$3
+
+       if ! has "${EAPI:-0}" 2 3 4 5 && [[ "${FUNCNAME[1]}" != cmake-utils_use_find_package ]] ; then
+               die "${FUNCNAME[1]} is banned in EAPI 6 and later: use -D$1${arg}=\"\$(usex $2)\" insteadss"
+       fi
+
        local uper capitalised x
        [[ -z $2 ]] && die "cmake-utils_use-$1 <USE flag> [<flag name>]"
        if [[ ! -z $3 ]]; then