Annotation of /branches/magellan-next/core/xorg-server/xorg-server-1.11.2-r2.smage2
Parent Directory | Revision Log
Revision 9504 -
(hide annotations)
(download)
Sun Dec 4 18:33:43 2011 UTC (12 years, 6 months ago) by niro
File size: 10233 byte(s)
Sun Dec 4 18:33:43 2011 UTC (12 years, 6 months ago) by niro
File size: 10233 byte(s)
-rebuild against mesa-7.11.2 and some split-package fixes
1 | niro | 9504 | # $Id$ |
2 | |||
3 | PNAME="xorg-server" | ||
4 | PVER="1.11.2" | ||
5 | PBUILD="r2" | ||
6 | |||
7 | PCATEGORIE="x11-base" | ||
8 | |||
9 | #DESCRIPTION="Modular X.Org X Server." | ||
10 | HOMEPAGE="http://xorg.freedesktop.org" | ||
11 | |||
12 | sminclude xorg mtools | ||
13 | |||
14 | # mesa sources are needed to compile opengl extensions | ||
15 | MESA_PVER="7.11.2" | ||
16 | MESA_SRCFILE="MesaLib-${MESA_PVER/_/-}.tar.gz" | ||
17 | MESA_SRCDIR="${BUILDDIR}/MesaLib-${MESA_PVER/_/-}" | ||
18 | |||
19 | PROVIDE="virtual/x11" | ||
20 | |||
21 | # common depends | ||
22 | COMMON_DEPEND=">= x11-libs/libXfont-1.4 | ||
23 | >= x11-libs/libXau-1.0.6 | ||
24 | >= x11-libs/libXdmcp-1.1 | ||
25 | >= x11-libs/pixman-0.22 | ||
26 | >= media-libs/freetype-2.4 | ||
27 | >= media-fonts/font-misc-misc-1 | ||
28 | >= media-fonts/font-cursor-misc-1 | ||
29 | >= app-crypt/libgcrypt-1.4.6 | ||
30 | >= app-crypt/libgpg-error-1.9 | ||
31 | >= sys-fs/udev-170" | ||
32 | |||
33 | # rundepends | ||
34 | SDEPEND="${COMMON_DEPEND} | ||
35 | >= x11-libs/libXext-1.3 | ||
36 | >= x11-libs/libX11-1.4 | ||
37 | >= x11-libs/libXmu-1.1 | ||
38 | >= x11-libs/libXrender-0.9.6 | ||
39 | >= x11-libs/libXi-1.4 | ||
40 | == media-libs/mesa-${MESA_PVER} | ||
41 | >= x11-misc/xkeyboard-config-2.2 | ||
42 | >= x11-apps/iceauth-1.0.5 | ||
43 | >= x11-apps/rgb-1.0.4 | ||
44 | >= x11-apps/xauth-1.0.6 | ||
45 | >= x11-apps/xinit-1.3 | ||
46 | >= x11-libs/libXaw-1.0.9 | ||
47 | >= x11-libs/libdmx-1.1.1 | ||
48 | >= x11-libs/libXv-1.0.6 | ||
49 | >= x11-libs/libXfixes-5 | ||
50 | >= x11-base/opengl-update-magellan-2.2.13 | ||
51 | >= x11-libs/libpciaccess-0.12.1" | ||
52 | |||
53 | # compile depends | ||
54 | SDEPEND+="${SDEPEND} | ||
55 | >= x11-libs/xtrans-1.2.6 | ||
56 | >= x11-proto/randrproto-1.3.2 | ||
57 | >= x11-proto/renderproto-0.11 | ||
58 | >= x11-proto/fixesproto-5 | ||
59 | >= x11-proto/damageproto-1.2 | ||
60 | >= x11-proto/xextproto-7.2 | ||
61 | >= x11-proto/xproto-7.0.21 | ||
62 | >= x11-proto/xf86dgaproto-2.1 | ||
63 | >= x11-proto/xf86miscproto-0.9.3 | ||
64 | >= x11-proto/xf86vidmodeproto-2.3 | ||
65 | >= x11-proto/xf86bigfontproto-1.2 | ||
66 | >= x11-proto/compositeproto-0.4.2 | ||
67 | >= x11-proto/recordproto-1.14 | ||
68 | >= x11-proto/resourceproto-1.2 | ||
69 | >= x11-proto/videoproto-2.3 | ||
70 | >= x11-proto/scrnsaverproto-1.2 | ||
71 | >= x11-proto/evieext-1.1 | ||
72 | >= x11-proto/xineramaproto-1.2 | ||
73 | >= x11-proto/fontsproto-2.1 | ||
74 | >= x11-proto/kbproto-1.0.5 | ||
75 | >= x11-proto/inputproto-2 | ||
76 | >= x11-proto/bigreqsproto-1.1 | ||
77 | >= x11-proto/xcmiscproto-1.2 | ||
78 | >= x11-proto/glproto-1.4.12 | ||
79 | >= x11-proto/dmxproto-2.3 | ||
80 | >= x11-proto/xf86driproto-2.1 | ||
81 | >= x11-proto/dri2proto-2.3 | ||
82 | >= x11-libs/libdrm-2.4.25 | ||
83 | >= x11-libs/libXtst-1.2 | ||
84 | >= x11-libs/libXres-1.0.5" | ||
85 | |||
86 | SPLIT_PACKAGES="xorg-server kdrive xephyr xdmx xnest xvfb" | ||
87 | |||
88 | SRC_URI=( ${SRC_URI[*]} | ||
89 | mirror://${PNAME}/${SRCFILE} | ||
90 | ftp://ftp.freedesktop.org/pub/mesa/${MESA_PVER}/${MESA_SRCFILE} | ||
91 | sourceforge://mesa3d/${MESA_SRCFILE} | ||
92 | mirror://mesa/${MESA_SRCFILE} | ||
93 | mirror://${PNAME}/${PNAME}-${PVER}-fpic-libxf86config.patch | ||
94 | mirror://${PNAME}/${PNAME}-1.2.0-die-ugly-pattern-die-die-die.patch | ||
95 | mirror://${PNAME}/${PNAME}-1.8.0-kdrive-default-mode.patch | ||
96 | mirror://${PNAME}/${PNAME}-1.8.0-kdrive-evdev-with-valid-mouse-devices.patch | ||
97 | ) | ||
98 | |||
99 | UP2SUBDIR="xserver" | ||
100 | UP2DATE="updatecmd_xorg ${PNAME}" | ||
101 | |||
102 | split_info_xorg-server() | ||
103 | { | ||
104 | DESCRIPTION="Modular X.Org X Server." | ||
105 | DEPEND="${COMMON_DEPEND} | ||
106 | == media-libs/mesa-${MESA_PVER} | ||
107 | >= x11-misc/xkeyboard-config-2.2 | ||
108 | >= x11-apps/iceauth-1.0.5 | ||
109 | >= x11-apps/rgb-1.0.4 | ||
110 | >= x11-apps/xauth-1.0.6 | ||
111 | >= x11-apps/xinit-1.3 | ||
112 | >= x11-base/opengl-update-magellan-2.2.13 | ||
113 | >= x11-libs/libpciaccess-0.12.1" | ||
114 | } | ||
115 | |||
116 | split_info_kdrive() | ||
117 | { | ||
118 | DESCRIPTION="Tiny X.Org X Server." | ||
119 | DEPEND="${COMMON_DEPEND}" | ||
120 | } | ||
121 | |||
122 | split_info_xephyr() | ||
123 | { | ||
124 | DESCRIPTION="A nested X11 server with opengl support." | ||
125 | DEPEND="${COMMON_DEPEND} | ||
126 | >= x11-libs/libXext-1.3 | ||
127 | >= x11-libs/libX11-1.4 | ||
128 | >= x11-libs/libXv-1.0.6 | ||
129 | == media-libs/mesa-${MESA_PVER} | ||
130 | >= x11-libs/libXi-1.4 | ||
131 | >= x11-libs/libXmu-1.1" | ||
132 | } | ||
133 | |||
134 | split_info_xnest() | ||
135 | { | ||
136 | DESCRIPTION="A nested X11 server." | ||
137 | DEPEND="${COMMON_DEPEND} | ||
138 | >= x11-libs/libXext-1.3 | ||
139 | >= x11-libs/libX11-1.4" | ||
140 | } | ||
141 | |||
142 | split_info_xdmx() | ||
143 | { | ||
144 | DESCRIPTION="A distributed multihead X11 Server." | ||
145 | DEPEND="${COMMON_DEPEND} | ||
146 | >= x11-libs/libXext-1.3 | ||
147 | >= x11-libs/libX11-1.4 | ||
148 | >= x11-libs/libdmx-1.1.1 | ||
149 | >= x11-libs/libXaw-1.0.9 | ||
150 | >= x11-libs/libXfixes-5 | ||
151 | >= x11-libs/libXi-1.5 | ||
152 | >= x11-libs/libXrender-0.9.6" | ||
153 | } | ||
154 | |||
155 | split_info_xvfb() | ||
156 | { | ||
157 | DESCRIPTION="A virtual framebuffer X11 server." | ||
158 | DEPEND="${COMMON_DEPEND}" | ||
159 | } | ||
160 | |||
161 | src_prepare() | ||
162 | { | ||
163 | # must use mesa as opengl-headers! | ||
164 | [[ $(opengl-update --get-implementation) != xorg ]] && | ||
165 | die "please change to xorg opengl-headers: opengl-update xorg" | ||
166 | |||
167 | munpack ${SRCFILE} || die | ||
168 | munpack ${MESA_SRCFILE} || die | ||
169 | cd ${SRCDIR} | ||
170 | |||
171 | # fixes fpic issues with libxf86config on 64bit systems | ||
172 | mpatch ${PNAME}-${PVER}-fpic-libxf86config.patch || die | ||
173 | |||
174 | # adopted from redhat; use a black background | ||
175 | mpatch ${PNAME}-1.2.0-die-ugly-pattern-die-die-die.patch || die | ||
176 | |||
177 | # fix kdrive default mode -> use 640x480@60hz instead of 800x600@75hz | ||
178 | mpatch ${PNAME}-1.8.0-kdrive-default-mode.patch || die | ||
179 | |||
180 | # fix new evdev event devices (event4 and event5) | ||
181 | mpatch ${PNAME}-1.8.0-kdrive-evdev-with-valid-mouse-devices.patch || die | ||
182 | |||
183 | # fix build issues, some wrapper files which should be generated | ||
184 | # at build time exist and the makefile doesn't whipe them. we patch | ||
185 | # the makefile to clean them and whipe these wrapper files | ||
186 | rm -f ${SRCDIR}/hw/xprint/*-wrapper.c || die | ||
187 | |||
188 | # fix xorg.conf.d location | ||
189 | sed -i 's:^\(@CONFIG_UDEV_TRUE@xorgconfddir =\).*:\1 $(sysconfdir)/X11/$(XF86CONFIGDIR):' config/Makefile.in || die | ||
190 | sed -i 's:^\(xorgconfddir =\).*: \1$(sysconfdir)/X11/$(XF86CONFIGDIR):' config/Makefile.am || die | ||
191 | |||
192 | autoreconf --verbose --install --force || die | ||
193 | } | ||
194 | |||
195 | src_compile() | ||
196 | { | ||
197 | cd ${SRCDIR} | ||
198 | |||
199 | xorg_src_configure \ | ||
200 | --with-mesa-source=${MESA_SRCDIR} \ | ||
201 | --sysconfdir=/etc \ | ||
202 | --localstatedir=/var \ | ||
203 | --with-xkb-output=/var/lib/xkb \ | ||
204 | --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \ | ||
205 | --enable-install-setuid \ | ||
206 | --enable-ipv6 \ | ||
207 | --enable-xorg \ | ||
208 | --enable-kdrive \ | ||
209 | --enable-xephyr \ | ||
210 | --enable-dmx \ | ||
211 | --enable-xvfb \ | ||
212 | --enable-xnest \ | ||
213 | --enable-dri \ | ||
214 | --enable-dri2 \ | ||
215 | --enable-xtrap \ | ||
216 | --enable-xevie \ | ||
217 | --disable-xprint \ | ||
218 | --enable-glx-tls \ | ||
219 | --disable-static \ | ||
220 | --disable-config-dbus \ | ||
221 | --disable-config-hal \ | ||
222 | --enable-config-udev \ | ||
223 | --enable-kdrive-kbd \ | ||
224 | --enable-kdrive-mouse \ | ||
225 | --enable-kdrive-evdev \ | ||
226 | || die | ||
227 | |||
228 | mmake || die | ||
229 | } | ||
230 | |||
231 | src_install_xorg-server() | ||
232 | { | ||
233 | xorg_src_install || die | ||
234 | |||
235 | # needed directories | ||
236 | minstalldir /usr/bin || die | ||
237 | minstalldir /usr/$(mlibdir)/opengl/xorg/extensions || die | ||
238 | |||
239 | # dynamic opengl setup | ||
240 | local i | ||
241 | for i in ${BINDIR}/usr/$(mlibdir)/xorg/modules/libglx* \ | ||
242 | ${BINDIR}/usr/$(mlibdir)/xorg/modules/libdri* | ||
243 | do | ||
244 | if [ -f ${i} -o -L ${i} ] | ||
245 | then | ||
246 | mv -f ${i} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/extensions || die "${i}" | ||
247 | fi | ||
248 | done | ||
249 | |||
250 | # missing symlink | ||
251 | mlink Xorg /usr/bin/X || die | ||
252 | |||
253 | # remove stuff included in other packages | ||
254 | # xfbdev | ||
255 | rm ${BINDIR}/usr/bin/Xfbdev || die | ||
256 | # xephyr | ||
257 | rm ${BINDIR}/usr/bin/Xephyr || die | ||
258 | rm ${BINDIR}/usr/share/man/man1/Xephyr.1 || die | ||
259 | # xnest | ||
260 | rm ${BINDIR}/usr/bin/Xnest || die | ||
261 | rm ${BINDIR}/usr/share/man/man1/Xnest.1 || die | ||
262 | # xdmx | ||
263 | rm ${BINDIR}/usr/bin/Xdmx || die | ||
264 | rm ${BINDIR}/usr/share/man/man1/Xdmx.1 || die | ||
265 | rm ${BINDIR}/usr/bin/dmxaddinput || die | ||
266 | rm ${BINDIR}/usr/bin/dmxaddscreen || die | ||
267 | rm ${BINDIR}/usr/bin/dmxreconfig || die | ||
268 | rm ${BINDIR}/usr/bin/dmxresize || die | ||
269 | rm ${BINDIR}/usr/bin/dmxrminput || die | ||
270 | rm ${BINDIR}/usr/bin/dmxrmscreen || die | ||
271 | rm ${BINDIR}/usr/bin/dmxwininfo || die | ||
272 | rm ${BINDIR}/usr/bin/dmxinfo || die | ||
273 | rm ${BINDIR}/usr/bin/dmxtodmx || die | ||
274 | rm ${BINDIR}/usr/share/man/man1/dmxtodmx.1 || die | ||
275 | rm ${BINDIR}/usr/bin/vdltodmx || die | ||
276 | rm ${BINDIR}/usr/share/man/man1/vdltodmx.1 || die | ||
277 | rm ${BINDIR}/usr/bin/xdmxconfig || die | ||
278 | rm ${BINDIR}/usr/share/man/man1/xdmxconfig.1 || die | ||
279 | # xvfb | ||
280 | rm ${BINDIR}/usr/bin/Xvfb || die | ||
281 | rm ${BINDIR}/usr/share/man/man1/Xvfb.1 || die | ||
282 | } | ||
283 | |||
284 | src_install_kdrive() | ||
285 | { | ||
286 | cd ${SRCDIR} | ||
287 | |||
288 | minstallexec hw/kdrive/fbdev/Xfbdev || die | ||
289 | #minstallman hw/kdrive/fbdev/Xfbdev.1 || die | ||
290 | |||
291 | # suid all tinyX servers | ||
292 | mchmod 4755 /usr/bin/X\* || die | ||
293 | |||
294 | # needed directory | ||
295 | mkeepdir /usr/share/X11/xkb/compiled || die | ||
296 | } | ||
297 | |||
298 | src_install_xephyr() | ||
299 | { | ||
300 | cd ${SRCDIR} | ||
301 | |||
302 | minstallexec hw/kdrive/ephyr/Xephyr || die | ||
303 | minstallman hw/kdrive/ephyr/man/Xephyr.1 || die | ||
304 | |||
305 | # suid all tinyX servers | ||
306 | mchmod 4755 /usr/bin/X\* || die | ||
307 | |||
308 | # needed directory | ||
309 | mkeepdir /usr/share/X11/xkb/compiled || die | ||
310 | } | ||
311 | |||
312 | src_install_xnest() | ||
313 | { | ||
314 | cd ${SRCDIR} | ||
315 | |||
316 | minstallexec hw/xnest/Xnest || die | ||
317 | minstallman hw/xnest/man/Xnest.1 || die | ||
318 | |||
319 | # needed directory | ||
320 | mkeepdir /usr/share/X11/xkb/compiled || die | ||
321 | } | ||
322 | |||
323 | src_install_xdmx() | ||
324 | { | ||
325 | cd ${SRCDIR} | ||
326 | |||
327 | minstallexec hw/dmx/Xdmx || die | ||
328 | minstallman hw/dmx/man/Xdmx.1 || die | ||
329 | |||
330 | minstallexec hw/dmx/examples/dmxaddinput || die | ||
331 | minstallexec hw/dmx/examples/dmxaddscreen || die | ||
332 | minstallexec hw/dmx/examples/dmxreconfig || die | ||
333 | minstallexec hw/dmx/examples/dmxresize || die | ||
334 | minstallexec hw/dmx/examples/dmxrminput || die | ||
335 | minstallexec hw/dmx/examples/dmxrmscreen || die | ||
336 | minstallexec hw/dmx/examples/dmxwininfo || die | ||
337 | minstallexec hw/dmx/examples/dmxinfo || die | ||
338 | |||
339 | minstallexec hw/dmx/config/dmxtodmx || die | ||
340 | minstallman hw/dmx/config/man/dmxtodmx.1 || die | ||
341 | |||
342 | minstallexec hw/dmx/config/vdltodmx || die | ||
343 | minstallman hw/dmx/config/man/vdltodmx.1 || die | ||
344 | |||
345 | minstallexec hw/dmx/config/xdmxconfig || die | ||
346 | minstallman hw/dmx/config/man/xdmxconfig.1 || die | ||
347 | |||
348 | # needed directory | ||
349 | mkeepdir /usr/share/X11/xkb/compiled || die | ||
350 | } | ||
351 | |||
352 | src_install_xvfb() | ||
353 | { | ||
354 | cd ${SRCDIR} | ||
355 | |||
356 | minstallexec hw/vfb/Xvfb || die | ||
357 | minstallman hw/vfb/man/Xvfb.1 || die | ||
358 | |||
359 | # needed directory | ||
360 | mkeepdir /usr/share/X11/xkb/compiled || die | ||
361 | } | ||
362 | |||
363 | preinstall_xorg-server() | ||
364 | { | ||
365 | # fix some deprecated symlinks from ancient xorg-1.5 servers | ||
366 | if [ -L ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libdri.so ] | ||
367 | then | ||
368 | rm ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libdri.so | ||
369 | fi | ||
370 | |||
371 | if [ -f ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libdri.so ] | ||
372 | then | ||
373 | rm ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libdri.so | ||
374 | fi | ||
375 | |||
376 | if [ -L ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libglx.so ] | ||
377 | then | ||
378 | rm ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libglx.so | ||
379 | fi | ||
380 | |||
381 | if [ -f ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libglx.so ] | ||
382 | then | ||
383 | rm ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libglx.so | ||
384 | fi | ||
385 | } | ||
386 | |||
387 | postinstall_xorg-server() | ||
388 | { | ||
389 | ${MROOT}/usr/sbin/opengl-update --use-old xorg | ||
390 | } | ||
391 | |||
392 | postremove_xorg-server() | ||
393 | { | ||
394 | # get rid of module dir to ensure opengl-update works properbly | ||
395 | if [ -e ${MROOT}/usr/$(mlibdir)/xorg/modules ] | ||
396 | then | ||
397 | if [[ -z $(magequery -n xorg-server) ]] | ||
398 | then | ||
399 | rm -rf ${MROOT}/usr/$(mlibdir)/xorg/modules | ||
400 | fi | ||
401 | fi | ||
402 | } |