1 |
# Copyright 1999-2003 Gentoo Technologies, Inc. |
2 |
# Distributed under the terms of the GNU General Public License v2 |
3 |
# $Header: /home/cvsroot/gentoo-x86/eclass/gnome2.eclass,v 1.28 2003/02/24 23:23:56 liquidx Exp $ |
4 |
# |
5 |
# Authors: |
6 |
# Bruce A. Locke <blocke@shivan.org> |
7 |
# Spidler <spidler@gentoo.org> |
8 |
|
9 |
inherit libtool gnome.org |
10 |
|
11 |
if [ -n "$DEBUG" ] |
12 |
then |
13 |
inherit debug |
14 |
fi |
15 |
|
16 |
# Gnome 2 ECLASS |
17 |
ECLASS="gnome2" |
18 |
INHERITED="$INHERITED $ECLASS" |
19 |
G2CONF="" |
20 |
|
21 |
if [ -n "$DEBUG" ]; then |
22 |
G2CONF="${G2CONF} --enable-debug=yes" |
23 |
fi |
24 |
|
25 |
ELTCONF="" |
26 |
SCROLLKEEPER_UPDATE="1" |
27 |
|
28 |
|
29 |
gnome2_src_configure() { |
30 |
elibtoolize ${ELTCONF} |
31 |
# doc keyword for gtk-doc |
32 |
use doc && G2CONF="${G2CONF} --enable-gtk-doc" || G2CONF="${G2CONF} --disable-gtk-doc" |
33 |
|
34 |
econf ${@} ${G2CONF} || die "./configure failure" |
35 |
|
36 |
} |
37 |
|
38 |
gnome2_src_compile() { |
39 |
|
40 |
gnome2_src_configure ${@} |
41 |
emake || die "compile failure" |
42 |
|
43 |
} |
44 |
|
45 |
gnome2_src_install() { |
46 |
|
47 |
# if this is not present, scrollkeeper-update may segfault and |
48 |
# create bogus directories in /var/lib/ |
49 |
[ -x ${ROOT}/bin/wc ] && dodir /var/lib/scrollkeeper |
50 |
|
51 |
# we must delay gconf schema installation due to sandbox |
52 |
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL="1" |
53 |
|
54 |
einstall " scrollkeeper_localstate_dir=${D}/var/lib/scrollkeeper/ " ${@} |
55 |
|
56 |
unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL |
57 |
|
58 |
# manual document installation |
59 |
if [ -n "${DOCS}" ] |
60 |
then |
61 |
dodoc ${DOCS} |
62 |
fi |
63 |
|
64 |
# if empty, remove |
65 |
[ -x ${ROOT}/bin/wc ] && [ `ls -al ${D}/var/lib/scrollkeeper | wc -l` -eq 3 ] && \ |
66 |
rm -rf ${D}/var/lib/scrollkeeper |
67 |
# only update scrollkeeper if this package needs it |
68 |
[ ! -d ${D}/var/lib/scrollkeeper ] && SCROLLKEEPER_UPDATE="0" |
69 |
} |
70 |
|
71 |
|
72 |
gnome2_gconf_install() { |
73 |
if [ -x ${ROOT}/usr/bin/gconftool-2 ] |
74 |
then |
75 |
unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL |
76 |
export GCONF_CONFIG_SOURCE=`${ROOT}/usr/bin/gconftool-2 --get-default-source` |
77 |
einfo "installing gnome2 gconf schemas" |
78 |
cat ${ROOT}/var/db/pkg/*/${PN}-${PVR}/CONTENTS | grep "obj /etc/gconf/schemas" | sed 's:obj \([^ ]*\) .*:\1:' |while read F; do |
79 |
echo "DEBUG::gconf install ${F}" |
80 |
${ROOT}/usr/bin/gconftool-2 --makefile-install-rule ${F} |
81 |
done |
82 |
fi |
83 |
# schema installation |
84 |
} |
85 |
|
86 |
gnome2_pkg_postinst() { |
87 |
gnome2_gconf_install |
88 |
|
89 |
if [ -x ${ROOT}/usr/bin/scrollkeeper-update ] && [ "${SCROLLKEEPER_UPDATE}" = "1" ] |
90 |
then |
91 |
echo ">>> Updating Scrollkeeper" |
92 |
scrollkeeper-update -p ${ROOT}/var/lib/scrollkeeper |
93 |
fi |
94 |
} |
95 |
|
96 |
EXPORT_FUNCTIONS src_compile src_install pkg_postinst |
97 |
|
98 |
|