Magellan Linux

Contents of /branches/R11-stable/extras/xorg-server/xorg-server-1.15.2-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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