Files
haikuports/kde-frameworks/purpose/purpose-5.93.0.recipe
Gerasim Troeglazov 19a6352c1d purpose: add recipe
2022-05-09 21:42:37 +10:00

132 lines
4.4 KiB
Bash

SUMMARY="Library for providing abstractions to get the developer's purposes fulfilled"
DESCRIPTION="This framework offers the possibility to create integrate services and \
actions on any application without having to implement them specifically. Purpose \
will offer them mechanisms to list the different alternatives to execute given the \
requested action type and will facilitate components so that all the plugins can \
receive all the information they need."
HOMEPAGE="https://github.com/KDE/purpose"
COPYRIGHT="2010-2022 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="1"
SOURCE_URI="https://github.com/KDE/purpose/archive/v$portVersion.tar.gz"
CHECKSUM_SHA256="aeb7c9977cd1cbbb19caa51d00edbf21d6ed21e895ba35d707d27c1f601f55da"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
purpose$secondaryArchSuffix = $portVersion
lib:libKF5Purpose$secondaryArchSuffix = $portVersion compat >= 5
lib:libKF5PurposeWidgets$secondaryArchSuffix = $portVersion compat >= 5
lib:libPhabricatorHelpers$secondaryArchSuffix = $portVersion compat >= 5
lib:libReviewboardHelpers$secondaryArchSuffix = $portVersion compat >= 5
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libKF5Auth$secondaryArchSuffix
lib:libKF5Bookmarks$secondaryArchSuffix
lib:libKF5Codecs$secondaryArchSuffix
lib:libKF5Completion$secondaryArchSuffix
lib:libKF5ConfigCore$secondaryArchSuffix
lib:libKF5ConfigWidgets$secondaryArchSuffix
lib:libKF5CoreAddons$secondaryArchSuffix
lib:libKF5I18n$secondaryArchSuffix
lib:libKF5ItemViews$secondaryArchSuffix
lib:libKF5JobWidgets$secondaryArchSuffix
lib:libKF5KIOCore$secondaryArchSuffix
lib:libKF5Kirigami2$secondaryArchSuffix
lib:libKF5Notifications$secondaryArchSuffix
lib:libKF5Service$secondaryArchSuffix
lib:libKF5Solid$secondaryArchSuffix
lib:libKF5WidgetsAddons$secondaryArchSuffix
lib:libKF5WindowSystem$secondaryArchSuffix
lib:libKF5XmlGui$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
"
PROVIDES_devel="
purpose${secondaryArchSuffix}_devel = $portVersion
devel:libKF5Purpose$secondaryArchSuffix = $portVersion compat >= 5
devel:libKF5PurposeWidgets$secondaryArchSuffix = $portVersion compat >= 5
devel:libPhabricatorHelpers$secondaryArchSuffix = $portVersion compat >= 5
devel:libReviewboardHelpers$secondaryArchSuffix = $portVersion compat >= 5
"
REQUIRES_devel="
purpose$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix >= $portVersion
devel:libKF5Auth$secondaryArchSuffix == $portVersion
devel:libKF5Bookmarks$secondaryArchSuffix == $portVersion
devel:libKF5Codecs$secondaryArchSuffix == $portVersion
devel:libKF5Completion$secondaryArchSuffix == $portVersion
devel:libKF5ConfigCore$secondaryArchSuffix == $portVersion
devel:libKF5ConfigWidgets$secondaryArchSuffix == $portVersion
devel:libKF5CoreAddons$secondaryArchSuffix == $portVersion
devel:libKF5I18n$secondaryArchSuffix == $portVersion
devel:libKF5ItemViews$secondaryArchSuffix == $portVersion
devel:libKF5JobWidgets$secondaryArchSuffix == $portVersion
devel:libKF5KIOCore$secondaryArchSuffix == $portVersion
devel:libKF5Kirigami2$secondaryArchSuffix == $portVersion
devel:libKF5Notifications$secondaryArchSuffix == $portVersion
devel:libKF5Service$secondaryArchSuffix == $portVersion
devel:libKF5Solid$secondaryArchSuffix == $portVersion
devel:libKF5WidgetsAddons$secondaryArchSuffix == $portVersion
devel:libKF5WindowSystem$secondaryArchSuffix == $portVersion
devel:libKF5XmlGui$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
sed -e '/ecm_find_qmlmodule/ s/^#*/#/' -i $sourceDir/src/plugins/CMakeLists.txt
sed -e '/find_package(KAccounts)/ s/^#*/#/' -i $sourceDir/src/plugins/CMakeLists.txt
}
BUILD()
{
mkdir -p build
cd build
cmake .. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DKDE_INSTALL_QMLDIR=$dataDir/Qt5/qml \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake \
-DKDE_INSTALL_PLUGINDIR=$addOnsDir/Qt5 \
-DKDE_INSTALL_QTPLUGINDIR=$addOnsDir/Qt5 \
-DBUILD_EXAMPLES=OFF
make $jobArgs
}
INSTALL()
{
cd build
make install
prepareInstalledDevelLibs \
libKF5Purpose \
libKF5PurposeWidgets \
libPhabricatorHelpers \
libReviewboardHelpers
packageEntries devel \
$libDir/cmake \
$developDir
}
TEST()
{
cd build
make test
}