Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


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