Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 8456 - (hide annotations) (download)
Mon Jul 18 21:12:14 2011 UTC (12 years, 9 months ago) by niro
File size: 10619 byte(s)
auto added: ver bump to 1.10.3-r1
1 niro 8456 # $Id$
2    
3     PNAME="xorg-server"
4     PVER="1.10.3"
5     PBUILD="r1"
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.10.3"
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-match-only-sane-devices.patch
96     mirror://${PNAME}/${PNAME}-1.8.0-kdrive-default-mode.patch
97     mirror://${PNAME}/${PNAME}-1.8.0-kdrive-evdev-with-valid-mouse-devices.patch
98     )
99    
100     UP2SUBDIR="xserver"
101     UP2DATE="updatecmd_xorg ${PNAME}"
102    
103     split_info_xorg-server()
104     {
105     DESCRIPTION="Modular X.Org X Server."
106     DEPEND="${COMMON_DEPEND}
107     == media-libs/mesa-${MESA_PVER}
108     >= x11-misc/xkeyboard-config-2.2
109     >= x11-apps/iceauth-1.0.5
110     >= x11-apps/rgb-1.0.4
111     >= x11-apps/xauth-1.0.6
112     >= x11-apps/xinit-1.3
113     >= x11-base/opengl-update-magellan-2.2.13
114     >= x11-libs/libpciaccess-0.12.1"
115    
116     preinstall()
117     {
118     # fix some deprecated symlinks from ancient xorg-1.5 servers
119     if [ -L ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libdri.so ]
120     then
121     rm ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libdri.so
122     fi
123    
124     if [ -f ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libdri.so ]
125     then
126     rm ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libdri.so
127     fi
128    
129     if [ -L ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libglx.so ]
130     then
131     rm ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libglx.so
132     fi
133    
134     if [ -f ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libglx.so ]
135     then
136     rm ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libglx.so
137     fi
138     }
139    
140     postinstall()
141     {
142     ${MROOT}/usr/sbin/opengl-update --use-old xorg
143     }
144    
145     postremove()
146     {
147     # get rid of module dir to ensure opengl-update works properbly
148     if [ -e ${MROOT}/usr/$(mlibdir)/xorg/modules ]
149     then
150     if [[ -z $(magequery -n xorg-server) ]]
151     then
152     rm -rf ${MROOT}/usr/$(mlibdir)/xorg/modules
153     fi
154     fi
155     }
156     }
157    
158     split_info_kdrive()
159     {
160     DESCRIPTION="Tiny X.Org X Server."
161     DEPEND="${COMMON_DEPEND}"
162     unset -f preinstall
163     unset -f postinstall
164     unset -f postremove
165     }
166    
167     split_info_xephyr()
168     {
169     DESCRIPTION="A nested X11 server with opengl support."
170     DEPEND="${COMMON_DEPEND}
171     >= x11-libs/libXext-1.3
172     >= x11-libs/libX11-1.4
173     >= x11-libs/libXv-1.0.6
174     == media-libs/mesa-${MESA_PVER}
175     >= x11-libs/libXi-1.4
176     >= x11-libs/libXmu-1.1"
177     unset -f preinstall
178     unset -f postinstall
179     unset -f postremove
180     }
181    
182     split_info_xnest()
183     {
184     DESCRIPTION="A nested X11 server."
185     DEPEND="${COMMON_DEPEND}
186     >= x11-libs/libXext-1.3
187     >= x11-libs/libX11-1.4"
188     unset -f preinstall
189     unset -f postinstall
190     unset -f postremove
191     }
192    
193     split_info_xdmx()
194     {
195     DESCRIPTION="A distributed multihead X11 Server."
196     DEPEND="${COMMON_DEPEND}
197     >= x11-libs/libXext-1.3
198     >= x11-libs/libX11-1.4
199     >= x11-libs/libdmx-1.1.1
200     >= x11-libs/libXaw-1.0.9
201     >= x11-libs/libXfixes-5
202     >= x11-libs/libXi-1.5
203     >= x11-libs/libXrender-0.9.6"
204     unset -f preinstall
205     unset -f postinstall
206     unset -f postremove
207     }
208    
209     split_info_xvfb()
210     {
211     DESCRIPTION="A virtual framebuffer X11 server."
212     DEPEND="${COMMON_DEPEND}"
213     unset -f preinstall
214     unset -f postinstall
215     unset -f postremove
216     }
217    
218     src_prepare()
219     {
220     # must use mesa as opengl-headers!
221     [[ $(opengl-update --get-implementation) != xorg ]] &&
222     die "please change to xorg opengl-headers: opengl-update xorg"
223    
224     munpack ${SRCFILE} || die
225     munpack ${MESA_SRCFILE} || die
226     cd ${SRCDIR}
227    
228     # fixes fpic issues with libxf86config on 64bit systems
229     mpatch ${PNAME}-${PVER}-fpic-libxf86config.patch || die
230    
231     # adopted from redhat; use a black background
232     mpatch ${PNAME}-1.2.0-die-ugly-pattern-die-die-die.patch || die
233    
234     # fix kdrive default mode -> use 640x480@60hz instead of 800x600@75hz
235     mpatch ${PNAME}-1.8.0-kdrive-default-mode.patch || die
236    
237     # fix new evdev event devices (event4 and event5)
238     mpatch ${PNAME}-1.8.0-kdrive-evdev-with-valid-mouse-devices.patch || die
239    
240     # fix build issues, some wrapper files which should be generated
241     # at build time exist and the makefile doesn't whipe them. we patch
242     # the makefile to clean them and whipe these wrapper files
243     rm -f ${SRCDIR}/hw/xprint/*-wrapper.c || die
244    
245     # fix xorg.conf.d location
246     sed -i 's:^\(@CONFIG_UDEV_TRUE@xorgconfddir =\).*:\1 $(sysconfdir)/X11/$(XF86CONFIGDIR):' config/Makefile.in || die
247     sed -i 's:^\(xorgconfddir =\).*: \1$(sysconfdir)/X11/$(XF86CONFIGDIR):' config/Makefile.am || die
248    
249     autoreconf --verbose --install --force || die
250     }
251    
252     src_compile()
253     {
254     cd ${SRCDIR}
255    
256     xorg_src_configure \
257     --with-mesa-source=${MESA_SRCDIR} \
258     --sysconfdir=/etc \
259     --localstatedir=/var \
260     --with-xkb-output=/var/lib/xkb \
261     --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
262     --enable-install-setuid \
263     --enable-ipv6 \
264     --enable-xorg \
265     --enable-kdrive \
266     --enable-xephyr \
267     --enable-dmx \
268     --enable-xvfb \
269     --enable-xnest \
270     --enable-dri \
271     --enable-dri2 \
272     --enable-xtrap \
273     --enable-xevie \
274     --disable-xprint \
275     --enable-glx-tls \
276     --disable-static \
277     --disable-config-dbus \
278     --disable-config-hal \
279     --enable-config-udev \
280     --enable-kdrive-kbd \
281     --enable-kdrive-mouse \
282     --enable-kdrive-evdev \
283     || die
284    
285     mmake || die
286     }
287    
288     src_install_xorg-server()
289     {
290     xorg_src_install || die
291    
292     # needed directories
293     minstalldir /usr/bin || die
294     minstalldir /usr/$(mlibdir)/opengl/xorg/extensions || die
295    
296     # dynamic opengl setup
297     local i
298     for i in ${BINDIR}/usr/$(mlibdir)/xorg/modules/libglx* \
299     ${BINDIR}/usr/$(mlibdir)/xorg/modules/libdri*
300     do
301     if [ -f ${i} -o -L ${i} ]
302     then
303     mv -f ${i} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/extensions || die "${i}"
304     fi
305     done
306    
307     # missing symlink
308     mlink Xorg /usr/bin/X || die
309    
310     # remove stuff included in other packages
311     # xfbdev
312     rm ${BINDIR}/usr/bin/Xfbdev || die
313     # xephyr
314     rm ${BINDIR}/usr/bin/Xephyr || die
315     rm ${BINDIR}/usr/share/man/man1/Xephyr.1 || die
316     # xnest
317     rm ${BINDIR}/usr/bin/Xnest || die
318     rm ${BINDIR}/usr/share/man/man1/Xnest.1 || die
319     # xdmx
320     rm ${BINDIR}/usr/bin/Xdmx || die
321     rm ${BINDIR}/usr/share/man/man1/Xdmx.1 || die
322     rm ${BINDIR}/usr/bin/dmxaddinput || die
323     rm ${BINDIR}/usr/bin/dmxaddscreen || die
324     rm ${BINDIR}/usr/bin/dmxreconfig || die
325     rm ${BINDIR}/usr/bin/dmxresize || die
326     rm ${BINDIR}/usr/bin/dmxrminput || die
327     rm ${BINDIR}/usr/bin/dmxrmscreen || die
328     rm ${BINDIR}/usr/bin/dmxwininfo || die
329     rm ${BINDIR}/usr/bin/dmxinfo || die
330     rm ${BINDIR}/usr/bin/dmxtodmx || die
331     rm ${BINDIR}/usr/share/man/man1/dmxtodmx.1 || die
332     rm ${BINDIR}/usr/bin/vdltodmx || die
333     rm ${BINDIR}/usr/share/man/man1/vdltodmx.1 || die
334     rm ${BINDIR}/usr/bin/xdmxconfig || die
335     rm ${BINDIR}/usr/share/man/man1/xdmxconfig.1 || die
336     # xvfb
337     rm ${BINDIR}/usr/bin/Xvfb || die
338     rm ${BINDIR}/usr/share/man/man1/Xvfb.1 || die
339     }
340    
341     src_install_kdrive()
342     {
343     cd ${SRCDIR}
344    
345     minstallexec hw/kdrive/fbdev/Xfbdev || die
346     #minstallman hw/kdrive/fbdev/Xfbdev.1 || die
347    
348     # suid all tinyX servers
349     mchmod 4755 /usr/bin/X\* || die
350    
351     # needed directory
352     mkeepdir /usr/share/X11/xkb/compiled || die
353     }
354    
355     src_install_xephyr()
356     {
357     cd ${SRCDIR}
358    
359     minstallexec hw/kdrive/ephyr/Xephyr || die
360     minstallman hw/kdrive/ephyr/man/Xephyr.1 || die
361    
362     # suid all tinyX servers
363     mchmod 4755 /usr/bin/X\* || die
364    
365     # needed directory
366     mkeepdir /usr/share/X11/xkb/compiled || die
367     }
368    
369     src_install_xnest()
370     {
371     cd ${SRCDIR}
372    
373     minstallexec hw/xnest/Xnest || die
374     minstallman hw/xnest/man/Xnest.1 || die
375    
376     # needed directory
377     mkeepdir /usr/share/X11/xkb/compiled || die
378     }
379    
380     src_install_xdmx()
381     {
382     cd ${SRCDIR}
383    
384     minstallexec hw/dmx/Xdmx || die
385     minstallman hw/dmx/man/Xdmx.1 || die
386    
387     minstallexec hw/dmx/examples/dmxaddinput || die
388     minstallexec hw/dmx/examples/dmxaddscreen || die
389     minstallexec hw/dmx/examples/dmxreconfig || die
390     minstallexec hw/dmx/examples/dmxresize || die
391     minstallexec hw/dmx/examples/dmxrminput || die
392     minstallexec hw/dmx/examples/dmxrmscreen || die
393     minstallexec hw/dmx/examples/dmxwininfo || die
394     minstallexec hw/dmx/examples/dmxinfo || die
395    
396     minstallexec hw/dmx/config/dmxtodmx || die
397     minstallman hw/dmx/config/man/dmxtodmx.1 || die
398    
399     minstallexec hw/dmx/config/vdltodmx || die
400     minstallman hw/dmx/config/man/vdltodmx.1 || die
401    
402     minstallexec hw/dmx/config/xdmxconfig || die
403     minstallman hw/dmx/config/man/xdmxconfig.1 || die
404    
405     # needed directory
406     mkeepdir /usr/share/X11/xkb/compiled || die
407     }
408    
409     src_install_xvfb()
410     {
411     cd ${SRCDIR}
412    
413     minstallexec hw/vfb/Xvfb || die
414     minstallman hw/vfb/man/Xvfb.1 || die
415    
416     # needed directory
417     mkeepdir /usr/share/X11/xkb/compiled || die
418     }