Gentoo Archives: gentoo-commits

From: "Tomas Chvatal (scarabeus)" <scarabeus@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in eclass: cmake-utils.eclass
Date: Sat, 04 Apr 2009 12:28:12
Message-Id: E1Lq4yo-0004Bq-4P@stork.gentoo.org
1 scarabeus 09/04/04 12:28:10
2
3 Modified: cmake-utils.eclass
4 Log:
5 Update eclassdoc so it work again. Per bug #264791.
6 Introduce feature that if dev calls $(cmake-use_bla use) it runs all various permutations:
7 -DBLA_use=ON -DBLA_Use=ON -DBLA_USE=ON
8 Really reduces duplication in some ebuilds. Old behavior preserved tho via third parameter:
9 $(cmake-use_bla use VALUE) results only into -DBLA_VALUE=ON
10
11 Revision Changes Path
12 1.23 eclass/cmake-utils.eclass
13
14 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?rev=1.23&view=markup
15 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?rev=1.23&content-type=text/plain
16 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?r1=1.22&r2=1.23
17
18 Index: cmake-utils.eclass
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v
21 retrieving revision 1.22
22 retrieving revision 1.23
23 diff -u -r1.22 -r1.23
24 --- cmake-utils.eclass 19 Mar 2009 09:12:41 -0000 1.22
25 +++ cmake-utils.eclass 4 Apr 2009 12:28:10 -0000 1.23
26 @@ -1,15 +1,17 @@
27 # Copyright 1999-2009 Gentoo Foundation
28 # Distributed under the terms of the GNU General Public License v2
29 -# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.22 2009/03/19 09:12:41 scarabeus Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.23 2009/04/04 12:28:10 scarabeus Exp $
31
32 # @ECLASS: cmake-utils.eclass
33 # @MAINTAINER:
34 # kde@g.o
35 -# @AUTHORS:
36 +#
37 +# @CODE
38 # Tomáš Chvátal <scarabeus@g.o>
39 # Maciej Mrozowski <reavertm@××××××.fm>
40 # (undisclosed contributors)
41 # Original author: Zephyrus (zephyrus@××××××.it)
42 +# @CODE
43 # @BLURB: common ebuild functions for cmake-based packages
44 # @DESCRIPTION:
45 # The cmake-utils eclass contains functions that make creating ebuilds for
46 @@ -31,21 +33,48 @@
47
48 : ${DESCRIPTION:="Based on the ${ECLASS} eclass"}
49
50 -DEPEND="
51 - >=dev-util/cmake-2.6.2-r1
52 +if [[ ${PN} != cmake ]]; then
53 + CMAKEDEPEND=">=dev-util/cmake-2.6.2-r1"
54 +fi
55 +
56 +DEPEND="${CMAKEDEPEND}
57 userland_GNU? ( >=sys-apps/findutils-4.4.0 )
58 "
59
60 # Internal functions used by cmake-utils_use_*
61 _use_me_now() {
62 debug-print-function ${FUNCNAME} "$@"
63 +
64 + local uper capitalised x
65 [[ -z $2 ]] && die "cmake-utils_use-$1 <USE flag> [<flag name>]"
66 - echo "-D$1${3:-$2}=$(use $2 && echo ON || echo OFF)"
67 + if [[ ! -z $3 ]]; then
68 + # user specified the use name so use it
69 + echo "-D$1$3=$(use $2 && echo ON || echo OFF)"
70 + else
71 + # use all various most used combinations
72 + uper=$(echo ${2} | tr '[:lower:]' '[:upper:]')
73 + capitalised=$(echo ${2} | sed 's/\<\(.\)\([^ ]*\)/\u\1\L\2/g')
74 + for x in $2 $uper $capitalised; do
75 + echo "-D$1$x=$(use $2 && echo ON || echo OFF) "
76 + done
77 + fi
78 }
79 _use_me_now_inverted() {
80 debug-print-function ${FUNCNAME} "$@"
81 +
82 + local uper capitalised x
83 [[ -z $2 ]] && die "cmake-utils_use-$1 <USE flag> [<flag name>]"
84 - echo "-D$1${3:-$2}=$(use $2 && echo OFF || echo ON)"
85 + if [[ ! -z $3 ]]; then
86 + # user specified the use name so use it
87 + echo "-D$1$3=$(use $2 && echo OFF || echo ON)"
88 + else
89 + # use all various most used combinations
90 + uper=$(echo ${2} | tr '[:lower:]' '[:upper:]')
91 + capitalised=$(echo ${2} | sed 's/\<\(.\)\([^ ]*\)/\u\1\L\2/g')
92 + for x in $2 $uper $capitalised; do
93 + echo "-D$1$x=$(use $2 && echo OFF || echo ON) "
94 + done
95 + fi
96 }
97
98 # @ECLASS-VARIABLE: DOCS
99 @@ -57,7 +86,7 @@
100 # Documents passed to dohtml command.
101
102 # @ECLASS-VARIABLE: PREFIX
103 -# @DESCRIPTION
104 +# @DESCRIPTION:
105 # Eclass respects PREFIX variable, though it's not recommended way to set
106 # install/lib/bin prefixes.
107 # Use -DCMAKE_INSTALL_PREFIX=... CMake variable instead.