Files
haikuports/dev-db/futuresql/futuresql_qt5-0.1.1.recipe
2024-05-03 14:52:32 +02:00

83 lines
2.1 KiB
Bash

SUMMARY="A non-blocking database framework for Qt"
DESCRIPTION="FutureSQL was in part inspired by Diesel, and provides a higher level of abstraction \
than QtSql. Its features include non-blocking database access by default, relatively \
boilderplate-free queries, automatic database migrations and simple mapping to objects.
In order to make FutureSQL's use of templates less confusing, FutureSQL uses C++20 concepts, and \
requires a C++20 compiler.
Warning: The API is not finalized yet."
HOMEPAGE="https://invent.kde.org/libraries/futuresql"
COPYRIGHT="2022 Jonah Brüchert"
LICENSE="BSD (2-clause)"
REVISION="3"
SOURCE_URI="https://download.kde.org/stable/futuresql/futuresql-$portVersion.tar.xz"
CHECKSUM_SHA256="e44ed8d5a9618b3ca7ba2983ed9c5f7572e6e0a5b199f94868834b71ccbebd43"
SOURCE_DIR="futuresql-$portVersion"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
futuresql_qt5$secondaryArchSuffix = $portVersion
lib:libfuturesql5$secondaryArchSuffix = 0
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Sql$secondaryArchSuffix
"
PROVIDES_devel="
futuresql_qt5${secondaryArchSuffix}_devel = $portVersion
devel:libfuturesql5$secondaryArchSuffix = 0
"
REQUIRES_devel="
futuresql_qt5$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix
devel:libQCoro5Core$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:qdbuscpp2xml$secondaryArchSuffix >= 5
"
PATCH()
{
sed -e '/platforms:/ a \ \ \ \ - name: Haiku' -i $sourceDir/metainfo.yaml
}
BUILD()
{
cmake -Bbuild -S. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake
make -C build $jobArgs
}
INSTALL()
{
make -C build install
prepareInstalledDevelLib \
libfuturesql5
packageEntries devel \
$libDir/cmake \
$developDir
}
TEST()
{
export LIBRARY_PATH="$sourceDir/build/bin${LIBRARY_PATH:+:$LIBRARY_PATH}"
make -C build test
}