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

NAME    = cairo
VERSION = 1.18.4
GARTYPE = v2

MASTER_SITES =
DYNURLS = https://www.cairographics.org/releases/$(DISTNAME).tar.xz
DISTFILES   += $(DISTNAME).tar.xz
LICENSE = COPYING

PACKAGES                += OZSWcairo
SPKG_DESC_OZSWcairo           = 2D graphics library
CATALOGNAME_OZSWcairo         = cairo

BUILD_DEP_PKGS += OZSWmeson OZSWninja OZSWpy311 OZSWpixman OZSWlibpng OZSWlibX11 OZSWlibXrender OZSWfreetype OZSWfontconfig OZSWglib OZSWzlib OZSWpkgconf
RUNTIME_DEP_PKGS_OZSWcairo += OZSWpixman OZSWlibpng OZSWlibX11 OZSWlibXrender OZSWfreetype OZSWfontconfig OZSWglib OZSWzlib

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

configure-%/meson.build:
	@echo " ==> Running meson setup for cairo"
	/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" \
	    LDFLAGS="-L/opt/ozsw/lib -Wl,-R,/opt/ozsw/lib -lsocket -lnsl" \
	    CC="/opt/ozsw/bin/gcc" \
	    /opt/ozsw/bin/meson setup $* $(WORKDIR)/cairo-build \
	        --prefix=$(prefix) --libdir=$(libdir) \
	        -Dxlib=enabled \
	        -Dxlib-xcb=disabled \
	        -Dtests=disabled \
	        -Dspectre=disabled \
	        -Dsymbol-lookup=disabled \
	        -Dglib=enabled \
	        -Dfontconfig=enabled \
	        -Dfreetype=enabled \
	        -Dpng=enabled \
	        -Dzlib=enabled
	@$(MAKECOOKIE)

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

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

include gar/category.mk
