0
0
Fork 0
haikuports/media-gfx/krita/krita-4.4.8.recipe

204 lines
6.8 KiB
Bash

SUMMARY="Professional FREE and open source painting program"
DESCRIPTION="Krita is a free and open-source raster graphics editor designed primarily \
for digital painting and animation purposes. It features a low-distract UI, high-quality \
OpenGL accelerated canvas, color management support, advanced brush engine, non-destructive \
layers and masks, group-based layer management, vector artwork support and switchable customization profiles."
HOMEPAGE="https://www.krita.org/"
COPYRIGHT="2010-2021 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="1"
SOURCE_URI="https://download.kde.org/stable/krita/$portVersion/krita-$portVersion.tar.xz"
CHECKSUM_SHA256="45112bf9d59beaf70de1e221699711a66b617a680d07e59d037d3b93ae77f450"
SOURCE_DIR="krita-$portVersion"
PATCHES="krita-$portVersion.patchset
krita-openexr3.patch"
ADDITIONAL_FILES="
krita.rdef.in
icons.zip
"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
krita$secondaryArchSuffix = $portVersion
app:Krita$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libboost_system$secondaryArchSuffix
lib:libexiv2$secondaryArchSuffix
lib:libexpat$secondaryArchSuffix
lib:libfftw3$secondaryArchSuffix
lib:libgif$secondaryArchSuffix >= 7
lib:libgsl$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libIex_3_0$secondaryArchSuffix
lib:libIlmThread_3_0$secondaryArchSuffix
lib:libImath_3_0$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libKF5Archive$secondaryArchSuffix
lib:libKF5Auth$secondaryArchSuffix
lib:libKF5Bookmarks$secondaryArchSuffix
lib:libKF5Codecs$secondaryArchSuffix
lib:libKF5Completion$secondaryArchSuffix
lib:libKF5ConfigCore$secondaryArchSuffix
lib:libKF5ConfigGui$secondaryArchSuffix
lib:libKF5ConfigWidgets$secondaryArchSuffix
lib:libKF5CoreAddons$secondaryArchSuffix
lib:libKF5Crash$secondaryArchSuffix
lib:libKF5GuiAddons$secondaryArchSuffix
lib:libKF5I18n$secondaryArchSuffix
lib:libKF5IconThemes$secondaryArchSuffix
lib:libKF5ItemModels$secondaryArchSuffix
lib:libKF5ItemViews$secondaryArchSuffix
lib:libKF5JobWidgets$secondaryArchSuffix
lib:libKF5KDELibs4Support$secondaryArchSuffix
lib:libKF5KIOCore$secondaryArchSuffix
lib:libKF5KIOFileWidgets$secondaryArchSuffix
lib:libKF5KIOWidgets$secondaryArchSuffix
lib:libKF5Notifications$secondaryArchSuffix
lib:libKF5Parts$secondaryArchSuffix
lib:libKF5Service$secondaryArchSuffix
lib:libKF5Solid$secondaryArchSuffix
lib:libKF5SonnetUi$secondaryArchSuffix
lib:libKF5TextWidgets$secondaryArchSuffix
lib:libKF5UnitConversion$secondaryArchSuffix
lib:libKF5WidgetsAddons$secondaryArchSuffix
lib:libKF5WindowSystem$secondaryArchSuffix
lib:libKF5XmlGui$secondaryArchSuffix
lib:liblcms2$secondaryArchSuffix
lib:libOpenColorIO$secondaryArchSuffix
lib:libOpenEXR_3_0$secondaryArchSuffix
lib:libOpenEXRUtil_3_0$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libpoppler_qt5$secondaryArchSuffix
lib:libQt5Concurrent$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Multimedia$secondaryArchSuffix
lib:libQt5Network$secondaryArchSuffix
lib:libQt5PrintSupport$secondaryArchSuffix
lib:libQt5Svg$secondaryArchSuffix
lib:libQt5Widgets$secondaryArchSuffix
lib:libQt5Xml$secondaryArchSuffix
lib:libquazip5$secondaryArchSuffix
lib:libraw$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix >= 5.80
devel:eigen$secondaryArchSuffix
devel:libboost_system$secondaryArchSuffix >= 1.70.0
devel:libexiv2$secondaryArchSuffix
devel:libexpat$secondaryArchSuffix
devel:libfftw3$secondaryArchSuffix
devel:libgif$secondaryArchSuffix >= 7
devel:libgsl$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libIex_3_0$secondaryArchSuffix
devel:libIlmThread_3_0$secondaryArchSuffix
devel:libImath_3_0$secondaryArchSuffix
devel:libKF5Archive$secondaryArchSuffix
devel:libKF5Auth$secondaryArchSuffix
devel:libKF5Bookmarks$secondaryArchSuffix
devel:libKF5Codecs$secondaryArchSuffix
devel:libKF5Completion$secondaryArchSuffix
devel:libKF5ConfigCore$secondaryArchSuffix
devel:libKF5ConfigGui$secondaryArchSuffix
devel:libKF5ConfigWidgets$secondaryArchSuffix
devel:libKF5CoreAddons$secondaryArchSuffix
devel:libKF5Crash$secondaryArchSuffix
devel:libKF5GuiAddons$secondaryArchSuffix
devel:libKF5I18n$secondaryArchSuffix
devel:libKF5IconThemes$secondaryArchSuffix
devel:libKF5ItemModels$secondaryArchSuffix
devel:libKF5ItemViews$secondaryArchSuffix
devel:libKF5JobWidgets$secondaryArchSuffix
devel:libKF5KDELibs4Support$secondaryArchSuffix
devel:libKF5KIOCore$secondaryArchSuffix
devel:libKF5KIOFileWidgets$secondaryArchSuffix
devel:libKF5KIOWidgets$secondaryArchSuffix
devel:libKF5Notifications$secondaryArchSuffix
devel:libKF5Parts$secondaryArchSuffix
devel:libKF5Service$secondaryArchSuffix
devel:libKF5Solid$secondaryArchSuffix
devel:libKF5SonnetUi$secondaryArchSuffix
devel:libKF5TextWidgets$secondaryArchSuffix
devel:libKF5UnitConversion$secondaryArchSuffix
devel:libKF5WidgetsAddons$secondaryArchSuffix
devel:libKF5WindowSystem$secondaryArchSuffix
devel:libKF5XmlGui$secondaryArchSuffix
devel:liblcms2$secondaryArchSuffix
devel:libOpenColorIO$secondaryArchSuffix
devel:libOpenEXR_3_0$secondaryArchSuffix
devel:libOpenEXRUtil_3_0$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libpoppler_qt5$secondaryArchSuffix >= 1.26
devel:libQt5Core$secondaryArchSuffix >= 5.15
devel:libquazip5$secondaryArchSuffix
devel:libraw$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:lrelease$secondaryArchSuffix >= 5
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python3
cmd:unzip
"
PATCH()
{
unzip -o $sourceDir/../../additional-files/icons.zip -d $sourceDir
}
BUILD()
{
mkdir -p build
cd build
cmake .. \
-DCMAKE_INSTALL_PREFIX=$appsDir/Krita \
-DSHARE_INSTALL_PREFIX=$appsDir/Krita/share \
-DCMAKE_BUILD_TYPE=release \
-DBUILD_TESTING=FALSE \
-DHIDE_SAFE_ASSERTS=TRUE \
-DUSE_LOCK_FREE_HASH_TABLE=FALSE \
-DOPENEXR_INCLUDE_DIR:PATH=/system/$relativeIncludeDir/OpenEXR \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake
make $jobArgs
}
INSTALL()
{
cd build
make install
mkdir -p $dataDir
mv $appsDir/Krita/share/locale $dataDir
mv $appsDir/Krita/bin/krita $appsDir/Krita/Krita
rm -rf $appsDir/Krita/bin
local APP_SIGNATURE="application/x-vnd.qt5-krita"
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local LONG_INFO="$SUMMARY"
sed \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
$portDir/additional-files/krita.rdef.in > krita.rdef
addResourcesToBinaries krita.rdef $appsDir/Krita/Krita
mimeset -f $appsDir/Krita/Krita
addAppDeskbarSymlink $appsDir/Krita/Krita
}