mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-29 11:38:52 +02:00
279 lines
8.8 KiB
Bash
279 lines
8.8 KiB
Bash
SUMMARY="The popular image manipulation software"
|
|
DESCRIPTION="GIMP is a cross-platform image editor available for GNU/Linux, \
|
|
macOS, Windows and more operating systems.
|
|
Whether you are a graphic designer, photographer, illustrator, or scientist, \
|
|
GIMP provides you with sophisticated tools to get your job done. You can further \
|
|
enhance your productivity with GIMP thanks to many customization options \
|
|
and 3rd party plugins."
|
|
HOMEPAGE="https://www.gimp.org/"
|
|
COPYRIGHT="The GIMP Team"
|
|
LICENSE="GNU GPL v3"
|
|
REVISION="1"
|
|
SOURCE_URI="https://download.gimp.org/mirror/pub/gimp/v${portVersion%.*}/gimp-$portVersion.tar.xz"
|
|
CHECKSUM_SHA256="2618391416e51be3c693df9ef90e3860ed72ab3d36363ea1f196e30b75b2e083"
|
|
PATCHES="gimp-$portVersion.patchset"
|
|
ADDITIONAL_FILES="
|
|
gimp.rdef.in
|
|
gimp-splash.png
|
|
"
|
|
|
|
ARCHITECTURES="ALL !x86_gcc2"
|
|
SECONDARY_ARCHITECTURES="x86"
|
|
|
|
GLOBAL_WRITABLE_FILES="
|
|
settings/gimp/3.0/controllerrc keep-old
|
|
settings/gimp/3.0/gimp.css keep-old
|
|
settings/gimp/3.0/gimprc keep-old
|
|
settings/gimp/3.0/sessionrc keep-old
|
|
settings/gimp/3.0/templaterc keep-old
|
|
settings/gimp/3.0/toolrc keep-old
|
|
settings/gimp/3.0/unitrc keep-old
|
|
"
|
|
|
|
commandSuffix=$secondaryArchSuffix
|
|
commandBinDir=$binDir
|
|
if [ "$targetArchitecture" = x86_gcc2 ]; then
|
|
commandSuffix=
|
|
commandBinDir=$prefix/bin
|
|
fi
|
|
|
|
libVersion="0.200.0"
|
|
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
|
|
|
|
PROVIDES="
|
|
gimp$secondaryArchSuffix = $portVersion
|
|
app:GIMP = $portVersion
|
|
cmd:gimp$commandSuffix = $portVersion
|
|
cmd:gimp_3$commandSuffix = $portVersion
|
|
cmd:gimp_3.2$commandSuffix = $portVersion
|
|
cmd:gimp_console$commandSuffix = $portVersion
|
|
cmd:gimp_console_3$commandSuffix = $portVersion
|
|
cmd:gimp_console_3.2$commandSuffix = $portVersion
|
|
cmd:gimp_debug_tool$commandSuffix = $portVersion
|
|
cmd:gimp_debug_tool_3$commandSuffix = $portVersion
|
|
cmd:gimp_debug_tool_3.2$commandSuffix = $portVersion
|
|
cmd:gimp_script_fu_interpreter_3.0$commandSuffix = $portVersion
|
|
cmd:gimp_test_clipboard$commandSuffix = $portVersion
|
|
cmd:gimp_test_clipboard_3$commandSuffix = $portVersion
|
|
cmd:gimp_test_clipboard_3.2$commandSuffix = $portVersion
|
|
cmd:gimptool$commandSuffix = $portVersion
|
|
cmd:gimptool_3$commandSuffix = $portVersion
|
|
cmd:gimptool_3.2$commandSuffix = $portVersion
|
|
lib:libgimp_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimp_scriptfu_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimpbase_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimpcolor_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimpconfig_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimpmath_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimpmodule_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimpthumb_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimpui_3.0$secondaryArchSuffix = $libVersionCompat
|
|
lib:libgimpwidgets_3.0$secondaryArchSuffix = $libVersionCompat
|
|
"
|
|
REQUIRES="
|
|
haiku$secondaryArchSuffix
|
|
mypaint_brushes
|
|
shared_mime_info$secondaryArchSuffix
|
|
lib:libappstream$secondaryArchSuffix
|
|
lib:libappstream_glib$secondaryArchSuffix
|
|
lib:libarchive$secondaryArchSuffix
|
|
lib:libatk_1.0$secondaryArchSuffix
|
|
lib:libavif$secondaryArchSuffix
|
|
lib:libbabl_0.1$secondaryArchSuffix
|
|
lib:libcairo$secondaryArchSuffix
|
|
# lib:libexecinfo$secondaryArchSuffix
|
|
lib:libexiv2$secondaryArchSuffix
|
|
lib:libexpat$secondaryArchSuffix
|
|
lib:libfontconfig$secondaryArchSuffix
|
|
lib:libfreetype$secondaryArchSuffix
|
|
lib:libfribidi$secondaryArchSuffix
|
|
lib:libgegl_0.4$secondaryArchSuffix
|
|
lib:libgexiv2$secondaryArchSuffix
|
|
lib:libgdk_3$secondaryArchSuffix
|
|
lib:libgdk_pixbuf_2.0$secondaryArchSuffix
|
|
lib:libgirepository_1.0$secondaryArchSuffix
|
|
lib:libglib_2.0$secondaryArchSuffix
|
|
lib:libglib_networking_2.0$secondaryArchSuffix
|
|
lib:libgtk_3$secondaryArchSuffix
|
|
lib:libharfbuzz$secondaryArchSuffix
|
|
lib:libheif$secondaryArchSuffix
|
|
lib:libintl$secondaryArchSuffix
|
|
lib:libjson_c$secondaryArchSuffix
|
|
lib:libjson_glib_1.0$secondaryArchSuffix
|
|
lib:libjpeg$secondaryArchSuffix
|
|
lib:libjxl$secondaryArchSuffix
|
|
lib:liblcms2$secondaryArchSuffix
|
|
lib:liblzma$secondaryArchSuffix
|
|
lib:libmng$secondaryArchSuffix
|
|
lib:libmypaint$secondaryArchSuffix
|
|
lib:libOpenEXR_3_2$secondaryArchSuffix
|
|
lib:libOpenEXRUtil_3_2$secondaryArchSuffix
|
|
lib:libopenjp2$secondaryArchSuffix
|
|
lib:libpango_1.0$secondaryArchSuffix
|
|
lib:libpangocairo_1.0$secondaryArchSuffix
|
|
lib:libpng16$secondaryArchSuffix
|
|
lib:libpoppler$secondaryArchSuffix
|
|
lib:libpoppler_glib$secondaryArchSuffix
|
|
lib:librsvg_2$secondaryArchSuffix
|
|
lib:libtiff$secondaryArchSuffix
|
|
lib:libuuid$secondaryArchSuffix
|
|
lib:libwebp$secondaryArchSuffix
|
|
lib:libwmf_0.2$secondaryArchSuffix
|
|
lib:libxml2$secondaryArchSuffix
|
|
lib:libxslt$secondaryArchSuffix
|
|
lib:libz$secondaryArchSuffix
|
|
"
|
|
|
|
ARCHITECTURES_doc="any"
|
|
PROVIDES_doc="
|
|
gimp_doc
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
packaging_python310
|
|
pygobject_python310
|
|
pygments_python310
|
|
mypaint_brushes
|
|
wayland_protocols
|
|
devel:libappstream$secondaryArchSuffix
|
|
devel:libappstream_glib$secondaryArchSuffix
|
|
devel:libarchive$secondaryArchSuffix
|
|
devel:libatk_1.0$secondaryArchSuffix
|
|
devel:libavif$secondaryArchSuffix
|
|
devel:libbabl_0.1$secondaryArchSuffix
|
|
devel:libcrypto$secondaryArchSuffix >= 3
|
|
# devel:libexecinfo$secondaryArchSuffix
|
|
devel:libexiv2$secondaryArchSuffix
|
|
devel:libexpat$secondaryArchSuffix
|
|
devel:libcairo$secondaryArchSuffix
|
|
devel:libfontconfig$secondaryArchSuffix
|
|
devel:libfreetype$secondaryArchSuffix
|
|
devel:libfribidi$secondaryArchSuffix
|
|
devel:libgegl_0.4$secondaryArchSuffix
|
|
devel:libgexiv2$secondaryArchSuffix
|
|
devel:libgdk_3$secondaryArchSuffix
|
|
devel:libgdk_pixbuf_2.0$secondaryArchSuffix
|
|
devel:libgirepository_1.0$secondaryArchSuffix
|
|
devel:libgtk_3$secondaryArchSuffix
|
|
devel:libglib_2.0$secondaryArchSuffix
|
|
devel:libharfbuzz$secondaryArchSuffix
|
|
devel:libheif$secondaryArchSuffix
|
|
devel:libjson_c$secondaryArchSuffix
|
|
devel:libjson_glib_1.0$secondaryArchSuffix
|
|
devel:libjpeg$secondaryArchSuffix
|
|
devel:libjxl$secondaryArchSuffix >= 0.11
|
|
devel:liblcms2$secondaryArchSuffix
|
|
devel:liblzma$secondaryArchSuffix
|
|
devel:libmng$secondaryArchSuffix
|
|
devel:libmypaint$secondaryArchSuffix
|
|
devel:libOpenEXR_3_2$secondaryArchSuffix
|
|
devel:libopenjp2$secondaryArchSuffix
|
|
devel:libpango_1.0$secondaryArchSuffix
|
|
devel:libpng16$secondaryArchSuffix
|
|
devel:libpoppler$secondaryArchSuffix >= 155
|
|
devel:libpoppler_glib$secondaryArchSuffix >= 8.31
|
|
devel:librsvg_2$secondaryArchSuffix
|
|
devel:libssl$secondaryArchSuffix >= 3
|
|
devel:libtiff$secondaryArchSuffix
|
|
devel:libuuid$secondaryArchSuffix >= 1.3
|
|
devel:libwayland_client$secondaryArchSuffix
|
|
devel:libwayland_server$secondaryArchSuffix
|
|
devel:libwebp$secondaryArchSuffix
|
|
devel:libwmf$secondaryArchSuffix
|
|
devel:libxml2$secondaryArchSuffix
|
|
devel:libxslt$secondaryArchSuffix
|
|
devel:libz$secondaryArchSuffix
|
|
lib:libglib_networking_2.0$secondaryArchSuffix
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
bash_completion
|
|
cmd:bison
|
|
cmd:cmake
|
|
cmd:flex
|
|
cmd:gcc$secondaryArchSuffix
|
|
cmd:gi_docgen
|
|
cmd:gtkdocize
|
|
cmd:intltool_update
|
|
cmd:ld$secondaryArchSuffix
|
|
cmd:libtoolize$secondaryArchSuffix
|
|
cmd:make
|
|
cmd:meson
|
|
cmd:msgfmt$secondaryArchSuffix
|
|
cmd:ninja
|
|
cmd:perl
|
|
cmd:pkg_config$secondaryArchSuffix
|
|
cmd:update_mime_database$secondaryArchSuffix
|
|
"
|
|
|
|
BUILD()
|
|
{
|
|
LDFLAGS="-lnetwork" \
|
|
meson Build \
|
|
--buildtype=release \
|
|
--prefix="$prefix" \
|
|
--libdir="$libDir" \
|
|
--includedir="$includeDir" \
|
|
--bindir="$commandBinDir" \
|
|
--libexecdir="$commandBinDir" \
|
|
--datadir="$dataDir" \
|
|
--localedir="$dataDir/locale" \
|
|
--sysconfdir="$settingsDir" \
|
|
-Dgimpdir="GIMP/3.0" \
|
|
-Dshmem-type=posix \
|
|
-Dcheck-update=no \
|
|
-Dxcursor=disabled \
|
|
-Denable-console-bin=true
|
|
|
|
ninja -v -C Build
|
|
|
|
cp -f $portDir/additional-files/gimp-splash.png $sourceDir/Build/gimp-data/images/
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
ninja install -C Build
|
|
|
|
# Symlink for application
|
|
mkdir -p $appsDir
|
|
mv $commandBinDir/gimp-3.2 $appsDir/GIMP
|
|
ln -s $appsDir/GIMP $commandBinDir/gimp-3.2
|
|
|
|
# Swap System and Default theme
|
|
mv $dataDir/gimp/3.0/themes/System $dataDir/gimp/3.0/themes/Temp
|
|
mv $dataDir/gimp/3.0/themes/Default $dataDir/gimp/3.0/themes/System
|
|
mv $dataDir/gimp/3.0/themes/Temp $dataDir/gimp/3.0/themes/Default
|
|
|
|
# Remove unneeded files
|
|
rm -rf \
|
|
$prefix/share \
|
|
$developDir \
|
|
$libDir/*.la \
|
|
$libDir/pkgconfig \
|
|
$dataDir/{metainfo,gtk-doc,applications,aclocal}
|
|
|
|
# Add resources to binary
|
|
local APP_SIGNATURE="application/x-vnd.gnu-gimp"
|
|
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/gimp.rdef.in > gimp.rdef
|
|
|
|
addResourcesToBinaries gimp.rdef $appsDir/GIMP
|
|
addAppDeskbarSymlink $appsDir/GIMP
|
|
|
|
# doc package
|
|
mkdir -p $documentationDir/packages/
|
|
mv $dataDir/doc/gimp-3.0 $documentationDir/packages
|
|
rm -rf $dataDir/doc
|
|
packageEntries doc \
|
|
$documentationDir/packages
|
|
}
|