# Maintainer: Jan Alexander Steffens (heftig) # Contributor: Jan de Groot pkgbase=freetype2-git pkgname=( freetype2-git freetype2-demos-git ) pkgver=2.13.1+p0+ge4586d960 pkgrel=1 epoch=1 pkgdesc="Font rasterization library (from git)" url="https://www.freetype.org/" arch=( i686 x86_64 ) license=(GPL) depends=( brotli bzip2 libpng sh zlib # adding harfbuzz for improved OpenType features auto-hinting # introduces a cycle dep to harfbuzz depending on freetype wanted by upstream harfbuzz ) makedepends=( git librsvg libx11 meson qt5-base ) source=( git+https://gitlab.freedesktop.org/freetype/freetype.git git+https://gitlab.freedesktop.org/freetype/freetype-demos.git 0001-Enable-table-validation-modules.patch 0002-Enable-subpixel-rendering.patch 0003-Enable-long-PCF-family-names.patch freetype2.sh ) b2sums=('SKIP' 'SKIP' '2c148694e150b3faae9dc46ead824ae6d94cfe34f2918bc9066f45bab7e6b6f77b4d4b2fee00c3d466d866e1985132cea4a774dcf1bab95409b7cf55efff01e1' '9598d13eae0411878c1af8e5d875c3b1fc09f4e6649edfbbf3b0a819c4c585648521f0b30ffd1318f5106cfde9c899d3db70c8ffe36dac59f3f98b5fd7dab115' '66deb179d1f1f4e2e35f6d50acfbacce80595d5128f5fed8c1871838c210dbf1a7173a87dd937d64997844c8f478c8f81120f71e33b9d59d980e179d103ff31c' 'a964f46886b5017a5c180f29408f72ae8aba29f37404c48b4681ff12ca0a2cfa2a8e219480e98d63d45fb5c266a6e5826df170c9a0d701cd866e395c5ac6e87d') validpgpkeys=( E30674707856409FF1948010BE6C3AAC63AD8E3F # Werner Lemberg ) pkgver() { local _tag _count cd freetype _tag=$(git describe --abbrev=0 ) _count=$(git rev-list --count $_tag..HEAD) _tag=${_tag#VER-} echo ${_tag//-/.}+p$_count+g$(git rev-parse --short HEAD) } prepare() { # Build FreeType as part of the demos ln -sr freetype freetype-demos/subprojects/freetype2 cd freetype patch -Np1 -i ../0001-Enable-table-validation-modules.patch patch -Np1 -i ../0002-Enable-subpixel-rendering.patch patch -Np1 -i ../0003-Enable-long-PCF-family-names.patch } build() { local meson_options=( -D freetype2:default_library=shared ) arch-meson freetype-demos build "${meson_options[@]}" meson compile -C build } check() { meson test -C build --print-errorlogs } _pick() { local p="$1" f d; shift for f; do d="$srcdir/$p/${f#$pkgdir/}" mkdir -p "$(dirname "$d")" mv "$f" "$d" rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" done } package_freetype2-git() { provides=( libfreetype.so "freetype2=$pkgver" ) conflicts=(freetype2) install=freetype2.install backup=(etc/profile.d/freetype2.sh) meson install -C build --destdir="$pkgdir" install -Dt "$pkgdir/etc/profile.d" -m644 freetype2.sh install -Dt "$pkgdir/usr/share/aclocal" -m644 \ freetype/builds/unix/freetype2.m4 _pick demos "$pkgdir"/usr/bin _pick demos "$pkgdir"/usr/share/man/man1 } package_freetype2-demos-git() { pkgdesc="Freetype tools and demos (from git)" depends=( freetype2-git librsvg libx11 ) optdepends=( 'qt5-base: ftinspect' ) provides=("freetype2-demos=$pkgver") conflicts=(freetype2-demos) mv demos/* "$pkgdir" } # vim:set sw=2 sts=-1 et: