Magellan Linux

Annotation of /trunk/extras/xorg-server/xorg-server-1.20.0-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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