Skip to content

3rdparty: Small version expression problems for built-in tiff460 #25256

@Kumataro

Description

@Kumataro

System Information

OpenCV version: 4.9.0-dev(4.x branch)
Operating System / Platform: Ubuntu 23.10
Compiler & compiler version: GCC 13.2.0

-- General configuration for OpenCV 4.9.0-dev =====================================
--   Version control:               4.9.0-253-g52f3f5a3f6

Detailed description

Thank you for updating built-in libtiff 4.6.0.
I notice 2 small version problems for it. I report it.
(Replace Minor version problem to Small version problem, I'm sorry)

Problem1: Value of TIFFLIB_VERSION is missing.

tiffvers.h is generated from code. TIFFLIB_VERSION is defined, but it doesn't have value.

Maybe we can expect to not use it directly, but differences between built-in and external libraries are not good in the future.

built-in libtiff 4.6.0

/*
 * This define can be used in code that requires
 * compilation-related definitions specific to a
 * version or versions of the library.  Runtime
 * version checking should be done based on the
 * string returned by TIFFGetVersion.
 */
#define TIFFLIB_VERSION

self-build (external) libtiff 4.6.0

/*
 * This define can be used in code that requires
 * compilation-related definitions specific to a
 * version or versions of the library.  Runtime
 * version checking should be done based on the
 * string returned by TIFFGetVersion.
 */
#define TIFFLIB_VERSION 20230908

Problem2: libtiff version string is missing in CMake output

At execute cmake, libtiff version string is not completely.

We expects build (ver 42 - 4.6.0), but actual is build (ver 42 - ).

built-in libtiff 4.6.0

--   Media I/O:
--     ZLib:                        /usr/lib/x86_64-linux-gnu/libz.so (ver 1.2.13)
--     JPEG:                        /usr/local/lib/libjpeg.so (ver 62)
--     WEBP:                        build (ver encoder: 0x020f)
--     AVIF:                        /usr/lib/x86_64-linux-gnu/libavif.so.15.0.1 (ver 0.11.1)
--     PNG:                         /usr/lib/x86_64-linux-gnu/libpng.so (ver 1.6.40)
--     TIFF:                        build (ver 42 - )
--     JPEG 2000:                   OpenJPEG (ver 2.5.2)
--     OpenEXR:                     build (ver 2.3.0)

self-build (external) libtiff 4.6.0

   Media I/O:
     ZLib:                        /usr/lib/x86_64-linux-gnu/libz.so (ver 1.2.13)
     JPEG:                        /usr/local/lib/libjpeg.so (ver 62)
     WEBP:                        build (ver encoder: 0x020f)
     AVIF:                        /usr/lib/x86_64-linux-gnu/libavif.so.15.0.1 (ver 0.11.1)
     PNG:                         /usr/lib/x86_64-linux-gnu/libpng.so (ver 1.6.40)
     TIFF:                        /usr/local/lib/libtiff.so (ver 42 / 4.6.0)
     JPEG 2000:                   OpenJPEG (ver 2.5.2)
     OpenEXR:                     build (ver 2.3.0)

Steps to reproduce

git checkout 4.x
git pull
cmake -S opencv -B build4-main -DBUILD_TIFF=ON -GNinja

Issue submission checklist

  • I report the issue, it's not a question
  • I checked the problem with documentation, FAQ, open issues, forum.opencv.org, Stack Overflow, etc and have not found any solution
  • I updated to the latest OpenCV version and the issue is still there
  • There is reproducer code and related data files (videos, images, onnx, etc)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions