$NetBSD: patch-Makefile,v 1.2 2024/10/22 09:34:44 leot Exp $

- Install target cleanup
- Also install muthreads and mupkcs7 libraries (needed by various tools)
- Use sh instead of bash

--- Makefile.orig	2024-10-02 17:10:33.000000000 +0000
+++ Makefile
@@ -245,10 +245,10 @@ endif
 
 FONT_GEN := $(FONT_BIN:%=generated/%.c)
 
-generated/%.cff.c : %.cff $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
-generated/%.otf.c : %.otf $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
-generated/%.ttf.c : %.ttf $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
-generated/%.ttc.c : %.ttc $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
+generated/%.cff.c : %.cff $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
+generated/%.otf.c : %.otf $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
+generated/%.ttf.c : %.ttf $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
+generated/%.ttc.c : %.ttc $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
 
 ifeq ($(HAVE_OBJCOPY),yes)
   MUPDF_OBJ += $(FONT_BIN:%=$(OUT)/%.o)
@@ -474,51 +474,55 @@ tools: $(TOOL_APPS)
 apps: $(TOOL_APPS) $(VIEW_APPS)
 
 install-headers:
-	install -d $(DESTDIR)$(incdir)/mupdf
-	install -d $(DESTDIR)$(incdir)/mupdf/fitz
-	install -d $(DESTDIR)$(incdir)/mupdf/pdf
-	install -m 644 include/mupdf/*.h $(DESTDIR)$(incdir)/mupdf
-	install -m 644 include/mupdf/fitz/*.h $(DESTDIR)$(incdir)/mupdf/fitz
-	install -m 644 include/mupdf/pdf/*.h $(DESTDIR)$(incdir)/mupdf/pdf
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(incdir)/mupdf
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(incdir)/mupdf/fitz
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(incdir)/mupdf/pdf
+	${BSD_INSTALL_DATA} include/mupdf/*.h $(DESTDIR)$(incdir)/mupdf
+	${BSD_INSTALL_DATA} include/mupdf/fitz/*.h $(DESTDIR)$(incdir)/mupdf/fitz
+	${BSD_INSTALL_DATA} include/mupdf/pdf/*.h $(DESTDIR)$(incdir)/mupdf/pdf
 
 install-libs: libs install-headers
 ifneq ($(LIBS_TO_INSTALL_IN_LIB),)
-	install -d $(DESTDIR)$(libdir)
-	install -m 644 $(LIBS_TO_INSTALL_IN_LIB) $(DESTDIR)$(libdir)
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(libdir)
+	for f in $(LIBS_TO_INSTALL_IN_LIB); do \
+		${BSD_INSTALL_LIB} $$f $(DESTDIR)$(libdir); \
+	done
 endif
 
 install-apps: apps
-	install -d $(DESTDIR)$(bindir)
-	install -m 755 $(LIBS_TO_INSTALL_IN_BIN) $(TOOL_APPS) $(VIEW_APPS) $(DESTDIR)$(bindir)
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(bindir)
+	for f in $(LIBS_TO_INSTALL_IN_BIN) $(TOOL_APPS) $(VIEW_APPS); do \
+		${BSD_INSTALL_LIB} $$f $(DESTDIR)$(bindir); \
+	done
 
 install-docs:
-	install -d $(DESTDIR)$(mandir)/man1
-	install -m 644 docs/man/*.1 $(DESTDIR)$(mandir)/man1
+	${BSD_INSTALL_MAN_DIR} $(DESTDIR)$(mandir)/man1
+	${BSD_INSTALL_MAN} docs/man/*.1 $(DESTDIR)$(mandir)/man1
 
-	install -d $(DESTDIR)$(docdir)
-	install -d $(DESTDIR)$(docdir)/examples
-	install -m 644 README CHANGES $(DESTDIR)$(docdir)
-	install -m 644 $(wildcard COPYING LICENSE) $(DESTDIR)$(docdir)
-	install -m 644 docs/examples/* $(DESTDIR)$(docdir)/examples
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)/examples
+	${BSD_INSTALL_DATA} README CHANGES $(DESTDIR)$(docdir)
+	${BSD_INSTALL_DATA} $(wildcard COPYING LICENSE) $(DESTDIR)$(docdir)
+	${BSD_INSTALL_DATA} docs/examples/* $(DESTDIR)$(docdir)/examples
 
 install: install-libs install-apps install-docs
 
 install-docs-html:
 	python3 scripts/build-docs.py
-	install -d $(DESTDIR)$(docdir)
-	install -d $(DESTDIR)$(docdir)/_images
-	install -d $(DESTDIR)$(docdir)/_static
-	install -d $(DESTDIR)$(docdir)/_static/js
-	install -d $(DESTDIR)$(docdir)/_static/css
-	install -d $(DESTDIR)$(docdir)/_static/css/fonts
-	install -m 644 build/docs/html/*.html $(DESTDIR)$(docdir)
-	install -m 644 build/docs/html/*.inv $(DESTDIR)$(docdir)
-	install -m 644 build/docs/html/*.js $(DESTDIR)$(docdir)
-	install -m 644 build/docs/html/_images/* $(DESTDIR)$(docdir)/_images
-	install -m 644 build/docs/html/_static/*.css $(DESTDIR)$(docdir)/_static
-	install -m 644 build/docs/html/_static/*.ico $(DESTDIR)$(docdir)/_static
-	install -m 644 build/docs/html/_static/*.js $(DESTDIR)$(docdir)/_static
-	install -m 644 build/docs/html/_static/*.png $(DESTDIR)$(docdir)/_static
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)/_images
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)/_static
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)/_static/js
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)/_static/css
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)/_static/css/fonts
+	${BSD_INSTALL_DATA} build/docs/html/*.html $(DESTDIR)$(docdir)
+	${BSD_INSTALL_DATA} build/docs/html/*.inv $(DESTDIR)$(docdir)
+	${BSD_INSTALL_DATA} build/docs/html/*.js $(DESTDIR)$(docdir)
+	${BSD_INSTALL_DATA} build/docs/html/_images/* $(DESTDIR)$(docdir)/_images
+	${BSD_INSTALL_DATA} build/docs/html/_static/*.css $(DESTDIR)$(docdir)/_static
+	${BSD_INSTALL_DATA} build/docs/html/_static/*.ico $(DESTDIR)$(docdir)/_static
+	${BSD_INSTALL_DATA} build/docs/html/_static/*.js $(DESTDIR)$(docdir)/_static
+	${BSD_INSTALL_DATA} build/docs/html/_static/*.png $(DESTDIR)$(docdir)/_static
 
 tarball:
 	bash scripts/archive.sh
@@ -643,23 +647,23 @@ ifneq ($(USE_SYSTEM_LIBS),yes)
 endif
 
 install-shared-c: install-shared-check shared install-headers
-	install -d $(DESTDIR)$(libdir)
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(libdir)
 	install -m $(SO_INSTALL_MODE) $(OUT)/libmupdf.$(SO)$(SO_VERSION) $(DESTDIR)$(libdir)/
 ifneq ($(OS),OpenBSD)
 	ln -sf libmupdf.$(SO)$(SO_VERSION) $(DESTDIR)$(libdir)/libmupdf.$(SO)
 endif
 
 install-shared-c++: install-shared-c c++
-	install -m 644 platform/c++/include/mupdf/*.h $(DESTDIR)$(incdir)/mupdf
+	${BSD_INSTALL_DATA} platform/c++/include/mupdf/*.h $(DESTDIR)$(incdir)/mupdf
 	install -m $(SO_INSTALL_MODE) $(OUT)/libmupdfcpp.$(SO)$(SO_VERSION) $(DESTDIR)$(libdir)/
 ifneq ($(OS),OpenBSD)
 	ln -sf libmupdfcpp.$(SO)$(SO_VERSION) $(DESTDIR)$(libdir)/libmupdfcpp.$(SO)
 endif
 
 install-shared-python: install-shared-c++ python
-	install -d $(DESTDIR)$(pydir)/mupdf
+	${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(pydir)/mupdf
 	install -m $(SO_INSTALL_MODE) $(OUT)/_mupdf.$(SO) $(DESTDIR)$(pydir)/mupdf
-	install -m 644 $(OUT)/mupdf.py $(DESTDIR)$(pydir)/mupdf/__init__.py
+	${BSD_INSTALL_DATA} $(OUT)/mupdf.py $(DESTDIR)$(pydir)/mupdf/__init__.py
 
 else
 
