SUMMARY="Core Wayland protocols and libraries" DESCRIPTION="Wayland is a project to define a protocol for a compositor to talk to its clients as \ well as a library implementation of the protocol. The compositor can be a standalone display \ server running on Linux kernel modesetting and evdev input devices, an X application, or a wayland \ client itself. The clients can be traditional applications, X servers (rootless or fullscreen) or \ other display servers. The wayland protocol is essentially only about input handling and buffer management. The \ compositor receives input events and forwards them to the relevant client. The clients creates \ buffers and renders into them and notifies the compositor when it needs to redraw. The protocol \ also handles drag and drop, selections, window management and other interactions that must go \ through the compositor. However, the protocol does not handle rendering, which is one of the \ features that makes wayland so simple. All clients are expected to handle rendering themselves, \ typically through cairo or OpenGL. The weston compositor is a reference implementation of a wayland compositor and the weston \ repository also includes a few example clients." HOMEPAGE="https://gitlab.freedesktop.org/wayland/wayland" COPYRIGHT="2008-2012 Kristian Høgsberg 2010-2012 Intel Corporation 2011 Benjamin Franzke 2012 Collabora, Ltd." LICENSE="MIT" REVISION="2" srcGitRev="0cf06ac5dcb38b2f38778f002df306cd42b62b23" SOURCE_URI="https://github.com/X547/wayland/archive/$srcGitRev.tar.gz" CHECKSUM_SHA256="7b16c96604e039e09bacdf72c793531d59e7a7fda97673b9f8a07c46db2ec95f" SOURCE_DIR="wayland-$srcGitRev" ARCHITECTURES="all !x86_gcc2" SECONDARY_ARCHITECTURES="x86" libVersion="0.21.90" libVersionCompat="$libVersion compat >= ${libVersion%%.*}" libEGLVersion="1.21.90" libEGLVersionCompat="$libEGLVersion compat >= ${libEGLVersion%%.*}" PROVIDES=" wayland$secondaryArchSuffix = $portVersion cmd:wayland_scanner lib:libwayland_client$secondaryArchSuffix = $libVersionCompat lib:libwayland_cursor$secondaryArchSuffix = $libVersionCompat lib:libwayland_egl$secondaryArchSuffix = $libEGLVersionCompat lib:libwayland_server$secondaryArchSuffix = $libVersionCompat " REQUIRES=" haiku$secondaryArchSuffix lib:libexpat$secondaryArchSuffix lib:libffi$secondaryArchSuffix lib:libxml2$secondaryArchSuffix " PROVIDES_devel=" wayland${secondaryArchSuffix}_devel = $portVersion devel:libwayland_client$secondaryArchSuffix = $libVersionCompat devel:libwayland_cursor$secondaryArchSuffix = $libVersionCompat devel:libwayland_egl$secondaryArchSuffix = $libEGLVersionCompat devel:libwayland_server$secondaryArchSuffix = $libVersionCompat " REQUIRES_devel=" wayland$secondaryArchSuffix == $portVersion base devel:libffi$secondaryArchSuffix " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel devel:libexpat$secondaryArchSuffix devel:libffi$secondaryArchSuffix devel:libxml2$secondaryArchSuffix " BUILD_PREREQUIRES=" cmd:cmake cmd:gcc$secondaryArchSuffix cmd:meson cmd:ninja cmd:pkg_config$secondaryArchSuffix " BUILD() { meson build --buildtype=release \ --prefix=$prefix \ --datadir=$dataDir \ --includedir=$includeDir \ --libdir=$libDir \ -Ddocumentation=false ninja -C build } TEST_REQUIRES=" cmd:awk cmd:diff " INSTALL() { ninja -C build install prepareInstalledDevelLibs \ libwayland-client libwayland-cursor libwayland-egl libwayland-server fixPkgconfig packageEntries devel \ $developDir } TEST() { ninja -C build test }