pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/graphics



Module Name:    pkgsrc
Committed By:   adam
Date:           Mon Aug 18 11:13:45 UTC 2014

Modified Files:
        pkgsrc/graphics/GraphicsMagick: Makefile Makefile.common PLIST distinfo
        pkgsrc/graphics/p5-GraphicsMagick: Makefile

Log Message:
Changes 1.3.20:

Special Issues:

Due to GCC bug 53967, several key agorithms (e.g. convolution) may execute much 
faster (e.g. 2-3X) for x86-64 and/or when SSE is enabled for floating point 
math (-mfpmath=sse) if the GCC option -frename-registers is used. Default 
32-bit builds do not experience the problem since they use '387 math. It is not 
clear in what version of GCC this problem started but it was not noticed by the 
developers until the GCC 4.6 timeframe. Other compilers do not suffer from this 
bug. Please lobby the GCC project to fix this embarrassing performance bug.

Bug fixes:

Compilation: No longer undefine __attribute__ since this may be used by system 
or compiler headers and cause problems.
BMP: Alpha channel from BMP3 format was inverted.
PNG: Fix round-trip repeatability issue (due to rounding algorithm) with modern 
versions of libpng. Prefer the less accurate method which does not alter the 
image.
PNG: Fix some memory leaks in error-handling paths.
PNM: Scaling of alpha in sub-ranged pixels is fixed.
Wand API: Removed development debug fprintf which causes each drawing primitive 
to be printed to stderr.
PS, PS2, PS3, PDF: Only use resolution from image or -density if units was 
properly specified. Without units, resolution is worthless.
PS, PS2, PS3, PDF: Use resolution from image if it appears to be valid.
WebP: Fix inverted return status which caused failure to be reported instead of 
success.
Rotation clipping/shearing errors for short wide images at some angles is fixed.
-geometry: Deal with resize geometry missing width or height (e.g. '640x' or 
'x480') by substituting the missing value with one which preserves the image 
aspect ratio. This has been documented to be supported since almost the dawn of 
GraphicsMagick but was not actually supported until now.
-geometry: Support '>' and '<' qualifiers with '@' qualifier to specify if 
image should be resized if larger or lesser than given area specification.

New Features:

Wand API: MagickSetImageGravity() - New function to set image gravity.
Wand API: MagickGetImageGravity() - New function to get image gravity.
Wand API: MagickSetImageMatte() - New function to set the image matte channel 
enable flag.
Wand API: MagickGetImageMatte() - New function to read the image matte channel 
enable flag.
Wand API: MagickSetImageGeometry() - New function to set the image geometry 
string.
Wand API: MagickGetImageGeometry() - New function to get the image geometry 
string.
Wand API: MagickOperatorImageChannel() - New function to apply an operator to 
an image channel.
Magick++ API: New Image::thumbnail() method for fast image resizing, 
particularly to make thumbnails.
Core C API: Added SetLogMethod() to allow an application/library to specify a 
function to be called for logging.
Clang/LLVM: Provide support for clang/llvm attribute and builtin specifiers 
similar to that provided for GCC.
OpenMP: OpenMP native locking and thread specific data is supported via a 
configuration option (is not the default). This offers a "pure" OpenMP 
compilation mode. No real value for this compilation mode has been observed yet 
but it seems worthy to support.
Coders: Added BrokenCoderClass to mark coders which often malfunction or are 
not very useful in their current condition.
Composition: Added HardLight composition operator, which is now used by PSD and 
XCF formats, and available via command line, Magick++ API, PerlMagick API, and 
Wand API.
Composition: Added ScreenCompositePixels composition operator.
Composition: Added missing Photoshop separable compositing operations, Overlay, 
Exclusion, ColorBurn, ColorDodge, SoftLight, LinearBurn, LinearDodge, 
LinearLight, VividLight, PinLight, HardMix.
+set: Command line utilities now support +set to remove an existing image 
attribute.
-format: Support additional format specifiers 'g', 'A', 'C', 'D', 'G', 'H', 
'M', 'O', 'P', 'Q', 'T', 'U', 'W', 'X', and '@', similar to the major brand.
-operator: New quantum operators ThresholdBlackNegateQuantumOp and 
ThresholdWhiteNegateQuantumOp These correspond to -operator 
"Threshold-Black-Negate" and "Threshold-White-Negate".
TIFF: Now support setting the TIFF "Software" tag for users who do not want to 
admit to using GraphicsMagick.
WebP: All of the WebP encoder encoder options are now supported by -define 
arguments.

Feature improvements:

Pixel interpolation quality is greatly improved, with minimal impact on 
performance. Pixel interpolation now also works well given an alpha channel.
WebP: WebP support is now prepared to compile with most WebP library versions 
and supports all features except for those pertaining to "RIFF" container 
support.
Performance Improvements:

Non-integral image rotation performance has been improved by about 40%, with 
lower memory usage as well.
GradientImage: Update image is_grayscale and is_monochrome flags based on 
gradient color properties.
Windows Delegate Updates/Additions:

PNG: Libpng 1.6.12 - June 12, 2014.
JPEG: libjpeg 9a of January 19, 2014.
FreeType: FreeType 2.5.3 of March 6, 2014.
WebP: webp 0.4.0 of January 20, 2013.
zlib: zlib 1.2.8 of April 28, 2013.
Build Changes:

--without-threads no longer disables use of OpenMP. Use the already existing 
option --disable-openmp to disable OpenMP.
Makefiles: Include paths are now exceedingly pedantic to make sure that only 
the required directories are included.
VisualMagick configure: Improve configure program so that it is possible to 
select QuantumDepth, OpenMP, and 64-bit build via configure dialog boxes as 
well as options on the command line. Also automatically detects and deals with 
similarly named files in subdirectories so that WebP support can now build 
successfully.
Behavior Changes:

MultiplyCompositePixels: Multiply composition now uses SVG interpretation of 
how alpha should be handled. No longer does a simple multiply of alpha channel.
Composition: The Difference, Darken, Lighten, and HardLight composition 
operators were modified to support alpha in their computations.
PNG: Using -optimize no longer triggers palette and depth optimizations since 
their implementations have been problematic.


To generate a diff of this commit:
cvs rdiff -u -r1.68 -r1.69 pkgsrc/graphics/GraphicsMagick/Makefile
cvs rdiff -u -r1.9 -r1.10 pkgsrc/graphics/GraphicsMagick/Makefile.common
cvs rdiff -u -r1.19 -r1.20 pkgsrc/graphics/GraphicsMagick/PLIST
cvs rdiff -u -r1.35 -r1.36 pkgsrc/graphics/GraphicsMagick/distinfo
cvs rdiff -u -r1.21 -r1.22 pkgsrc/graphics/p5-GraphicsMagick/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index