Magellan Linux

Contents of /trunk/extras/xorg-server/xorg-server-1.20.5-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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