new blfs: media-libs/fontconfig-2.17.1

This commit is contained in:
2026-01-08 05:29:40 -05:00
parent e15b23c133
commit 668cd38153
6 changed files with 227 additions and 0 deletions

View File

@@ -0,0 +1,111 @@
pkgname=fontconfig
pkgver=2.17.1
pkgdesc="Library for configuring and customizing font access"
homepage=https://www.freedesktop.org/wiki/Software/fontconfig/
arch=(x86_64)
license=('HPND AND Unicode-DFS-2016')
depends=(
bash
expat
freetype
glibc
)
makedepends=(
gperf
meson
)
_patches=("fontconfig-2.14.0-latin-update.patch"
"fontconfig-2.17.0-skip-bubblewrap-tests.patch"
"fontconfig-2.17.0-network-test.patch"
"fontconfig-2.17.0-macro-preprocess.patch"
)
_patch_sums=("92015fbfc95fae01a0ad6f346132d215"
"e23add7395db7d284c8557329058c694"
"897596e23b6c42d4b15911dc70df4542"
"886ae03ad92de457c3f3ac6aafe1fcf6"
)
sources=("${pkgname}-${pkgver}.tar.xz"
"40-fontconfig-config.HOOK"
${_patches[@]}
)
urls=("https://gitlab.freedesktop.org/api/v4/projects/890/packages/generic/fontconfig/${pkgver}/${sources[0]}"
"40-fontconfig-config.HOOK"
${_patches[@]}
)
md5sums=("f68f95052c7297b98eccb7709d817f6a"
"c873926ec895df4b46c6ef642599b271"
${_patch_sums[@]}
)
src_prepare() {
tar -xf ${distdir}/${sources[0]} --strip-components=1
for _patch in ${_patchs[@]}; do
patch -p1 -i ${filedir}/${_patch}
done
}
src_build() {
local addfonts=(
/usr/local/share/fonts
)
local meson_options=(
--prefix=/usr
--buildtype=release
-D bitmap-conf=noinstall
-D default-sub-pixel-rendering=noinstall
-D doc=disabled
-D doc-html=disabled
-D doc-pdf=disabled
-D doc-man=disabled
-D doc-txt=disabled
-D nls=enabled
-D tests=disabled
-D cache-build=disabled
-D cache-dir=/var/cache/fontconfig
-D default-fonts-dirs=/usr/share/fonts
-D additional-fonts-dirs=$(IFS=, ; echo "${addfonts[*]}" )
-D template-dir=/etc/fonts/conf.avail
-D fontations=disabled
-D xml-backend=expat
)
meson setup build "${meson_options[@]}"
meson compile -C build
}
src_install() {
meson install -C build --destdir "$pkgdir"
install -Dvm644 build/fonts.conf "${pkgdir}/etc/fonts/"
install -Dvm644 fc-lang/*.orth -t "${pkgdir}/usr/share/fc-lang"
install -Dvm644 doc/fontconfig-user.{txt,pdf} -t "${pkgdir}/usr/share/doc/${pkgname}-${pkgver}"
leaf_install_hook "${filedir}/${sources[1]}"
}
src_preinstall() {
echo -e "${GREEN_COLOR}Syncing fontconfig configuration to system${CLEAR_COLOR}"
if [[ -e /etc/fonts/conf.d ]] ; then
local file f
for file in ""/etc/fonts/conf.avail/* ; do
f=${file##*/}
if [[ -L /etc/fonts/conf.d/${f} ]] ; then
[[ -f ${pkgdir}/etc/fonts/conf.avail/${f} ]] \
&& ln -sf ../conf.avail/"${f}" \
"${pkgdir}"/etc/fonts/conf.d/ &>/dev/null
else
[[ -f ${pkgdir}/etc/fonts/conf.avail/${f} ]] \
&& rm "${pkgdir}"/etc/fonts/conf.d/"${f}" &>/dev/null
fi
done
fi
}
src_postinstall() {
echo -e "${GREEN_COLOR}Cleaning broken symlinks in /etc/fonts/conf.d/${CLEAR_COLOR}"
find -L /etc/fonts/conf.d/ -type l -delete
}
# vim:ft=sh syn=sh et sw=2: