libxkbcommon: add recipe

This commit is contained in:
Gerasim Troeglazov
2022-11-17 20:20:58 +10:00
parent 841387d06e
commit 614dd2038d

View File

@@ -0,0 +1,102 @@
SUMMARY="Keymap handling library for toolkits and window systems"
DESCRIPTION="libxkbcommon is a keyboard keymap compiler and support library which processes a \
reduced subset of keymaps as defined by the XKB (X Keyboard Extension) specification. It also \
contains a module for handling Compose and dead keys and a separate library for listing available \
keyboard layouts."
HOMEPAGE="https://xkbcommon.org/"
COPYRIGHT="2009-2012 2016 Daniel Stone
2012 Ran Benita
2010 2012 Intel Corporation
2008 2009 Dan Nicholson
2010 Francisco Jerez
1985-1998 The Open Group
1993-1996 by Silicon Graphics Computer Systems, Inc.
1987-1988 by Digital Equipment Corporation, Maynard, Massachusetts.
2011 Joseph Adams
1996 by Joseph Moss
2002-2007 Free Software Foundation, Inc.
2003-2004 Dmitry Golubev
2004 Gregory Mokhin
2006 Erdal Ronahî
1992 by Oki Technosystems Laboratory, Inc.
1992 by Fuji Xerox Co., Ltd."
LICENSE="MIT"
REVISION="1"
SOURCE_URI="https://xkbcommon.org/download/libxkbcommon-$portVersion.tar.xz"
CHECKSUM_SHA256="943c07a1e2198026d8102b17270a1f406e4d3d6bbc4ae105b9e1b82d7d136b39"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="0.0.0"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
libxkbcommon$secondaryArchSuffix = $portVersion
cmd:xkbcli
lib:libxkbcommon$secondaryArchSuffix = $libVersionCompat
lib:libxkbregistry$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
xkeyboard_config
lib:libxml2$secondaryArchSuffix
lib:libwayland_client$secondaryArchSuffix
lib:libwayland_server$secondaryArchSuffix
"
PROVIDES_devel="
libxkbcommon${secondaryArchSuffix}_devel = $portVersion
devel:libxkbcommon$secondaryArchSuffix = $libVersionCompat
devel:libxkbregistry$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
libxkbcommon$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
wayland_protocols$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libwayland_client$secondaryArchSuffix
devel:libwayland_server$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:bison
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 \
--libexecdir=$libDir \
--mandir=$manDir \
-Denable-x11=false \
-Denable-docs=false
ninja -C build
}
INSTALL()
{
ninja -C build install
prepareInstalledDevelLibs libxkbcommon libxkbregistry
fixPkgconfig
packageEntries devel \
$developDir
}
TEST()
{
ninja -C build test
}