43 Commits (41f05b1db1a00974b1f6bc8421a1adab55f174c4)

Author SHA1 Message Date
enen92 41f05b1db1 [CI] Fix unsupported MSVC version
This was fixed upstream in 6e5369d137
1 year ago
Miguel Borges de Freitas aa88bc4a43 Add EXIV2_ENABLE_FILESYSTEM_ACCESS option 2 years ago
Miloš Komarčević b7c45b49aa Leverage global BUILD_TESTING option 2 years ago
kamiccolo 52fb9ee191 Revert "Isolate samples, unittests, coverage and overall build to PROJECT_BINARY_DIR"
This reverts commit 057ddfcf1755380583c6eb4ac97767a652fbfe9d.
2 years ago
kamiccolo c8e6ef2abe Use PROJECT_SOURCE_DIR while looking for root cmake subfolder 2 years ago
kamiccolo 6f5b1c94db Isolate samples, unittests, coverage and overall build to PROJECT_BINARY_DIR 2 years ago
kamiccolo b2b7b0dd01 cmake: switch from inclusion of CMAKE_SOURCE_DIR to CMAKE_CURRENT_SOURCE_DIR 2 years ago
Rosen Penev a2d6996ca2 exiv2: fix compilation with GCC7
Needs experimental filesystem.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Kevin Backhouse 43c9ec0f50
Add EXIV2_ENABLE_INIH flag to enable building without libinih. 2 years ago
Kevin Backhouse ba258cb1ae
cmake fatal error if inih library is not found. 3 years ago
Kevin Backhouse a4164ce866
Remove libinih from codebase and add it as a dependency instead. 3 years ago
Miloš Komarčević 557a5cebd5 Make brotli dependency controllable 3 years ago
Miloš Komarčević c334fa3ce9 Use local cmake module path the last 3 years ago
Miloš Komarčević eada606992 Match Conan's cmake find module case for Brotli 3 years ago
Miloš Komarčević 9a6ee59421 Support brotli compressed boxes in JPEG XL 3 years ago
Luis Diaz e1ed1df0d7 Definition of new CMake presets & usage in CI jobs
Additional interesting changes in this commit:
- conan: use cmake-conan for better CMake-Conan integration
- cmake+doc: Remove deprecated EXIV2_ENABLE_WIN_UNICODE
- Ignore CMakeUserPresets.json
- doc: Add notes about the usage of CMake presets
3 years ago
Luis Diaz b7d5c7e22a Link against stdc++fs on Linux when it is needed 3 years ago
Luis Díaz Más 40a59abef8 cmake: warning message when python3 is not found 3 years ago
Luis Díaz Más f30022d73d
Fix issues detected with PVS-Studio + other little improvements (#1689)
* avoid re-declaration of constant variables

* Replace pthreads critical section with std::mutex

* ci - better naming

* cmake - increase minimum version to 3.11. Use project DESCRIPTION

* fix - do not treat string::find() return type as bool

* remove conditions that were always true

* remove condition that were always false

* Remove EXV_HAVE_GMTIME_R which is not used anymore

* pixelWidth_ was inherited from Exiv2::Image

The width & height variables in the TiffImage class need to be mutable
to be able to change their values on the getters pixelHeight() and
pixelWidth() ... Do not ask me why ...

* Remove superfluous if

* pvs:V766 item with identical key added already

* pvs:V730 not all members were initialized (time)

* pvs:V730 not all members are initialized

* pvs:v668 no point in testing pointer against null after new

* pvs:V1048 variable assigned the same value

* replace c-style dynamic vector with std one

* pvs:547 fakeData is always true

* Remove useless constructor in derived class

* pvs:V690 modern way to disable copy-ctor

* Replace malloc/free with new/delete. No need to check for null

* pvs:V1028 cast operands and not result

* Remove custom MIN/MAX functions

* pvs:V595 pointer used before verified against null

* pvs: index used before being checked

* pvs:V1028 possible overflow. Cast operands

* pvs:v575 potential null pointer passed to other functions

* pvs:V547 deal with always true/false expressions

* pvs:V560 part of conditional expressions always false or true

* pvs:V701 possible break in realloc -> move to std::vector

* Make some classes 'final'

* Replace sprintf with std::to_string()

* fix compilation on windows
4 years ago
Luis Díaz Más b54ade76ab Python3 dependency is not obligatory
Some of the CI-Linux-Distros jobs failed because of this. Python3 is not
available by default on Debian:9 nor in Centos:8.

Since we are not currently running the tests in those platforms, and
python3 is just used for testing, we do not want to enforce this project
dependency.
4 years ago
Luis Díaz Más 59a80eba2e mac - cmake_paths does not work directly on mac 4 years ago
Luis Díaz Más 6c2141959a conan - change generator to be able to use latest expat version 4 years ago
Luis Díaz Más 64eb95a16f cmake: find python3 and use it in tests 4 years ago
Luis Díaz Más 53f18cf408 conan: use cmake_paths generator instead of cmake
We also upgraded the xcode version on Travis-CI
4 years ago
Luis Díaz Más 94b87a8dec Remove deprecated SSH support 4 years ago
Andreas Sturmlechner 0890d66a6e EXIV2_ENABLE_SSH: Fix compatibility with >=libssh-0.9.2
0.9.1 remains broken regardless and is beyond fixing in this place.

Build-tested with both libssh 0.9.0 and 0.9.2.

Solution copied from KDE's kio-extras commit 24506c2af8d1904a99538543804306c6c2b81ca2
6 years ago
Robin Mills 73c592cdc9 Change EXIV2_ENABLE_NLS default to Off, removed EXIV2_BUILD_PO. Documentation Update. Restored find_package(Intl REQUIRED) 6 years ago
Robin Mills 3ad2c8a525 fix_966_macosx_libintl_mono_framework 6 years ago
Andreas Sturmlechner e85ce17fc9
Switch to libssh's own libssh-config.cmake
This is provided by libssh since 2013.
6 years ago
Luis Díaz Más 186352e295 conan: copy 3rd party dlls only if the conanDlls folder exists
Note that this folder will only exists if at least one of the conan packages managed with the shared option = True.
7 years ago
Luis Díaz Más 9980107586 Only include zlib directory when building the exiv2lib 7 years ago
Luis Díaz Más 4d47b08a16 CMake: Move gtest finding to unitTests folder 7 years ago
Luis Díaz Más 38b60a3e8e CMake: Simplify Intl finding 7 years ago
Luis Díaz Más 307cb27d31 Move find_package(MSGFMT) to po/CMakeLists.txt.
We do not want to find the package unless the PO option is enabled.
7 years ago
Luis Díaz Más 244f00bf3a CMake: Do not add conan global compiler flags
+ Add conan-gtest compile definitions for the unit_tests target
7 years ago
Robin Mills 42084f2563 Add support for MinGW/msys2 in 32 bits + Updates in buildserver 7 years ago
Luis Díaz Más 155b1a5a6b CMake: Remove magic configuration about WEBREADY. Users will need to specify what to use. 7 years ago
Gilles Caulier af44cec65f Detect Regex lib with cmake instead of pkg_config 7 years ago
Luis Díaz Más 18ded9ccf3 Use static version of libcurl.
Note that this will simplify the packaging/deployment
7 years ago
Luis Díaz Más 24be5a514e [Appveyor] Build exiv2 with Visual Studio 2012 and 2013
- Integration tests had to be disabled with 2012 and 2013. There were
few (4) tests failing for these cases.
- Only bring libiconv with conan when a windows subsystem is detected.
- libiconv can be enabled now with a conan option.
- Use infinity instead of INFINITY
- Use conan_basic_setup(). Fixes a problem with gtest is VS2012
- call vcvarsall.bat for each compiler version so that nmake can be
found.
7 years ago
Hombre a226d6a650 Fixing typo in cmakefiles and removing REGEX dependencie for Cygwin 7 years ago
Hombre 28da26f174 Adding MINGW32 toolchain support 7 years ago
Luis Diaz Mas a3444f055e Rename config folder to cmake 7 years ago