Magellan Linux

Annotation of /branches/magellan-next/core/xorg-server/xorg-server-1.10.2-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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