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

NAME    = fontconfig
VERSION = 2.18.1
GARTYPE = v2

MASTER_SITES =
DYNURLS = https://gitlab.freedesktop.org/fontconfig/fontconfig/-/archive/$(VERSION)/$(DISTNAME).tar.gz
DISTFILES   += $(DISTNAME).tar.gz

LICENSE = COPYING

PACKAGES                   += OZSWfontconfig
SPKG_DESC_OZSWfontconfig    = Font configuration and customization library
CATALOGNAME_OZSWfontconfig  = fontconfig

BUILD_DEP_PKGS += OZSWfreetype OZSWexpat OZSWmeson OZSWninja OZSWpy311
RUNTIME_DEP_PKGS_OZSWfontconfig += OZSWfreetype OZSWexpat

# OpenSolaris snv_111b has no xlocale (newlocale/uselocale/locale_t/LC_*_MASK).
# Patch fontconfig to stub out xlocale on Solaris.
post-extract:
	/opt/ozsw/bin/python3 $(GARDIR)/../pkg/fontconfig/patch-fontconfig-locale.py \
	    $(WORKSRC)/src/fcint.h $(WORKSRC)/src/fccompat.c
	@$(MAKECOOKIE)

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

configure-%/meson.build:
	@echo " ==> Running meson setup for fontconfig"
	/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)/fontconfig-build \
	        --prefix=$(prefix) --libdir=$(libdir) --sysconfdir=$(sysconfdir) \
	        -Ddoc=disabled -Dtests=disabled -Dtools=enabled
	@$(MAKECOOKIE)

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

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

include gar/category.mk
