Files
haikuports/dev-db/futuresql/futuresql-0.1.1.recipe
2023-12-02 09:45:37 +01:00

82 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="1"
SOURCE_URI="$HOMEPAGE/-/archive/703c70ec0323da1a6e988f13b3078c11e60a375a/futuresql-703c70ec0323da1a6e988f13b3078c11e60a375a.tar.bz2"
CHECKSUM_SHA256="e3c30a7a98c1522e19f51b32c44540cc49a7b303868876a85ced814d1b5bd486"
SOURCE_DIR="futuresql-703c70ec0323da1a6e988f13b3078c11e60a375a"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="!x86"
PROVIDES="
futuresql$secondaryArchSuffix = $portVersion
lib:libfuturesql5$secondaryArchSuffix = 0
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Sql$secondaryArchSuffix
"
PROVIDES_devel="
futuresql${secondaryArchSuffix}_devel = $portVersion
devel:libfuturesql5$secondaryArchSuffix = 0
"
REQUIRES_devel="
futuresql$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix >= 5.93.0
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()
{
make check
}