Rosen Penev
e2686569bf
meson CI: test all features enabled and disabled
...
That was the original intention with wrap-mode.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
63b5ea47f9
meson CI: remove /analyze
...
slows down CI massively. Not too useful as most issues have been fixed.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
c4ad51077a
meson CI: test oldest and newest compilers only
...
No need for the ones in the middle.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
a681b2425e
meson CI: move clang workflow to the same file
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
a6766b208e
meson: only define MinGW stuff for non UCRT
...
time_t is 64-bit with UCRT.
__USE_MINGW_ANSI_STDIO is used only to get proper printf formats under
msvcrt. UCRT has them. Hence why it's deprecated.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
3aa872dd4c
meson: add libobsd wrap
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
c8c289613d
remove EXIV2API from src
...
Already declared in include
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Miloš Komarčević
64556b02d2
Merge pull request #2582 from Exiv2/sony_arw_401
...
Update Sony file format table
2 years ago
Miloš Komarčević
fbf6100d3a
Update Sony file format table
2 years ago
Rosen Penev
3fd513fb15
use using in slice
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
971bbfac9b
meson CI: add MSYS2
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
498d01c44d
meson CI: remove static build
...
There's no need for it anymore. All static bugs (mostly on Windows)
were fixed.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
5d11711db8
meson CI: add FreeBSD
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
c42c7fa9ac
meson: build iconv with FreeBSD
...
Bug was fixed.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
9322f137aa
don't compile WIN32 stuff when iconv is present
...
MinGW has iconv, so this block of code can go away.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
b10f2d3e95
geotag: fix compilation with MSYS
...
using namespace std interferes with windows.h
stat defines interfere with internal headers.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
cfc0ef0b65
meson: fix tests when zlib is disabled
...
This sometimes shows up in CI if zlib is not found.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
3633f8d2c2
clang-tidy: remove const from data members
...
Found with cppcoreguidelines-avoid-const-or-ref-data-members
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
233f404ac7
direct initialize some structs
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Miloš Komarčević
0dd06894b3
makernotes: workaround for Olympus header corruption
2 years ago
Miloš Komarčević
dd48bb13ee
Add equivalent soversion to meson build
2 years ago
Miloš Komarčević
caddbf663d
Fix shared object versioning
2 years ago
Miloš Komarčević
3403dabec2
Add Sony ZV-E1 ID
2 years ago
Miloš Komarčević
2f01f70eaf
Add some more Nikon Z lenses
2 years ago
Rosen Penev
0fa22ed55d
remove codecvt
...
Deprecated in C++17
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
2e33dad1d1
easyaccess const changes
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
b92b121532
meson: remove now unused checks
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
632536a55a
meson: build samples
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
848da172da
make runner.py executable
...
Otherwise meson will not find it.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
0c0dabfcc7
geotag: add GCC7 support
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
357d970425
get rid of EXV_CALL_MEMBER_FN
...
std::invoke can be used.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Eli Schwartz
2108ae671a
meson: compile convert.cpp separately, with just iconv
...
Compiling this file with all dependencies as part of the main library
causes it to have the include directories of all dependencies, but iconv
is a bit of a special case: it can have a libc builtin or an external
library version. The external library might be installed to the same
directory as other dependencies, for example on FreeBSD -- but if exiv2
is not supposed to be built with GNU libiconv, then it will expect to
see the libc builtin.
The leaky include directories means that iconv.h gets pulled in from the
GNU libiconv version instead, though, which then forces -liconv to be
necessary for no reason.
There are two general solutions to ensuring that everything links
correctly:
- expect exiv2 to be built with *global* -I/usr/local/include -L/usr/local/lib
thus forcing the use of GNU libiconv
- carefully compiling the iconv support without any other dependencies
Let's do the latter since it allows for more choice and is easier to
enforce.
2 years ago
Rosen Penev
05f2731d34
std::array removals
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
8fe2ae6030
remove constexpr
...
const_iterator is not constexpr. clang 15 on MSYS2 fails to compile
because of this.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
513b0e8bbd
constexpr some constructors
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
0aed79ff57
remove several constructors
...
Just direct initialize
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
024e026bbb
clang: small fixes
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
9ae339d39f
clang: fix various documentation errors
...
Found with -Wdocumentation
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Miloš Komarčević
18e11ac1b6
Explicitly include stdint ( #2558 )
2 years ago
Rosen Penev
22b12012a6
more SonarLint cleanups
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
d29001f2a4
clang-tidy: don't use non const refs
...
Found with: google-runtime-references
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
01aab49f6f
don't assign an fs::path to a string
...
Seems to trip up MemorySanitizer on ARM32.
Also applied various simplifications to the code using std::filesystem
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
5ccb525dd3
remove inline function
...
Just make it part of the template
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
763cfaf2b4
MSVC warning fixes
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
1f3d1f066f
extern to static
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
ca95edc6bd
random fixes
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
d6c1059485
gcc: ifdef
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
0a8fedf249
gcc: noexcept
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
1f21164085
gcc: remove redundant struct
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev
9a1f37ecbe
get rid of Key() move operations
...
Because of Impl, there's no way this can work properly.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago