Created attachment 193764 [details] patch The attached patch cleans up print/ghostscript9-agpl-base and print/ghostscript9-agpl-x11 and updates them to version 9.23. It also updates graphics/poppler-data to 0.4.9 and lets these ports share the CMap data. Details for print/ghostscript9-agpl-base: - Update to 9.23. - Remove old MASTER_SITES. - Drop external epag device. - Always use fontconfig to find fonts. - Use ports openjpeg instead of bundled. - Use bundled lcms2, because upstream forked it. - Drop dependency on gsfonts. Newer versions of the fonts are already included. - Depend on poppler-data for CMap files. It has the same maps except Identity-H, Identity-UTF16-H, and Identity-V. - Resolve conflict with gambc by moving bin/gsc to bin/gs instead of symlinking. - Configure with --with-libiconv=maybe instead of --with-libiconv=native to prevent detecting libiconv from converters/libiconv if it happens to be installed. Also remove the ICONV option because it's part of the base system in all supported versions of FreeBSD. - Enable thread safety. - Remove all driver options and simply build with --with-drivers=ALL. They don't take up much space and don't require additional dependencies so options don't provide much value. This makes the port a lot easier to maintain. - Set the internal font patch to ${LOCALBASE}/share/fonts because the upstream default doesn't make much sense on FreeBSD. - Make dependency on libijs optional because it only seems to be used by print/hpijs which is deprecated. - Extract all directories and remove unwanted directories in post-patch so contents can be examined after 'make extract'. - Strip gs and libgs.so. Reported by stage-qa. - Install color profiles in share/color/icc, where other programs can find them. - Remove old patches. Details for print/ghostscript9-agpl-x11: - Keep the Makefile similar to ghostscript9-agpl-base Makefile. - Set PATCHDIR to ghostscript9-agpl-base/files so patches are shared. Details for graphics/poppler-data: - Update to 0.4.9. - Replace post-patch with MAKE_ARGS. - Add post-install to make all CMap files available in share/cmap so Ghostscript can use them too. Unfortunately, Poppler requires these files organised in subdirectories and Ghostscript wants them all in one directory, hence the hardlinks.
Add gnome@ for poppler-data update.
Created attachment 193915 [details] patch2 Add a patch to fix build on FreeBSD 11 where Clang defaults to C99.
Created attachment 193989 [details] patch3 Replace sed \b with [[:<:]] and [[:>:]] in the configure script.
A commit references this bug: Author: tijl Date: Tue Jun 12 09:45:16 UTC 2018 New revision: 472239 URL: https://svnweb.freebsd.org/changeset/ports/472239 Log: Clean up print/ghostscript9-agpl-base and print/ghostscript9-agpl-x11 and update them to version 9.23. Share CMap data with graphics/poppler-data and update that to 0.4.9. Details for print/ghostscript9-agpl-base: - Update to 9.23. - Drop external epag device. - Always use fontconfig to find fonts. - Use ports openjpeg instead of bundled. - Use bundled lcms2, because upstream forked it. - Drop dependency on gsfonts. Newer versions of the fonts are already included. - Depend on poppler-data for CMap files. It has the same maps except Identity-H, Identity-UTF16-H, and Identity-V. - Resolve conflict with gambc by moving bin/gsc to bin/gs instead of symlinking. - Configure with --with-libiconv=maybe instead of --with-libiconv=native to prevent detecting libiconv from converters/libiconv if it happens to be installed. Also remove the ICONV option because it's part of the base system in all supported versions of FreeBSD. - Enable thread safety. - Remove all driver options and simply build with --with-drivers=ALL. They don't take up much space and don't require additional dependencies so options don't provide much value. This makes the port a lot easier to maintain. - Set the internal font path to ${LOCALBASE}/share/fonts because the upstream default doesn't make much sense on FreeBSD. - Make dependency on libijs optional because it only seems to be used by print/hpijs which is deprecated. - Extract all directories and remove unwanted directories in post-patch so contents can be examined after 'make extract'. - Strip gs and libgs.so. Reported by stage-qa. - Install color profiles in share/color/icc, where other programs can find them. - Remove old patches. Details for print/ghostscript9-agpl-x11: - Keep the Makefile similar to ghostscript9-agpl-base Makefile. - Set PATCHDIR to ghostscript9-agpl-base/files so patches are shared. Details for graphics/poppler-data: - Update to 0.4.9. - Replace post-patch with MAKE_ARGS. - Add post-install to make all CMap files available in share/cmap so Ghostscript can use them too. Unfortunately, Poppler requires these files organised in subdirectories and Ghostscript wants them all in one directory, hence the hardlinks. PR: 228546 Approved by: maintainer timeout (15 days) Changes: head/graphics/poppler-data/Makefile head/graphics/poppler-data/distinfo head/graphics/poppler-data/pkg-plist head/print/ghostscript9-agpl-base/Makefile head/print/ghostscript9-agpl-base/Makefile.drivers head/print/ghostscript9-agpl-base/distinfo head/print/ghostscript9-agpl-base/files/Makefile.dmprt head/print/ghostscript9-agpl-base/files/Makefile.drivers_post head/print/ghostscript9-agpl-base/files/Makefile.epag head/print/ghostscript9-agpl-base/files/Makefile.pcl3 head/print/ghostscript9-agpl-base/files/epag.contrib.mak head/print/ghostscript9-agpl-base/files/lqx70ch.upp head/print/ghostscript9-agpl-base/files/lqx70cl.upp head/print/ghostscript9-agpl-base/files/lqx70cm.upp head/print/ghostscript9-agpl-base/files/patch-Makefile.in head/print/ghostscript9-agpl-base/files/patch-Resource_Init_FAPIcidfmap head/print/ghostscript9-agpl-base/files/patch-Resource_Init_FAPIconfig head/print/ghostscript9-agpl-base/files/patch-Resource_Init_cidfmap head/print/ghostscript9-agpl-base/files/patch-Resource_Init_gs__statd.ps head/print/ghostscript9-agpl-base/files/patch-Resource_Init_gs__ttf.ps head/print/ghostscript9-agpl-base/files/patch-Resource_Init_pdf__font.ps head/print/ghostscript9-agpl-base/files/patch-base-stdpre.h head/print/ghostscript9-agpl-base/files/patch-base_gp__unix.c head/print/ghostscript9-agpl-base/files/patch-base_gs.mak head/print/ghostscript9-agpl-base/files/patch-base_gsicc__create.c head/print/ghostscript9-agpl-base/files/patch-base_gsmalloc.c head/print/ghostscript9-agpl-base/files/patch-base_gxobj.h head/print/ghostscript9-agpl-base/files/patch-base_openjpeg.mak head/print/ghostscript9-agpl-base/files/patch-base_unix-gcc.mak head/print/ghostscript9-agpl-base/files/patch-base_unixinst.mak head/print/ghostscript9-agpl-base/files/patch-configure head/print/ghostscript9-agpl-base/files/patch-configure.ac head/print/ghostscript9-agpl-base/files/patch-contrib_contrib.mak head/print/ghostscript9-agpl-base/files/patch-contrib_gomni.c head/print/ghostscript9-agpl-base/files/patch-contrib_japanese_dmp__site.ps head/print/ghostscript9-agpl-base/files/patch-contrib_japanese_gdevdmpr.c head/print/ghostscript9-agpl-base/files/patch-contrib_lips4_gdevlips.c head/print/ghostscript9-agpl-base/files/patch-contrib_lips4_gdevlips.h head/print/ghostscript9-agpl-base/files/patch-devices_devs.mak head/print/ghostscript9-agpl-base/files/patch-devices_gdevl256.c head/print/ghostscript9-agpl-base/files/patch-devices_gdevperm.c head/print/ghostscript9-agpl-base/files/patch-devices_gdevplib.c head/print/ghostscript9-agpl-base/files/patch-devices_gdevvglb.c head/print/ghostscript9-agpl-base/files/patch-epag-3.09_ert.c head/print/ghostscript9-agpl-base/files/patch-epag-3.09_gdevepag.c head/print/ghostscript9-agpl-base/files/patch-openjpeg_src_lib_openjp2_opj__includes.h head/print/ghostscript9-agpl-base/files/patch-psi_zicc.c head/print/ghostscript9-agpl-base/files/patch-trio_triodef.h head/print/ghostscript9-agpl-base/files/patch-trio_triop.h head/print/ghostscript9-agpl-base/pkg-descr head/print/ghostscript9-agpl-base/pkg-plist head/print/ghostscript9-agpl-x11/Makefile head/print/ghostscript9-agpl-x11/distinfo head/print/ghostscript9-agpl-x11/files/ head/print/ghostscript9-agpl-x11/pkg-descr