Files
haikuports/kde-apps/kommit/kommit-1.6.0.recipe
2024-06-29 12:23:42 +02:00

156 lines
4.8 KiB
Bash

SUMMARY="Graphical Git Client"
DESCRIPTION="Git gui client for KDE."
HOMEPAGE="https://invent.kde.org/sdk/kommit/"
COPYRIGHT="2021-2024 Hamed Masafi"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="$HOMEPAGE/-/archive/v$portVersion/kommit-v$portVersion.tar.bz2"
CHECKSUM_SHA256="0320d15a3d50f5de75f3e0903554479d750036e7d15344b5e99d5396d40f6e10"
SOURCE_DIR="kommit-v$portVersion"
PATCHES="kommit-$portVersion.patchset"
ADDITIONAL_FILES="kommit.rdef.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= 0"
PROVIDES="
kommit$secondaryArchSuffix = $portVersion
cmd:kommit$secondaryArchSuffix = $portVersion
cmd:kommitdiff = $portVersion
cmd:kommitmerge = $portVersion
lib:libkommit$secondaryArchSuffix = $libVersionCompat
lib:libkommitdiff$secondaryArchSuffix = $libVersionCompat
lib:libkommitgui$secondaryArchSuffix = $libVersionCompat
lib:libkommitwidgets$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libgit2$secondaryArchSuffix
lib:libKF5Auth$secondaryArchSuffix
lib:libKF5Bookmarks$secondaryArchSuffix
lib:libKF5Codecs$secondaryArchSuffix
lib:libKF5Completion$secondaryArchSuffix
lib:libKF5ConfigGui$secondaryArchSuffix
lib:libKF5ConfigWidgets$secondaryArchSuffix
lib:libKF5CoreAddons$secondaryArchSuffix
lib:libKF5Crash$secondaryArchSuffix
lib:libKF5DbusAddons$secondaryArchSuffix
lib:libKF5I18n$secondaryArchSuffix
lib:libKF5ItemViews$secondaryArchSuffix
lib:libKF5KIOCore$secondaryArchSuffix
lib:libKF5JobWidgets$secondaryArchSuffix
lib:libKF5Parts$secondaryArchSuffix
lib:libKF5Service$secondaryArchSuffix
lib:libKF5Solid$secondaryArchSuffix
lib:libKF5SonnetCore$secondaryArchSuffix
lib:libKF5SyntaxHighlighting$secondaryArchSuffix
lib:libKF5TextEditor$secondaryArchSuffix
lib:libKF5TextWidgets$secondaryArchSuffix
lib:libKF5WidgetsAddons$secondaryArchSuffix
lib:libKF5WindowSystem$secondaryArchSuffix
lib:libKF5XmlGui$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5DBus$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQT5Concurrent$secondaryArchSuffix
lib:libQt5Network$secondaryArchSuffix
lib:libQt5Xml$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix
devel:libdolphinvcs$secondaryArchSuffix
devel:libgit2$secondaryArchSuffix >= 1.5.0
devel:libKF5Auth$secondaryArchSuffix
devel:libKF5Bookmarks$secondaryArchSuffix
devel:libKF5Codecs$secondaryArchSuffix
devel:libKF5Completion$secondaryArchSuffix
devel:libKF5ConfigCore$secondaryArchSuffix
devel:libKF5ConfigWidgets$secondaryArchSuffix
devel:libKF5CoreAddons$secondaryArchSuffix
devel:libKF5Crash$secondaryArchSuffix
devel:libKF5DbusAddons$secondaryArchSuffix
devel:libKF5DocTools$secondaryArchSuffix
devel:libKF5I18n$secondaryArchSuffix
devel:libKF5ItemViews$secondaryArchSuffix
devel:libKF5JobWidgets$secondaryArchSuffix
devel:libKF5KIOCore$secondaryArchSuffix
devel:libKF5Parts$secondaryArchSuffix
devel:libKF5Service$secondaryArchSuffix
devel:libKF5Solid$secondaryArchSuffix
devel:libKF5SyntaxHighlighting$secondaryArchSuffix
devel:libKF5SonnetCore$secondaryArchSuffix
devel:libKF5TextEditor$secondaryArchSuffix
devel:libKF5TextWidgets$secondaryArchSuffix
devel:libKF5WidgetsAddons$secondaryArchSuffix
devel:libKF5WindowSystem$secondaryArchSuffix
devel:libKF5XmlGui$secondaryArchSuffix
devel:libpcre$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
cmd:msgfmt
cmd:msgmerge
cmd:pkg_config$secondaryArchSuffix
cmd:qdbuscpp2xml$secondaryArchSuffix >= 5
"
TEST_REQUIRES="
qthaikuplugins$secondaryArchSuffix
"
PATCH()
{
# disable docs generation/installation
sed -e '/kdoctools_install(po)/ s/^#*/#/' -i CMakeLists.txt
}
BUILD()
{
cmake -Bbuild -S. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DKDE_INSTALL_PLUGINDIR=$addOnsDir/Qt5 \
-DKDE_INSTALL_QMLDIR=$dataDir/Qt5/qml \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake
make -C build $jobArgs
}
INSTALL()
{
make -C build install
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local APP_NAME="Mednaffe"
local LONG_INFO="$SUMMARY"
local APP_SIGNATURE="application/x-vnd.kommit"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
-e "s|@APP_NAME@|$APP_NAME|" \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
$portDir/additional-files/kommit.rdef.in > kommit.rdef
addResourcesToBinaries kommit.rdef $binDir/kommit
addAppDeskbarSymlink $binDir/kommit Kommit
}
TEST()
{
export LIBRARY_PATH="$sourceDir/build/bin${LIBRARY_PATH:+:$LIBRARY_PATH}"
make -C build test
}