# Contributor: Sören Tempel # Maintainer: Valery Kartel pkgname=weston pkgver=3.0.0 pkgrel=3 _libname=lib$pkgname _libdir=$_libname-${pkgver%%.*} pkgdesc="The reference Wayland server" url="https://wayland.freedesktop.org/" arch="all !s390x !x86 !ppc64le" license="MIT" depends="" makedepends="wayland-protocols libxkbcommon-dev xkeyboard-config libinput-dev libunwind-dev mtdev-dev libxcursor-dev glu-dev pango-dev colord-dev freerdp-dev libwebp-dev libva-dev dbus-dev linux-pam-dev wayland-dev " _cms="cms-colord cms-static" _shell="shell-desktop shell-fullscreen shell-ivi" _client="info terminal wcap-decode" _backend="backend-drm backend-fbdev backend-headless backend-rdp backend-x11 backend-wayland " for _sub in $_cms $_shell $_client $_backend; do subpackages="$subpackages $pkgname-$_sub:_sub" done subpackages="$pkgname-dev $pkgname-doc $subpackages $pkgname-clients $_libname-desktop:_libd $_libname:libs $pkgname-xwayland $pkgname-desktop-x11:_x11:noarch " source="https://wayland.freedesktop.org/releases/$pkgname-$pkgver.tar.xz timespec.patch weston-launch-custom-error-function.patch freerdp-2.0.0_rc2.patch" builddir="$srcdir/$pkgname-$pkgver" # weston-launch requires suid options="!check suid" install="$pkgname.pre-install" build() { cd "$builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --localstatedir=/var \ --libexecdir=/usr/lib/$pkgname \ --enable-rdp-compositor \ --enable-screen-sharing \ --enable-vaapi-recorder \ --enable-clients \ --enable-demo-clients-install make } # Does not run through, see also: # https://github.com/alpinelinux/aports/pull/1689 check() { make -C "$builddir" check return 0 } package() { make -C "$builddir" DESTDIR="$pkgdir" install } libs() { depends="xkeyboard-config" default_libs } _libd() { pkgdesc="Desktop shells abstraction library for libweston compositors" mkdir -p "$subpkgdir"/usr/lib || return 1 mv "$pkgdir"/usr/lib/*desktop* "$subpkgdir"/usr/lib } clients() { pkgdesc="Weston example clients" mkdir -p "$subpkgdir"/usr/bin || return 1 mv "$pkgdir"/usr/bin/$pkgname-* "$subpkgdir"/usr/bin } xwayland() { pkgdesc="Wayland module to run X Clients" mkdir -p "$subpkgdir"/usr/lib/$_libdir || return 1 mv "$pkgdir"/usr/lib/$_libdir/xwayland.so \ "$subpkgdir"/usr/lib/$_libdir } _x11() { pkgdesc="Weston desktop helper pack (x11 backend)" depends="$pkgname $pkgname-shell-desktop $pkgname-xwayland $pkgname-backend-x11 $pkgname-terminal" mkdir -p "$subpkgdir" } _sub() { local name path case $subpkgname in *-cms-*) name=${subpkgname#$pkgname-cms-} path=/usr/lib/$pkgname pkgdesc="Weston CMS module: $name" name=cms-$name.so ;; *-shell-*) name=${subpkgname#$pkgname-shell-} path=/usr/lib/$pkgname pkgdesc="Weston shell: $name" name=*$name-shell* ;; *-backend-*) name=${subpkgname#$pkgname-backend-} path=/usr/lib/$_libdir pkgdesc="Weston backend: $name" name=$name-backend.so grep -q cairo "$pkgdir"/$path/$name && depends="mesa-dri-swrast" ;; *) name=$subpkgname path=/usr/bin [ -x "$pkgdir"/$path/$name ] || name=${subpkgname#$pkgname-} pkgdesc="Weston client: $name" ;; esac mkdir -p "$subpkgdir"/$path || return 1 mv "$pkgdir"/$path/$name "$subpkgdir"/$path } sha512sums="b824c39f2a884f6d50d607613f447090621f684c96f7d905f25f6e500dabd03ecb2b1cd1030babc193c3417223cb220103abb792437e1a5ead7229a76b5c7a58 weston-3.0.0.tar.xz 3e596af4bf0a6b06a5d28376043db111fe1c161ead04501fa6d2c667b5a21889cca3354d1bdc4ac794841bef68ed5e1a7a84e44e7d510e947e3673195706caed timespec.patch 3f742a29075fd447995cdda283d12655910925811b22a28fc279bcc7cf5c7c1a888cd391bec42d934b3bad24578504c642882100f15647178f6f6f89a8405916 weston-launch-custom-error-function.patch fb1f97058723bca27fc80b41e97d6f30987ab5fa2861d07bc41df4755fe431e0900fb82fbd92fd235db30cbca7869b624ffb95a07c0dfe752379a3ff8690c4ef freerdp-2.0.0_rc2.patch"