# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gtk+2.0
pkgver=2.24.33
pkgrel=11
pkgdesc="The GTK+ Toolkit (v2)"
url="https://www.gtk.org/"
triggers="$pkgname.trigger=/usr/lib/gtk-2.0/immodules:/usr/lib/gtk-2.0/*/immodules"
install="$pkgname.post-deinstall"
arch="all"
options="!check"  # Requires xvfb, resulting in eventual circular dependency
license="LGPL-2.0-or-later"
subpackages="
	$pkgname-dbg
	$pkgname-dev
	$pkgname-doc
	$pkgname-lang
	"
depends="shared-mime-info gtk-update-icon-cache"
depends_dev="
	at-spi2-core-dev
	cairo-dev
	intltool
	libxdamage-dev
	pango-dev
	"
# we add hicolor-icon-theme because the subpackage gtk-update-icon-cache
# needs it. We need to force hicolor-icon-cache to be built before gtk+.2.0
makedepends="
	autoconf automake libtool
	$depends_dev
	cups-dev
	expat-dev
	gdk-pixbuf-dev
	gettext-dev
	glib-dev
	gobject-introspection-dev
	gtk-doc
	hicolor-icon-theme
	libice-dev
	libx11-dev
	libxcomposite-dev
	libxcursor-dev
	libxext-dev
	libxfixes-dev
	libxi-dev
	libxrandr-dev
	zlib-dev
	"
source="https://download.gnome.org/sources/gtk+/${pkgver%.*}/gtk+-$pkgver.tar.xz
	xid-collision-debug.patch
	gtk2-fixdso.patch
	implicit-int.patch
	"

builddir="$srcdir"/gtk+-$pkgver

prepare() {
	default_prepare
	update_config_sub

	libtoolize --force \
		&& aclocal -I m4 \
		&& autoconf \
		&& automake --add-missing
}

build() {
	CFLAGS="$CFLAGS -flto=auto -fpermissive" \
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--localstatedir=/var \
		--with-xinput=yes \
		--without-libjasper \
		--with-included-loaders=png \
		--with-gdktarget=x11 \
		--enable-cups \
		--enable-man
	# https://bugzilla.gnome.org/show_bug.cgi?id=655517
	sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
	make
}

package() {
	make DESTDIR="$pkgdir" install

	# use gtk-update-icon-cache from gtk+3.0
	rm -f "$pkgdir"/usr/bin/gtk-update-icon-cache
	rm -f "$pkgdir"/usr/share/man/man1/gtk-update-icon-cache.1
}

dev() {
	amove usr/share/gtk-2.0
	default_dev
	amove \
		usr/bin/gtk-builder-convert \
		usr/bin/gtk-demo
}

sha512sums="
71b588797c81f727dfac8dcb1be193f7436f717d30ecf18eae2d3aeb0f445b3be4743400acac16435490db8f564f01032065d3f42d27871317f80c98aef929d5  gtk+-2.24.33.tar.xz
0771320f74f6ce209b72a47fb15b9f8f676fa7ebf174c4c59c23d099056c2e16d2bda433b60588531d5abc3a8bcd29485877a59939fe509c91e2831dcd124971  xid-collision-debug.patch
95f28633a5164a2a9fec45ee1aa80bd1c07e0c5a7ac8d770b9c74af0909b7286b823eb634aa384cad609dc8799d2e6c9e8392c2732b9093076fdf94b4f6878b7  gtk2-fixdso.patch
a716364b40c337e0b4da05f449de5e22b28f542828e1009bbf759575d271851c289612dea839681596a7a7f5b5585bd12f441e6ccaa29ae6430e1058d888b6b3  implicit-int.patch
"
