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

NAME    = harfbuzz
VERSION = 14.2.1
GARTYPE = v2

MASTER_SITES =
DYNURLS = https://github.com/harfbuzz/harfbuzz/releases/download/$(VERSION)/$(DISTNAME).tar.xz
DISTFILES   += $(DISTNAME).tar.xz
LICENSE = COPYING

PACKAGES                += OZSWharfbuzz
SPKG_DESC_OZSWharfbuzz        = OpenType text shaping engine
CATALOGNAME_OZSWharfbuzz      = harfbuzz

BUILD_DEP_PKGS += OZSWmeson OZSWninja OZSWpy311 OZSWglib OZSWfreetype OZSWpkgconf
RUNTIME_DEP_PKGS_OZSWharfbuzz += OZSWglib OZSWfreetype

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

configure-%/meson.build:
	@echo " ==> Running meson setup for harfbuzz"
	/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" \
	    CXX="/opt/ozsw/bin/g++" \
	    /opt/ozsw/bin/meson setup $* $(WORKDIR)/harfbuzz-build \
	        --prefix=$(prefix) --libdir=$(libdir) \
	        -Dglib=enabled \
	        -Dcairo=disabled \
	        -Dfreetype=enabled \
	        -Dicu=disabled \
	        -Dgobject=disabled \
	        -Dintrospection=disabled \
	        -Dtests=disabled \
	        -Ddocs=disabled
	@$(MAKECOOKIE)

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

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

include gar/category.mk
