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

Contents of /eclass/kde4-base.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.81 - (hide annotations) (download)
Wed Dec 29 17:06:51 2010 UTC (3 years, 6 months ago) by tampakrap
Branch: MAIN
Changes since 1.80: +5 -1 lines
Add eclass support for kdepim 4.6beta3
This commit is useless for in tree eclasses, as this kdepim version will stay in overlay
I'm just syncing tree and overlay eclasses

1 reavertm 1.58 # Copyright 1999-2010 Gentoo Foundation
2 ingmar 1.1 # Distributed under the terms of the GNU General Public License v2
3 tampakrap 1.81 # $Header: $
4 ingmar 1.1
5     # @ECLASS: kde4-base.eclass
6     # @MAINTAINER:
7     # kde@gentoo.org
8 jmbsvicetto 1.13 # @BLURB: This eclass provides functions for kde 4.X ebuilds
9 ingmar 1.1 # @DESCRIPTION:
10 scarabeus 1.22 # The kde4-base.eclass provides support for building KDE4 based ebuilds
11 ingmar 1.1 # and KDE4 applications.
12     #
13 scarabeus 1.22 # NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but
14     # eclass will fail with version older than 2.
15    
16 alexxy 1.78 # @ECLASS-VARIABLE: VIRTUALX_REQUIRED
17     # @DESCRIPTION:
18     # Do we need an X server? Valid values are "always", "optional", and "manual".
19     # "tests" is a synonym for "optional". While virtualx.eclass supports in principle
20     # also the use of an X server during other ebuild phases, we only use it in
21     # src_test here. Most likely you'll want to set "optional", which introduces the
22     # use-flag "test" (if not already present), adds dependencies conditional on that
23     # use-flag, and automatically runs (only) the ebuild test phase with a virtual X server
24     # present. This makes things a lot more comfortable than the bare virtualx eclass.
25    
26     # In case the variable is not set in the ebuild, let virtualx eclass not do anything
27     : ${VIRTUALX_REQUIRED:=manual}
28    
29     inherit kde4-functions base virtualx eutils
30 reavertm 1.61
31     get_build_type
32     if [[ ${BUILD_TYPE} = live ]]; then
33     if [[ ${KDEBASE} = kdevelop ]]; then
34     inherit git
35     else
36     inherit subversion
37     fi
38     fi
39    
40 scarabeus 1.52 # @ECLASS-VARIABLE: CMAKE_REQUIRED
41 scarabeus 1.44 # @DESCRIPTION:
42 scarabeus 1.47 # Specify if cmake buildsystem is being used. Possible values are 'always' and 'never'.
43     # Please note that if it's set to 'never' you need to explicitly override following phases:
44     # src_configure, src_compile, src_test and src_install.
45     # Defaults to 'always'.
46 scarabeus 1.54 : ${CMAKE_REQUIRED:=always}
47 reavertm 1.61 if [[ ${CMAKE_REQUIRED} = always ]]; then
48 scarabeus 1.47 buildsystem_eclass="cmake-utils"
49     export_fns="src_configure src_compile src_test src_install"
50 scarabeus 1.44 fi
51    
52 reavertm 1.61 # Verify KDE_MINIMAL (display QA notice in pkg_setup, still we need to fix it here)
53     if [[ -n ${KDE_MINIMAL} ]]; then
54     for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
55     [[ ${KDE_MINIMAL} = ${slot} ]] && KDE_MINIMAL_VALID=1 && break
56     done
57     unset slot
58     [[ -z ${KDE_MINIMAL_VALID} ]] && unset KDE_MINIMAL
59     else
60     KDE_MINIMAL_VALID=1
61     fi
62    
63     # @ECLASS-VARIABLE: KDE_MINIMAL
64     # @DESCRIPTION:
65     # This variable is used when KDE_REQUIRED is set, to specify required KDE minimal
66 reavertm 1.66 # version for apps to work. Currently defaults to 4.4
67 reavertm 1.61 # One may override this variable to raise version requirements.
68     # For possible values look at KDE_SLOTS and KDE_LIVE_SLOTS variables.
69     # Note that it is fixed to ${SLOT} for kde-base packages.
70 reavertm 1.66 KDE_MINIMAL="${KDE_MINIMAL:-4.4}"
71 scarabeus 1.48
72 reavertm 1.61 # Set slot for packages in kde-base, koffice and kdevelop
73     case ${KDEBASE} in
74     kde-base)
75     # Determine SLOT from PVs
76     case ${PV} in
77     *.9999*) SLOT="${PV/.9999*/}" ;; # stable live
78 reavertm 1.72 4.6* | 4.5.[6-9][0-9]*) SLOT="4.6" ;;
79     4.5* | 4.4.[6-9][0-9]*) SLOT="4.5" ;;
80     4.4* | 4.3.[6-9][0-9]*) SLOT="4.4" ;;
81 reavertm 1.61 9999*) SLOT="live" ;; # regular live
82     *) die "Unsupported ${PV}" ;;
83     esac
84     KDE_MINIMAL="${SLOT}"
85     ;;
86     koffice)
87     SLOT="2"
88     ;;
89     kdevelop)
90     if [[ ${BUILD_TYPE} = live ]]; then
91 reavertm 1.65 # @ECLASS-VARIABLE: KDEVELOP_VERSION
92     # @DESCRIPTION:
93     # Specifies KDevelop version. Default is 4.0.0 for tagged packages and 9999 for live packages.
94     # Applies to KDEBASE=kdevelop only.
95     KDEVELOP_VERSION="${KDEVELOP_VERSION:-9999}"
96     # @ECLASS-VARIABLE: KDEVPLATFORM_VERSION
97     # @DESCRIPTION:
98     # Specifies KDevplatform version. Default is 1.0.0 for tagged packages and 9999 for live packages.
99     # Applies to KDEBASE=kdevelop only.
100     KDEVPLATFORM_VERSION="${KDEVPLATFORM_VERSION:-9999}"
101 reavertm 1.61 else
102     case ${PN} in
103     kdevelop|quanta)
104     KDEVELOP_VERSION=${PV}
105     KDEVPLATFORM_VERSION="$(($(get_major_version)-3)).$(get_after_major_version)"
106     ;;
107 reavertm 1.65 kdevplatform)
108 reavertm 1.61 KDEVELOP_VERSION="$(($(get_major_version)+3)).$(get_after_major_version)"
109     KDEVPLATFORM_VERSION=${PV}
110 reavertm 1.65 ;;
111     *)
112     KDEVELOP_VERSION="${KDEVELOP_VERSION:-4.0.0}"
113     KDEVPLATFORM_VERSION="${KDEVPLATFORM_VERSION:-1.0.0}"
114 reavertm 1.61 esac
115     fi
116     SLOT="4"
117     ;;
118     esac
119    
120 reavertm 1.66 slot_is_at_least 4.5 ${KDE_MINIMAL} && CMAKE_MIN_VERSION="2.8.1"
121 scarabeus 1.22
122 reavertm 1.61 inherit ${buildsystem_eclass}
123 scarabeus 1.47
124 reavertm 1.61 EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare ${export_fns} pkg_postinst pkg_postrm
125 scarabeus 1.44
126 scarabeus 1.47 unset buildsystem_eclass
127     unset export_fns
128 ingmar 1.1
129 alexxy 1.78 # @ECLASS-VARIABLE: DECLARATIVE_REQUIRED
130     # @DESCRIPTION:
131     # Is qt-declarative required? Possible values are 'always', 'optional' and 'never'.
132     # This variable must be set before inheriting any eclasses. Defaults to 'never'.
133     DECLARATIVE_REQUIRED="${DECLARATIVE_REQUIRED:-never}"
134    
135     # @ECLASS-VARIABLE: QTHELP_REQUIRED
136     # @DESCRIPTION:
137     # Is qt-assistant required? Possible values are 'always', 'optional' and 'never'.
138     # This variable must be set before inheriting any eclasses. Defaults to 'never'.
139     QTHELP_REQUIRED="${QTHELP_REQUIRED:-never}"
140    
141 philantrop 1.7 # @ECLASS-VARIABLE: OPENGL_REQUIRED
142     # @DESCRIPTION:
143     # Is qt-opengl required? Possible values are 'always', 'optional' and 'never'.
144     # This variable must be set before inheriting any eclasses. Defaults to 'never'.
145     OPENGL_REQUIRED="${OPENGL_REQUIRED:-never}"
146    
147 abcd 1.56 # @ECLASS-VARIABLE: MULTIMEDIA_REQUIRED
148     # @DESCRIPTION:
149     # Is qt-multimedia required? Possible values are 'always', 'optional' and 'never'.
150     # This variable must be set before inheriting any eclasses. Defaults to 'never'.
151     MULTIMEDIA_REQUIRED="${MULTIMEDIA_REQUIRED:-never}"
152    
153 scarabeus 1.31 # @ECLASS-VARIABLE: WEBKIT_REQUIRED
154     # @DESCRIPTION:
155     # Is qt-webkit requred? Possible values are 'always', 'optional' and 'never'.
156     # This variable must be set before inheriting any eclasses. Defaults to 'never'.
157     WEBKIT_REQUIRED="${WEBKIT_REQUIRED:-never}"
158    
159 zlin 1.4 # @ECLASS-VARIABLE: CPPUNIT_REQUIRED
160     # @DESCRIPTION:
161     # Is cppunit required for tests? Possible values are 'always', 'optional' and 'never'.
162     # This variable must be set before inheriting any eclasses. Defaults to 'never'.
163     CPPUNIT_REQUIRED="${CPPUNIT_REQUIRED:-never}"
164    
165 scarabeus 1.34 # @ECLASS-VARIABLE: KDE_REQUIRED
166     # @DESCRIPTION:
167     # Is kde required? Possible values are 'always', 'optional' and 'never'.
168     # This variable must be set before inheriting any eclasses. Defaults to 'always'
169 reavertm 1.74 # If set to 'always' or 'optional', KDE_MINIMAL may be overriden as well.
170 scarabeus 1.34 # Note that for kde-base packages this variable is fixed to 'always'.
171     KDE_REQUIRED="${KDE_REQUIRED:-always}"
172    
173 reavertm 1.69 # @ECLASS-VARIABLE: KDE_HANDBOOK
174     # @DESCRIPTION:
175 reavertm 1.74 # Set to enable handbook in application. Possible values are 'always', 'optional'
176     # (handbook USE flag) and 'never'.
177     # This variable must be set before inheriting any eclasses. Defaults to 'never'.
178     # It adds default handbook dirs for kde-base packages to KMEXTRA and in any case it
179     # ensures buildtime and runtime dependencies.
180     KDE_HANDBOOK="${KDE_HANDBOOK:-never}"
181 reavertm 1.69
182 scarabeus 1.47 # Setup packages inheriting this eclass
183     case ${KDEBASE} in
184     kde-base)
185 reavertm 1.69 HOMEPAGE="http://www.kde.org/"
186     LICENSE="GPL-2"
187 scarabeus 1.47 if [[ $BUILD_TYPE = live ]]; then
188     # Disable tests for live ebuilds
189     RESTRICT+=" test"
190     # Live ebuilds in kde-base default to kdeprefix by default
191     IUSE+=" +kdeprefix"
192     else
193     # All other ebuild types default to -kdeprefix as before
194     IUSE+=" kdeprefix"
195     fi
196     # This code is to prevent portage from searching GENTOO_MIRRORS for
197     # packages that will never be mirrored. (As they only will ever be in
198     # the overlay).
199     case ${PV} in
200     *9999* | 4.?.[6-9]?)
201     RESTRICT+=" mirror"
202     ;;
203     esac
204     # Block installation of other SLOTS unless kdeprefix
205     RDEPEND+=" $(block_other_slots)"
206     ;;
207 reavertm 1.69 koffice)
208     HOMEPAGE="http://www.koffice.org/"
209     LICENSE="GPL-2"
210     ;;
211     kdevelop)
212     HOMEPAGE="http://www.kdevelop.org/"
213     LICENSE="GPL-2"
214     ;;
215 scarabeus 1.47 esac
216 scarabeus 1.34
217 scarabeus 1.47 # @ECLASS-VARIABLE: QT_MINIMAL
218 scarabeus 1.39 # @DESCRIPTION:
219 reavertm 1.66 # Determine version of qt we enforce as minimal for the package. 4.4.0 4.5.1...
220 alexxy 1.78 # 4.6.0 for 4.4, 4.6.3 for 4.5, and 4.7.0 for 4.6 and later
221     if slot_is_at_least 4.6 "${KDE_MINIMAL}"; then
222     QT_MINIMAL="${QT_MINIMAL:-4.7.0}"
223     elif slot_is_at_least 4.5 "${KDE_MINIMAL}"; then
224 reavertm 1.66 QT_MINIMAL="${QT_MINIMAL:-4.6.3}"
225     else
226 abcd 1.55 QT_MINIMAL="${QT_MINIMAL:-4.6.0}"
227 scarabeus 1.47 fi
228    
229 alexxy 1.78 # Declarative dependencies
230     qtdeclarativedepend="
231     >=x11-libs/qt-declarative-${QT_MINIMAL}:4
232     "
233     case ${DECLARATIVE_REQUIRED} in
234     always)
235     COMMONDEPEND+=" ${qtdeclarativedepend}"
236     ;;
237     optional)
238     IUSE+=" declarative"
239     COMMONDEPEND+=" declarative? ( ${qtdeclarativedepend} )"
240     ;;
241     *) ;;
242     esac
243     unset qtdeclarativedepend
244    
245     # QtHelp dependencies
246     qthelpdepend="
247     >=x11-libs/qt-assistant-${QT_MINIMAL}:4
248     "
249     case ${QTHELP_REQUIRED} in
250     always)
251     COMMONDEPEND+=" ${qthelpdepend}"
252     ;;
253     optional)
254     IUSE+=" qthelp"
255     COMMONDEPEND+=" qthelp? ( ${qthelpdepend} )"
256     ;;
257     esac
258     unset qthelpdepend
259    
260 scarabeus 1.34 # OpenGL dependencies
261     qtopengldepend="
262 scarabeus 1.47 >=x11-libs/qt-opengl-${QT_MINIMAL}:4
263 scarabeus 1.34 "
264     case ${OPENGL_REQUIRED} in
265     always)
266 wired 1.42 COMMONDEPEND+=" ${qtopengldepend}"
267 scarabeus 1.34 ;;
268     optional)
269 wired 1.42 IUSE+=" opengl"
270     COMMONDEPEND+=" opengl? ( ${qtopengldepend} )"
271 scarabeus 1.34 ;;
272     *) ;;
273     esac
274     unset qtopengldepend
275    
276 abcd 1.56 # MultiMedia dependencies
277     qtmultimediadepend="
278     >=x11-libs/qt-multimedia-${QT_MINIMAL}:4
279     "
280     case ${MULTIMEDIA_REQUIRED} in
281     always)
282     COMMONDEPEND+=" ${qtmultimediadepend}"
283     ;;
284     optional)
285     IUSE+=" multimedia"
286     COMMONDEPEND+=" multimedia? ( ${qtmultimediadepend} )"
287     ;;
288     *) ;;
289     esac
290     unset qtmultimediadepend
291    
292 scarabeus 1.34 # WebKit dependencies
293 scarabeus 1.44 case ${KDE_REQUIRED} in
294     always)
295     qtwebkitusedeps="[kde]"
296     ;;
297     optional)
298     qtwebkitusedeps="[kde?]"
299     ;;
300     *) ;;
301     esac
302 scarabeus 1.34 qtwebkitdepend="
303 scarabeus 1.47 >=x11-libs/qt-webkit-${QT_MINIMAL}:4${qtwebkitusedeps}
304 scarabeus 1.34 "
305 scarabeus 1.44 unset qtwebkitusedeps
306 scarabeus 1.34 case ${WEBKIT_REQUIRED} in
307     always)
308 wired 1.42 COMMONDEPEND+=" ${qtwebkitdepend}"
309 scarabeus 1.34 ;;
310     optional)
311 wired 1.42 IUSE+=" webkit"
312     COMMONDEPEND+=" webkit? ( ${qtwebkitdepend} )"
313 scarabeus 1.34 ;;
314     *) ;;
315     esac
316     unset qtwebkitdepend
317    
318     # CppUnit dependencies
319     cppuintdepend="
320     dev-util/cppunit
321     "
322 scarabeus 1.22 case ${CPPUNIT_REQUIRED} in
323 zlin 1.4 always)
324 wired 1.42 DEPEND+=" ${cppuintdepend}"
325 scarabeus 1.22 ;;
326 zlin 1.4 optional)
327 wired 1.42 IUSE+=" test"
328     DEPEND+=" test? ( ${cppuintdepend} )"
329 scarabeus 1.22 ;;
330 scarabeus 1.34 *) ;;
331 zlin 1.4 esac
332 scarabeus 1.34 unset cppuintdepend
333    
334     # KDE dependencies
335 reavertm 1.65 # Qt accessibility classes are needed in various places, bug 325461
336 scarabeus 1.34 kdecommondepend="
337 reavertm 1.73 dev-lang/perl
338 scarabeus 1.47 >=x11-libs/qt-core-${QT_MINIMAL}:4[qt3support,ssl]
339 reavertm 1.64 >=x11-libs/qt-gui-${QT_MINIMAL}:4[accessibility,dbus]
340     >=x11-libs/qt-qt3support-${QT_MINIMAL}:4[accessibility,kde]
341 scarabeus 1.47 >=x11-libs/qt-script-${QT_MINIMAL}:4
342     >=x11-libs/qt-sql-${QT_MINIMAL}:4[qt3support]
343     >=x11-libs/qt-svg-${QT_MINIMAL}:4
344     >=x11-libs/qt-test-${QT_MINIMAL}:4
345 wired 1.42 !aqua? (
346     x11-libs/libXext
347     x11-libs/libXt
348     x11-libs/libXxf86vm
349     )
350 scarabeus 1.34 "
351 reavertm 1.61
352 scarabeus 1.34 if [[ ${PN} != kdelibs ]]; then
353 reavertm 1.73 kdecommondepend+=" $(add_kdebase_dep kdelibs)"
354     if [[ ${KDEBASE} = kdevelop ]]; then
355     if [[ ${PN} != kdevplatform ]]; then
356     # @ECLASS-VARIABLE: KDEVPLATFORM_REQUIRED
357     # @DESCRIPTION:
358     # Specifies whether kdevplatform is required. Possible values are 'always' (default) and 'never'.
359     # Applies to KDEBASE=kdevelop only.
360     KDEVPLATFORM_REQUIRED="${KDEVPLATFORM_REQUIRED:-always}"
361     case ${KDEVPLATFORM_REQUIRED} in
362     always)
363     kdecommondepend+="
364     >=dev-util/kdevplatform-${KDEVPLATFORM_VERSION}
365     "
366     ;;
367     *) ;;
368     esac
369 reavertm 1.61 fi
370 ingmar 1.1 fi
371     fi
372 scarabeus 1.34 kdedepend="
373 reavertm 1.60 dev-util/automoc
374 scarabeus 1.34 dev-util/pkgconfig
375 scarabeus 1.54 !aqua? (
376 abcd 1.55 || ( >=x11-libs/libXtst-1.1.0 <x11-proto/xextproto-7.1.0 )
377 scarabeus 1.54 x11-proto/xf86vidmodeproto
378     )
379 scarabeus 1.34 "
380 reavertm 1.73 kderdepend=""
381 reavertm 1.69
382 reavertm 1.74 kdehandbookdepend="
383     app-text/docbook-xml-dtd:4.2
384     app-text/docbook-xsl-stylesheets
385     "
386     kdehandbookrdepend="
387     $(add_kdebase_dep kdelibs 'handbook')
388     "
389     case ${KDE_HANDBOOK} in
390     always)
391     kdedepend+=" ${kdehandbookdepend}"
392     [[ ${PN} != kdelibs ]] && kderdepend+=" ${kdehandbookrdepend}"
393     ;;
394     optional)
395     IUSE+=" +handbook"
396     kdedepend+=" handbook? ( ${kdehandbookdepend} )"
397     [[ ${PN} != kdelibs ]] && kderdepend+=" handbook? ( ${kdehandbookrdepend} )"
398     ;;
399     *) ;;
400     esac
401     unset kdehandbookdepend kdehandbookrdepend
402 reavertm 1.69
403 scarabeus 1.34 case ${KDE_REQUIRED} in
404     always)
405 wired 1.42 IUSE+=" aqua"
406 reavertm 1.73 [[ -n ${kdecommondepend} ]] && COMMONDEPEND+=" ${kdecommondepend}"
407     [[ -n ${kdedepend} ]] && DEPEND+=" ${kdedepend}"
408     [[ -n ${kderdepend} ]] && RDEPEND+=" ${kderdepend}"
409 scarabeus 1.34 ;;
410     optional)
411 wired 1.42 IUSE+=" aqua kde"
412 reavertm 1.73 [[ -n ${kdecommondepend} ]] && COMMONDEPEND+=" kde? ( ${kdecommondepend} )"
413     [[ -n ${kdedepend} ]] && DEPEND+=" kde? ( ${kdedepend} )"
414     [[ -n ${kderdepend} ]] && RDEPEND+=" kde? ( ${kderdepend} )"
415 scarabeus 1.34 ;;
416     *) ;;
417     esac
418 scarabeus 1.54
419 reavertm 1.73 unset kdecommondepend kdedepend kderdepend
420 scarabeus 1.34
421     debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: COMMONDEPEND is ${COMMONDEPEND}"
422     debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: DEPEND (only) is ${DEPEND}"
423     debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: RDEPEND (only) is ${RDEPEND}"
424    
425     # Accumulate dependencies set by this eclass
426 wired 1.42 DEPEND+=" ${COMMONDEPEND}"
427     RDEPEND+=" ${COMMONDEPEND}"
428     unset COMMONDEPEND
429 ingmar 1.1
430 scarabeus 1.54 # Add experimental kdeenablefinal, disabled by default
431     IUSE+=" kdeenablefinal"
432    
433 ingmar 1.1 # Fetch section - If the ebuild's category is not 'kde-base' and if it is not a
434     # koffice ebuild, the URI should be set in the ebuild itself
435 scarabeus 1.30 case ${BUILD_TYPE} in
436 scarabeus 1.22 live)
437 scarabeus 1.30 SRC_URI=""
438 reavertm 1.61 if has subversion ${INHERITED}; then
439     # Determine branch URL based on live type
440     local branch_prefix
441     case ${PV} in
442     9999*)
443     # trunk
444     branch_prefix="trunk/KDE"
445     ;;
446     *)
447     # branch
448     branch_prefix="branches/KDE/${SLOT}"
449     # @ECLASS-VARIABLE: ESVN_PROJECT_SUFFIX
450     # @DESCRIPTION
451     # Suffix appended to ESVN_PROJECT depending on fetched branch.
452     # Defaults is empty (for -9999 = trunk), and "-${PV}" otherwise.
453     ESVN_PROJECT_SUFFIX="-${PV}"
454     ;;
455     esac
456     # @ECLASS-VARIABLE: ESVN_MIRROR
457     # @DESCRIPTION:
458     # This variable allows easy overriding of default kde mirror service
459     # (anonsvn) with anything else you might want to use.
460     ESVN_MIRROR=${ESVN_MIRROR:=svn://anonsvn.kde.org/home/kde}
461     # Split ebuild, or extragear stuff
462     if [[ -n ${KMNAME} ]]; then
463     ESVN_PROJECT="${KMNAME}${ESVN_PROJECT_SUFFIX}"
464     if [[ -z ${KMNOMODULE} ]] && [[ -z ${KMMODULE} ]]; then
465     KMMODULE="${PN}"
466     fi
467     # Split kde-base/ ebuilds: (they reside in trunk/KDE)
468     case ${KMNAME} in
469     kdebase-*)
470     ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdebase/${KMNAME#kdebase-}"
471     ;;
472     kdelibs-*)
473     ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdelibs/${KMNAME#kdelibs-}"
474     ;;
475     kdereview*)
476     ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
477     ;;
478     kdesupport)
479     ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
480     ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
481     ;;
482     kde*)
483     ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${KMNAME}"
484     ;;
485     extragear*|playground*)
486     # Unpack them in toplevel dir, so that they won't conflict with kde4-meta
487     # build packages from same svn location.
488     ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
489     ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
490     ;;
491     koffice)
492     ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
493     ;;
494     *)
495     ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
496     ;;
497     esac
498     else
499     # kdelibs, kdepimlibs
500     ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${PN}"
501     ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
502     fi
503     # @ECLASS-VARIABLE: ESVN_UP_FREQ
504     # @DESCRIPTION:
505     # This variable is used for specifying the timeout between svn synces
506     # for kde-base and koffice modules. Does not affect misc apps.
507     # Default value is 1 hour.
508     [[ ${KDEBASE} = kde-base || ${KDEBASE} = koffice ]] && ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
509     elif has git ${INHERITED}; then
510 scarabeus 1.34 if [[ -z ${KMNOMODULE} ]] && [[ -z ${KMMODULE} ]]; then
511 jmbsvicetto 1.25 KMMODULE="${PN}"
512 scarabeus 1.22 fi
513 reavertm 1.61 case ${KDEBASE} in
514     kdevelop)
515 alexxy 1.78 EGIT_REPO_URI="git://git.kde.org/${KMMODULE}"
516 scarabeus 1.22 ;;
517     esac
518 reavertm 1.61 fi
519 scarabeus 1.22 ;;
520     *)
521 scarabeus 1.30 if [[ -n ${KDEBASE} ]]; then
522 scarabeus 1.22 if [[ -n ${KMNAME} ]]; then
523 scarabeus 1.30 case ${KMNAME} in
524     kdebase-apps)
525     _kmname="kdebase" ;;
526     *)
527 scarabeus 1.34 _kmname="${KMNAME}" ;;
528 scarabeus 1.30 esac
529 scarabeus 1.22 else
530     _kmname=${PN}
531     fi
532     _kmname_pv="${_kmname}-${PV}"
533     case ${KDEBASE} in
534     kde-base)
535     case ${PV} in
536 tampakrap 1.81 4.5.93)
537     # Only kdepim and kdepim-runtime 4.6beta here
538     SRC_URI="mirror://kde/unstable/kdepim/${PV}/${_kmname}-4.6beta3.tar.bz2"
539     ;;
540 reavertm 1.70 4.[456].8[05] | 4.[456].9[023568])
541     # Unstable KDE SC releases
542     SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2"
543     ;;
544 tampakrap 1.80 4.4.6 | 4.4.7 | 4.4.8 | 4.4.9)
545 reavertm 1.71 # Only kdepim here
546     SRC_URI="mirror://kde/stable/kdepim-${PV}/src/${_kmname_pv}.tar.bz2"
547     ;;
548 reavertm 1.70 *)
549     # Stable KDE SC releases
550     SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2"
551 scarabeus 1.54 ;;
552 scarabeus 1.22 esac
553     ;;
554     koffice)
555 scarabeus 1.38 case ${PV} in
556 reavertm 1.61 2.1.[6-9]*) SRC_URI="mirror://kde/unstable/${_kmname_pv}/${_kmname_pv}.tar.bz2" ;;
557 tampakrap 1.53 *) SRC_URI="mirror://kde/stable/${_kmname_pv}/${_kmname_pv}.tar.bz2" ;;
558 scarabeus 1.38 esac
559 reavertm 1.61 ;;
560     kdevelop)
561     SRC_URI="mirror://kde/stable/kdevelop/${KDEVELOP_VERSION}/src/${P}.tar.bz2"
562     ;;
563 ingmar 1.1 esac
564 scarabeus 1.30 unset _kmname _kmname_pv
565     fi
566 scarabeus 1.22 ;;
567     esac
568 ingmar 1.1
569     debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SRC_URI is ${SRC_URI}"
570    
571     # @ECLASS-VARIABLE: PREFIX
572     # @DESCRIPTION:
573 scarabeus 1.34 # Set the installation PREFIX for non kde-base applications. It defaults to /usr.
574     # kde-base packages go into KDE4 installation directory (KDEDIR) by default.
575 wired 1.42 # No matter the PREFIX, package will be built against KDE installed in KDEDIR.
576 ingmar 1.1
577     # @FUNCTION: kde4-base_pkg_setup
578     # @DESCRIPTION:
579 scarabeus 1.34 # Do the basic kdeprefix KDEDIR settings and determine with which kde should
580     # optional applications link
581 ingmar 1.1 kde4-base_pkg_setup() {
582 scarabeus 1.30 debug-print-function ${FUNCNAME} "$@"
583 ingmar 1.1
584 scarabeus 1.47 # Prefix compat:
585 abcd 1.56 if [[ ${EAPI} == 2 ]] && ! use prefix; then
586     EPREFIX=
587     EROOT=${ROOT}
588     fi
589    
590 scarabeus 1.47 # Append missing trailing slash character
591     [[ ${EROOT} = */ ]] || EROOT+="/"
592    
593 scarabeus 1.34 # QA ebuilds
594     [[ -z ${KDE_MINIMAL_VALID} ]] && ewarn "QA Notice: ignoring invalid KDE_MINIMAL (defaulting to ${KDE_MINIMAL})."
595    
596     # Don't set KDEHOME during compilation, it will cause access violations
597 jmbsvicetto 1.13 unset KDEHOME
598    
599 scarabeus 1.34 if [[ ${KDEBASE} = kde-base ]]; then
600     if use kdeprefix; then
601 reavertm 1.61 KDEDIR=/usr/kde/${SLOT}
602 scarabeus 1.34 else
603 abcd 1.57 KDEDIR=/usr
604 scarabeus 1.34 fi
605 abcd 1.56 : ${PREFIX:=${KDEDIR}}
606 scarabeus 1.29 else
607 scarabeus 1.34 # Determine KDEDIR by loooking for the closest match with KDE_MINIMAL
608     KDEDIR=
609     local kde_minimal_met
610     for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
611     [[ -z ${kde_minimal_met} ]] && [[ ${slot} = ${KDE_MINIMAL} ]] && kde_minimal_met=1
612     if [[ -n ${kde_minimal_met} ]] && has_version "kde-base/kdelibs:${slot}"; then
613     if has_version "kde-base/kdelibs:${slot}[kdeprefix]"; then
614 abcd 1.57 KDEDIR=/usr/kde/${slot}
615 scarabeus 1.34 else
616 abcd 1.57 KDEDIR=/usr
617 scarabeus 1.34 fi
618     break;
619     fi
620     done
621 scarabeus 1.37 unset slot
622 scarabeus 1.41
623     # Bail out if kdelibs required but not found
624     if [[ ${KDE_REQUIRED} = always ]] || { [[ ${KDE_REQUIRED} = optional ]] && use kde; }; then
625     [[ -z ${KDEDIR} ]] && die "Failed to determine KDEDIR!"
626     else
627 abcd 1.57 [[ -z ${KDEDIR} ]] && KDEDIR=/usr
628 scarabeus 1.41 fi
629    
630 abcd 1.57 : ${PREFIX:=/usr}
631 jmbsvicetto 1.13 fi
632 abcd 1.57 EKDEDIR=${EPREFIX}${KDEDIR}
633    
634 wired 1.42 # Point pkg-config path to KDE *.pc files
635 abcd 1.57 export PKG_CONFIG_PATH="${EKDEDIR}/$(get_libdir)/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}"
636 wired 1.42 # Point to correct QT plugins path
637 abcd 1.57 QT_PLUGIN_PATH="${EKDEDIR}/$(get_libdir)/kde4/plugins/"
638 jmbsvicetto 1.13
639 scarabeus 1.47 # Fix XDG collision with sandbox
640     export XDG_CONFIG_HOME="${T}"
641 zlin 1.4 }
642    
643     # @FUNCTION: kde4-base_src_unpack
644     # @DESCRIPTION:
645     # This function unpacks the source tarballs for KDE4 applications.
646 ingmar 1.1 kde4-base_src_unpack() {
647 scarabeus 1.30 debug-print-function ${FUNCNAME} "$@"
648 ingmar 1.1
649 scarabeus 1.30 if [[ ${BUILD_TYPE} = live ]]; then
650 reavertm 1.61 if has subversion ${INHERITED}; then
651     migrate_store_dir
652     subversion_src_unpack
653     elif has git ${INHERITED}; then
654     git_src_unpack
655     fi
656 reavertm 1.58 elif [[ ${EAPI} == 2 ]]; then
657 scarabeus 1.54 local file
658     for file in ${A}; do
659 reavertm 1.58 # This setup is because EAPI <= 2 cannot unpack *.tar.xz files
660 scarabeus 1.54 # directly, so we do it ourselves (using the exact same code as portage)
661     case ${file} in
662     *.tar.xz)
663     echo ">>> Unpacking ${file} to ${PWD}"
664     xz -dc "${DISTDIR}"/${file} | tar xof -
665     assert "failed unpacking ${file}"
666     ;;
667     *)
668     unpack ${file}
669     ;;
670     esac
671     done
672 ingmar 1.1 else
673 reavertm 1.58 # For EAPI >= 3, we can just use unpack() directly
674 scarabeus 1.54 unpack ${A}
675 ingmar 1.1 fi
676 scarabeus 1.22 }
677 ingmar 1.1
678 scarabeus 1.44 # @FUNCTION: kde4-base_src_prepare
679 scarabeus 1.22 # @DESCRIPTION:
680     # General pre-configure and pre-compile function for KDE4 applications.
681     # It also handles translations if KDE_LINGUAS is defined. See KDE_LINGUAS and
682 wired 1.42 # enable_selected_linguas() and enable_selected_doc_linguas()
683     # in kde4-functions.eclass(5) for further details.
684 scarabeus 1.22 kde4-base_src_prepare() {
685     debug-print-function ${FUNCNAME} "$@"
686 zlin 1.8
687     # Only enable selected languages, used for KDE extragear apps.
688 scarabeus 1.30 if [[ -n ${KDE_LINGUAS} ]]; then
689 zlin 1.8 enable_selected_linguas
690     fi
691 ingmar 1.1
692 wired 1.42 # Enable/disable handbooks for kde4-base packages
693 scarabeus 1.44 # kde-l10n inherits kde4-base but is metpackage, so no check for doc
694     # kdelibs inherits kde4-base but handle installing the handbook itself
695 wired 1.42 if ! has kde4-meta ${INHERITED}; then
696 scarabeus 1.44 has handbook ${IUSE//+} && [[ ${PN} != kde-l10n ]] && [[ ${PN} != kdelibs ]] && enable_selected_doc_linguas
697 wired 1.42 fi
698    
699 reavertm 1.61 # SCM bootstrap
700     if [[ ${BUILD_TYPE} = live ]]; then
701     if has subversion ${INHERITED}; then
702     subversion_src_prepare
703     elif has git ${INHERITED}; then
704     git_src_prepare
705     fi
706     fi
707 reavertm 1.58
708     # Apply patches
709 scarabeus 1.22 base_src_prepare
710 scarabeus 1.20
711 scarabeus 1.22 # Save library dependencies
712 scarabeus 1.30 if [[ -n ${KMSAVELIBS} ]] ; then
713 scarabeus 1.22 save_library_dependencies
714     fi
715 scarabeus 1.20
716 scarabeus 1.22 # Inject library dependencies
717 scarabeus 1.30 if [[ -n ${KMLOADLIBS} ]] ; then
718 scarabeus 1.22 load_library_dependencies
719 jmbsvicetto 1.13 fi
720 dilfridge 1.76
721 alexxy 1.78 # Replace KDE4Workspace library targets
722     find "${S}" -name CMakeLists.txt \
723     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_TASKMANAGER_(LIBRARY|LIBS)\}/taskmanager/g' {} + \
724     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KWORKSPACE_(LIBRARY|LIBS)\}/kworkspace/g' {} + \
725     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_SOLIDCONTROLIFACES_(LIBRARY|LIBS)\}/solidcontrolifaces/g' {} + \
726     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_SOLIDCONTROL_(LIBRARY|LIBS)\}/solidcontrol/g' {} + \
727     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_PROCESSUI_(LIBRARY|LIBS)\}/processui/g' {} + \
728     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_LSOFUI_(LIBRARY|LIBS)\}/lsofui/g' {} + \
729     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_PLASMACLOCK_(LIBRARY|LIBS)\}/plasmaclock/g' {} + \
730     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_NEPOMUKQUERYCLIENT_(LIBRARY|LIBS)\}/nepomukqueryclient/g' {} + \
731     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_NEPOMUKQUERY_(LIBRARY|LIBS)\}/nepomukquery/g' {} + \
732     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KSCREENSAVER_(LIBRARY|LIBS)\}/kscreensaver/g' {} + \
733     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_WEATHERION_(LIBRARY|LIBS)\}/weather_ion/g' {} + \
734     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KWINEFFECTS_(LIBRARY|LIBS)\}/kwineffects/g' {} + \
735     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KDECORATIONS_(LIBRARY|LIBS)\}/kdecorations/g' {} + \
736     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KSGRD_(LIBRARY|LIBS)\}/ksgrd/g' {} + \
737     -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KEPHAL_(LIBRARY|LIBS)\}/kephal/g' {} + \
738     || die 'failed to replace KDE4Workspace library targets'
739    
740 dilfridge 1.77 # Hack for manuals relying on outdated DTD, only outside kde-base/koffice/...
741 alexxy 1.78 if [[ -z ${KDEBASE} ]]; then
742 dilfridge 1.77 find "${S}" -name "*.docbook" \
743     -exec sed -i -r \
744     -e 's:-//KDE//DTD DocBook XML V4\.1(\..)?-Based Variant V1\.[01]//EN:-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN:g' {} + \
745     || die 'failed to fix DocBook variant version'
746     fi
747 ingmar 1.1 }
748    
749     # @FUNCTION: kde4-base_src_configure
750     # @DESCRIPTION:
751     # Function for configuring the build of KDE4 applications.
752     kde4-base_src_configure() {
753     debug-print-function ${FUNCNAME} "$@"
754    
755     # Build tests in src_test only, where we override this value
756 abcd 1.56 local cmakeargs=(-DKDE4_BUILD_TESTS=OFF)
757 ingmar 1.1
758 scarabeus 1.54 if has kdeenablefinal ${IUSE//+} && use kdeenablefinal; then
759 abcd 1.56 cmakeargs+=(-DKDE4_ENABLE_FINAL=ON)
760 scarabeus 1.54 fi
761    
762 reavertm 1.68 if has debug ${IUSE//+} && use debug; then
763     # Set "real" debug mode
764     CMAKE_BUILD_TYPE="Debugfull"
765     else
766     # Handle common release builds
767     append-cppflags -DQT_NO_DEBUG
768 scarabeus 1.38 fi
769    
770 ingmar 1.1 # Set distribution name
771 abcd 1.56 [[ ${PN} = kdelibs ]] && cmakeargs+=(-DKDE_DISTRIBUTION_TEXT=Gentoo)
772 ingmar 1.1
773     # Here we set the install prefix
774 reavertm 1.61 tc-is-cross-compiler || cmakeargs+=(-DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX}")
775 jmbsvicetto 1.13
776 wired 1.42 # Use colors
777 ingmar 1.1 QTEST_COLORED=1
778 jmbsvicetto 1.13
779 scarabeus 1.34 # Shadow existing /usr installations
780     unset KDEDIRS
781    
782 scarabeus 1.45 # Handle kdeprefix-ed KDE
783 abcd 1.57 if [[ ${KDEDIR} != /usr ]]; then
784 scarabeus 1.37 # Override some environment variables - only when kdeprefix is different,
785     # to not break ccache/distcc
786 abcd 1.57 PATH="${EKDEDIR}/bin:${PATH}"
787 reavertm 1.61
788     # Append library search path
789     append-ldflags -L"${EKDEDIR}/$(get_libdir)"
790 scarabeus 1.37
791     # Append full RPATH
792 abcd 1.56 cmakeargs+=(-DCMAKE_SKIP_RPATH=OFF)
793 scarabeus 1.34
794 scarabeus 1.45 # Set cmake prefixes to allow buildsystem to locate valid KDE installation
795 scarabeus 1.34 # when more are present
796 abcd 1.57 cmakeargs+=(-DCMAKE_SYSTEM_PREFIX_PATH="${EKDEDIR}")
797 scarabeus 1.45 fi
798    
799 reavertm 1.61 #qmake -query QT_INSTALL_LIBS unavailable when cross-compiling
800     tc-is-cross-compiler && cmakeargs+=(-DQT_LIBRARY_DIR=${ROOT}/usr/lib/qt4)
801     #kde-config -path data unavailable when cross-compiling
802     tc-is-cross-compiler && cmakeargs+=(-DKDE4_DATA_DIR=${ROOT}/usr/share/apps/)
803    
804 scarabeus 1.45 # Handle kdeprefix in application itself
805     if ! has kdeprefix ${IUSE//+} || ! use kdeprefix; then
806 scarabeus 1.34 # If prefix is /usr, sysconf needs to be /etc, not /usr/etc
807 abcd 1.56 cmakeargs+=(-DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc)
808     fi
809    
810 abcd 1.57 if [[ $(declare -p mycmakeargs 2>&-) != "declare -a mycmakeargs="* ]]; then
811 abcd 1.56 mycmakeargs=(${mycmakeargs})
812 scarabeus 1.22 fi
813    
814 abcd 1.56 mycmakeargs=("${cmakeargs[@]}" "${mycmakeargs[@]}")
815 scarabeus 1.34
816     cmake-utils_src_configure
817 scarabeus 1.22 }
818    
819     # @FUNCTION: kde4-base_src_compile
820     # @DESCRIPTION:
821     # General function for compiling KDE4 applications.
822     kde4-base_src_compile() {
823     debug-print-function ${FUNCNAME} "$@"
824    
825 wired 1.42 cmake-utils_src_compile "$@"
826 ingmar 1.1 }
827    
828     # @FUNCTION: kde4-base_src_test
829     # @DESCRIPTION:
830     # Function for testing KDE4 applications.
831     kde4-base_src_test() {
832     debug-print-function ${FUNCNAME} "$@"
833    
834     # Override this value, set in kde4-base_src_configure()
835 abcd 1.56 mycmakeargs+=(-DKDE4_BUILD_TESTS=ON)
836 scarabeus 1.30 cmake-utils_src_configure
837     kde4-base_src_compile
838 ingmar 1.1
839 alexxy 1.78 if [[ ${VIRTUALX_REQUIRED} == always ]] ||
840     ( [[ ${VIRTUALX_REQUIRED} != manual ]] && use test ); then
841    
842     if [[ ${maketype} ]]; then
843     # surprise- we are already INSIDE virtualmake!!!
844     ewarn "QA Notice: This version of kde4-base.eclass includes the virtualx functionality."
845     ewarn " You may NOT set maketype or call virtualmake from the ebuild. Applying workaround."
846     cmake-utils_src_test
847     else
848     export maketype="cmake-utils_src_test"
849     virtualmake
850     fi
851     else
852     cmake-utils_src_test
853     fi
854 ingmar 1.1 }
855    
856     # @FUNCTION: kde4-base_src_install
857     # @DESCRIPTION:
858     # Function for installing KDE4 applications.
859     kde4-base_src_install() {
860     debug-print-function ${FUNCNAME} "$@"
861    
862 abcd 1.57 # Prefix support, for usage in ebuilds
863     if [[ ${EAPI} == 2 ]] && ! use prefix; then
864     ED=${D}
865     fi
866    
867 scarabeus 1.30 if [[ -n ${KMSAVELIBS} ]] ; then
868 scarabeus 1.22 install_library_dependencies
869     fi
870    
871 reavertm 1.61 # Install common documentation of KDE4 applications
872 ingmar 1.1 local doc
873 reavertm 1.61 if ! has kde4-meta ${INHERITED}; then
874 reavertm 1.62 for doc in "${S}"/{AUTHORS,CHANGELOG,ChangeLog*,README*,NEWS,TODO,HACKING}; do
875 reavertm 1.63 [[ -f "${doc}" ]] && [[ -s "${doc}" ]] && dodoc "${doc}"
876 reavertm 1.62 done
877     for doc in "${S}"/*/{AUTHORS,CHANGELOG,ChangeLog*,README*,NEWS,TODO,HACKING}; do
878 reavertm 1.63 [[ -f "${doc}" ]] && [[ -s "${doc}" ]] && newdoc "${doc}" "$(basename $(dirname ${doc})).$(basename ${doc})"
879 ingmar 1.1 done
880     fi
881 reavertm 1.61
882     cmake-utils_src_install
883 ingmar 1.1 }
884    
885     # @FUNCTION: kde4-base_pkg_postinst
886     # @DESCRIPTION:
887     # Function to rebuild the KDE System Configuration Cache after an application has been installed.
888     kde4-base_pkg_postinst() {
889 scarabeus 1.30 debug-print-function ${FUNCNAME} "$@"
890    
891 ingmar 1.1 buildsycoca
892 scarabeus 1.36
893     if [[ ${BUILD_TYPE} = live ]] && [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
894     echo
895 wired 1.42 einfo "WARNING! This is an experimental live ebuild of ${CATEGORY}/${PN}"
896 scarabeus 1.36 einfo "Use it at your own risk."
897     einfo "Do _NOT_ file bugs at bugs.gentoo.org because of this ebuild!"
898     echo
899 scarabeus 1.39 elif [[ ${BUILD_TYPE} != live ]] && [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && has kdeprefix ${IUSE//+} && use kdeprefix; then
900     # warning about kdeprefix for non-live users
901     echo
902 wired 1.42 ewarn "WARNING! You have the kdeprefix useflag enabled."
903     ewarn "This setting is strongly discouraged and might lead to potential trouble"
904 scarabeus 1.39 ewarn "with KDE update strategies."
905 wired 1.42 ewarn "You are using this setup at your own risk and the kde team does not"
906 scarabeus 1.39 ewarn "take responsibilities for dead kittens."
907     echo
908 scarabeus 1.36 fi
909 reavertm 1.58 if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && ! has_version 'kde-base/kdebase-runtime-meta' && ! has_version 'kde-base/kdebase-startkde'; then
910     # warn about not supported approach
911     if [[ ${KDE_REQUIRED} == always ]] || ( [[ ${KDE_REQUIRED} == optional ]] && use kde ); then
912     echo
913     ewarn "WARNING! Your system configuration contains neither \"kde-base/kdebase-runtime-meta\""
914     ewarn "nor \"kde-base/kdebase-startkde\". You need one of above."
915     ewarn "With this setting you are unsupported by KDE team."
916     ewarn "All missing features you report for misc packages will be probably ignored or closed as INVALID."
917     fi
918     fi
919 ingmar 1.1 }
920    
921     # @FUNCTION: kde4-base_pkg_postrm
922     # @DESCRIPTION:
923     # Function to rebuild the KDE System Configuration Cache after an application has been removed.
924     kde4-base_pkg_postrm() {
925 scarabeus 1.30 debug-print-function ${FUNCNAME} "$@"
926    
927 ingmar 1.1 buildsycoca
928     }

  ViewVC Help
Powered by ViewVC 1.1.20