# Template build file for 'gtk+3'.
pkgname=gtk+3
version=3.14.5
revision=1
wrksrc="gtk+-${version}"
build_style=gnu-configure
configure_args="--disable-schemas-compile --enable-gtk2-dependency"
short_desc="The GTK+ toolkit (v3)"
maintainer="Juan RP <xtraeme@gmail.com>"
homepage="http://www.gtk.org/"
update_pkgname="gtk+"
license="LGPL-2.1"
distfiles="${GNOME_SITE}/gtk+/${version%.*}/gtk+-${version}.tar.xz"
checksum=ba70f5ccde6646c6d8aa5a6398794b7bcf23fc45af22580a215d258f392dbbe2

hostmakedepends="automake gettext-devel libtool pkg-config
 glib-devel>=2.42 gtk-doc gobject-introspection gtk-update-icon-cache"
makedepends="libglib-devel>=2.42 atk-devel>=2.14 at-spi2-atk-devel>=2.14
 libpng-devel fontconfig-devel cairo-devel pango-devel>=1.36
 gdk-pixbuf-devel>=2.30"
depends="gtk-update-icon-cache shared-mime-info glib>=2.42 atk>=2.14
 adwaita-icon-theme"
triggers="gtk3-immodules"
conf_files="/etc/gtk-3.0/im-multipress.conf"

# Package build options
build_options="broadway colord cups gir wayland x11"
desc_option_broadway="Enable support for the HTML5 Broadway backend"

# Enable all options by default.
build_options_default="colord cups broadway wayland x11"

# Enable gir only for native builds.
if [ -z "$CROSS_BUILD" ]; then
	build_options_default+=" gir"
fi

if [ "$build_option_broadway" ]; then
	configure_args+=" --enable-broadway-backend"
else
	configure_args+=" --disable-broadway-backend"
fi

if [ "$build_option_colord" ]; then
	configure_args+=" --enable-colord"
	makedepends+=" colord-devel>=1.1.7"
else
	configure_args+=" --disable-colord"
fi

if [ "$build_option_cups" ]; then
	configure_args+=" --enable-cups"
	hostmakedepends+=" cups-devel"
	makedepends+=" cups-devel"
else
	configure_args+=" --disable-cups"
fi

if [ "$build_option_gir" ]; then
	makedepends+=" gobject-introspection"
	configure_args+=" --enable-introspection"
else
	configure_args+=" --disable-introspection"
fi

if [ "$build_option_wayland" ]; then
	hostmakedepends+=" wayland-devel"
	makedepends+=" libxkbcommon-devel wayland-devel"
	configure_args+=" --enable-wayland-backend"
else
	configure_args+=" --disable-wayland-backend"
fi

if [ "$build_option_x11" ]; then
	depends+=" dbus-x11"
	makedepends+=" libXcursor-devel libXdamage-devel libXext-devel
		libXinerama-devel libXi-devel libXrandr-devel libXcomposite-devel"
	configure_args+=" --enable-x11-backend"
else
	configure_args+=" --disable-x11-backend"
fi

pre_configure() {
	rm -f ${XBPS_WRAPPERDIR}/pkg-config
	NOCONFIGURE=1 ./autogen.sh
}
post_install() {
	rm -f ${DESTDIR}/usr/share/man/man1/gtk-update-icon-cache.1
}

gtk+3-devel_package() {
	depends="${makedepends} gtk+3>=${version}_${revision}"
	short_desc+=" - development files"
	pkg_install() {
		vmove usr/include
		vmove usr/lib/pkgconfig
		vmove "usr/lib/*.so"
		if [ "$build_option_gir" ]; then
			vmove usr/share/gir-1.0
		fi
		vmove usr/share/gtk-doc
		vmove usr/share/aclocal
	}
}
gtk+3-demo_package() {
	short_desc+=" - demonstration application"
	pkg_install() {
		vmove usr/bin/gtk3-demo
		vmove usr/bin/gtk3-widget-factory
		vmove usr/bin/gtk3-demo-application
		vmove usr/share/man/man1/gtk3-widget-factory.1
		vmove usr/share/gtk-3.0/gtkbuilder.rng
		vmove usr/share/glib-2.0/schemas/org.gtk.Demo.gschema.xml
		vmove usr/share/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml
		vmove usr/share/applications/gtk3-widget-factory.desktop
		vmove usr/share/applications/gtk3-demo.desktop
		vmove usr/share/icons
	}
}
