From 27470e1676e69455acf06ae25ebd42ebd5bdecdb Mon Sep 17 00:00:00 2001 From: Hiroki Sato Date: Sat, 22 Aug 2015 17:48:35 +0000 Subject: - Split ghostscript into X11-independent and -dependent parts: * print/ghostscript{7,8,9,9-agpl}-base Installs Ghostscript binary, libgs, and related files. These ports do not depend on X11 libraries (i.e. x11* devices are not available). USES=ghostscript will set dependency on one of them depending on GHOSTSCRIPT_DEFAULT. The default device is set to "display" or "bbox". * print/ghostscript{7,8,9,9-agpl}-x11 Installs a shared library which provides X11 support to the installed Ghostscript binaries. x11* devices will be enabled when the library is available. This depends on *-base (RUN_DEPENDS). USES=ghostscript:x11 will set dependency on one of them. - Fix integer overflow reported as CVE-2015-3228. - Update Uses/ghostscript.mk: * Add x11 keyword. nox11 keyword is now obsolete. * Use packagename in *_DEPENDS line to prevent relationship between -base and -x11 packages from being broken. - Fix x11/nox11 keyword and bump PORTREVISION in ports using USES=ghostscript to update dependency of pre-compiled packages. --- print/ghostscript7-base/files/patch-src-gdevxalt.c | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 print/ghostscript7-base/files/patch-src-gdevxalt.c (limited to 'print/ghostscript7-base/files/patch-src-gdevxalt.c') diff --git a/print/ghostscript7-base/files/patch-src-gdevxalt.c b/print/ghostscript7-base/files/patch-src-gdevxalt.c new file mode 100644 index 000000000000..4d9a88b43fb4 --- /dev/null +++ b/print/ghostscript7-base/files/patch-src-gdevxalt.c @@ -0,0 +1,31 @@ +--- src/gdevxalt.c.orig 2015-08-22 01:42:12.291619000 +0900 ++++ src/gdevxalt.c 2015-08-22 01:42:53.871222000 +0900 +@@ -30,6 +30,7 @@ + #include "gdevx.h" + + extern const gx_device_X gs_x11_device; ++extern const gx_device_X gs_x11alpha_device; + + /* + * Define a forwarding device with a cache for the first 16 colors, +@@ -957,3 +958,20 @@ + rgb[2] = ((color >> 11) & 0x3ff) * gx_max_color_value / 0x3ff; + return -1; + } ++ ++#ifdef GS_DEVS_SHARED ++extern void gs_lib_register_device(const gx_device *dev); ++void ++gs_shared_init(void) ++{ ++ gs_lib_register_device(&gs_x11_device); ++ gs_lib_register_device(&gs_x11alpha_device); ++ gs_lib_register_device(&gs_x11cmyk_device); ++ gs_lib_register_device(&gs_x11cmyk2_device); ++ gs_lib_register_device(&gs_x11cmyk4_device); ++ gs_lib_register_device(&gs_x11cmyk8_device); ++ gs_lib_register_device(&gs_x11gray2_device); ++ gs_lib_register_device(&gs_x11gray4_device); ++ gs_lib_register_device(&gs_x11mono_device); ++} ++#endif -- cgit v1.2.3