Files
haikuports/kde-frameworks/kconfig/kconfig-5.115.0.recipe
2024-03-01 21:58:59 +10:00

105 lines
2.9 KiB
Bash

SUMMARY="Persistent platform-independent application settings"
DESCRIPTION="KConfig provides an advanced configuration system. It is made \
of two parts: KConfigCore and KConfigGui.
KConfigCore provides access to the configuration files themselves. It features:
* Code generation: describe your configuration in an XML file, and use \
kconfig_compiler to generate classes that read and write configuration \
entries.
* Cascading configuration files (global settings overridden by local settings).
* Optional shell expansion support (see [docs/options.md](@ref options)).
* The ability to lock down configuration options (see [docs/options.md](@ref \
options)).
KConfigGui provides a way to hook widgets to the configuration so that they \
are automatically initialized from the configuration and automatically \
propagate their changes to their respective configuration files."
HOMEPAGE="https://invent.kde.org/frameworks/kconfig/"
COPYRIGHT="2010-2024 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="3"
SOURCE_URI="https://download.kde.org/stable/frameworks/${portVersion%.*}/kconfig-${portVersion}.tar.xz"
CHECKSUM_SHA256="bd692b2adf56c54a0fb1e2d402becdc326a8df8ceb89bef9f48361e1b1788612"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
kconfig$secondaryArchSuffix = $portVersion
cmd:kreadconfig5$secondaryArchSuffix = $portVersion
cmd:kwriteconfig5$secondaryArchSuffix = $portVersion
lib:libKF5ConfigCore$secondaryArchSuffix = $portVersion compat >= 5
lib:libKF5ConfigGui$secondaryArchSuffix = $portVersion compat >= 5
lib:libKF5ConfigQml$secondaryArchSuffix = $portVersion compat >= 5
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Xml$secondaryArchSuffix
"
PROVIDES_devel="
kconfig${secondaryArchSuffix}_devel = $portVersion
devel:libKF5ConfigCore$secondaryArchSuffix = $portVersion compat >= 5
devel:libKF5ConfigGui$secondaryArchSuffix = $portVersion compat >= 5
devel:libKF5ConfigQml$secondaryArchSuffix = $portVersion compat >= 5
"
REQUIRES_devel="
kconfig$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix >= $portVersion
devel:libQt5Core$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:lrelease$secondaryArchSuffix >= 5
cmd:make
"
PATCH()
{
sed -e '/platforms:/ a \ \ \ \ - name: Haiku' -i $sourceDir/metainfo.yaml
}
BUILD()
{
mkdir -p build
cd build
cmake .. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DECM_MKSPECS_INSTALL_DIR=$dataDir/Qt5/mkspecs \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake
make $jobArgs
}
INSTALL()
{
cd build
make install
prepareInstalledDevelLibs \
libKF5ConfigCore \
libKF5ConfigGui \
libKF5ConfigQml
fixPkgconfig
packageEntries devel \
$libDir/cmake \
$dataDir/Qt5/mkspecs \
$developDir
}
TEST()
{
cd build
make test
}