# Maintainer: Antonio Rojas # Contributor: Sergej Pupykin # Contributor: Jan "heftig" Steffens # Contributor: farid # Contributor: Archie # ALARM: Kevin Mihelich # - set LTO=off for gmic-qt highmem=1 pkgbase=gmic pkgname=(gmic zart gimp-plugin-gmic krita-plugin-gmic digikam-plugin-gmic) pkgver=2.9.3 pkgrel=1 arch=(x86_64) url="https://gmic.eu/" license=(custom:CeCILL) makedepends=(cmake gimp qt5-base fftw openexr opencv eigen graphicsmagick qt5-tools digikam) source=(https://gmic.eu/files/source/gmic_$pkgver.tar.gz gmic-build-fix.patch::"https://github.com/dtschump/gmic/commit/52cd8898.patch" gmic-build-fix2.patch::"https://github.com/dtschump/gmic/commit/376f1b83.patch" gmic-qt-fix-build.patch) sha256sums=('eb55e75ac691d80f3a6a228bcf21ca5db064201b66aecde6d3ca5d1d8851f59b' 'e73a7f9a256ca776106d029b7d247ae9f6f8aa8c49b8614be7f7d0e8afbc97c5' 'e7f05332ced3784388c8f9aec4e0be36b334782d9d85fc77e3d9e6e063127706' '084891edbf1a005e5100bb6a69b4a6c9bbefe8898371c8fa442890e8b458942a') prepare() { patch -d $pkgbase-$pkgver -p1 -i ../gmic-build-fix.patch patch -d $pkgbase-$pkgver -p1 -i ../gmic-build-fix2.patch patch -d $pkgbase-$pkgver/gmic-qt -p1 -i ../../gmic-qt-fix-build.patch } build() { cmake -B build -S gmic-$pkgver \ -DCMAKE_INSTALL_PREFIX=/usr \ -DENABLE_DYNAMIC_LINKING=ON \ -DBUILD_LIB_STATIC=OFF cmake --build build export LDFLAGS="$LDFLAGS -L../build" cmake -B build-qt -S gmic-$pkgver/gmic-qt \ -DCMAKE_INSTALL_PREFIX=/usr \ -DENABLE_DYNAMIC_LINKING=ON \ -DGMIC_PATH="$srcdir"/gmic-$pkgver/src \ -DGMIC_QT_HOST=none \ -DENABLE_LTO=OFF cmake --build build-qt cmake -B build-gimp -S gmic-$pkgver/gmic-qt \ -DCMAKE_INSTALL_PREFIX=/usr \ -DENABLE_DYNAMIC_LINKING=ON \ -DGMIC_PATH="$srcdir"/gmic-$pkgver/src \ -DGMIC_QT_HOST=gimp \ -DENABLE_LTO=OFF cmake --build build-gimp cmake -B build-krita -S gmic-$pkgver/gmic-qt \ -DCMAKE_INSTALL_PREFIX=/usr \ -DENABLE_DYNAMIC_LINKING=ON \ -DGMIC_PATH="$srcdir"/gmic-$pkgver/src \ -DGMIC_QT_HOST=krita \ -DENABLE_LTO=OFF cmake --build build-krita cmake -B build-digikam -S gmic-$pkgver/gmic-qt \ -DCMAKE_INSTALL_PREFIX=/usr \ -DENABLE_DYNAMIC_LINKING=ON \ -DGMIC_PATH="$srcdir"/gmic-$pkgver/src \ -DGMIC_QT_HOST=digikam \ -DENABLE_LTO=OFF cmake --build build-digikam mkdir -p build-zart cd build-zart unset CXXFLAGS # https://github.com/c-koi/zart/issues/14 qmake ../gmic-$pkgver/zart \ GMIC_PATH="$srcdir"/gmic-$pkgver/src GMIC_DYNAMIC_LINKING=on QMAKE_CXXFLAGS+=" -DOPENCV2_HEADERS" make } package_gmic() { pkgdesc="GREYC's Magic Image Converter: image processing framework" depends=(graphicsmagick opencv fftw) optdepends=('qt5-base: for the Qt UI') DESTDIR="$pkgdir" cmake --install build install -Dm644 gmic-$pkgver/COPYING "$pkgdir"/usr/share/licenses/$pkgname/LICENSE DESTDIR="$pkgdir" cmake --install build-qt install -Dm644 gmic-$pkgver/resources/gmic_cluts.gmz -t "$pkgdir"/usr/share/gmic } package_zart() { pkgdesc="A GUI for G'MIC real-time manipulations on the output of a webcam" depends=(gmic qt5-base) cd build-zart install -Dm755 zart -t "$pkgdir"/usr/bin install -Dm644 ../gmic-$pkgver/zart/Licence_CeCILL_V2-en.html -t "$pkgdir"/usr/share/licenses/$pkgname } package_gimp-plugin-gmic() { pkgdesc="Gimp plugin for the G'MIC image processing framework" depends=(gimp gmic qt5-base) DESTDIR="$pkgdir" cmake --install build-gimp install -Dm644 gmic-$pkgver/COPYING "$pkgdir"/usr/share/licenses/$pkgname/LICENSE } package_krita-plugin-gmic() { pkgdesc="Krita plugin for the G'MIC image processing framework" depends=(krita gmic) DESTDIR="$pkgdir" cmake --install build-krita install -Dm644 gmic-$pkgver/COPYING "$pkgdir"/usr/share/licenses/$pkgname/LICENSE } package_digikam-plugin-gmic() { pkgdesc="DigiKam plugin for the G'MIC image processing framework" depends=(digikam gmic) DESTDIR="$pkgdir" cmake --install build-digikam install -Dm644 gmic-$pkgver/COPYING "$pkgdir"/usr/share/licenses/$pkgname/LICENSE }