# Contributor: Rasmus Thomsen # Contributor: Valery Kartel # Contributor: Natanael Copa # Maintainer: Rasmus Thomsen pkgname=glib pkgver=2.64.2 pkgrel=3 pkgdesc="Common C routines used by Gtk+ and other libs" url="https://developer.gnome.org/glib/" arch="all" license="LGPL-2.1-or-later" triggers="$pkgname.trigger=/usr/share/glib-2.0/schemas:/usr/lib/gio/modules" depends_dev="python3 gettext-dev bzip2-dev libxml2-utils libxslt docbook-xml docbook-xsl" makedepends="$depends_dev pcre-dev meson zlib-dev libffi-dev util-linux-dev" options="!check" # don't like to be run without first being installed source="https://download.gnome.org/sources/glib/${pkgver%.*}/glib-$pkgver.tar.xz 0001-gquark-fix-initialization-with-c-constructors.patch deprecated-no-warn.patch musl-libintl.patch mips-disable-memory-barrier.patch mips-disable-some-gio-test-resources.patch " subpackages="$pkgname-dbg $pkgname-doc $pkgname-static $pkgname-dev $pkgname-lang" # secfixes: # 2.62.5-r0: # - CVE-2020-6750 # 2.60.4-r0: # - CVE-2019-12450 build() { meson \ --default-library=both \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --localstatedir=/var \ --buildtype=plain \ -Dman=true \ . output ninja -C output # FIXME: meson adds -lintl first in Libs: in the .pc file but it needs to be # last for static builds (e.g. qemu) sed -i -e '/^Libs:/s/-lintl \(.*\)/\1 -lintl/' output/meson-private/glib-2.0.pc } package() { DESTDIR="$pkgdir" ninja -C output install } dev() { default_dev mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/share find "$pkgdir"/usr/bin ! -name "glib-compile-schemas" -a \( \ -name "gdbus-codegen" -o \ -name "gobject-query" -o \ -name "gresource" -o \ -name "gtester*" -o \ -name "glib-*" \) \ -exec mv {} "$subpkgdir"/usr/bin \; mv "$pkgdir"/usr/share/gdb "$pkgdir"/usr/share/glib-2.0 \ "$subpkgdir"/usr/share } static() { pkgdesc="glib static libraries" depends="gettext-static" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib/ } sha512sums="c65adb76f4a03c19f2df186dde49724135975ec6cd059efca5d753e7459f77925657b1fb6fc4ff0d09b2461b2f6e58c9710fc8cde0a5d648ba0d68ccfef1ec57 glib-2.64.2.tar.xz 32e5aca9a315fb985fafa0b4355e4498c1f877fc1f0b58ad4ac261fb9fbced9f026c7756a5f2af7d61ce756b55c8cd02811bb08df397040e93510056f073756b 0001-gquark-fix-initialization-with-c-constructors.patch 744239ea2afb47e15d5d0214c37d7c798edac53797ca3ac14d515aee4cc3999ef9716ba744c64c40198fb259edc922559f77c9051104a568fc8ee4fc790810b1 deprecated-no-warn.patch 6ec43e76bb973367bd99c5e2077113e86df2b120b3788aeeb4692a572392bba7227e8217b28a918e02ad82fcb8ca6d260c3221b84688774d86779755af51a847 musl-libintl.patch f853ddb4ff8231e1df15323773af938323517b643b241fc635d05f7d6e103ff18417d203c65661c7dd0b5e44c5d74c71a497e82281c2bb4ed4e2fe9b9ed7140f mips-disable-memory-barrier.patch 755c468622e1923967d52de4878d641ec7d31bd0f83b0756d61cb668220213d6db1a751826f4f1fb611e998b653afc1e367fe0fe475063737c9786f84ee91538 mips-disable-some-gio-test-resources.patch"