# Contributor: Ɓukasz Jendrysik # Maintainer: A. Wilcox pkgname=xorg-server pkgver=21.1.13 pkgrel=0 pkgdesc="X.Org X11 server" url="https://www.X.Org/" arch="all" options="suid" license="MIT" depends="font-cursor-misc font-misc-misc xkeyboard-config xkbcomp xinit xorg-server-protocol " depends_dev="libepoxy-dev libxfont2-dev mesa-dev" makedepends="$depends_dev meson eudev-dev libpciaccess-dev libdrm-dev libepoxy-dev pixman-dev libx11-dev libxdamage-dev libxinerama-dev libxkbfile-dev libxkbui-dev libxv-dev libxxf86dga-dev libxxf86misc-dev libxcvt-dev xkbcomp-dev xcb-util-dev xcb-util-image-dev xcb-util-keysyms-dev xcb-util-renderutil-dev xcb-util-wm-dev xorgproto-dev xtrans openssl-dev perl zlib-dev " # the modesetting driver is now shipped with xorg server replaces="xf86-video-modesetting" subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc xvfb $pkgname-xephyr $pkgname-xnest $pkgname-protocol" source="https://www.X.Org/releases/individual/xserver/$pkgname-$pkgver.tar.xz autoconfig-sis.patch fix-musl-arm.patch " # secfixes: # 21.1.12-r0: # - CVE-2024-31080 # - CVE-2024-31081 # - CVE-2024-31082 # - CVE-2024-31083 # - CVE-2023-6816 # - CVE-2024-0229 # - CVE-2024-21885 # - CVE-2024-21886 # - CVE-2024-0408 # - CVE-2024-0409 # - CVE-2023-6377 # - CVE-2023-6478 # - CVE-2023-5367 # - CVE-2023-5380 # - CVE-2023-5574 # - CVE-2023-0494 # - CVE-2022-4283 # - CVE-2022-46340 # - CVE-2022-46341 # - CVE-2022-46342 # - CVE-2022-46343 # - CVE-2022-46344 # - CVE-2022-2319 # - CVE-2022-2320 # - CVE-2021-4008 # - CVE-2021-4009 # - CVE-2021-4010 # - CVE-2021-4011 # - CVE-2021-3472 # - CVE-2020-14360 # - CVE-2020-25712 # 1.20.9-r0: # - CVE-2020-14345 # - CVE-2020-14346 # - CVE-2020-14347 # - CVE-2020-14361 # - CVE-2020-14362 # 1.20.3-r0: # - CVE-2018-14665 # 1.19.5-r0: # - CVE-2017-12176 # - CVE-2017-12177 # - CVE-2017-12178 # - CVE-2017-12179 # - CVE-2017-12180 # - CVE-2017-12181 # - CVE-2017-12182 # - CVE-2017-12183 # - CVE-2017-12184 # - CVE-2017-12185 # - CVE-2017-12186 # - CVE-2017-12187 # - CVE-2017-13721 # - CVE-2017-13723 prepare() { default_prepare # Fix dbus config path sed -i -e 's/\$(sysconfdir)/\/etc/' config/Makefile.* sed -i -e 's/termio.h/termios.h/' hw/xfree86/os-support/xf86_OSlib.h } build() { export CFLAGS="$CFLAGS -D_GNU_SOURCE" [ "$CLIBC" = musl ] && export CFLAGS="$CFLAGS -D__gid_t=gid_t -D__uid_t=uid_t" export LDFLAGS="$LDFLAGS -Wl,-z,lazy" _fontroot="/usr/share/fonts" meson setup \ --prefix=/usr \ --sysconfdir=/etc/X11 \ --localstatedir=/var \ -Dxkb_dir=/usr/share/X11/xkb \ -Dxkb_output_dir=/var/lib/xkb \ -Dsystemd_logind=false \ -Ddri1=true \ -Ddri2=true \ -Ddri3=true \ -Dglamor=true \ -Dipv6=true \ -Dxace=true \ -Dxcsecurity=true \ -Dxephyr=true \ -Dxnest=true \ -Dxorg=true \ -Dxres=true \ -Dhal=false \ -Dsecure-rpc=false \ -Dpciaccess=true \ -Ddefault_font_path=$_fontroot/misc,$_fontroot/100dpi:unscaled,$_fontroot/75dpi:unscaled,$_fontroot/TTF,$_fontroot/Type1 \ build meson compile -C build } check() { meson test --no-rebuild --print-errorlogs -C build } package() { DESTDIR="$pkgdir" meson install --no-rebuild -C build chmod u+s "$pkgdir"/usr/bin/Xorg # Don't conflict with xf86-input-evdev rm -f "$pkgdir"/usr/share/X11/xorg.conf.d/10-evdev.conf install -m755 -d "$pkgdir"/etc/X11/xorg.conf.d install -m755 -d "$pkgdir"/var/lib/xkb install -m644 -D COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } xvfb() { pkgdesc="X.Org server for virtual framebuffer (for testing)" mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/Xvfb "$subpkgdir"/usr/bin/ } xephyr() { pkgdesc="kdrive-based X11 server (windowed framebuffer on X11 server)" depends= mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/Xephyr "$subpkgdir"/usr/bin/ } xnest() { pkgdesc="X.Org nested server" depends= mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/Xnest "$subpkgdir"/usr/bin/ } protocol() { pkgdesc="Xorg server protocol file" depends="" mkdir -p "$subpkgdir"/usr/lib/xorg mv "$pkgdir"/usr/lib/xorg/protocol.txt "$subpkgdir"/usr/lib/xorg/ } sha512sums="a55fbeeed227c12c67f166f2c06a7f4f8d78feeea04c6e73509dbc723185fd0772349aa23f7c44cf0828ac0a0e2f9e4b26cffb220e6dfa7186d60f88b25ccaf1 xorg-server-21.1.13.tar.xz d77151bc51766e1230a121c008ac1d0695275bf889b1db4b3330c1f8ee720b0e046cc935fa14aaef40b02fdea508e84e53959b560131ace14ace14943c8eb734 autoconfig-sis.patch c68d6299928032806ade94b4848f147757d6571a2f8830922a20c9e1053fe42700e5c9e196ad58ce5e5536cf034260f973edd6e2792c9bacf4e2d70660949a4a fix-musl-arm.patch"