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