Magellan Linux

Contents of /trunk/core/gtk2+/gtk2+-2.24.10-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 11477 - (show annotations) (download)
Sat Mar 10 19:20:26 2012 UTC (12 years, 3 months ago) by niro
File size: 3881 byte(s)
-split package, prepare for gtk3+ compat
1 # $Id$
2
3 PNAME="gtk2+"
4 PVER="2.24.10"
5 PBUILD="r2"
6
7 SPLIT_PACKAGES="gtk-update-icon-cache gtk2+"
8
9 PCAT="x11-libs"
10 HOMEPAGE="http://www.gtk.org/"
11
12 DEPEND_x86_64=">= sys-apps/multiarch-wrapper-1"
13 SPECIAL_VARS="DEPEND_x86_64"
14
15 COMMON_DEPEND="\$(eval echo \\\$DEPEND_\${ARCH/i*86/x86} | tr ';' '\n')
16 >= dev-libs/glib2-2.30
17 >= x11-libs/gdk-pixbuf-2.24"
18
19 GTK_DEPEND=">= x11-libs/libXrender-0.9
20 >= x11-libs/libX11-1.4
21 >= x11-libs/libXi-1.4
22 >= x11-libs/libXt-1.1
23 >= x11-libs/libXext-1.3
24 >= x11-libs/libXcursor-1.1.10
25 >= x11-libs/libXrandr-1.3
26 >= x11-libs/libXfixes-5
27 >= x11-libs/libXinerama-1.1
28 >= x11-libs/libXcomposite-0.4
29 >= dev-libs/atk-2.2
30 >= x11-libs/pango-1.28
31 >= x11-libs/cairo-1.10
32 >= sys-libs/libstdc++-4.6"
33
34 SDEPEND="${COMMON_DEPEND}
35 ${GTK_DEPEND}
36 >= dev-util/pkgconfig-0.25
37 >= sys-dev/autoconf-4
38 >= sys-dev/automake-3
39 >= dev-libs/gobject-introspection-1.30"
40
41 SRCFILE="${PNAME/2+/+}-${PVER}.tar.xz"
42 SRCDIR="${BUILDDIR}/${PNAME/2+/+}-${PVER}"
43
44 # simul linux32 to get config things right
45 EMUL_LINUX_32=true
46
47 sminclude multilib mtools
48 msetfeature "!check"
49
50 SRC_URI=(
51 gnome://${PNAME/2+/+}/${PVER%.*}/${SRCFILE}
52 ftp://ftp.gtk.org/pub/gtk/v${PVER%.*}/${SRCFILE}
53 mirror://${PNAME}/${SRCFILE}
54 mirror://${PNAME}/${PNAME}-2.24.7-multilib.patch
55 mirror://${PNAME}/${PNAME}-2.24.7-limit-gtksignal-includes.patch
56 )
57
58 UP2DATE="updatecmd_gnome ${PNAME/2/}"
59
60 # gtk+-2 don't like strong CFLAGS
61 export CFLAGS="${CFLAGS//-O3} -O2"
62 export CXXFLAGS="${CFLAGS}"
63
64 split_info_gtk-update-icon-cache()
65 {
66 DESCRIPTION="The GTK2+ update icon cache tool."
67 DEPEND="${COMMON_DEPEND}"
68 PCAT="x11-apps"
69 }
70
71 split_info_gtk2+()
72 {
73 DESCRIPTION="The gimp toolkit v2.x."
74 DEPEND=">= x11-apps/gtk-update-icon-cache-${PVER}
75 ${GTK_DEPEND}"
76 PCAT="x11-libs"
77 }
78
79 src_prepare()
80 {
81 munpack ${SRCFILE} || die
82
83 # fix multilib issues with pixbuf loaders
84 # patch adds the host-triplet to the config search path
85 mpatch ${PNAME}-2.24.7-multilib.patch || die
86
87 # add missing signal header for compat reasons
88 mpatch ${PNAME}-2.24.7-limit-gtksignal-includes.patch || die
89 }
90
91 src_compile()
92 {
93 local myconf
94 [[ ${ARCH} = x86_64 ]] && myconf=--program-suffix=-$(mabi)
95
96 mconfigure \
97 --with-gdktarget=x11 \
98 --with-xinput \
99 --disable-gtk-doc \
100 --enable-introspection \
101 ${myconf} \
102 || die
103
104 mmake || die
105 }
106
107 src_install_gtk-update-icon-cache()
108 {
109 minstalldir /usr/bin || die
110
111 if [[ ${ARCH} = x86_64 ]]
112 then
113 all-abis minstallexec gtk/gtk-update-icon-cache /usr/bin/gtk-update-icon-cache-$(mabi) || die
114 mlink multiarch-wrapper /usr/bin/gtk-update-icon-cache || die
115 else
116 minstallexec gtk/gtk-update-icon-cache || die
117 fi
118 }
119
120 src_install_gtk2+()
121 {
122 # needed directories
123 minstalldir /etc/gtk-2.0 || die
124 minstalldir /etc/env.d || die
125
126 minstall_destdir || die
127
128 # enable xft in environment
129 echo "GDK_USE_XFT=1" > ${BINDIR}/etc/env.d/50gtk2 || die
130
131 # we regenerate this in the mage-file
132 [ -e ${BINDIR}/etc/gtk-2.0/gtk.immodules ] && rm ${BINDIR}/etc/gtk-2.0/gtk.immodules
133
134 if [[ ${ARCH} = x86_64 ]]
135 then
136 mlink multiarch-wrapper /usr/bin/gtk-query-immodules-2.0 || die
137 mlink multiarch-wrapper /usr/bin/gtk-demo || die
138 mlink multiarch-wrapper /usr/bin/gtk-builder-convert || die
139 fi
140 }
141
142 postinstall_gtk2+()
143 {
144 if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
145 then
146 local confdir
147 if [[ ${ARCH} = x86_64 ]]
148 then
149 # generate gtk-modules for i686
150 confdir=/etc/gtk-2.0/i686-pc-linux-gnu
151 install -d ${confdir}
152 gtk-query-immodules-2.0-m32 > ${confdir}/gtk.immodules
153 # remove old pixbuf loaders, now in an extra package
154 if [[ -f ${confdir}/gdk-pixbuf.loaders ]]
155 then
156 rm ${confdir}/gdk-pixbuf.loaders
157 fi
158 fi
159 confdir=/etc/gtk-2.0/${CHOST}
160 install -d ${confdir}
161 gtk-query-immodules-2.0 > ${confdir}/gtk.immodules
162 # remove old pixbuf loaders, now in an extra package
163 if [[ -f ${confdir}/gdk-pixbuf.loaders ]]
164 then
165 rm ${confdir}/gdk-pixbuf.loaders
166 fi
167 fi
168 }