Before anything else, the version we ship is soon 18 years old. Newer versions seem being closed source.
So here is the failure in the current macppc bulk: > /usr/bin/libtool --mode=compile cc -c -I/usr/local/include -DHAVE_DLFCN_H=1 > -O2 -pipe -DPDF_PLATFORM=\""OpenBSD 6.7"\" ./p_basic.c > cc -c -I/usr/local/include -DHAVE_DLFCN_H=1 -O2 -pipe -DPDF_PLATFORM="OpenBSD > 6.7" ./p_basic.c -fPIC -DPIC -o .libs/p_basic.o > In file included from ./p_basic.c:42: > In file included from ./p_intern.h:43: > ./p_config.h:142:9: warning: 'PDF_PLATFORM' macro redefined > [-Wmacro-redefined] > #define PDF_PLATFORM "Mac OS" > <command line>:2:9: note: previous definition is here > #define PDF_PLATFORM "OpenBSD 6.7" > ./p_basic.c:61:10: fatal error: 'Files.h' file not found > #include <Files.h> It appears that because ${WRKSRC}/pdflib/p_config.h assumes __POWERPC__ is Mac OS 9 (no endianness involved). It's breaking with clang because gcc does not define __POWERPC__. Instead of patching, because that ifdef is at various places, i've chosen to undef __POWERPC__ globally, reverting to the gcc situation. With the below diff it builds on macppc [0]. I've updated HOMEPAGE, the distfile is not fetchable from upstream, it's not due to that change. Comments/feedback are welcome, Charlène. [0] https://bin.charlenew.xyz/macppc/paths/print/pdflib.log Index: Makefile =================================================================== RCS file: /cvs/ports/print/pdflib/Makefile,v retrieving revision 1.29 diff -u -p -u -p -r1.29 Makefile --- Makefile 14 Jul 2019 00:39:39 -0000 1.29 +++ Makefile 28 Apr 2020 17:17:44 -0000 @@ -3,15 +3,15 @@ COMMENT= C library to produce PDF files DISTNAME= pdflib-4.0.3 -REVISION = 5 +REVISION = 6 CATEGORIES= print SHARED_LIBS= pdf 2.3 -HOMEPAGE= http://www.pdflib.com/pdflib/ +HOMEPAGE= https://www.pdflib.com/pdflib/ PERMIT_PACKAGE= Yes -MASTER_SITES= http://www.pdflib.com/pdflib/download/ +MASTER_SITES= ${HOMEPAGE}download/ WANTLIB= m z jpeg png>=2 tiff>=35 @@ -38,6 +38,12 @@ CONFIGURE_ENV= LDFLAGS="-L${LOCALBASE}/ MAKE_ENV= ${CONFIGURE_ENV} TEST_TARGET= test + +# In various places in the code, it's assumed that the __POWERPC__ define +# is Mac OS 9 specific, but our clang defines it as well, breaking the build. +.if ${MACHINE_ARCH:Mpowerpc} +CFLAGS += -U__POWERPC__ +.endif post-install: ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/pdflib