Magellan Linux

Contents of /smage/branches/alx07x-unstable/core/gtk2+/gtk2+-2.24.32-r5.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 14859 - (show annotations) (download)
Wed Aug 5 14:03:20 2020 UTC (3 years, 8 months ago) by niro
File size: 5403 byte(s)
-release branches/alx07x-unstable
1 # $Id$
2
3 PNAME="gtk2+"
4 PVER="2.24.32"
5 PBUILD="r5"
6
7 SPLIT_PACKAGES="gtk-update-icon-cache gtk2+ gtk2+-dev"
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="$(marchdepend)
16 >= dev-libs/glib2-2.64
17 >= x11-libs/gdk-pixbuf-2.40"
18
19 GTK_DEPEND=">= x11-libs/libXrender-0.9
20 >= x11-libs/libX11-1.6
21 >= x11-libs/libXi-1.7
22 >= x11-libs/libXt-1.1
23 >= x11-libs/libXext-1.3
24 >= x11-libs/libXcursor-1.1.10
25 >= x11-libs/libXrandr-1.4
26 >= x11-libs/libXfixes-5
27 >= x11-libs/libXinerama-1.1
28 >= x11-libs/libXcomposite-0.4
29 >= x11-libs/libXdamage-1.1
30 >= dev-libs/atk-2.36
31 >= x11-libs/pango-1.40
32 >= x11-libs/cairo-1.16
33 >= sys-libs/libstdc++-8.3"
34
35 # gtk2+-dev runtime deps
36 GTK_DEV_DEPEND=">= dev-libs/glib2-dev-2.64
37 >= x11-libs/gdk-pixbuf-dev-2.40
38 >= x11-libs/libXrender-dev-0.9
39 >= x11-libs/libX11-dev-1.6
40 >= x11-libs/libXi-dev-1.7
41 >= x11-libs/libXt-dev-1.1
42 >= x11-libs/libXext-dev-1.3
43 >= x11-libs/libXcursor-dev-1.1.10
44 >= x11-libs/libXrandr-dev-1.4
45 >= x11-libs/libXfixes-dev-5
46 >= x11-libs/libXinerama-dev-1.1
47 >= x11-libs/libXcomposite-dev-0.4
48 >= x11-libs/libXdamage-dev-1.1
49 >= dev-libs/atk-dev-2.36
50 >= x11-libs/pango-dev-1.40
51 >= x11-libs/cairo-dev-1.16
52 >= sys-libs/libstdc++-dev-8.3"
53
54 SDEPEND="${COMMON_DEPEND}
55 ${GTK_DEPEND}
56 >= dev-util/pkgconfig-0.25
57 >= sys-dev/autoconf-10
58 >= sys-dev/automake-9
59 ${GTK_DEV_DEPEND}"
60
61 SRCFILE="${PNAME/2+/+}-${PVER}.tar.xz"
62 SRCDIR="${BUILDDIR}/${PNAME/2+/+}-${PVER}"
63
64 # simul linux32 to get config things right
65 EMUL_LINUX_32=true
66
67 sminclude multilib mbuild mtools cleanutils
68 msetfeature "!check"
69
70 SRC_URI=(
71 gnome://${PNAME/2+/+}/${PVER%.*}/${SRCFILE}
72 #ftp://ftp.gtk.org/pub/gtk/v${PVER%.*}/${SRCFILE}
73 mirror://${PNAME}/${SRCFILE}
74 )
75
76 #UP2DATE="updatecmd_gnome ${PNAME/2/}"
77 # hardcode 2.24 version
78 UP2DATE="updatecmd http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/ | highesttarball xz"
79
80 # gtk+-2 don't like strong CFLAGS
81 export CFLAGS="${CFLAGS//-O3} -O2"
82 export CXXFLAGS="${CFLAGS}"
83
84 split_info_gtk-update-icon-cache()
85 {
86 DESCRIPTION="The GTK2+ update icon cache tool."
87 DEPEND="${COMMON_DEPEND}"
88 PCAT="x11-apps"
89 }
90
91 split_info_gtk2+()
92 {
93 DESCRIPTION="The gimp toolkit v2.x."
94 DEPEND=">= x11-apps/gtk-update-icon-cache-${PVER}
95 ${GTK_DEPEND}"
96 PCAT="x11-libs"
97 }
98
99 split_info_gtk2+-dev()
100 {
101 DESCRIPTION="Development files for gtk2+."
102 DEPEND="== x11-libs/gtk2+-${PVER}
103 ${GTK_DEV_DEPEND}"
104 PCAT="x11-libs"
105 }
106
107 src_compile()
108 {
109 local myconf
110 [[ ${ARCH} = x86_64 ]] && myconf=--program-suffix=-$(mabi)
111
112 mconfigure \
113 --with-gdktarget=x11 \
114 --with-xinput \
115 --disable-gtk-doc \
116 --disable-introspection \
117 ${myconf} \
118 || die
119
120 # fix issues with --as-needed enabled
121 # see: https://bugzilla.gnome.org/show_bug.cgi?id=655517
122 sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool || die
123
124 mmake || die
125 }
126
127 src_install_gtk-update-icon-cache()
128 {
129 minstalldir /usr/bin || die
130 if [[ ${ARCH} = x86_64 ]]
131 then
132 all-abis minstallexec gtk/gtk-update-icon-cache /usr/bin/gtk-update-icon-cache-$(mabi) || die
133 mlink multiarch-wrapper /usr/bin/gtk-update-icon-cache || die
134 else
135 all-abis minstallexec gtk/gtk-update-icon-cache || die
136 fi
137 }
138
139 src_install_gtk2+()
140 {
141 # needed directories
142 minstalldir /etc/gtk-2.0 || die
143 minstalldir /etc/env.d || die
144
145 mmake DESTDIR=${BINDIR} install || die
146
147 # enable xft in environment
148 echo "GDK_USE_XFT=1" > ${BINDIR}/etc/env.d/50gtk2 || die
149
150 # we regenerate this in the mage-file
151 [ -e ${BINDIR}/etc/gtk-2.0/gtk.immodules ] && rm ${BINDIR}/etc/gtk-2.0/gtk.immodules
152
153 if [[ ${ARCH} = x86_64 ]]
154 then
155 mlink multiarch-wrapper /usr/bin/gtk-query-immodules-2.0 || die
156 mlink multiarch-wrapper /usr/bin/gtk-demo || die
157 mlink multiarch-wrapper /usr/bin/gtk-builder-convert || die
158 fi
159
160 zapmost ${BINDIR} \
161 etc \
162 usr/bin/gtk-update-icon-cache \
163 usr/bin/gtk-query-immodules-2.0 \
164 usr/$(mlibdir)/\*.so.\* \
165 usr/$(mlibdir)/gtk-2.0/2.10.0/engines/\*.so \
166 usr/$(mlibdir)/gtk-2.0/2.10.0/immodules/\*.so \
167 usr/$(mlibdir)/gtk-2.0/2.10.0/printbackends/\*.so \
168 usr/$(mlibdir)/gtk-2.0/modules/\*.so \
169 usr/share/themes \
170 || die
171 }
172
173 src_install_gtk2+-dev()
174 {
175 mmake DESTDIR=${BINDIR} install || die
176
177 mdelete -r /etc || die
178 mdelete /usr/bin/gtk-update-icon-cache || die
179 mdelete /usr/bin/gtk-query-immodules-2.0 || die
180 rm ${BINDIR}/usr/$(mlibdir)/*.so.* || die
181 rm ${BINDIR}/usr/$(mlibdir)/gtk-2.0/2.10.0/engines/*.so || die
182 rm ${BINDIR}/usr/$(mlibdir)/gtk-2.0/2.10.0/immodules/*.so || die
183 rm ${BINDIR}/usr/$(mlibdir)/gtk-2.0/2.10.0/printbackends/*.so || die
184 rm ${BINDIR}/usr/$(mlibdir)/gtk-2.0/modules/*.so || die
185 mdelete -r /usr/share/themes || die
186 }
187
188 preinstall_gtk2+()
189 {
190 add_conf_prot_mask /etc/gtk-2.0 /etc/env.d
191 }
192
193 postinstall_gtk2+()
194 {
195 if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
196 then
197 local confdir
198 if [[ ${ARCH} = x86_64 ]]
199 then
200 # generate gtk-modules for i686
201 confdir=/etc/gtk-2.0/i686-pc-linux-gnu
202 install -d ${confdir}
203 gtk-query-immodules-2.0-m32 > ${confdir}/gtk.immodules
204 # remove old pixbuf loaders, now in an extra package
205 if [[ -f ${confdir}/gdk-pixbuf.loaders ]]
206 then
207 rm ${confdir}/gdk-pixbuf.loaders
208 fi
209 fi
210 confdir=/etc/gtk-2.0/${CHOST}
211 install -d ${confdir}
212 gtk-query-immodules-2.0 > ${confdir}/gtk.immodules
213 # remove old pixbuf loaders, now in an extra package
214 if [[ -f ${confdir}/gdk-pixbuf.loaders ]]
215 then
216 rm ${confdir}/gdk-pixbuf.loaders
217 fi
218 fi
219 }