Ghostscript 8.x PostScript interpreter Maintained by:doceng@FreeBSD.org Port Added: 01 Jun 2008 08:52:07 License: GPLv3
Ghostscript is the well-known PostScript interpreter which is available for
all common and most esoteric platforms and supports many different printers
and some displays.
This is distributed with the GNU General Public License, which allows
free use, and free copying and redistribution under certain conditions
(including, in some cases, commercial distribution).
This port includes add-on packages (not part of the official gs release)
o HP8XX driver for HP DeskJet 880C/882C/895C
- http://www.gelhaus.net/hp880c/
o PCL3 driver for HP DeskJet series
- http://home.vrweb.de/martin.lottermoser/pcl3.html
o DJ970 driver for HP DeskJet 970CXi
- http://www.harsch.net/Ghostscript/ghostscript.html
o Special drivers for verious printer models
- Alps, Canon, Epson, NEC, Lexmark, Ricoh,...
o Additional contributed uniprint driver profiles for
- Epson Stylus Color 740 and Epson LQ-1170
WWW: http://www.cs.wisc.edu/~ghost/doc/GPL/index.htmhttp://www.ghostscript.com/
- Use OPTIONS_MULTI and OPTIONS_GROUP.
- Add dependency on libpaper unconditionally to 8.x and 9.x.
- Fix CONFLICTS_INSTALL.
- Remove ABI version numbers from LIB_DEPENDS.
Rely on bsdtar to autodetermine the format of the distfiles when possible
For a while now bsdtar is able to autotermine compression and archive format.
Let's then use tar directly instead of piping to tar.
Now USE_BZIP2 and USE_XZ only set EXTRACT_SUFX to the right format
Revert r303635 to fix an wrong OPTIONS handling and resolve svgalib dependency
in the case of !amd64 && !i386 in another way.
Pointed out by: crees
Pointy hat to: hrs
- Add LICENSE.
- Make MAKE_JOBS_SAFE=yes.
- Replace OPTIONS with OPTIONSng. Bump PORTREVISION because a package created
with Makefile.drivers r1.8 had some inconsistent default values.
New options framework for the ports
for maintainers:
it introduces 3 different types of options: simple, multi and single:
- simple options are the same as the current options (i.e. on or off.)
- multi options are options where at least one must be set (1-N).
- single options are options where one and only one must be set (exclusive
options).
for users:
- OPTIONS_SET: globally enable some options
- OPTIONS_UNSET: globally disable some options
- ${UNIQUENAME}_SET: enable per-port choice of options
- ${UNIQUENAME}_UNSET: disable per-port choice of options
For compatibility the old OPTIONS framework is now working on top of the new one
The options previously set with old OPTIONS are imported and converted
transparently.
A new knob NO_DIALOG if defined in the the config-conditional target is ignored
(prevent the dialog(1) ui to show up.
Thanks to all people involved:
beat@, crees@, Bryan Drewery, linimon@, novel@ and others, for testing,
comments, patches
- Add LDFLAGS to CONFIGURE_ENV and MAKE_ENV (as it was done with LDFLAGS)
- Fix all ports that add {CPP,LD}FLAGS to *_ENV to modify flags instead
PR: 157936
Submitted by: myself
Exp-runs by: pav
Approved by: pav
- Introduce a new USE_XZ knob that handles lzma/xz compressed distfiles
- Convert a bunch of ports to use it
PR: ports/146329
Submitted by: mm
With hat: portmgr
- Make the driver selection stricter and redefine DEVICE_DEVSn in the
ghostscript build framework to eliminate differences between
selected drivers by OPTIONS and actually-compiled ones.
- Eliminate duplicated devices displayed in "gs -h".
* Update to 8.71.[1] Changes include:
- Support for tiff file output is now provided using the libtiff
implementation rather than our more limited native code as in
previous releases. There is also a new 'tiffsep1' output
device which produces halftoned separations at 1
bit-per-pixel, in contrast to the 'tiffsep' device which
produces 8 bit-per-pixel plates.
- The graphics library has been updated to provide more accurate
scan conversion of vector art including fixes to dash
behavior, transparent stroked paths, thick stroked paths,
radial shadings, xps cap handling, "pie" joins, degenerate
beziers, improved handling of dropouts in thin strokes and
better thin axis-aligned strokes.
* Fix cairo support. GS_cairo is added to the drivers list (this
is disabled by default). When WITH_CAIRO is defined, GS_cairo
will be set by default.[2]
PR: ports/144111[1]
PR: ports/137634[2]
PR: ports/145248[2]
Update to 8.70. Changes include:
- This release fixes a large number of issues with transparency,
especially as it interacts with color space conversion, mask
contexts and patterns. There have also been a number of
significant fixes to font handling, especially when generating
PDF. And there are numerous robustness, correctness and
performance improvements.
- New generic Esc/Page devices, eplmono and eplcolor were added
to the contrib directory. A new cdnj500 device was added to
support the HP DesignJet 500.
- The licensing of the Free version of the core Ghostscript code
has been changed to GPLv3 or later. Previously, the core code
(Only the first 15 lines of the commit message are shown above )
Allow building ghostscript8 without CUPS support. The default is
to link with CUPS, but it should now be possible to `make config'
and disable any link options that refer to CUPS libraries.
Approved by: doceng (hrs)
Noticed by: Stefan Thurner thurners at nicsys.de
Guido Falsi mad at madpilot.net [1],
Helge Oldach ports-ghostscript8-may09 at oldach.net [1]
[1] An almost identical patch was submitted to doceng.
japanese/font-std, chinese/font-std, and dependency fixups due
to it have been added. These are to install standard fonts used in the
Ports Collection. Currently they contain:
std.ja_JP/Mincho
std.ja_JP/Gothic
std.ja_JP/Ryumin-Light
std.ja_JP/GothicBBB-Medium
std.zh_CN/STHeiti-Regular
std.zh_CN/STSong-Light
std.zh_CN/MSung-Light
std.zh_CN/MHei-Medium
under ${PREFIX}/share/fonts/. They are just symlinks to
corresponding font files. The symlink names are based on popular
PostScript font names.
Applications should refer the font files via XLFD or fontconfig
first. If they need a direct reference to the font file, please use
files in std.*/*. This is because direct reference to a specific
font name in an application configuration file makes the maintenance
difficult when the font file name is changed, for example.
Fix multiple integer overflows and lack of boundary check found
and marked as CVE-2009-583 and CVE-2009-584:
CVE-2009-583:
Multiple integer overflows in icc.c in the International Color
Consortium (ICC) Format library (aka icclib), as used in
Ghostscript 8.64 and earlier and Argyll Color Management
System (CMS) 1.0.3 and earlier, allow context-dependent
attackers to cause a denial of service (heap-based buffer
overflow and application crash) or possibly execute arbitrary
code by using a device file for a translation request that
operates on a crafted image file and targets a certain "native
color space," related to an ICC profile in a (1) PostScript
or (2) PDF file with embedded images.
(Only the first 15 lines of the commit message are shown above )
Update to 8.64. Changes include:
- Improvements to overprint and spot color support in documents with
transparency, improvements to PDF and PS output, proper handling of
PDF-specific text rendering modes and support for reading
AES-encrypted PDF documents.
- Improved handling of CJK text, especially in vertical writing modes.
- Improved memory footprint processing some files at high resolution.
- The handling of color spaces has been moved from PostScript code to
C.
- A number of the included printer drivers and cups wrappers have been
updated to support a PDF-based workflow. Also fixed are several
long-standing bugs in the pcl drivers with respect to duplex,
resolution and paper tray selection.
Update to 8.63. Changes include (quoted from doc/News.htm):
|Approximately 238 bugs have been fixed since version 8.62. Of particular note
|are robustness and performance improvements with large files, invalid PDF, and
|font handling.
|
|The major new feature of this release is multithreaded rendering. This can be
|requested by passing -dNumRenderingThreads=n on the command line. The input
|document is first parsed, and then each page is split into n bands which are
|rendered concurrently. This can provide a significant reduction in processing
|time on multi-core systems.
|
|Images are now always interpolated in their source colorspace. This improves
|correctness for XPS documents and avoids bypassing the custom color management
|callbacks for interpolated images. Interpolation and color management are both
(Only the first 15 lines of the commit message are shown above )
Fix an issue that print/ghostscript8 does not set
PKGNAMESUFFIX (-nox11) correctly when WITHOUT_X11=yes and one of
the X11 drivers are specified at a time.
PR: ports/123859
Remove a workaround for PostScript files generated by old
acroread. GS reports an error when it reads some broken (but
should be processed) PS files.
Reported by: Chuck Robey
The following repocopies have been done for print/ghostscript-*
reorganization:
print/ghostscript-gnu -> print/ghostscript7
print/ghostscript-gnu-nox11 -> print/ghostscript7-nox11
print/ghostscript-gnu-commfont -> print/ghostscript7-commfont
print/ghostscript-gpl -> print/ghostscript8
print/ghostscript-gpl-nox11 -> print/ghostscript8-nox11
japanese/ghostscript-gnu-jpnfont -> print/ghostscript7-jpnfont
korean/ghostscript-gnu-korfont -> print/ghostscript7-korfont
and clean up Makefile of each port for the changes, and assign the
maintainers to doceng@.
Not hooked up to the build yet because it needs more fixes in
dependent ports and bsd.port.mk.
PR: ports/124157