diff options
author | Tijl Coosemans <tijl@FreeBSD.org> | 2018-06-12 09:45:14 +0000 |
---|---|---|
committer | Tijl Coosemans <tijl@FreeBSD.org> | 2018-06-12 09:45:14 +0000 |
commit | 9a60a2e4c546c63e50ed3d5597c5533b138946f4 (patch) | |
tree | a2effec62daa5e6f6d778b9d83d9c09299678f15 /print/ghostscript9-agpl-x11/files/patch-base_gp__unix.c | |
parent | - Update WWW (diff) |
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)
Notes
Notes:
svn path=/head/; revision=472239
Diffstat (limited to 'print/ghostscript9-agpl-x11/files/patch-base_gp__unix.c')
-rw-r--r-- | print/ghostscript9-agpl-x11/files/patch-base_gp__unix.c | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/print/ghostscript9-agpl-x11/files/patch-base_gp__unix.c b/print/ghostscript9-agpl-x11/files/patch-base_gp__unix.c deleted file mode 100644 index eb39270d5fb4..000000000000 --- a/print/ghostscript9-agpl-x11/files/patch-base_gp__unix.c +++ /dev/null @@ -1,47 +0,0 @@ ---- base/gp_unix.c.orig 2015-03-30 08:21:24 UTC -+++ base/gp_unix.c -@@ -52,6 +52,7 @@ extern char *getenv(const char *); - * and applied as a patch (preferable). - */ - #include <sys/types.h> -+#include <limits.h> - #include <dirent.h> - #include <dlfcn.h> - #include <string.h> -@@ -61,26 +62,25 @@ gp_init(void) - { - DIR* dir = NULL; - struct dirent* dirent; -- char buff[1024]; -+ char buff[PATH_MAX]; - char* pbuff; - void* handle; - void (*gs_shared_init)(void); - -- strncpy(buff, GS_DEVS_SHARED_DIR, sizeof(buff) - 2); -- pbuff = buff + strlen(buff); -- *pbuff++ = '/'; *pbuff = '\0'; -- - dir = opendir(GS_DEVS_SHARED_DIR); - if (dir == 0) return; - - while ((dirent = readdir(dir)) != 0) { -- strncpy(pbuff, dirent->d_name, sizeof(buff) - (pbuff - buff) - 1); -- if ((handle = dlopen(buff, RTLD_NOW)) != 0) { -- if ((gs_shared_init = dlsym(handle, "gs_shared_init")) != 0) { -+ snprintf(buff, sizeof(buff), "%s/%s", GS_DEVS_SHARED_DIR, dirent->d_name); -+ pbuff = buff + strlen(buff) - 3; -+ if (strcmp(pbuff, ".so") != 0) -+ continue; -+ handle = dlopen(buff, RTLD_NOW); -+ if (handle == NULL) -+ continue; -+ gs_shared_init = dlsym(handle, "gs_shared_init"); -+ if (gs_shared_init != NULL) - (*gs_shared_init)(); -- } else { -- } -- } - } - - closedir(dir); |