| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
documentation
Amend MR !337 'Add support for DNG tags up to version 1.6.0.0 and some TIFF/EP tags' from Sami Liedes:
- Set most tags to OkToChange=1.
- Define BATTERYLEVEL tag as ASCII and convert values of rational variant to ASCII.
- TIFF documentation updated for tags recognized by LibTiff (DNG 1.6 and others).
- TIFF/EP tags added, which are equivalent to EXIF tags. This addresses part of #418 as well.
- Definition of tags reformatted (clang-format off) for better readability of tag comments in tiff.h and tif_dirinfo.c
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
In Gentoo, we avoid building the tools for multilib (32-bit, x86) builds on
amd64/x86_64 because we only need the library to keep binary applications working.
This causes a test failure in e.g. tiffcp-thumbnail.sh as the 'thumbnail'
binary isn't built. Skip it if unavailable.
Fixes: https://gitlab.com/libtiff/libtiff/-/issues/421
Signed-off-by: Sam James <sam@gentoo.org>
|
|
|
|
|
|
|
|
|
|
| |
In Gentoo, we avoid building the tools for multilib (32-bit, x86) builds on
amd64/x86_64 because we only need the library to keep binary applications working.
This causes a test failure in e.g. tiffcp-thumbnail.sh as the 'thumbnail'
binary isn't built. Skip it if unavailable.
Fixes: https://gitlab.com/libtiff/libtiff/-/issues/421
|
|
|
|
| |
dereferences (NULL_RETURNS) line 55.
|
| |
|
| |
|
|
|
|
| |
Patch by @jsummers26
|
| |
|
|
|
|
|
|
| |
TIFFLIB_MICRO_VERSION defines
Also add a TIFFLIB_AT_LEAST() macro
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
temporarily added in master
|
|
|
|
| |
argument, with alloc, free and setters
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
handlers
Rename TIFFClientOpenEx() to TIFFClientOpenExt()
Rework signature of the re-entrant error handlers and of
TIFFSetWarningHandlerExt() and TIFFSetErrorHandlerExt()
Use structures that can be extended as extra argument.
Leverages and ammends https://gitlab.com/libtiff/libtiff/-/merge_requests/409
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Recent versions of CMake have improved support for including
dependencies, using the FetchContent module, which allows a dependency
to be imported as a subproject and then later found automatically by
calls to `find_package`.
This change makes libtiff's CMake better behaved when used as a
sub-project:
- CMake has a single global namespace for all target names in all
sub-projects. This commit renames the following CMake targets:
- port -> tiff_port
- mkg3states -> tiff_mkg3states
- faxtable -> tiff_faxtable
- release -> tiff_release
- When building TIFF as a sub-project, it is not normally useful to
create install rules for its targets. This commit adds a
`tiff-install` option that controls whether the install rules are
added and defaults to OFF when libtiff is included as a sub-project.
- Previously, libtiff set `BUILD_SHARED_LIBS` to ON by default. With
this commit, that default is only set if libtiff is the top-level
project.
- When using `find_package(TIFF)`, the targets `TIFF::TIFF` and
`TIFF::CXX` are defined. This commit makes libtiff itself define
those targets as aliases, to allow other cmake projects to use
either `find_package` or `FetchContent` interchangeably.
- Adds ZSTD_HAVE_DECOMPRESS_STREAM variable which may be set to bypass
`check_symbol_exists` call. Fixes
https://gitlab.com/libtiff/libtiff/-/issues/472.
|
|
|
|
| |
This copies the same logic as used by CMake.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Prior to this commit CTest would invoke all simple_tests tests with the
current working directory set to the source directory. However, some of
the tests (e.g. rewrite) will output files to the current working
directory and will therefore fail when run with a read-only source
directory. This can happen e.g. when testing a cross-compiled version of
libtiff where the sources are mounted read-only in the virtual machine.
Simply changing the working directory to CMAKE_CURRENT_BINARY_DIR allows
all but raw_decode to pass. The raw_decode test looks for files in the
source directory, and uses the `srcdir` environment variable to find, so
we also have to add a set_tests_properties() call to specify that env var.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
There's no reason not to support 64-bit. The TIFF 6 specification
doesn't say anything about that (and even mention 4-bit, which we don't
support)
|
| |
|
|
|
|
|
|
|
|
| |
* Use functions rather than macros to avoid problems with variables in
conditions (since macro arguments are not variables)
* Conditionally add to file lists and test program lists based upon the
configuration options (e.g. JPEG and old-JPEG availability)
* Sync tests, files and option usage with current automake usage
|
|
|
|
| |
(tif_print.c/tiffinfo.c)
|
|
|
|
| |
-Werror=misleading-indentation
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a bug caused by the `tif_lastdiroff` optimization when
rewriting directories.
Rewriting the Nth directory temporarily zeroes the pointer to it
(located in the N-1th directory) and relies on `TIFFLinkDirectory`
traversing the whole directory list to find the zeroed pointer and
linking the rewritten directory to it. Since `TIFFLinkDirectory` skips
the traversal when `tif_lastdiroff` is set, this change unsets it
to force the full traversal when rewriting a directory.
A test to catch this particular issue is also added.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a new `tif_lastdiroff` field to the TIFF data structure
and uses it to store the offset of the last written directory.
Appending a new directory required traversing the whole file
to find the last directory. By keeping track of its offset in this
new field, the search is no longer necessary.
Since this offset is only stored in-memory, the first directory
append after opening a file will have to transverse the whole
directory list. Subsequent calls will have access to the last
offset, avoiding the transversal.
|
| |
|
|
|
|
|
|
| |
The issues are in the tests and tiffcrop, not the core library. Real issues, but not high risk.
Use to test if Coverity integration is performing properly on merge.
|
|
|
|
|
|
|
|
|
|
|
| |
* Make libport an OBJECT library when in use, otherwise a dummy
INTERFACE library
* libport.h will work if getopt is present or not present. If
present, will fall back to <unistd.h>, else will define
symbols
* Add generated libport_config.h to define HAVE_GETOPT and HAVE_UNISTD_H
* dummy.c no longer needed with CMake
* libtiff/libtiffxx no longer link with libport
|
|
|
|
|
| |
Only makes sense in the context of Automake. Was carried over
for reference while porting, but is not needed.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|