# SPDX-License-Identifier: GPL-3.0-or-later
# pomelo-pdf — Pomelo PDF 閱讀器（自己寫的 PDF 核心）
PREFIX ?= /usr/local
CFLAGS ?= -O2 -pipe -Wall -Wextra -Wno-unused-parameter -Wno-format-truncation
POMELO_CFLAGS ?= $(shell pkg-config --cflags pomelo)
POMELO_LIBS   ?= $(shell pkg-config --libs pomelo)
PDF_CFLAGS ?= $(shell pkg-config --cflags cairo freetype2 fontconfig zlib libcrypto)
PDF_LIBS   ?= $(shell pkg-config --libs cairo freetype2 fontconfig zlib libcrypto) -ljpeg -ldl -lpthread -lm

CORE = pdf-obj.c pdf-tables.c pdf-cmap.c pdf-font.c pdf-func.c pdf-image.c pdf-render.c pdf-doc.c pdf-write.c pdf-edit.c pdf-sign.c pdf-content.c pdf-cli.c
OBJS = $(CORE:.c=.o)

all: pomelo-pdf pomelo-pdf.png

%.o: %.c pdf.h
	$(CC) $(CFLAGS) $(PDF_CFLAGS) -c -o $@ $<

pdf-test: $(OBJS) pdf-test.c
	$(CC) $(CFLAGS) $(PDF_CFLAGS) -o $@ pdf-test.c $(OBJS) $(PDF_LIBS) $(LDFLAGS)

pomelo-pdf: $(OBJS) pomelo-pdf.c
	$(CC) $(CFLAGS) $(POMELO_CFLAGS) $(PDF_CFLAGS) -o $@ pomelo-pdf.c $(OBJS) $(POMELO_LIBS) $(PDF_LIBS) $(LDFLAGS)

pomelo-pdf.png: pomelo-pdf
	LD_LIBRARY_PATH="$(LD_LIBRARY_PATH)" ./pomelo-pdf --icon $@

install: all
	install -Dm755 pomelo-pdf $(DESTDIR)$(PREFIX)/bin/pomelo-pdf
	install -Dm644 pomelo-pdf.desktop $(DESTDIR)$(PREFIX)/share/applications/pomelo-pdf.desktop
	install -Dm644 pomelo-pdf.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/pomelo-pdf.png

# 跟 pdftoppm 比對（開發用；需要 poppler-utils 與 ImageMagick）
pdf-tables.c: gen-tables.py
	python3 gen-tables.py > $@

clean:
	rm -f pomelo-pdf pomelo-pdf.png pdf-test *.o

.PHONY: all install clean
