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

Diff of /eclass/xfconf.eclass

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

Revision 1.25 Revision 1.37
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.25 2011/04/09 09:15:51 ssuominen Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/xfconf.eclass,v 1.37 2011/10/15 21:08:59 ssuominen 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
20# @ECLASS-VARIABLE: DOCS
21# @DESCRIPTION:
22# Define documentation to install
23
24# @ECLASS-VARIABLE: PATCHES
25# @DESCRIPTION:
26# Define patches to apply
27 19
28# @ECLASS-VARIABLE: XFCONF 20# @ECLASS-VARIABLE: XFCONF
29# @DESCRIPTION: 21# @DESCRIPTION:
30# Define options for econf 22# This should be an array defining arguments for econf
31 23
32inherit autotools base eutils fdo-mime gnome2-utils libtool 24unset _xfconf_live
25[[ $PV == *9999* ]] && _xfconf_live=git-2
33 26
34if ! [[ ${MY_P} ]]; then 27inherit ${_xfconf_live} autotools base eutils fdo-mime gnome2-utils libtool
35 MY_P=${P}
36else
37 S=${WORKDIR}/${MY_P}
38fi
39 28
40SRC_URI="mirror://xfce/xfce/${PV}/src/${MY_P}.tar.bz2" 29EGIT_BOOTSTRAP="autogen.sh"
30EGIT_REPO_URI="git://git.xfce.org/xfce/${MY_PN:-${PN}}"
41 31
42if [[ "${EINTLTOOLIZE}" == "yes" ]]; then 32_xfconf_deps=""
43 _xfce4_intltool="dev-util/intltool" 33_xfconf_m4=">=dev-util/xfce4-dev-tools-4.8.0"
44fi
45 34
46if [[ "${EAUTORECONF}" == "yes" ]]; then 35[[ -n $_xfconf_live ]] && _xfconf_deps+=" dev-util/gtk-doc ${_xfconf_m4}"
47 _xfce4_m4=">=dev-util/xfce4-dev-tools-4.8.0" 36[[ -n $EINTLTOOLIZE ]] && _xfconf_deps+=" dev-util/intltool"
48fi 37[[ -n $EAUTORECONF ]] && _xfconf_deps+=" ${_xfconf_m4}"
49 38
50RDEPEND="" 39RDEPEND=""
51DEPEND="${_xfce4_intltool} 40DEPEND="${_xfconf_deps}"
52 ${_xfce4_m4}"
53 41
54unset _xfce4_intltool 42unset _xfconf_deps
55unset _xfce4_m4 43unset _xfconf_m4
56 44
57case ${EAPI:-0} in 45case ${EAPI:-0} in
58 4|3) ;; 46 4) ;;
59 *) die "Unknown EAPI." ;; 47 *) die "Unknown EAPI." ;;
60esac 48esac
61 49
50[[ -n $_xfconf_live ]] && _xfconf_live=src_unpack
51
62EXPORT_FUNCTIONS src_prepare src_configure src_install pkg_preinst pkg_postinst pkg_postrm 52EXPORT_FUNCTIONS ${_xfconf_live} src_prepare src_configure src_install pkg_preinst pkg_postinst pkg_postrm
63 53
64# @FUNCTION: xfconf_use_debug 54# @FUNCTION: xfconf_use_debug
65# @DESCRIPTION: 55# @DESCRIPTION:
66# If IUSE has debug, return --enable-debug=minimum. 56# If IUSE has debug, return --enable-debug=minimum.
67# If USE debug is enabled, return --enable-debug which is same as --enable-debug=yes. 57# If USE debug is enabled, return --enable-debug which is the same as --enable-debug=yes.
68# If USE debug is enabled and XFCONF_FULL_DEBUG variable is set, return --enable-debug=full. 58# If USE debug is enabled and the XFCONF_FULL_DEBUG variable is set, return --enable-debug=full.
69xfconf_use_debug() { 59xfconf_use_debug() {
70 if has debug ${IUSE}; then 60 if has debug ${IUSE}; then
71 if use debug; then 61 if use debug; then
72 if [[ -n $XFCONF_FULL_DEBUG ]]; then 62 if [[ -n $XFCONF_FULL_DEBUG ]]; then
73 echo "--enable-debug=full" 63 echo "--enable-debug=full"
75 echo "--enable-debug" 65 echo "--enable-debug"
76 fi 66 fi
77 else 67 else
78 echo "--enable-debug=minimum" 68 echo "--enable-debug=minimum"
79 fi 69 fi
70 else
71 ewarn "${FUNCNAME} called without debug in IUSE"
80 fi 72 fi
73}
74
75# @FUNCTION: xfconf_src_unpack
76# @DESCRIPTION:
77# Run git-2_src_unpack if required
78xfconf_src_unpack() {
79 NOCONFIGURE=1 git-2_src_unpack
81} 80}
82 81
83# @FUNCTION: xfconf_src_prepare 82# @FUNCTION: xfconf_src_prepare
84# @DESCRIPTION: 83# @DESCRIPTION:
85# Run base_src_util autopatch and eautoreconf or elibtoolize 84# Run base_src_prepare and eautoreconf or elibtoolize
86xfconf_src_prepare() { 85xfconf_src_prepare() {
87 debug-print-function ${FUNCNAME} "$@" 86 debug-print-function ${FUNCNAME} "$@"
88 base_src_prepare 87 base_src_prepare
89 88
90 if [[ "${EINTLTOOLIZE}" == "yes" ]]; then 89 if [[ -n $EINTLTOOLIZE ]]; then
91 intltoolize --force --copy --automake || die 90 local _intltoolize="intltoolize --force --copy --automake"
91 ebegin "Running ${_intltoolize}"
92 ${_intltoolize} || die
93 eend $?
92 fi 94 fi
93 95
94 if [[ "${EAUTORECONF}" == "yes" ]]; then 96 if [[ -n $EAUTORECONF ]]; then
95 AT_M4DIR="${EPREFIX}/usr/share/xfce4/dev-tools/m4macros" eautoreconf 97 AT_M4DIR=${EPREFIX}/usr/share/xfce4/dev-tools/m4macros eautoreconf
96 else 98 else
97 elibtoolize 99 elibtoolize
98 fi 100 fi
99} 101}
100 102
101# @FUNCTION: xfconf_src_configure 103# @FUNCTION: xfconf_src_configure
102# @DESCRIPTION: 104# @DESCRIPTION:
103# Run econf with opts in XFCONF array 105# Run econf with opts from the XFCONF array
104xfconf_src_configure() { 106xfconf_src_configure() {
105 debug-print-function ${FUNCNAME} "$@" 107 debug-print-function ${FUNCNAME} "$@"
106 108 [[ -n $_xfconf_live ]] && XFCONF+=( --enable-maintainer-mode )
107 # Convert XFCONF to an array, see base.eclass for original code
108 if [[ "$(declare -p XFCONF 2>/dev/null 2>&1)" != "declare -a"* ]]; then
109 XFCONF=( ${XFCONF} )
110 fi
111
112 econf ${XFCONF[@]} 109 econf "${XFCONF[@]}"
113} 110}
114 111
115# @FUNCTION: xfconf_src_install 112# @FUNCTION: xfconf_src_install
116# @DESCRIPTION: 113# @DESCRIPTION:
117# Run emake install and install documentation in DOCS variable 114# Run emake install and install documentation in the DOCS array
118xfconf_src_install() { 115xfconf_src_install() {
119 debug-print-function ${FUNCNAME} "$@" 116 debug-print-function ${FUNCNAME} "$@"
120 emake DESTDIR="${D}" "$@" install || die
121 117
122 if [[ -n ${DOCS} ]]; then 118 # FIXME
123 dodoc ${DOCS} || die 119 if [[ -n $_xfconf_live ]] && ! [[ -e ChangeLog ]]; then
120 touch ChangeLog
124 fi 121 fi
122
123 base_src_install "$@" || die
125 124
126 find "${ED}" -name '*.la' -exec rm -f {} + 125 find "${ED}" -name '*.la' -exec rm -f {} +
127 126
128 validate_desktop_entries 127 validate_desktop_entries
129} 128}

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.37

  ViewVC Help
Powered by ViewVC 1.1.20