Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 7773 - (show annotations) (download)
Tue May 31 18:13:28 2011 UTC (12 years, 11 months ago) by niro
File size: 10636 byte(s)
-fixed dmx man pages too
1 # $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 minstallman hw/kdrive/ephyr/man/Xephyr.1 || die
362
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 minstallman hw/xnest/man/Xnest.1 || die
376
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 minstallman hw/dmx/man/Xdmx.1 || die
387
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/man/dmxtodmx.1 || die
399
400 minstallexec hw/dmx/config/vdltodmx || die
401 minstallman hw/dmx/config/man/vdltodmx.1 || die
402
403 minstallexec hw/dmx/config/xdmxconfig || die
404 minstallman hw/dmx/config/man/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 minstallman hw/vfb/man/Xvfb.1 || die
416
417 # needed directory
418 mkeepdir /usr/share/X11/xkb/compiled || die
419 }