# vim: ft=make ts=4 sw=4 noet
.DEFAULT_GOAL := all

NAME    = gtk
VERSION = 3.24.52
GARTYPE = v2

MASTER_SITES = https://download.gnome.org/sources/gtk/3.24/
DISTFILES   += gtk-$(VERSION).tar.xz
DISTNAME = gtk-$(VERSION)

LICENSE = COPYING

PACKAGES                += OZSWgtk3
SPKG_DESC_OZSWgtk3       = GTK+ graphical toolkit (version 3)
CATALOGNAME_OZSWgtk3     = gtk3

BUILD_DEP_PKGS += OZSWmeson OZSWninja OZSWpy311 OZSWpkgconf
BUILD_DEP_PKGS += OZSWglib OZSWpango OZSWcairo OZSWatk OZSWgdkpixbuf
BUILD_DEP_PKGS += OZSWlibX11 OZSWlibXext OZSWlibXrender
BUILD_DEP_PKGS += OZSWlibXi OZSWlibXrandr OZSWlibXcursor
BUILD_DEP_PKGS += OZSWlibXfixes OZSWlibXdamage OZSWlibXcomposite OZSWlibXinerama
BUILD_DEP_PKGS += OZSWxorgproto OZSWfontconfig OZSWfreetype

RUNTIME_DEP_PKGS_OZSWgtk3 += OZSWglib OZSWpango OZSWcairo OZSWatk OZSWgdkpixbuf
RUNTIME_DEP_PKGS_OZSWgtk3 += OZSWlibX11 OZSWlibXext OZSWlibXrender
RUNTIME_DEP_PKGS_OZSWgtk3 += OZSWlibXi OZSWlibXrandr OZSWlibXcursor
RUNTIME_DEP_PKGS_OZSWgtk3 += OZSWlibXfixes OZSWlibXdamage OZSWlibXcomposite OZSWlibXinerama
RUNTIME_DEP_PKGS_OZSWgtk3 += OZSWfontconfig OZSWfreetype

CONFIGURE_SCRIPTS = $(WORKSRC)/meson.build
BUILD_SCRIPTS     = $(WORKSRC)/meson.build
INSTALL_SCRIPTS   = $(WORKSRC)/meson.build

configure-%/meson.build:
	@echo " ==> Running meson setup for gtk3"
	/usr/bin/env -i HOME="$(HOME)" PATH="/opt/ozsw/bin:$(PATH)" \
	    PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" \
	    CFLAGS="-O2 -I/opt/ozsw/include -D__EXTENSIONS__ -D_XPG6 -D__XOPEN_OR_POSIX -D_POSIX_PTHREAD_SEMANTICS -DO_CLOEXEC=0" \
	    LDFLAGS="-L/opt/ozsw/lib -Wl,-R,/opt/ozsw/lib -lsocket -lnsl -lintl" \
	    CC="/opt/ozsw/bin/gcc" \
	    /opt/ozsw/bin/meson setup $* $(WORKDIR)/gtk3-build \
	        --prefix=$(prefix) --libdir=$(libdir) \
	        -Dx11_backend=true \
	        -Dwayland_backend=false \
	        -Dbroadway_backend=false \
	        -Dwin32_backend=false \
	        -Dquartz_backend=false \
	        -Dxinerama=yes \
	        -Dprint_backends=file \
	        -Dcloudproviders=false \
	        -Dprofiler=false \
	        -Dtracker3=false \
	        -Dcolord=no \
	        -Dgtk_doc=false \
	        -Dman=false \
	        -Dintrospection=false \
	        -Ddemos=false \
	        -Dexamples=false \
	        -Dtests=false \
	        -Dinstalled_tests=false \
	        -Dlibepoxy:egl=no \
	        -Dlibepoxy:tests=false
	@$(MAKECOOKIE)

build-%/meson.build:
	cd $(WORKDIR)/gtk3-build && PATH=/opt/ozsw/bin:$$PATH /opt/ozsw/bin/ninja -j4
	@$(MAKECOOKIE)

install-%/meson.build:
	cd $(WORKDIR)/gtk3-build && DESTDIR=$(DESTDIR) /opt/ozsw/bin/ninja install
	@$(MAKECOOKIE)

include gar/category.mk
