/[gentoo-x86]/eclass/xfconf.eclass
Gentoo

Diff of /eclass/xfconf.eclass

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

Revision 1.6 Revision 1.35
1# Copyright 1999-2009 Gentoo Foundation 1# Copyright 1999-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/xfconf.eclass,v 1.6 2010/01/23 17:35:54 angelos Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/xfconf.eclass,v 1.35 2011/06/06 14:38:46 angelos Exp $
4 4
5# @ECLASS: xfconf.eclass 5# @ECLASS: xfconf.eclass
6# @MAINTAINER: 6# @MAINTAINER:
7# XFCE maintainers <xfce@gentoo.org> 7# XFCE maintainers <xfce@gentoo.org>
8# @BLURB: Default XFCE ebuild layout 8# @BLURB: Default XFCE ebuild layout
9# @DESCRIPTION: 9# @DESCRIPTION:
10# Default XFCE ebuild layout 10# Default XFCE ebuild layout
11 11
12# @ECLASS-VARIABLE: EAUTORECONF 12# @ECLASS-VARIABLE: EAUTORECONF
13# @DESCRIPTION: 13# @DESCRIPTION:
14# Run eautoreconf instead of elibtoolize if set "yes" 14# Run eautoreconf instead of elibtoolize if the variable is set
15 15
16# @ECLASS-VARIABLE: EINTLTOOLIZE 16# @ECLASS-VARIABLE: EINTLTOOLIZE
17# @DESCRIPTION: 17# @DESCRIPTION:
18# Run intltoolize --force --copy --automake if set "yes" 18# Run intltoolize --force --copy --automake if the variable is set
19 19
20# @ECLASS-VARIABLE: DOCS 20# @ECLASS-VARIABLE: DOCS
21# @DESCRIPTION: 21# @DESCRIPTION:
22# Define documentation to install 22# This should be an array defining documentation to install
23 23
24# @ECLASS-VARIABLE: PATCHES 24# @ECLASS-VARIABLE: PATCHES
25# @DESCRIPTION: 25# @DESCRIPTION:
26# Define patches to apply 26# This should be an array defining patches to apply
27 27
28# @ECLASS-VARIABLE: XFCONF 28# @ECLASS-VARIABLE: XFCONF
29# @DESCRIPTION: 29# @DESCRIPTION:
30# Define options for econf 30# This should be an array defining arguments for econf
31 31
32inherit autotools base fdo-mime gnome2-utils libtool 32inherit autotools base eutils fdo-mime gnome2-utils libtool
33 33
34if ! [[ ${MY_P} ]]; then
35 MY_P=${P}
36else
37 S=${WORKDIR}/${MY_P}
38fi
39
40SRC_URI="mirror://xfce/xfce/xfce-${PV}/src/${MY_P}.tar.bz2"
41
42if [[ "${EINTLTOOLIZE}" == "yes" ]]; then 34if [[ -n $EINTLTOOLIZE ]]; then
43 _xfce4_intltool="dev-util/intltool" 35 _xfce4_intltool="dev-util/intltool"
44fi 36fi
45 37
46if [[ "${EAUTORECONF}" == "yes" ]]; then 38if [[ -n $EAUTORECONF ]]; then
47 _xfce4_m4="dev-util/xfce4-dev-tools" 39 _xfce4_m4=">=dev-util/xfce4-dev-tools-4.8.0"
48fi 40fi
49 41
50RDEPEND="" 42RDEPEND=""
51DEPEND="${_xfce4_intltool} 43DEPEND="${_xfce4_intltool}
52 ${_xfce4_m4}" 44 ${_xfce4_m4}"
53 45
54unset _xfce4_intltool 46unset _xfce4_intltool
55unset _xfce4_m4 47unset _xfce4_m4
56 48
57XFCONF_EXPF="src_unpack src_compile src_install pkg_preinst pkg_postinst pkg_postrm"
58case ${EAPI:-0} in 49case ${EAPI:-0} in
59 3|2) XFCONF_EXPF="${XFCONF_EXPF} src_prepare src_configure" ;;
60 1|0) ;; 50 4|3) ;;
61 *) die "Unknown EAPI." ;; 51 *) die "Unknown EAPI." ;;
62esac 52esac
63EXPORT_FUNCTIONS ${XFCONF_EXPF}
64 53
54EXPORT_FUNCTIONS src_prepare src_configure src_install pkg_preinst pkg_postinst pkg_postrm
55
65# @FUNCTION: xfconf_src_unpack 56# @FUNCTION: xfconf_use_debug
66# @DESCRIPTION: 57# @DESCRIPTION:
67# Run base_src_util autopatch and eautoreconf or elibtoolize 58# If IUSE has debug, return --enable-debug=minimum.
68xfconf_src_unpack() { 59# If USE debug is enabled, return --enable-debug which is the same as --enable-debug=yes.
69 unpack ${A} 60# If USE debug is enabled and the XFCONF_FULL_DEBUG variable is set, return --enable-debug=full.
70 cd "${S}" 61xfconf_use_debug() {
71 has src_prepare ${XFCONF_EXPF} || xfconf_src_prepare 62 if has debug ${IUSE}; then
63 if use debug; then
64 if [[ -n $XFCONF_FULL_DEBUG ]]; then
65 echo "--enable-debug=full"
66 else
67 echo "--enable-debug"
68 fi
69 else
70 echo "--enable-debug=minimum"
71 fi
72 else
73 ewarn "${FUNCNAME} called without debug in IUSE"
74 fi
72} 75}
73 76
74# @FUNCTION: xfconf_src_prepare 77# @FUNCTION: xfconf_src_prepare
75# @DESCRIPTION: 78# @DESCRIPTION:
76# Run base_src_util autopatch and eautoreconf or elibtoolize 79# Run base_src_prepare and eautoreconf or elibtoolize
77xfconf_src_prepare() { 80xfconf_src_prepare() {
81 debug-print-function ${FUNCNAME} "$@"
78 base_src_prepare 82 base_src_prepare
79 83
80 if [[ "${EINTLTOOLIZE}" == "yes" ]]; then 84 if [[ -n $EINTLTOOLIZE ]]; then
81 intltoolize --force --copy --automake || die "intltoolize failed" 85 local _intltoolize="intltoolize --force --copy --automake"
86 ebegin "Running ${_intltoolize}"
87 ${_intltoolize} || die
88 eend $?
82 fi 89 fi
83 90
84 if [[ "${EAUTORECONF}" == "yes" ]]; then 91 if [[ -n $EAUTORECONF ]]; then
85 AT_M4DIR="/usr/share/xfce4/dev-tools/m4macros" eautoreconf 92 AT_M4DIR=${EPREFIX}/usr/share/xfce4/dev-tools/m4macros eautoreconf
86 else 93 else
87 elibtoolize 94 elibtoolize
88 fi 95 fi
89} 96}
90 97
91# @FUNCTION: xfconf_src_configure 98# @FUNCTION: xfconf_src_configure
92# @DESCRIPTION: 99# @DESCRIPTION:
93# Run econf with opts in XFCONF variable 100# Run econf with opts from the XFCONF array
94xfconf_src_configure() { 101xfconf_src_configure() {
102 debug-print-function ${FUNCNAME} "$@"
95 econf ${XFCONF} 103 econf "${XFCONF[@]}"
96}
97
98# @FUNCTION: xfconf_src_compile
99# @DESCRIPTION:
100# Run econf with opts in XFCONF variable
101xfconf_src_compile() {
102 has src_configure ${XFCONF_EXPF} || xfconf_src_configure
103 emake || die "emake failed"
104} 104}
105 105
106# @FUNCTION: xfconf_src_install 106# @FUNCTION: xfconf_src_install
107# @DESCRIPTION: 107# @DESCRIPTION:
108# Run emake install and install documentation in DOCS variable 108# Run emake install and install documentation in the DOCS array
109xfconf_src_install() { 109xfconf_src_install() {
110 emake DESTDIR="${D}" install || die "emake install failed" 110 debug-print-function ${FUNCNAME} "$@"
111 emake DESTDIR="${D}" "$@" install || die
111 112
112 if [[ -n ${DOCS} ]]; then 113 [[ -n ${DOCS[@]} ]] && dodoc "${DOCS[@]}"
113 dodoc ${DOCS} || die "dodoc failed" 114
114 fi 115 find "${ED}" -name '*.la' -exec rm -f {} +
116
117 validate_desktop_entries
115} 118}
116 119
117# @FUNCTION: xfconf_pkg_preinst 120# @FUNCTION: xfconf_pkg_preinst
118# @DESCRIPTION: 121# @DESCRIPTION:
119# Run gnome2_icon_savelist 122# Run gnome2_icon_savelist
120xfconf_pkg_preinst() { 123xfconf_pkg_preinst() {
124 debug-print-function ${FUNCNAME} "$@"
121 gnome2_icon_savelist 125 gnome2_icon_savelist
122} 126}
123 127
124# @FUNCTION: xfconf_pkg_postinst 128# @FUNCTION: xfconf_pkg_postinst
125# @DESCRIPTION: 129# @DESCRIPTION:
126# Run fdo-mime_{desktop,mime}_database_update and gnome2_icon_cache_update 130# Run fdo-mime_{desktop,mime}_database_update and gnome2_icon_cache_update
127xfconf_pkg_postinst() { 131xfconf_pkg_postinst() {
132 debug-print-function ${FUNCNAME} "$@"
128 fdo-mime_desktop_database_update 133 fdo-mime_desktop_database_update
129 fdo-mime_mime_database_update 134 fdo-mime_mime_database_update
130 gnome2_icon_cache_update 135 gnome2_icon_cache_update
131} 136}
132 137
133# @FUNCTION: xfconf_pkg_postrm 138# @FUNCTION: xfconf_pkg_postrm
134# @DESCRIPTION: 139# @DESCRIPTION:
135# Run fdo-mime_{desktop,mime}_database_update and gnome2_icon_cache_update 140# Run fdo-mime_{desktop,mime}_database_update and gnome2_icon_cache_update
136xfconf_pkg_postrm() { 141xfconf_pkg_postrm() {
142 debug-print-function ${FUNCNAME} "$@"
137 fdo-mime_desktop_database_update 143 fdo-mime_desktop_database_update
138 fdo-mime_mime_database_update 144 fdo-mime_mime_database_update
139 gnome2_icon_cache_update 145 gnome2_icon_cache_update
140} 146}

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.35

  ViewVC Help
Powered by ViewVC 1.1.20