summaryrefslogtreecommitdiff
path: root/libre/glib2-static/PKGBUILD
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2018-05-28 21:18:43 -0400
committerLuke Shumaker <lukeshu@lukeshu.com>2018-05-29 11:10:42 -0400
commite1ec62c46a0be4c40414df02f9b6fccfca94006e (patch)
treeabf63f0d50d6c724e90511f8baf4c4a9971b03b4 /libre/glib2-static/PKGBUILD
parent06f09684205a5674088113b098f5fd2a6176772c (diff)
downloadabslibre-e1ec62c46a0be4c40414df02f9b6fccfca94006e.tar.gz
abslibre-e1ec62c46a0be4c40414df02f9b6fccfca94006e.tar.bz2
abslibre-e1ec62c46a0be4c40414df02f9b6fccfca94006e.zip
Update libre/qemu-user-static and dependencies
Fighting with glib2 was no fun. But hey, at least I got a GCC bug report out of it! https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85957 To get around this, I enabled SSE2 for glib2-static. This means it won't run on pre-Pentium 4 (2001) i686 processors; which will cause problems on the Pentium Pro/2 and the Pentium 3, and their AMD competitors: K6 and K7 (the latter of which was branded as Athlon, Athlon XP, Duron, and Sempron). https://lists.parabola.nu/pipermail/dev/2018-May/006748.html If someone digs out a Pentium 2 and gets Parabola to boot on it, I'll figure out a different way to get around glib2's disagreement with x87 floating point math; and turn SSE2 back off.
Diffstat (limited to 'libre/glib2-static/PKGBUILD')
-rw-r--r--libre/glib2-static/PKGBUILD83
1 files changed, 34 insertions, 49 deletions
diff --git a/libre/glib2-static/PKGBUILD b/libre/glib2-static/PKGBUILD
index 585082103..4220009f2 100644
--- a/libre/glib2-static/PKGBUILD
+++ b/libre/glib2-static/PKGBUILD
@@ -2,13 +2,9 @@
# Maintainer: Luke Shumaker <lukeshu@parabola.nu>
# Contributor: Márcio Silva <coadde@hyperbola.info>
-# glib 2.54 added meson as the preferred build system, and core/glib2
-# switched to that. However, the meson build doesn't support static
-# linkage, so we're stuck with the old autotools build system.
-
pkgname=glib2-static
-pkgver=2.54.2
-pkgrel=2.parabola2
+pkgver=2.56.1
+pkgrel=1.static1
pkgdesc="Low level core library"
url="https://wiki.gnome.org/Projects/GLib"
license=(LGPL2.1)
@@ -16,27 +12,17 @@ arch=(x86_64)
arch+=(i686 armv7h)
depends=(pcre libffi libutil-linux zlib)
_depends=(pcre-static libffi-static libutil-linux-static zlib)
-makedepends=(gettext gtk-doc shared-mime-info python libelf git util-linux meson dbus)
+makedepends=(gettext gtk-doc shared-mime-info python libelf git util-linux dbus)
makedepends+=("${_depends[@]}")
checkdepends=(desktop-file-utils)
-optdepends=('python: for gdbus-codegen and gtester-report'
+optdepends=('python: gdbus-codegen, glib-genmarshal, glib-mkenums, gtester-report'
'libelf: gresource inspection tool')
options=(!emptydirs)
-_commit=52b3e434d849e2b0233d6d3d663b5dda82ab263e # tags/2.54.2^0
-source=("git+https://git.gnome.org/browse/glib#commit=$_commit"
- 0001-docs-Fix-building-with-meson.patch
- 0001-meson-Fix-permissions-of-installed-scripts.patch
- 0001-meson-Fix-GDB-scripts-install_dir-for-nix.patch
- 0001-meson-Fix-libmount-support.patch
- libs.diff
+_commit=d0364b443805dcb832c200fcf8bf58a64fdf3e7d # tags/2.56.1^0
+source=("git+https://gitlab.gnome.org/GNOME/glib.git#commit=$_commit"
noisy-glib-compile-schemas.diff
glib-compile-schemas.hook gio-querymodules.hook)
sha256sums=('SKIP'
- '8b289f3e1a5a3b29d310d45610468199acfe6f2b38a0d1be38c9224437a0e40c'
- '12b1a2f4e304e4c03e48ae9564d73ae38619bbb7711a013138939ff8e5cc2327'
- 'f53d5acfda4b7141a4813f1e49610e9176dc5bdf8e867d88290e34d91a40ebcb'
- '14c0dcfb4efb690f7cb44673faf31f5eb40ac68c01974eddb53d5aa7ae366629'
- '2fb828f51727bd9c8b48cfd9d6833c8b4ff82803331f6e2340b0ec8edfe57c52'
'81a4df0b638730cffb7fa263c04841f7ca6b9c9578ee5045db6f30ff0c3fc531'
'e1123a5d85d2445faac33f6dae1085fdd620d83279a4e130a83fe38db52b62b3'
'5ba204a2686304b1454d401a39a9d27d09dd25e4529664e3fd565be3d439f8b6')
@@ -47,24 +33,8 @@ pkgver() {
}
prepare() {
- mkdir -p build glib2-docs/usr/share
cd glib
- # https://bugzilla.gnome.org/show_bug.cgi?id=786796
- patch -Np1 -i ../0001-docs-Fix-building-with-meson.patch
-
- # https://bugzilla.gnome.org/show_bug.cgi?id=787671
- patch -Np1 -i ../0001-meson-Fix-permissions-of-installed-scripts.patch
-
- # https://bugzilla.gnome.org/show_bug.cgi?id=788772
- patch -Np1 -i ../0001-meson-Fix-GDB-scripts-install_dir-for-nix.patch
-
- # https://bugzilla.gnome.org/show_bug.cgi?id=789681
- patch -Np1 -i ../0001-meson-Fix-libmount-support.patch
-
- # https://bugzilla.gnome.org/show_bug.cgi?id=788773
- patch -Np1 -i ../libs.diff
-
# Suppress noise from glib-compile-schemas.hook
patch -Np1 -i ../noisy-glib-compile-schemas.diff
@@ -72,19 +42,31 @@ prepare() {
}
build() {
- cd build
- ../glib/configure --prefix=/usr --libdir=/usr/lib \
- --sysconfdir=/etc \
- --with-pcre=system \
- --disable-fam \
- --disable-gtk-doc \
- --disable-shared --enable-static \
- $(check_option debug y && echo --enable-debug=yes)
+ local debug=minimum
+ check_option debug y && debug=yes
+
+ if [[ $CARCH = i686 ]]; then
+ # GTimer has trouble with x87 math, force SSE2 (which is implied
+ # on x86_64).
+ CFLAGS+=' -msse2 -mfpmath=sse'
+ fi
+
+ cd glib
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib \
+ --sysconfdir=/etc \
+ --with-pcre=system \
+ --enable-debug=$debug \
+ --disable-gtk-doc \
+ --disable-fam \
+ --enable-static
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
-_check() {
- cd build
+check() {
+ cd glib
rm -rf "$srcdir/test-home"
mkdir "$srcdir/test-home"
HOME="$srcdir/test-home" make -j1 check
@@ -92,13 +74,14 @@ _check() {
package() {
pkgdesc+=" (static libraries)"
- depends=(glib2)
+ depends=("glib2=$pkgver")
optdepends=()
options=(staticlibs)
- cd build
+ cd glib
make DESTDIR="$pkgdir" install
+ rm -v -- "$pkgdir"/usr/lib/lib*.so*
rm -vr -- \
"$pkgdir"/usr/bin/ \
"$pkgdir"/usr/include/ \
@@ -113,6 +96,8 @@ package_glib2-docs() {
optdepends=()
license+=(custom)
- mv glib2-docs/* "$pkgdir"
+ mkdir -p "$pkgdir/usr/share"
+ mv gtk-doc "$pkgdir/usr/share"
+
install -Dt "$pkgdir/usr/share/licenses/glib2-docs" -m644 glib/docs/reference/COPYING
}