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

Diff of /eclass/gnome2.eclass

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

Revision 1.97 Revision 1.106
1# Copyright 1999-2011 Gentoo Foundation 1# Copyright 1999-2012 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.97 2011/07/08 11:35:01 ssuominen Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/gnome2.eclass,v 1.106 2012/05/09 08:23:14 pacho Exp $
4 4
5# @ECLASS: gnome2.eclass 5# @ECLASS: gnome2.eclass
6# @MAINTAINER: 6# @MAINTAINER:
7# gnome@gentoo.org 7# gnome@gentoo.org
8# @BLURB: 8# @BLURB:
83 has ${EAPI:-0} 0 1 && gnome2_src_prepare 83 has ${EAPI:-0} 0 1 && gnome2_src_prepare
84} 84}
85 85
86# @FUNCTION: gnome2_src_prepare 86# @FUNCTION: gnome2_src_prepare
87# @DESCRIPTION: 87# @DESCRIPTION:
88# Fix build of scrollkeeper documentation and run elibtoolize. 88# Prepare environment for build, fix build of scrollkeeper documentation,
89# run elibtoolize.
89gnome2_src_prepare() { 90gnome2_src_prepare() {
91 # Prevent assorted access violations and test failures
92 gnome2_environment_reset
93
90 # Prevent scrollkeeper access violations 94 # Prevent scrollkeeper access violations
91 gnome2_omf_fix 95 gnome2_omf_fix
92 96
93 # Run libtoolize 97 # Run libtoolize
94 if has ${EAPI:-0} 0 1 2 3; then 98 if has ${EAPI:-0} 0 1 2 3; then
111 fi 115 fi
112 fi 116 fi
113 117
114 # Prevent a QA warning 118 # Prevent a QA warning
115 if has doc ${IUSE} ; then 119 if has doc ${IUSE} ; then
116 G2CONF="${G2CONF} $(use_enable doc gtk-doc)" 120 grep -q "enable-gtk-doc" configure && G2CONF="${G2CONF} $(use_enable doc gtk-doc)"
117 fi 121 fi
118 122
119 # Avoid sandbox violations caused by misbehaving packages (bug #128289) 123 # Pass --disable-maintainer-mode when needed
120 addwrite "/root/.gnome2" 124 if grep -q "^[[:space:]]*AM_MAINTAINER_MODE(\[enable\])" configure.*; then
125 G2CONF="${G2CONF} --disable-maintainer-mode"
126 fi
121 127
122 # GST_REGISTRY is to work around gst-inspect trying to read/write /root 128 # Pass --disable-scrollkeeper when possible
123 GST_REGISTRY="${S}/registry.xml" econf "$@" ${G2CONF} 129 if grep -q "disable-scrollkeeper" configure; then
130 G2CONF="${G2CONF} --disable-scrollkeeper"
131 fi
132
133 # Avoid sandbox violations caused by gnome-vfs (bug #128289 and #345659)
134 addwrite "$(unset HOME; echo ~)/.gnome2"
135
136 econf "$@" ${G2CONF}
124} 137}
125 138
126# @FUNCTION: gnome2_src_compile 139# @FUNCTION: gnome2_src_compile
127# @DESCRIPTION: 140# @DESCRIPTION:
128# Stub function for old EAPI. 141# Stub function for old EAPI.
162 175
163 # Do not keep /var/lib/scrollkeeper because: 176 # Do not keep /var/lib/scrollkeeper because:
164 # 1. The scrollkeeper database is regenerated at pkg_postinst() 177 # 1. The scrollkeeper database is regenerated at pkg_postinst()
165 # 2. ${ED}/var/lib/scrollkeeper contains only indexes for the current pkg 178 # 2. ${ED}/var/lib/scrollkeeper contains only indexes for the current pkg
166 # thus it makes no sense if pkg_postinst ISN'T run for some reason. 179 # thus it makes no sense if pkg_postinst ISN'T run for some reason.
167 if [[ -z "$(find "${D}" -name '*.omf')" ]]; then
168 export SCROLLKEEPER_UPDATE="0"
169 fi
170 rm -rf "${ED}${sk_tmp_dir}" 180 rm -rf "${ED}${sk_tmp_dir}"
181 rmdir "${ED}/var/lib" 2>/dev/null
182 rmdir "${ED}/var" 2>/dev/null
171 183
172 # Make sure this one doesn't get in the portage db 184 # Make sure this one doesn't get in the portage db
173 rm -fr "${ED}/usr/share/applications/mimeinfo.cache" 185 rm -fr "${ED}/usr/share/applications/mimeinfo.cache"
174 186
175 # Delete all .la files 187 # Delete all .la files
176 if [[ "${GNOME2_LA_PUNT}" != "no" ]]; then 188 if [[ "${GNOME2_LA_PUNT}" != "no" ]]; then
177 ebegin "Removing .la files" 189 ebegin "Removing .la files"
190 if ! { has static-libs ${IUSE//+} && use static-libs; }; then
178 find "${D}" -name '*.la' -exec rm -f {} + || die "la file removal failed" 191 find "${D}" -name '*.la' -exec rm -f {} + || die "la file removal failed"
192 fi
179 eend 193 eend
180 fi 194 fi
181} 195}
182 196
183# @FUNCTION: gnome2_pkg_preinst 197# @FUNCTION: gnome2_pkg_preinst
185# Finds Icons, GConf and GSettings schemas for later handling in pkg_postinst 199# Finds Icons, GConf and GSettings schemas for later handling in pkg_postinst
186gnome2_pkg_preinst() { 200gnome2_pkg_preinst() {
187 gnome2_gconf_savelist 201 gnome2_gconf_savelist
188 gnome2_icon_savelist 202 gnome2_icon_savelist
189 gnome2_schemas_savelist 203 gnome2_schemas_savelist
204 gnome2_scrollkeeper_savelist
190} 205}
191 206
192# @FUNCTION: gnome2_pkg_postinst 207# @FUNCTION: gnome2_pkg_postinst
193# @DESCRIPTION: 208# @DESCRIPTION:
194# Handle scrollkeeper, GConf, GSettings, Icons, desktop and mime 209# Handle scrollkeeper, GConf, GSettings, Icons, desktop and mime
197 gnome2_gconf_install 212 gnome2_gconf_install
198 fdo-mime_desktop_database_update 213 fdo-mime_desktop_database_update
199 fdo-mime_mime_database_update 214 fdo-mime_mime_database_update
200 gnome2_icon_cache_update 215 gnome2_icon_cache_update
201 gnome2_schemas_update 216 gnome2_schemas_update
202
203 if [[ "${SCROLLKEEPER_UPDATE}" = "1" ]]; then
204 gnome2_scrollkeeper_update 217 gnome2_scrollkeeper_update
205 fi
206} 218}
207 219
208# @#FUNCTION: gnome2_pkg_prerm 220# @#FUNCTION: gnome2_pkg_prerm
209# @#DESCRIPTION: 221# @#DESCRIPTION:
210# # FIXME Handle GConf schemas removal 222# # FIXME Handle GConf schemas removal
217# Handle scrollkeeper, GSettings, Icons, desktop and mime database updates. 229# Handle scrollkeeper, GSettings, Icons, desktop and mime database updates.
218gnome2_pkg_postrm() { 230gnome2_pkg_postrm() {
219 fdo-mime_desktop_database_update 231 fdo-mime_desktop_database_update
220 fdo-mime_mime_database_update 232 fdo-mime_mime_database_update
221 gnome2_icon_cache_update 233 gnome2_icon_cache_update
222 gnome2_schemas_update --uninstall 234 gnome2_schemas_update
223
224 if [[ "${SCROLLKEEPER_UPDATE}" = "1" ]]; then
225 gnome2_scrollkeeper_update 235 gnome2_scrollkeeper_update
226 fi
227} 236}

Legend:
Removed from v.1.97  
changed lines
  Added in v.1.106

  ViewVC Help
Powered by ViewVC 1.1.20