# Maintainer: Christian Hesse <mail@eworm.de>
# Maintainer: Christian Heusel <gromit@archlinux.org>
# Contributor: Daniel Isenmann <daniel@archlinux.org>

pkgname=gegl
pkgver=0.4.48
pkgrel=2.1
pkgdesc='Graph based image processing framework'
arch=('x86_64' 'aarch64')
url='https://www.gegl.org/'
license=('GPL-3.0-or-later OR LGPL-3.0-or-later')
depends=('babl' 'cairo' 'gcc-libs' 'gdk-pixbuf2' 'glib2' 'glibc' 'jasper' 'json-glib' 'lcms2'
         'lensfun' 'libjpeg-turbo' 'libpng' 'libraw' 'librsvg' 'libspiro' 'libtiff' 'libwebp'
         'luajit' 'openexr' 'pango' 'poppler-glib' 'suitesparse')
makedepends=('git' 'gobject-introspection' 'libgexiv2' 'meson' 'python-gobject'
             'vala' 'gi-docgen' 'base-devel') #  'sdl2' 'ffmpeg' 
optdepends=( #'ffmpeg: FFmpeg Frame Loader and FFmpeg Frame Saver plugins'
            'graphviz: for gegl-introspect'
            #'sdl2: SDL2 Display plugin'
           )
source=("git+https://gitlab.gnome.org/GNOME/gegl.git#tag=GEGL_${pkgver//./_}")
sha256sums=('bed1b1f0348519a175422800564c65c372b125b4230a0207342911bf07f34ded')

pkgver() {
  cd "${pkgname}"
  git describe --tags | sed 's/^GEGL_//;s/_$//;s/_/./g;s/-/+/g'
}

build() {
  mkdir -p build
  cd build
  arch-meson ../"${pkgname}" \
    -Dworkshop=true \
    -Dmrg=disabled \
    -Dmaxflow=disabled \
    -Dlibv4l=disabled \
    -Dlibv4l2=disabled \
    -Dsdl2=disabled \
    -Dlibav=disabled
  ninja
}

check() {
  cd build
  ninja test || :
}

package() {
  cd build
  DESTDIR="${pkgdir}" ninja install

  # strip the default tile size to make the package reproducible
  # https://gitlab.gnome.org/GNOME/gegl/-/issues/368#note_2074468
  sed -i "/tile-cache-size/ s/default-value=\".*\"/default-value=\"\"/" "${pkgdir}/usr/share/gir-1.0/Gegl-${pkgver%.*}.gir"
  sed -i "/Default value/ s;<td>[[:digit:]]*</td>;<td></td>;" "${pkgdir}/usr/share/doc/gegl-${pkgver%.*}/property.Config.tile-cache-size.html"
}
