Newer
Older
# Maintainer : Eric Vidal <eric@obarun.org>
# Maintainer : Jean-Michel T.Dydak <jean-michel@obarun.org>
# Obarun PkgSrc : https://framagit.org/obarun-pkgbuild-extra/xorg-server
#----------------
# Maintainer : AndyRTR <andyrtr@archlinux.org>
# Maintainer : Jan de Groot <jgc@archlinux.org>
# Arch PkgSrc : https://www.archlinux.org/packages/extra/x86_64/xorg-server
#----------------
# Website : http://xorg.freedesktop.org
#--------------------------------------------------------------------------------------
'xorg-server'
'xorg-server-xephyr'
'xorg-server-xvfb'
'xorg-server-xnest'
'xorg-server-xwayland'
'xorg-server-common'
'xorg-server-devel')
pkgver=1.20.9.r21.g5c400cae1
url="https://xorg.freedesktop.org/releases/individual/xserver"
track=commit
target=5c400cae1f9817045378966effa6bca91e45aead # server-1.20-branch 2020-11-09
source=("git+https://gitlab.freedesktop.org/xorg/xserver#${track}=${target}"
'xserver-autobind-hotplug.patch'
'0001-v2-FS-58644.patch'
'0002-fix-libshadow-2.patch'
'xvfb-run' ## with updates from FC master
'xvfb-run.1'
#-------------------------------------| BUILD CONFIGURATION |-----------------------------------
makedepends=(
'xorgproto'
'pixman'
'libx11'
'mesa'
'mesa-libgl'
'xtrans'
'libxkbfile'
'libxfont2'
'libpciaccess'
'libxv'
'libxmu'
'libxrender'
'libxi'
'libxaw'
'libxtst'
'libxres'
'xorg-xkbcomp'
'xorg-util-macros'
'xorg-font-util'
'libepoxy'
'xcb-util'
'xcb-util-image'
'xcb-util-renderutil'
'xcb-util-wm'
'xcb-util-keysyms'
'libxshmfence'
'libunwind'
'wayland-protocols'
'egl-wayland'
#--------------------------------------| BUILD PREPARATION |------------------------------------
pkgver() {
cd xserver
git describe --tags | sed 's/^xorg.server.//;s/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
#cd "${pkgbase}-${pkgver}"
cd xerver
## patch from Fedora, not yet merged
patch -Np1 -i ../xserver-autobind-hotplug.patch
## https://bugs.freedesktop.org/show_bug.cgi?id=106588
patch -Np1 -i ../0001-v2-FS-58644.patch
## Fix libshadow.so: libfb.so => not found - FS#58731
patch -Np1 -i ../0002-fix-libshadow-2.patch
#--------------------------------------------| BUILD |------------------------------------------
## Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf
## With them, module fail to load with undefined symbol.
## https://bugs.archlinux.org/task/54845
export CFLAGS=${CFLAGS/-fno-plt}
export CXXFLAGS=${CXXFLAGS/-fno-plt}
export LDFLAGS=${LDFLAGS/,-z,now}
# arch-meson ${pkgbase}-$pkgver build
arch-meson xserver build \
-D os_vendor="Obarun" \
-D ipv6=true \
-D xvfb=true \
-D xnest=true \
-D xcsecurity=true \
-D xorg=true \
-D xephyr=true \
-D xwayland=true \
-D xwayland_eglstream=true \
-D glamor=true \
-D udev=true \
-D suid_wrapper=true \
-D xkb_dir=/usr/share/X11/xkb \
-D xkb_output_dir=/var/lib/xkb \
-D systemd_logind=false
## Print config
meson configure build
ninja -C build
## fake installation to be seperated into packages
DESTDIR="${srcdir}/fakeinstall" ninja -C build install
#--------------------------------------------| CHECK |------------------------------------------
#-------------------------------------------| PACKAGE |-----------------------------------------
local src f dir
for src; do
f="${src#fakeinstall/}"
dir="${pkgdir}/${f%/*}"
install -m755 -d "${dir}"
mv -v "${src}" "${dir}/"
done
pkgdesc="Xorg server common files"
depends=(
'xkeyboard-config'
'xorg-xkbcomp'
'xorg-setxkbmap')
_install fakeinstall/usr/lib/xorg/protocol.txt
_install fakeinstall/usr/share/man/man1/Xserver.1
#install -m644 -Dt "${pkgdir}/var/lib/xkb/" "${pkgbase}-${pkgver}"/xkb/README.compiled
install -m644 -Dt "${pkgdir}/var/lib/xkb/" xserver/xkb/README.compiled
#install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xserver/COPYING
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
pkgdesc="Xorg X server"
depends=(
'libepoxy'
'libxfont2'
'pixman'
'xorg-server-common'
'libunwind'
'dbus'
'libgl'
'xf86-input-libinput'
'nettle'
'libpciaccess'
'libdrm'
'libxshmfence') ## FS#52949
## see xorg-server-*/hw/xfree86/common/xf86Module.h for ABI versions.
## we provide major numbers that drivers can depend on
## and /usr/lib/pkgconfig/xorg-server.pc in xorg-server-devel pkg
provides=(
'X-ABI-VIDEODRV_VERSION=24.0'
'X-ABI-XINPUT_VERSION=24.1'
'X-ABI-EXTENSION_VERSION=10.0'
'x-server')
conflicts=(
'nvidia-utils<=331.20'
'glamor-egl'
'xf86-video-modesetting')
replaces=(
'glamor-egl'
'xf86-video-modesetting')
install=xorg-server.install
_install fakeinstall/usr/bin/{Xorg,cvt,gtf}
ln -s /usr/bin/Xorg "${pkgdir}/usr/bin/X"
_install fakeinstall/usr/lib/Xorg{,.wrap}
_install fakeinstall/usr/lib/xorg/modules/*
_install fakeinstall/usr/share/X11/xorg.conf.d/10-quirks.conf
_install fakeinstall/usr/share/man/man1/{Xorg,Xorg.wrap,cvt,gtf}.1
_install fakeinstall/usr/share/man/man4/{exa,fbdevhw,modesetting}.4
_install fakeinstall/usr/share/man/man5/{Xwrapper.config,xorg.conf,xorg.conf.d}.5
## distro specific files must be installed in /usr/share/X11/xorg.conf.d
install -m755 -d "${pkgdir}/etc/X11/xorg.conf.d"
## Xwrapper.config
install -Dm0644 Xwrapper.config "${pkgdir}"/etc/X11/Xwrapper.config
## license
#install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xserver/COPYING
pkgdesc="A nested X server that runs as an X application"
depends=(
'libxfont2'
'libgl'
'libepoxy'
'libunwind'
'libxv'
'pixman'
'xorg-server-common'
'xcb-util-image'
'xcb-util-renderutil'
'xcb-util-wm'
'xcb-util-keysyms'
'nettle'
'libtirpc')
_install fakeinstall/usr/bin/Xephyr
_install fakeinstall/usr/share/man/man1/Xephyr.1
## license
#install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xserver/COPYING
pkgdesc="Virtual framebuffer X server"
depends=(
'libxfont2'
'libunwind'
'pixman'
'xorg-server-common'
'xorg-xauth'
'libgl'
_install fakeinstall/usr/bin/Xvfb
_install fakeinstall/usr/share/man/man1/Xvfb.1
install -m755 "${srcdir}/xvfb-run" "${pkgdir}/usr/bin/"
install -m644 "${srcdir}/xvfb-run.1" "${pkgdir}/usr/share/man/man1/" # outda
## license
#install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xserver/COPYING
pkgdesc="A nested X server that runs as an X application"
depends=(
'libxfont2'
'libxext'
'pixman'
'xorg-server-common'
'nettle'
'libtirpc')
_install fakeinstall/usr/bin/Xnest
_install fakeinstall/usr/share/man/man1/Xnest.1
## license
#install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xserver/COPYING
pkgdesc="run X clients under wayland"
depends=(
'libxfont2'
'libepoxy'
'libunwind'
'libgl'
'pixman'
'xorg-server-common'
'nettle'
'libtirpc')
_install fakeinstall/usr/bin/Xwayland
## license
#install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xerver/COPYING
pkgdesc="Development files for the X.Org X server"
depends=(
'xorgproto'
'mesa'
'libpciaccess'
'xorg-util-macros') ## not technically required but almost every Xorg pkg needs it to build
_install fakeinstall/usr/include/xorg/*
_install fakeinstall/usr/lib/pkgconfig/xorg-server.pc
_install fakeinstall/usr/share/aclocal/xorg-server.m4
## license
#install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xserver/COPYING
## make sure there are no files left to install
find fakeinstall -depth -print0 | xargs -0 rmdir
}
#------------------------------------| INSTALL CONFIGURATION |----------------------------------
arch=('x86_64')
groups=(
'xorg')
backup=(
'etc/X11/Xwrapper.config')
#-------------------------------------| SECURITY AND LICENCE |----------------------------------
license=('CUSTOM')
validpgpkeys=('7B27A3F1A6E18CD9588B4AE8310180050905E40C'
'C383B778255613DFDB409D91DB221A6900000011'
'DD38563A8A8224537D1F90E45B8A2D50A0ECD0D3'
'995ED5C8A6138EB0961F18474C09DD83CAAA50B2'
sha512sums=('625f0626b122cf95600abe382c3217348999357a0e2d2443092f1b67cff1c98d7ef09303884ceaeac181e0555dc56b0d4d44bda45cc464dac2d9a50c5b32d631'
'SKIP'
'd707e0870367de2665c3b82f09564d17ed3f62c9e8b4bd471c11af1fb1e9249e306e92c7961a04e355756eec9f5271bc8e66999e56c73c31bc9da4127ff30a8e'
'd84f4d63a502b7af76ea49944d1b21e2030dfd250ac1e82878935cf631973310ac9ba1f0dfedf10980ec6c7431d61b7daa4b7bbaae9ee477b2c19812c1661a22'
'f05c18354a3cf5b5b0fa97c4a887cfd688297e39d7ddc93b5900357119a689a060321019aeec9ca9c1366ea4b65b7875b2a9cadb84e46d2c193c15e6df22fcd8'
'9cb9a979dfc2de4fac384a1044b368bb97c8b0b524523aa2a96ef55c673ab5350c50cc79ad103655f40c2e0002cdcc2e1646fade3ac78641616d182e7c500be7'
'55bbf520333f6e818b0125b37179a7039b69a0d3d2242b80a08da003d94cbf6c1fb912d880abcce318a85d7947e3eff8fbc4cdf57d7118572e8ebc56c4569af6'
'de5e2cb3c6825e6cf1f07ca0d52423e17f34d70ec7935e9dd24be5fb9883bf1e03b50ff584931bd3b41095c510ab2aa44d2573fd5feaebdcb59363b65607ff22'
'97315b682bef7892d3cf641ea9add6e0d22901150763930020302cc73de5fe5bda0f47384b7d405c7169cb5f072d27da306066063d5a8ea116e97ea474caffe8')