/[gentoo-x86]/eclass/kde4-base.eclass
Gentoo

Diff of /eclass/kde4-base.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.30 Revision 1.41
1# Copyright 2007-2009 Gentoo Foundation 1# Copyright 2007-2009 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.30 2009/03/01 11:44:09 scarabeus Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.41 2009/06/05 09:48:46 scarabeus Exp $
4 4
5# @ECLASS: kde4-base.eclass 5# @ECLASS: kde4-base.eclass
6# @MAINTAINER: 6# @MAINTAINER:
7# kde@gentoo.org 7# kde@gentoo.org
8# @BLURB: This eclass provides functions for kde 4.X ebuilds 8# @BLURB: This eclass provides functions for kde 4.X ebuilds
11# and KDE4 applications. 11# and KDE4 applications.
12# 12#
13# NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but 13# NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but
14# eclass will fail with version older than 2. 14# eclass will fail with version older than 2.
15 15
16inherit base cmake-utils eutils multilib kde4-functions 16inherit base cmake-utils eutils kde4-functions
17 17
18get_build_type 18get_build_type
19if [[ ${BUILD_TYPE} = live ]]; then 19if [[ ${BUILD_TYPE} = live ]]; then
20 inherit subversion 20 inherit subversion
21fi 21fi
22 22
23EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm 23EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm
24 24
25# @FUNCTION: kde4-base_set_qt_dependencies 25# @ECLASS-VARIABLE: OPENGL_REQUIRED
26# @DESCRIPTION: 26# @DESCRIPTION:
27# Set qt dependencies. And use opengl based on OPENGL_REQUIRED variable. 27# Is qt-opengl required? Possible values are 'always', 'optional' and 'never'.
28kde4-base_set_qt_dependencies() { 28# This variable must be set before inheriting any eclasses. Defaults to 'never'.
29 local qtdepend qtopengldepend 29OPENGL_REQUIRED="${OPENGL_REQUIRED:-never}"
30 30
31 qtdepend=" 31# @ECLASS-VARIABLE: WEBKIT_REQUIRED
32 x11-libs/qt-core:4[qt3support,ssl] 32# @DESCRIPTION:
33 x11-libs/qt-gui:4[accessibility,dbus] 33# Is qt-webkit requred? Possible values are 'always', 'optional' and 'never'.
34 x11-libs/qt-qt3support:4[accessibility] 34# This variable must be set before inheriting any eclasses. Defaults to 'never'.
35 x11-libs/qt-script:4 35WEBKIT_REQUIRED="${WEBKIT_REQUIRED:-never}"
36 x11-libs/qt-sql:4[qt3support]
37 x11-libs/qt-svg:4
38 x11-libs/qt-test:4
39 x11-libs/qt-webkit:4"
40 qtopengldepend="x11-libs/qt-opengl:4"
41 36
42 # opengl dependencies 37# @ECLASS-VARIABLE: CPPUNIT_REQUIRED
43 case ${OPENGL_REQUIRED} in 38# @DESCRIPTION:
44 always) 39# Is cppunit required for tests? Possible values are 'always', 'optional' and 'never'.
45 qtdepend="${qtdepend} 40# This variable must be set before inheriting any eclasses. Defaults to 'never'.
46 ${qtopengldepend}" 41CPPUNIT_REQUIRED="${CPPUNIT_REQUIRED:-never}"
47 ;; 42
48 optional) 43# @ECLASS-VARIABLE: KDE_REQUIRED
49 IUSE="${IUSE} opengl" 44# @DESCRIPTION:
50 qtdepend="${qtdepend} 45# Is kde required? Possible values are 'always', 'optional' and 'never'.
51 opengl? ( ${qtopengldepend} )" 46# This variable must be set before inheriting any eclasses. Defaults to 'always'
47# If set to always or optional, KDE_MINIMAL may be overriden as well.
48# Note that for kde-base packages this variable is fixed to 'always'.
49KDE_REQUIRED="${KDE_REQUIRED:-always}"
50
51# Verify KDE_MINIMAL (display QA notice in pkg_setup, still we need to fix it here)
52if [[ -n ${KDE_MINIMAL} ]]; then
53 for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
54 [[ ${KDE_MINIMAL} = ${slot} ]] && KDE_MINIMAL_VALID=1 && break
55 done
56 unset slot
57 [[ -z ${KDE_MINIMAL_VALID} ]] && unset KDE_MINIMAL
58else
59 KDE_MINIMAL_VALID=1
60fi
61
62# @ECLASS-VARIABLE: KDE_MINIMAL
63# @DESCRIPTION:
64# This wariable is used when KDE_REQUIRED is set, to specify required KDE minimal
65# version for apps to work. Currently defaults to 4.2
66# One may override this variable to raise version requirements.
67# For possible values look at KDE_SLOTS and KDE_LIVE_SLOTS variables.
68# Note that for kde-base packages is fixed to ${SLOT}.
69KDE_MINIMAL="${KDE_MINIMAL:-4.2}"
70
71# Fallback behaviour (for now)
72# TODO Remove when tree is clean
73if [[ -n ${NEED_KDE} ]]; then
74 case ${NEED_KDE} in
75 none)
76 KDE_REQUIRED="never"
52 ;; 77 ;;
53 *) 78 *)
54 OPENGL_REQUIRED="never" 79 KDE_REQUIRED="always"
80 KDE_MINIMAL="${NEED_KDE}"
55 ;; 81 ;;
56 esac 82 esac
83fi
57 84
58 COMMONDEPEND="${COMMONDEPEND} ${qtdepend}" 85# @ECLASS-VARIABLE: QT_DEPEND
59} 86# @DESCRIPTION:
60kde4-base_set_qt_dependencies 87# Determine version of qt we enforce as minimal for the package. 4.4.0 4.5.1..
88# Currently defaults to 4.5.1
89QT_DEPEND="${QT_DEPEND:-4.5.1}"
61 90
62# Xorg 91# OpenGL dependencies
63COMMONDEPEND="${COMMONDEPEND} 92qtopengldepend="
64 >=x11-base/xorg-server-1.5.2 93 >=x11-libs/qt-opengl-${QT_DEPEND}:4
65" 94"
66 95case ${OPENGL_REQUIRED} in
67# X11 libs 96 always)
97 COMMONDEPEND="${COMMONDEPEND} ${qtopengldepend}"
98 ;;
99 optional)
100 IUSE="${IUSE} opengl"
68COMMONDEPEND="${COMMONDEPEND} 101 COMMONDEPEND="${COMMONDEPEND}
102 opengl? ( ${qtopengldepend} )
103 "
104 ;;
105 *) ;;
106esac
107unset qtopengldepend
108
109# WebKit dependencies
110qtwebkitdepend="
111 >=x11-libs/qt-webkit-${QT_DEPEND}:4
112"
113case ${WEBKIT_REQUIRED} in
114 always)
115 COMMONDEPEND="${COMMONDEPEND} ${qtwebkitdepend}"
116 ;;
117 optional)
118 IUSE="${IUSE} webkit"
119 COMMONDEPEND="${COMMONDEPEND}
120 webkit? ( ${qtwebkitdepend} )
121 "
122 ;;
123 *) ;;
124esac
125unset qtwebkitdepend
126
127# CppUnit dependencies
128cppuintdepend="
129 dev-util/cppunit
130"
131case ${CPPUNIT_REQUIRED} in
132 always)
133 DEPEND="${DEPEND} ${cppuintdepend}"
134 ;;
135 optional)
136 IUSE="${IUSE} test"
137 DEPEND="${DEPEND}
138 test? ( ${cppuintdepend} )
139 "
140 ;;
141 *) ;;
142esac
143unset cppuintdepend
144
145# DEPRECATED block
146if [[ ${NEED_KDE} != "none" ]]; then
147 # localization deps
148 # DISABLED UNTIL PMS decide correct approach :(
149 if [[ -n ${KDE_LINGUAS} ]]; then
150 LNG_DEP=""
151 for _lng in ${KDE_LINGUAS}; do
152 # there must be or due to issue if lingua is not present in kde-l10n so
153 # it wont die but pick kde-l10n as-is.
154 LNG_DEP="${LNG_DEP}
155 || (
156 kde-base/kde-l10n[linguas_${_lng},kdeprefix=]
157 kde-base/kde-l10n[kdeprefix=]
158 )
159 "
160 done
161 fi
162fi # NEED_KDE != NONE block
163
164# Setup packages inheriting this eclass
165case ${KDEBASE} in
166 kde-base)
167 if [[ $BUILD_TYPE = live ]]; then
168 # Disable tests for live ebuilds
169 RESTRICT="${RESTRICT} test"
170 # Live ebuilds in kde-base default to kdeprefix by default
171 IUSE="${IUSE} +kdeprefix"
172 else
173 # All other ebuild types default to -kdeprefix as before
174 IUSE="${IUSE} kdeprefix"
175 fi
176 # Determine SLOT from PVs
177 case ${PV} in
178 *.9999*) SLOT="${PV/.9999*/}" ;; # stable live
179 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*) SLOT="4.3" ;;
180 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
181 9999*) SLOT="live" ;; # regular live
182 *) die "Unsupported ${PV}" ;;
183 esac
184 _kdedir="${SLOT}"
185 _pv="-${PV}:${SLOT}"
186 _pvn="-${PV}"
187
188 # Block installation of other SLOTS unless kdeprefix
189 for slot in ${KDE_SLOTS[@]}; do
190 # Block non kdeprefix ${PN} on other slots
191 if [[ ${SLOT} != ${slot} ]]; then
192 RDEPEND="${RDEPEND}
193 !kdeprefix? ( !kde-base/${PN}:${slot}[-kdeprefix] )
194 "
195 fi
196 done
197 unset slot
198 ;;
199 koffice)
200 SLOT="2"
201 _pv="-${KDE_MINIMAL}"
202 _pvn="${_pv}"
203 ;;
204 *)
205 _pv="-${KDE_MINIMAL}"
206 _pvn="${_pv}"
207 ;;
208
209esac
210
211# KDE dependencies
212kdecommondepend="
213 dev-lang/perl
69 x11-libs/libXext 214 x11-libs/libXext
70 x11-libs/libXt 215 x11-libs/libXt
71 x11-libs/libXxf86vm 216 x11-libs/libXxf86vm
217 >=x11-libs/qt-core-${QT_DEPEND}:4[qt3support,ssl]
218 >=x11-libs/qt-gui-${QT_DEPEND}:4[accessibility,dbus]
219 >=x11-libs/qt-qt3support-${QT_DEPEND}:4[accessibility]
220 >=x11-libs/qt-script-${QT_DEPEND}:4
221 >=x11-libs/qt-sql-${QT_DEPEND}:4[qt3support]
222 >=x11-libs/qt-svg-${QT_DEPEND}:4
223 >=x11-libs/qt-test-${QT_DEPEND}:4
72" 224"
73 225if [[ ${PN} != kdelibs ]]; then
74# localization deps 226 if [[ ${KDEBASE} = kde-base ]]; then
75# DISABLED UNTIL PMS decide correct approach :( 227 kdecommondepend="${kdecommondepend}
76if [[ -n ${KDE_LINGUAS} ]]; then 228 kdeprefix? ( >=kde-base/kdelibs${_pv}[kdeprefix] )
77 LNG_DEP="" 229 !kdeprefix? ( >=kde-base/kdelibs${_pvn}[-kdeprefix] )
78 for _lng in ${KDE_LINGUAS}; do 230 "
79 # there must be or due to issue if lingua is not present in kde-l10n so 231 else
80 # it wont die but pick kde-l10n as-is. 232 kdecommondepend="${kdecommondepend}
81 LNG_DEP="${LNG_DEP} 233 >=kde-base/kdelibs${_pv}
82 || ( kde-base/kde-l10n[linguas_${_lng},kdeprefix=] kde-base/kde-l10n[kdeprefix=] )" 234 "
83 done 235 fi
84fi 236fi
85 237unset _pv _pvn
86# Set common dependencies for all ebuilds that inherit this eclass 238kdedepend="
87DEPEND="${DEPEND} ${COMMONDEPEND}
88 >=dev-util/cmake-2.6.2
89 dev-util/pkgconfig 239 dev-util/pkgconfig
90 >=sys-apps/sandbox-1.3.2 240 >=sys-apps/sandbox-1.3.2
91" 241"
242case ${KDE_REQUIRED} in
243 always)
244 COMMONDEPEND="${COMMONDEPEND} ${kdecommondepend}"
245 DEPEND="${DEPEND} ${kdedepend}"
246 ;;
247 optional)
248 IUSE="${IUSE} kde"
249 COMMONDEPEND="${COMMONDEPEND}
250 kde? ( ${kdecommondepend} )"
251 DEPEND="${DEPEND}
252 kde? ( ${kdedepend} )"
253 ;;
254 *) ;;
255esac
256unset kdecommondepend kdedepend
257
258debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: COMMONDEPEND is ${COMMONDEPEND}"
259debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: DEPEND (only) is ${DEPEND}"
260debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: RDEPEND (only) is ${RDEPEND}"
261
262# Accumulate dependencies set by this eclass
263DEPEND="${DEPEND} ${COMMONDEPEND}"
92RDEPEND="${RDEPEND} ${COMMONDEPEND}" 264RDEPEND="${RDEPEND} ${COMMONDEPEND}"
93
94if [[ $BUILD_TYPE = live ]]; then
95 # Disable tests for live ebuilds
96 RESTRICT="${RESTRICT} test"
97 # Live ebuilds in kde-base default to kdeprefix by default
98 IUSE="${IUSE} +kdeprefix"
99else
100 # All other ebuild types default to -kdeprefix as before
101 IUSE="${IUSE} kdeprefix"
102fi
103
104# @ECLASS-VARIABLE: OPENGL_REQUIRED
105# @DESCRIPTION:
106# Is qt-opengl required? Possible values are 'always', 'optional' and 'never'.
107# This variable must be set before inheriting any eclasses. Defaults to 'never'.
108OPENGL_REQUIRED="${OPENGL_REQUIRED:-never}"
109
110# @ECLASS-VARIABLE: CPPUNIT_REQUIRED
111# @DESCRIPTION:
112# Is cppunit required for tests? Possible values are 'always', 'optional' and 'never'.
113# This variable must be set before inheriting any eclasses. Defaults to 'never'.
114CPPUNIT_REQUIRED="${CPPUNIT_REQUIRED:-never}"
115
116case ${CPPUNIT_REQUIRED} in
117 always)
118 DEPEND="${DEPEND} dev-util/cppunit"
119 ;;
120 optional)
121 IUSE="${IUSE} test"
122 DEPEND="${DEPEND}
123 test? ( dev-util/cppunit )"
124 ;;
125 *)
126 CPPUNIT_REQUIRED="never"
127 ;;
128esac
129
130# @ECLASS-VARIABLE: NEED_KDE
131# @DESCRIPTION:
132# This variable sets the version of KDE4 which will be used by the eclass.
133# For kde-base packages, if it is not set by the ebuild,
134# it's assumed that the required KDE4 version is the latest available.
135# For non kde-base packages, it is also set to the latest by default.
136#
137# For more precise adjustments or for specifying particular kde version,
138# KDE_MINIMAL variable can be used.
139#
140# @CODE
141# Acceptable values are:
142# - latest - Use latest version in the portage tree
143# Default for kde-base ebuilds.
144# - live - Use live release (live ebuilds)
145# - none - Let the ebuild handle SLOT, kde dependencies, KDEDIR, ...
146# - 4.2, 4.1, kde-4 - respective slots for kde versions
147# @CODE
148# Note: default NEED_KDE is latest
149NEED_KDE="${NEED_KDE:=latest}"
150export NEED_KDE
151
152# @ECLASS-VARIABLE: KDE_MINIMAL
153# @DESCRIPTION:
154# This wariable is used when NEED_KDE="latest" is set, to specify the
155# required KDE minimal version for which apps will work.
156# @CODE
157# KDE_MINIMAL="-4.1"
158# @CODE
159# Note: default minimal version is kde-4.1, which means that the apps will work
160# with any KDE version >=${KDE_MINIMAL}
161KDE_MINIMAL="${KDE_MINIMAL:=4.2}"
162export KDE_MINIMAL
163
164# FIXME: the code section, explanation of live. The last sentence needs other
165# formulation too.
166#
167# @ECLASS-VARIABLE: KDE_WANTED
168# @DESCRIPTION:
169# When NEED_KDE=latest is inherited, KDE_WANTED serves to indicate the prefered kde
170# version. It's value is looked for before any other. Useful when having more
171# +kdeprefix installs: you can choose which kde version, if present, to link
172# against.
173#
174# @CODE
175# Acceptable values are:
176# stable = whatever is main tree (now 4.1)
177# testing = whatever is in testing on main tree
178# snapshot = whatever is released under snapshots (4.2 at present)
179# live = live svn ebuilds, also default value, do not be scared it goes in this
180#
181# order: live->snapshot->testing->stable, when searching for kde. This way we
182# allow users to use just kde4snapshots and use software from the tree.
183KDE_WANTED="${KDE_WANTED:=live}"
184export KDE_WANTED
185
186case ${NEED_KDE} in
187 latest)
188 if [[ $KDEBASE = kde-base ]]; then
189 case ${PV} in
190 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
191 _kdedir="4.3"
192 _pv="-${PV}:4.3"
193 _pvn="-${PV}"
194 ;;
195 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*)
196 _kdedir="4.2"
197 _pv="-${PV}:4.2"
198 _pvn="-${PV}"
199 ;;
200 4.1*| 4.0.9* | 4.0.8*)
201 _kdedir="4.1"
202 _pv="-${PV}:4.1"
203 _pvn="-${PV}"
204 ;;
205 4.0*)
206 _kdedir="4.0"
207 _pv="-${PV}:kde-4"
208 _pvn="-${PV}"
209 ;;
210 3.9*)
211 _kdedir="3.9"
212 _pv="-${PV}:kde-4"
213 _pvn="-${PV}"
214 ;;
215 9999*)
216 _kdedir="live"
217 _pv="-${PV}:live"
218 _pvn="-${PV}"
219 ;;
220 *)
221 die "NEED_KDE=latest not supported for PV=${PV}" ;;
222 esac
223 _operator=">="
224 else
225 # this creates dependency on any version of kde4
226 _operator=">="
227 _pv="-${KDE_MINIMAL}"
228 _pvn=${_pv}
229 fi
230 ;;
231
232 # NEED_KDE="${PV}"
233 scm|svn|live|9999*)
234 _kdedir="live"
235 _operator=">="
236 _pv="-${NEED_KDE}:live"
237 _pvn="-${NEED_KDE}"
238 export NEED_KDE="live"
239 ;;
240 4.3 | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
241 _kdedir="4.3"
242 _pv="-${NEED_KDE}:4.3"
243 _pvn="-${NEED_KDE}"
244 _operator=">="
245 ;;
246 4.2 | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*)
247 _kdedir="4.2"
248 _pv="-${NEED_KDE}:4.2"
249 _pvn="-${NEED_KDE}"
250 _operator=">="
251 ;;
252 4.1 | 4.0.9* | 4.0.8*)
253 _kdedir="4.1"
254 _pv="-${NEED_KDE}:4.1"
255 _pvn="-${NEED_KDE}"
256 _operator=">="
257 ;;
258 4.0* | 4)
259 _kdedir="4.0"
260 _operator=">="
261 _pv="-${NEED_KDE}:kde-4"
262 _pvn="-${NEED_KDE}"
263 ;;
264 3.9*)
265 _kdedir="3.9"
266 _operator=">="
267 _pv="-${NEED_KDE}:kde-4"
268 _pvn="-${NEED_KDE}"
269 ;;
270
271 # The ebuild handles dependencies, KDEDIR, SLOT.
272 none)
273 :
274 ;;
275
276 *)
277 die "NEED_KDE=${NEED_KDE} currently not supported."
278 ;;
279esac
280
281if [[ ${NEED_KDE} != none ]]; then
282 #Set the SLOT
283 if [[ -n ${KDEBASE} ]]; then
284 if [[ ${NEED_KDE} = live ]]; then
285 SLOT="live"
286 else
287 case ${KMNAME} in
288 koffice)
289 case ${PV} in
290 9999*) SLOT="live" ;;
291 *) SLOT="2" ;;
292 esac
293 ;;
294 kdevelop)
295 case ${PV} in
296 9999*) SLOT="live" ;;
297 4.0*|3.9*) SLOT="4" ;;
298 esac
299 ;;
300 kdevplatform)
301 case ${PV} in
302 9999*) SLOT="live" ;;
303 1.0*|0.9*) SLOT="1" ;;
304 esac
305 ;;
306 *)
307 case ${PV} in
308 9999*) SLOT="live" ;;
309 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*) SLOT="4.3" ;;
310 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
311 4.1* | 4.0.9* | 4.0.8*) SLOT="4.1" ;;
312 *) SLOT="4.1" ;;
313 esac
314 ;;
315 esac
316 fi
317 fi
318
319 # Block installation of other SLOTS unless kdeprefix
320 for KDE_SLOT in ${KDE_SLOTS[@]}; do
321 # block non kdeprefix ${PN} on other slots
322 # we do this only if we do not depend on any version of kde
323 if [[ ${SLOT} != ${KDE_SLOT} ]]; then
324 DEPEND="${DEPEND}
325 !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
326 RDEPEND="${RDEPEND}
327 !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
328 fi
329 done
330
331 # Adding kdelibs, kdepimlibs and kdebase-data deps to all other packages.
332 # We only need to add the dependencies if ${PN} is not "kdelibs" or "kdepimlibs"
333 if [[ ${PN} != kdelibs ]]; then
334 DEPEND="${DEPEND}
335 kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
336 !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )"
337 RDEPEND="${RDEPEND}
338 kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
339 !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )"
340 if [[ ${PN} != kdepimlibs ]]; then
341 DEPEND="${DEPEND}
342 kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix] )
343 !kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pvn}[-kdeprefix] )"
344 RDEPEND="${RDEPEND}
345 kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix] )
346 !kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pvn}[-kdeprefix] )"
347 if [[ ${PN} != kdebase-data ]]; then
348 RDEPEND="${RDEPEND}
349 kdeprefix? ( ${_operator}kde-base/kdebase-data${_pv}[kdeprefix] )
350 !kdeprefix? ( ${_operator}kde-base/kdebase-data${_pvn}[-kdeprefix] )"
351 fi
352 fi
353 fi
354 unset _operator _pv _pvn
355fi
356 265
357# Fetch section - If the ebuild's category is not 'kde-base' and if it is not a 266# Fetch section - If the ebuild's category is not 'kde-base' and if it is not a
358# koffice ebuild, the URI should be set in the ebuild itself 267# koffice ebuild, the URI should be set in the ebuild itself
359case ${BUILD_TYPE} in 268case ${BUILD_TYPE} in
360 live) 269 live)
270 # Determine branch URL based on live type
271 local branch_prefix
272 case ${PV} in
273 9999*)
274 # trunk
275 branch_prefix="trunk/KDE"
276 ;;
277 *)
278 # branch
279 branch_prefix="branches/KDE/${SLOT}"
280 # @ECLASS-VARIABLE: ESVN_PROJECT_SUFFIX
281 # @DESCRIPTION
282 # Suffix appended to ESVN_PROJECT depending on fetched branch.
283 # Defaults is empty (for -9999 = trunk), and "-${PV}" otherwise.
284 ESVN_PROJECT_SUFFIX="-${PV}"
285 ;;
286 esac
361 SRC_URI="" 287 SRC_URI=""
288 # @ECLASS-VARIABLE: ESVN_MIRROR
289 # @DESCRIPTION:
290 # This variable allows easy overriding of default kde mirror service
291 # (anonsvn) with anything else you might want to use.
362 ESVN_MIRROR=${ESVN_MIRROR:=svn://anonsvn.kde.org/home/kde} 292 ESVN_MIRROR=${ESVN_MIRROR:=svn://anonsvn.kde.org/home/kde}
363 # Split ebuild, or extragear stuff 293 # Split ebuild, or extragear stuff
364 if [[ -n ${KMNAME} ]]; then 294 if [[ -n ${KMNAME} ]]; then
365 ESVN_PROJECT="${KMNAME}" 295 ESVN_PROJECT="${KMNAME}${ESVN_PROJECT_SUFFIX}"
366 if [[ -z ${KMNOMODULE} && -z ${KMMODULE} ]]; then 296 if [[ -z ${KMNOMODULE} ]] && [[ -z ${KMMODULE} ]]; then
367 KMMODULE="${PN}" 297 KMMODULE="${PN}"
368 fi 298 fi
369 # Split kde-base/ ebuilds: (they reside in trunk/KDE) 299 # Split kde-base/ ebuilds: (they reside in trunk/KDE)
370 case ${KMNAME} in 300 case ${KMNAME} in
371 kdebase-*) 301 kdebase-*)
372 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/kdebase/${KMNAME#kdebase-}" 302 ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdebase/${KMNAME#kdebase-}"
373 ;; 303 ;;
374 kdereview) 304 kdereview)
375 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}" 305 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
376 ;; 306 ;;
307 kdesupport)
308 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
309 ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
310 ;;
377 kde*) 311 kde*)
378 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/${KMNAME}" 312 ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${KMNAME}"
379 ;; 313 ;;
380 extragear*|playground*) 314 extragear*|playground*)
315 # Unpack them in toplevel dir, so that they won't conflict with kde4-meta
316 # build packages from same svn location.
381 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}" 317 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
318 ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
382 ;; 319 ;;
383 koffice) 320 koffice)
384 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}" 321 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
385 ;; 322 ;;
386 *) 323 *)
387 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}" 324 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
388 ;; 325 ;;
389 esac 326 esac
390 else 327 else
391 # kdelibs, kdepimlibs 328 # kdelibs, kdepimlibs
392 ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/${PN}" 329 ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${PN}"
393 ESVN_PROJECT="${PN}" 330 ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
394 fi 331 fi
395 # limit syncing to 1 hour. 332 # @ECLASS-VARIABLE: ESVN_UP_FREQ
396 ESVN_UP_FREQ=${ESVN_UP_FREQ:-1} 333 # @DESCRIPTION:
334 # This variable is used for specifying the timeout between svn synces
335 # for kde-base and koffice modules. Does not affect misc apps.
336 # Default value is 1 hour.
337 [[ ${KDEBASE} = kde-base || ${KDEBASE} = koffice ]] && ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
397 ;; 338 ;;
398 *) 339 *)
399 if [[ -n ${KDEBASE} ]]; then 340 if [[ -n ${KDEBASE} ]]; then
400 if [[ -n ${KMNAME} ]]; then 341 if [[ -n ${KMNAME} ]]; then
401 case ${KMNAME} in 342 case ${KMNAME} in
402 kdebase-apps) 343 kdebase-apps)
403 _kmname="kdebase" ;; 344 _kmname="kdebase" ;;
404 *) 345 *)
405 _kmname=${KMNAME} ;; 346 _kmname="${KMNAME}" ;;
406 esac 347 esac
407 else 348 else
408 _kmname=${PN} 349 _kmname=${PN}
409 fi 350 fi
410 _kmname_pv="${_kmname}-${PV}" 351 _kmname_pv="${_kmname}-${PV}"
411 if [[ $NEED_KDE != live ]]; then 352 if [[ $NEED_KDE != live ]]; then
412 case ${KDEBASE} in 353 case ${KDEBASE} in
413 kde-base) 354 kde-base)
414 case ${PV} in 355 case ${PV} in
356 4.2.85|4.2.90)
357 # block for normally packed unstable releases
358 SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
359 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
360 SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.lzma" ;;
415 4.2.6* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*) 361 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*)
416 SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;; 362 SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
417 *) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;; 363 *) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
418 esac 364 esac
419 ;; 365 ;;
420 koffice) 366 koffice)
367 case ${PV} in
368 1.9*)
421 SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2" 369 SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2"
370 ;;
371 *) SRC_URI="mirror://kde/stable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2" ;;
372 esac
422 ;; 373 ;;
423 esac 374 esac
424 fi 375 fi
425 unset _kmname _kmname_pv 376 unset _kmname _kmname_pv
426 fi 377 fi
429 380
430debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SRC_URI is ${SRC_URI}" 381debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SRC_URI is ${SRC_URI}"
431 382
432# @ECLASS-VARIABLE: PREFIX 383# @ECLASS-VARIABLE: PREFIX
433# @DESCRIPTION: 384# @DESCRIPTION:
434# Set the installation PREFIX. All kde-base ebuilds go into the KDE4 installation directory. 385# Set the installation PREFIX for non kde-base applications. It defaults to /usr.
435# Applications installed by the other ebuilds go into ${KDEDIR} by default, this value 386# kde-base packages go into KDE4 installation directory (KDEDIR) by default.
436# can be superseded by defining PREFIX before inheriting kde4-base. 387# No matter the PREFIX, package will be built agains KDE installed in KDEDIR.
437# This value is set on pkg_setup
438PREFIX=""
439
440debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SLOT ${SLOT} - NEED_KDE ${NEED_KDE}"
441 388
442# @FUNCTION: kde4-base_pkg_setup 389# @FUNCTION: kde4-base_pkg_setup
443# @DESCRIPTION: 390# @DESCRIPTION:
444# Adds flags needed by all of KDE 4 to $QT4_BUILT_WITH_USE_CHECK. Uses 391# Do the basic kdeprefix KDEDIR settings and determine with which kde should
445# kde4-functions_check_use from kde4-functions.eclass to print appropriate 392# optional applications link
446# errors and die if any required flags listed in $QT4_BUILT_WITH_USE_CHECK or
447# $KDE4_BUILT_WITH_USE_CHECK are missing.
448kde4-base_pkg_setup() { 393kde4-base_pkg_setup() {
449 debug-print-function ${FUNCNAME} "$@" 394 debug-print-function ${FUNCNAME} "$@"
450 395
396 # QA ebuilds
397 case ${NEED_KDE} in
398 none) ewarn "QA Notice: using deprecated NEED_KDE variable, use KDE_REQUIRED=\"never\" or KDE_REQUIRED=\"optional\" instead. You may want to override KDE_MINIMAL as well (default is KDE_MINIMAL=\"${KDE_MINIMAL}\")." ;;
399 *) [[ -n ${NEED_KDE} ]] && ewarn "QA Notice: using deprecated NEED_KDE variable, use KDE_MINIMAL instead (default is KDE_MINIMAL=\"${KDE_MINIMAL}\")." ;;
400 esac
401 [[ -z ${KDE_MINIMAL_VALID} ]] && ewarn "QA Notice: ignoring invalid KDE_MINIMAL (defaulting to ${KDE_MINIMAL})."
402
451 # Don't set KDEHOME during compile, it will cause access violations 403 # Don't set KDEHOME during compilation, it will cause access violations
452 unset KDEHOME 404 unset KDEHOME
453 405
454 # Search for best suitable kde installation for misc kde package. 406 if [[ ${KDEBASE} = kde-base ]]; then
455 # Computation based on NEED_KDE and KDE_MINIMAL
456 [[ ${KDEBASE} != kde-base ]] && [[ ${NEED_KDE} = latest || ${NEED_KDE} = none ]] && get_latest_kdedir
457
458 # Set PREFIX
459 if use kdeprefix; then 407 if use kdeprefix; then
460 KDEDIR="/usr/kde/${_kdedir}" 408 KDEDIR="${ROOT}usr/kde/${_kdedir}"
461 KDEDIRS="/usr/local/:/usr:${KDEDIR}" 409 else
410 KDEDIR="${ROOT}usr"
411 fi
412 PREFIX="${PREFIX:-${KDEDIR}}"
462 else 413 else
414 # Determine KDEDIR by loooking for the closest match with KDE_MINIMAL
463 KDEDIR="/usr" 415 KDEDIR=
464 KDEDIRS="/usr/local/:/usr" 416 local kde_minimal_met
417 for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
418 [[ -z ${kde_minimal_met} ]] && [[ ${slot} = ${KDE_MINIMAL} ]] && kde_minimal_met=1
419 if [[ -n ${kde_minimal_met} ]] && has_version "kde-base/kdelibs:${slot}"; then
420 if has_version "kde-base/kdelibs:${slot}[kdeprefix]"; then
421 KDEDIR="${ROOT}usr/kde/${slot}"
422 else
423 KDEDIR="${ROOT}usr"
424 fi
425 break;
426 fi
427 done
428 unset slot
429
430 # Bail out if kdelibs required but not found
431 if [[ ${KDE_REQUIRED} = always ]] || { [[ ${KDE_REQUIRED} = optional ]] && use kde; }; then
432 [[ -z ${KDEDIR} ]] && die "Failed to determine KDEDIR!"
433 else
434 [[ -z ${KDEDIR} ]] && KDEDIR="${ROOT}usr"
465 fi 435 fi
466 # Set the prefix based on KDEDIR
467 # Make it a consequence of kdeprefix
468 PREFIX=${KDEDIR}
469 436
437 PREFIX="${PREFIX:-${ROOT}usr}"
438 fi
439
440 # Not needed anymore
470 unset _kdedir 441 unset _kdedir
471
472 # check if qt has correct deps
473 [[ -n ${QT4_BUILT_WITH_USE_CHECK} || -n ${KDE4_BUILT_WITH_USE_CHECK[@]} ]] && \
474 die "built_with_use illegal in this EAPI!"
475
476 if [[ ${BUILD_TYPE} = live && -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
477 echo
478 elog "WARNING! This is an experimental live ebuild of ${KMNAME:-${PN}}"
479 elog "Use it at your own risk."
480 elog "Do _NOT_ file bugs at bugs.gentoo.org because of this ebuild!"
481 echo
482 fi
483} 442}
484 443
485# @FUNCTION: kde4-base_src_unpack 444# @FUNCTION: kde4-base_src_unpack
486# @DESCRIPTION: 445# @DESCRIPTION:
487# This function unpacks the source tarballs for KDE4 applications. 446# This function unpacks the source tarballs for KDE4 applications.
507 # Only enable selected languages, used for KDE extragear apps. 466 # Only enable selected languages, used for KDE extragear apps.
508 if [[ -n ${KDE_LINGUAS} ]]; then 467 if [[ -n ${KDE_LINGUAS} ]]; then
509 enable_selected_linguas 468 enable_selected_linguas
510 fi 469 fi
511 470
512 # Autopatch 471 [[ ${BUILD_TYPE} = live ]] && subversion_src_prepare
513 base_src_prepare 472 base_src_prepare
514 473
515 # Save library dependencies 474 # Save library dependencies
516 if [[ -n ${KMSAVELIBS} ]] ; then 475 if [[ -n ${KMSAVELIBS} ]] ; then
517 save_library_dependencies 476 save_library_dependencies
527# @DESCRIPTION: 486# @DESCRIPTION:
528# Function for configuring the build of KDE4 applications. 487# Function for configuring the build of KDE4 applications.
529kde4-base_src_configure() { 488kde4-base_src_configure() {
530 debug-print-function ${FUNCNAME} "$@" 489 debug-print-function ${FUNCNAME} "$@"
531 490
532 # We prefer KDE's own Debugfull mode over the standard Debug 491 # Handle common release builds
533 if has debug ${IUSE//+} && use debug ; then 492 if ! has debug ${IUSE//+} || ! use debug; then
534 ebegin "Enabling debug flag" 493 append-cppflags -DQT_NO_DEBUG
535 mycmakeargs="${mycmakeargs} -DCMAKE_BUILD_TYPE=Debugfull"
536 eend $?
537 fi
538
539 # Enable generation of HTML handbook
540 if has htmlhandbook ${IUSE//+} && use htmlhandbook; then
541 ebegin "Enabling building of HTML handbook"
542 mycmakeargs="${mycmakeargs} -DKDE4_ENABLE_HTMLHANDBOOK=ON"
543 eend $?
544 fi 494 fi
545 495
546 # Build tests in src_test only, where we override this value 496 # Build tests in src_test only, where we override this value
547 mycmakeargs="${mycmakeargs} -DKDE4_BUILD_TESTS=OFF" 497 local cmakeargs="-DKDE4_BUILD_TESTS=OFF"
498
499 # set "real" debug mode
500 if has debug ${IUSE//+} && use debug; then
501 CMAKE_BUILD_TYPE="Debugfull"
502 fi
548 503
549 # Set distribution name 504 # Set distribution name
550 [[ ${PN} = kdelibs ]] && mycmakeargs="${mycmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo" 505 [[ ${PN} = kdelibs ]] && cmakeargs="${cmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
551
552 # runpath linking
553 mycmakeargs="${mycmakeargs} -DKDE4_USE_ALWAYS_FULL_RPATH=ON"
554 506
555 # Here we set the install prefix 507 # Here we set the install prefix
556 mycmakeargs="${mycmakeargs} -DCMAKE_INSTALL_PREFIX=${PREFIX}" 508 cmakeargs="${cmakeargs} -DCMAKE_INSTALL_PREFIX=${PREFIX}"
557
558 # If prefix is /usr, sysconf needs to be /etc, not /usr/etc
559 use kdeprefix || mycmakeargs="${mycmakeargs} -DSYSCONF_INSTALL_DIR=/etc"
560 509
561 # Set environment 510 # Set environment
562 QTEST_COLORED=1 511 QTEST_COLORED=1
563 QT_PLUGIN_PATH="${KDEDIR}/$(get_libdir)/kde4/plugins/" 512 QT_PLUGIN_PATH="${KDEDIR}/$(get_libdir)/kde4/plugins/"
564 513
565 # Hardcode path to *.pc KDE files 514 # Point pkg-config path to KDE *.pc files
566 export PKG_CONFIG_PATH="${PKG_CONFIG_PATH:+${PKG_CONFIG_PATH}:}${KDEDIR}/$(get_libdir)/pkgconfig" 515 export PKG_CONFIG_PATH="${KDEDIR}/$(get_libdir)/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}"
567 516
568 # Override some environment variables 517 # Shadow existing /usr installations
518 unset KDEDIRS
519
520 if [[ ${KDEDIR} != "${ROOT}usr" ]]; then
521 # Override some environment variables - only when kdeprefix is different,
522 # to not break ccache/distcc
569 PATH="${KDEDIR}/bin:${PATH}" 523 PATH="${KDEDIR}/bin:${PATH}"
570 LDPATH="${KDEDIR}/$(get_libdir):${LDPATH}" 524 LDPATH="${KDEDIR}/$(get_libdir):${LDPATH}"
571 525
526 # Append full RPATH
527 cmakeargs="${cmakeargs} -DCMAKE_SKIP_RPATH=OFF"
528 fi
529
530 if has kdeprefix ${IUSE//+} && use kdeprefix; then
572 # Set cmake prefixes to allow buildsystem to localize valid KDE installation when more are present 531 # Set cmake prefixes to allow buildsystem to localize valid KDE installation
573 if use kdeprefix; then 532 # when more are present
533 cmakeargs="${cmakeargs} -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}"
534 else
535 # If prefix is /usr, sysconf needs to be /etc, not /usr/etc
536 cmakeargs="${cmakeargs} -DSYSCONF_INSTALL_DIR=${ROOT}etc"
537 fi
538
574 mycmakeargs="${mycmakeargs} 539 mycmakeargs="${cmakeargs} ${mycmakeargs}"
575 -DCMAKE_SYSTEM_INCLUDE_PATH=${KDEDIR}/include
576 -DCMAKE_SYSTEM_LIBRARY_PATH=${KDEDIR}/$(get_libdir)
577 -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}
578 -DCMAKE_SYSTEM_PROGRAM_PATH=${KDEDIR}/bin"
579 fi
580 540
581 [ -e CMakeLists.txt ] && cmake-utils_src_configure 541 cmake-utils_src_configure
582} 542}
583 543
584# @FUNCTION: kde4-base_src_compile 544# @FUNCTION: kde4-base_src_compile
585# @DESCRIPTION: 545# @DESCRIPTION:
586# General function for compiling KDE4 applications. 546# General function for compiling KDE4 applications.
587kde4-base_src_compile() { 547kde4-base_src_compile() {
588 debug-print-function ${FUNCNAME} "$@" 548 debug-print-function ${FUNCNAME} "$@"
589 549
590 kde4-base_src_make 550 cmake-utils_src_compile
591}
592
593# @FUNCTION: kde4-base_src_make
594# @DESCRIPTION:
595# Function for building KDE4 applications.
596# Options are passed to cmake-utils_src_make.
597kde4-base_src_make() {
598 debug-print-function ${FUNCNAME} "$@"
599
600 if [[ -d "$WORKDIR/${PN}_build" ]]; then
601 pushd "${WORKDIR}/${PN}_build" > /dev/null
602 fi
603 [ -e [Mm]akefile ] && cmake-utils_src_make "$@"
604} 551}
605 552
606# @FUNCTION: kde4-base_src_test 553# @FUNCTION: kde4-base_src_test
607# @DESCRIPTION: 554# @DESCRIPTION:
608# Function for testing KDE4 applications. 555# Function for testing KDE4 applications.
626 if [[ -n ${KMSAVELIBS} ]] ; then 573 if [[ -n ${KMSAVELIBS} ]] ; then
627 install_library_dependencies 574 install_library_dependencies
628 fi 575 fi
629 576
630 kde4-base_src_make_doc 577 kde4-base_src_make_doc
631 if [[ -d "$WORKDIR/${PN}_build" ]]; then 578 cmake-utils_src_install
632 pushd "${WORKDIR}/${PN}_build" > /dev/null
633 fi
634 [ -e [Mm]akefile ] && cmake-utils_src_install
635} 579}
636 580
637# @FUNCTION: kde4-base_src_make_doc 581# @FUNCTION: kde4-base_src_make_doc
638# @DESCRIPTION: 582# @DESCRIPTION:
639# Function for installing the documentation of KDE4 applications. 583# Function for installing the documentation of KDE4 applications.
653 newdoc "$doc_complete" "${doc%/*}.${doc##*/}" 597 newdoc "$doc_complete" "${doc%/*}.${doc##*/}"
654 fi 598 fi
655 done 599 done
656 fi 600 fi
657 601
658 if [[ -n ${KDEBASE} && -d "${D}/usr/share/doc/${PF}" ]]; then 602 if [[ -n ${KDEBASE} ]] && [[ -d "${D}${ROOT}usr/share/doc/${PF}" ]]; then
659 # work around bug #97196 603 # work around bug #97196
660 dodir /usr/share/doc/kde && \ 604 dodir /usr/share/doc/KDE4 && \
661 mv "${D}/usr/share/doc/${PF}" "${D}"/usr/share/doc/kde/ || \ 605 mv "${D}${ROOT}usr/share/doc/${PF}" "${D}${ROOT}usr/share/doc/KDE4/" || \
662 die "Failed to move docs to kde/ failed." 606 die "Failed to move docs to KDE4/."
663 fi 607 fi
664} 608}
665 609
666# @FUNCTION: kde4-base_pkg_postinst 610# @FUNCTION: kde4-base_pkg_postinst
667# @DESCRIPTION: 611# @DESCRIPTION:
668# Function to rebuild the KDE System Configuration Cache after an application has been installed. 612# Function to rebuild the KDE System Configuration Cache after an application has been installed.
669kde4-base_pkg_postinst() { 613kde4-base_pkg_postinst() {
670 debug-print-function ${FUNCNAME} "$@" 614 debug-print-function ${FUNCNAME} "$@"
671 615
672 buildsycoca 616 buildsycoca
617
618 if [[ ${BUILD_TYPE} = live ]] && [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
619 echo
620 einfo "WARNING! This is an experimental live ebuild of ${KMNAME:-${PN}}"
621 einfo "Use it at your own risk."
622 einfo "Do _NOT_ file bugs at bugs.gentoo.org because of this ebuild!"
623 echo
624 elif [[ ${BUILD_TYPE} != live ]] && [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && has kdeprefix ${IUSE//+} && use kdeprefix; then
625 # warning about kdeprefix for non-live users
626 echo
627 ewarn "WARNING! You have kdeprefix useflag enabled."
628 ewarn "This setting is strongly discouraged and might lead to potential troubles"
629 ewarn "with KDE update strategies."
630 ewarn "You are using this setup at your own risk and kde team does not"
631 ewarn "take responsibilities for dead kittens."
632 echo
633 fi
673} 634}
674 635
675# @FUNCTION: kde4-base_pkg_postrm 636# @FUNCTION: kde4-base_pkg_postrm
676# @DESCRIPTION: 637# @DESCRIPTION:
677# Function to rebuild the KDE System Configuration Cache after an application has been removed. 638# Function to rebuild the KDE System Configuration Cache after an application has been removed.

Legend:
Removed from v.1.30  
changed lines
  Added in v.1.41

  ViewVC Help
Powered by ViewVC 1.1.20