| 1 | # Copyright 1999-2004 Gentoo Foundation |
1 | # Copyright 1999-2004 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/gnome2.eclass,v 1.64 2006/03/17 14:43:32 allanonjl Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/gnome2.eclass,v 1.70 2006/04/23 15:21:46 allanonjl Exp $ |
| 4 | |
4 | |
| 5 | # GNOME 2 ECLASS |
5 | # GNOME 2 ECLASS |
| 6 | inherit libtool gnome.org debug fdo-mime eutils |
6 | inherit libtool gnome.org debug fdo-mime eutils |
| 7 | |
7 | |
| 8 | # Extra configure opts passed to econf |
8 | # Extra configure opts passed to econf |
| … | |
… | |
| 26 | # Path to gconftool-2 |
26 | # Path to gconftool-2 |
| 27 | GCONFTOOL_BIN=${GCONFTOOL_BIN:="${ROOT}/usr/bin/gconftool-2"} |
27 | GCONFTOOL_BIN=${GCONFTOOL_BIN:="${ROOT}/usr/bin/gconftool-2"} |
| 28 | |
28 | |
| 29 | IUSE="debug" |
29 | IUSE="debug" |
| 30 | |
30 | |
| 31 | DEPEND=">=sys-apps/sed-4 |
31 | DEPEND=">=sys-apps/sed-4" |
| 32 | sys-apps/findutils" |
|
|
| 33 | |
32 | |
| 34 | gnome2_src_unpack() { |
33 | gnome2_src_unpack() { |
| 35 | unpack ${A} |
34 | unpack ${A} |
| 36 | cd ${S} |
35 | cd ${S} |
| 37 | |
36 | |
| … | |
… | |
| 45 | G2CONF="${G2CONF} $(use_enable doc gtk-doc)" |
44 | G2CONF="${G2CONF} $(use_enable doc gtk-doc)" |
| 46 | |
45 | |
| 47 | # Run libtoolize |
46 | # Run libtoolize |
| 48 | elibtoolize ${ELTCONF} |
47 | elibtoolize ${ELTCONF} |
| 49 | |
48 | |
|
|
49 | # Do not remove the addwrite. bug #128289 |
|
|
50 | addwrite "${ROOT}/root/.gnome2" |
|
|
51 | |
| 50 | # GST_REGISTRY is to work around gst-inspect trying to read/write /root |
52 | # GST_REGISTRY is to work around gst-inspect trying to read/write /root |
| 51 | GST_REGISTRY="${S}/registry.xml" econf "$@" ${G2CONF} || die "configure failed" |
53 | GST_REGISTRY="${S}/registry.xml" econf "$@" ${G2CONF} || die "configure failed" |
| 52 | } |
54 | } |
| 53 | |
55 | |
| 54 | gnome2_src_compile() { |
56 | gnome2_src_compile() { |
| … | |
… | |
| 64 | # we must delay gconf schema installation due to sandbox |
66 | # we must delay gconf schema installation due to sandbox |
| 65 | export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL="1" |
67 | export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL="1" |
| 66 | |
68 | |
| 67 | debug-print "You are testing with DESTDIR by default - AllanonJL" |
69 | debug-print "You are testing with DESTDIR by default - AllanonJL" |
| 68 | if [[ -z "${USE_EINSTALL}" || "${USE_EINSTALL}" = "0" ]]; then |
70 | if [[ -z "${USE_EINSTALL}" || "${USE_EINSTALL}" = "0" ]]; then |
| 69 | make DESTDIR=${D} "$@" install || die "install failed" |
71 | make DESTDIR=${D} "scrollkeeper_localstate_dir=${D}${SCROLLKEEPER_DIR} " "$@" install || die "install failed" |
| 70 | else |
72 | else |
| 71 | einstall "scrollkeeper_localstate_dir=${D}${SCROLLKEEPER_DIR} " "$@" || die "einstall failed" |
73 | einstall "scrollkeeper_localstate_dir=${D}${SCROLLKEEPER_DIR} " "$@" || die "einstall failed" |
| 72 | fi |
74 | fi |
| 73 | |
75 | |
| 74 | unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL |
76 | unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL |
| … | |
… | |
| 175 | done |
177 | done |
| 176 | |
178 | |
| 177 | eend ${retval} |
179 | eend ${retval} |
| 178 | |
180 | |
| 179 | for (( i = 0 ; i < ${#fails[@]} ; i++ )) ; do |
181 | for (( i = 0 ; i < ${#fails[@]} ; i++ )) ; do |
|
|
182 | ### HACK!! This is needed until bash 3.1 is unmasked. |
|
|
183 | ## The current stable version of bash lists the sizeof fails to be 1 |
|
|
184 | ## when there are no elements in the list because it is declared local. |
|
|
185 | ## In order to prevent the declaration from being in global scope, we |
|
|
186 | ## this hack to prevent an empty error message being printed for stable |
|
|
187 | ## users. -- compnerd && allanonjl |
|
|
188 | if [[ "${fails[i]}" != "" && "${fails[i]}" != "()" ]] ; then |
| 180 | eerror "Failed to update cache with icon ${fails[i]}" |
189 | eerror "Failed to update cache with icon ${fails[i]}" |
|
|
190 | fi |
| 181 | done |
191 | done |
| 182 | } |
192 | } |
| 183 | |
193 | |
| 184 | gnome2_omf_fix() { |
194 | gnome2_omf_fix() { |
| 185 | # workaround/patch against omf.make or omf-install/Makefile.in |
195 | # workaround/patch against omf.make or omf-install/Makefile.in |
| … | |
… | |
| 204 | |
214 | |
| 205 | # testing fixing of all makefiles found |
215 | # testing fixing of all makefiles found |
| 206 | for filename in $(find ./ -name "Makefile.in" -o -name "Makefile.am") ; do |
216 | for filename in $(find ./ -name "Makefile.in" -o -name "Makefile.am") ; do |
| 207 | omf_makefiles="${omf_makefiles} ${filename}" |
217 | omf_makefiles="${omf_makefiles} ${filename}" |
| 208 | done |
218 | done |
| 209 | |
219 | |
| 210 | ebegin "Fixing OMF Makefiles" |
220 | ebegin "Fixing OMF Makefiles" |
| 211 | |
221 | |
| 212 | local retval=0 |
222 | local retval=0 |
| 213 | local fails=( ) |
223 | local fails=( ) |
| 214 | |
224 | |
| … | |
… | |
| 229 | done |
239 | done |
| 230 | |
240 | |
| 231 | eend $retval |
241 | eend $retval |
| 232 | |
242 | |
| 233 | for (( i = 0 ; i < ${#fails[@]} ; i++ )) ; do |
243 | for (( i = 0 ; i < ${#fails[@]} ; i++ )) ; do |
|
|
244 | ### HACK!! This is needed until bash 3.1 is unmasked. |
|
|
245 | ## The current stable version of bash lists the sizeof fails to be 1 |
|
|
246 | ## when there are no elements in the list because it is declared local. |
|
|
247 | ## In order to prevent the declaration from being in global scope, we |
|
|
248 | ## this hack to prevent an empty error message being printed for stable |
|
|
249 | ## users. -- compnerd && allanonjl |
|
|
250 | if [[ "${fails[i]}" != "" && "${fails[i]}" != "()" ]] ; then |
| 234 | eerror "Failed to update OMF Makefile ${fails[i]}" |
251 | eerror "Failed to update OMF Makefile ${fails[i]}" |
|
|
252 | fi |
| 235 | done |
253 | done |
| 236 | } |
254 | } |
| 237 | |
255 | |
| 238 | gnome2_scrollkeeper_update() { |
256 | gnome2_scrollkeeper_update() { |
| 239 | if [[ -x ${SCROLLKEEPER_UPDATE_BIN} && "${SCROLLKEEPER_UPDATE}" = "1" ]] |
257 | if [[ -x ${SCROLLKEEPER_UPDATE_BIN} && "${SCROLLKEEPER_UPDATE}" = "1" ]] |