PKGBUILDs/community/gmic/PKGBUILD
2020-01-23 20:22:12 +00:00

97 lines
3.2 KiB
Bash

# Maintainer: Antonio Rojas <arojas@archlinux.org>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
# Contributor: farid <farid at archlinuc-br.org>
# Contributor: Archie <Mymaud@gmail.com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - remove -mtune=generic from makefile, replace with our CFLAGS
# - remove -flto from makefile
highmem=1
pkgbase=gmic
pkgname=(gmic zart gimp-plugin-gmic krita-plugin-gmic)
pkgver=2.8.3
pkgrel=1
arch=(x86_64)
url="https://gmic.eu/"
license=(custom:CeCILL)
makedepends=(gimp qt5-base fftw openexr opencv eigen git)
source=(https://gmic.eu/files/source/gmic_$pkgver.tar.gz zart-opencv4.patch
git+https://github.com/c-koi/zart#commit=2d8727b5)
sha256sums=('573a4f7731ba506a397c8080e60ad30bd3d4b686c51ec3d22d7f5de9a901547c'
'f4295a2b9a6730060e1dd763c602bd5156570d623bc69c2214dfd11e94943296'
'SKIP')
prepare() {
# Use git version of zart which builds with current gmic
rm -r gmic-$pkgver/zart
mv zart gmic-$pkgver
sed -e 's|/etc/bash_completion.d|/usr/share/bash-completion/completions|g' -i gmic-$pkgver/src/Makefile
# fix overlinking
sed -e 's/pkg-config opencv --libs ||//' -e 's/-lopencv_highgui/-lopencv_videoio/' \
-e 's/pkg-config opencv/pkg-config opencv4/' -i gmic-$pkgver/src/Makefile
# fix build with openCV 4.0
cd gmic-$pkgver/zart
patch -p1 -i ../../zart-opencv4.patch
sed -e 's|opencv|opencv4|' -i zart.pro
cd ..
sed -i "s|-mtune=generic|${CFLAGS}|" src/Makefile
sed -i 's/-flto//g' src/Makefile
}
build() {
cd gmic-$pkgver
make -C src cli lib libc WGET=/bin/true LIBS=${LDFLAGS} -j1
cd gmic-qt
qmake GMIC_PATH=../src GMIC_DYNAMIC_LINKING=on HOST=none
make
qmake GMIC_PATH=../src GMIC_DYNAMIC_LINKING=on HOST=gimp
make
qmake GMIC_PATH=../src GMIC_DYNAMIC_LINKING=on HOST=krita
make
cd ../zart
qmake GMIC_PATH=../src GMIC_DYNAMIC_LINKING=on QMAKE_CXXFLAGS+=" -DOPENCV2_HEADERS"
make
}
package_gmic() {
pkgdesc="GREYC's Magic Image Converter: image processing framework"
depends=(opencv fftw curl)
optdepends=('qt5-base: for the Qt UI')
cd gmic-$pkgver/src
make DESTDIR="$pkgdir" install
install -Dm644 ../COPYING "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
rm -r "$pkgdir"/usr/{bin/zart,lib/gimp,bin/gmic_krita_qt}
}
package_zart() {
pkgdesc="A GUI for G'MIC real-time manipulations on the output of a webcam"
depends=(gmic qt5-base)
install -Dm755 gmic-$pkgver/zart/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)
install -Dm755 gmic-$pkgver/gmic-qt/gmic_gimp_qt "$pkgdir"/usr/lib/gimp/2.0/plug-ins/gmic_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)
install -Dm755 gmic-$pkgver/gmic-qt/gmic_krita_qt -t "$pkgdir"/usr/bin/
install -Dm644 gmic-$pkgver/COPYING "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}