Commit Graph

18 Commits

Author SHA1 Message Date
Luis Diaz
a62e35edb6 Remove compiler flag which is causing issues in Fedora_MinGW 2019-10-09 12:37:38 +02:00
Luis Diaz
907a5aef3b clang guard for -fstack-protector-strong 2019-10-09 12:37:38 +02:00
Luis Díaz Más
9a0889c744 FORTIFY not used on OSX 2019-10-09 12:37:38 +02:00
Luis Díaz Más
006dcde403 Better usage of --coverage flags 2019-10-09 12:37:38 +02:00
Luis Díaz Más
9c7c3c6d22 Allow to use new compiler flags in clang 2019-10-09 12:37:38 +02:00
Luis Díaz Más
1fa5839c8e cmake: use add_compile_option & add new security flags
- Replacement of CMAKE_CXX_FLAGS by add_compile_option where it was
  possible
- Addition of new compiler flags which are interesting in terms of
  software security
- Do not mix coverage flags with -O0 and -g
2019-10-09 12:37:38 +02:00
Robin Mills
c32b413f74 Fix: https://github.com/Exiv2/exiv2/issues/575 2018-12-09 18:54:40 +01:00
Luis Díaz Más
f92030d650 CMake: remove XMPSRC variable. 2018-11-26 15:23:30 +01:00
Luis Diaz Mas
d6c6d469a9 CMake: Use add_definitions instead of add_compile_definitions 2018-11-16 12:10:11 +01:00
Luis Díaz Más
38ed6de05d MSVC: Move compile definitions from config.h to CMake.
+ Also remove inclusion of <Windows.h> from config.h
2018-11-11 12:27:26 +01:00
Luis Díaz Más
274ef04f7e CMake: Proper way to require c++98 standard 2018-11-08 17:26:02 +01:00
Robin Mills
42084f2563 Add support for MinGW/msys2 in 32 bits + Updates in buildserver 2018-10-26 17:47:15 +02:00
Luis Díaz Más
dc086d2ebb Default to /MD(d) even for STATIC builds.
We had issues to compile exiv2 due to a undefined symbol referenced in expat.lib (Explained in #487).
Static builds in Windows need to use msvcrt.lib where the missing symbol ("__imp__mbspbrk") was
defined. We can still decide to use the STATIC CRT  library by using:

cmake -DBUILD_SHARED_LIBS=OFF -DEXIV2_ENABLE_DYNAMIC_RUNTIME=OFF
2018-10-17 13:05:23 +02:00
Luis Díaz Más
a6d82633c3 Enable WARNINGS_AS_ERRORS in CI jobs.
- Move the settings to other cmake file. This will not be used for XMP code
- Disable WARNINGS_AS_ERRORS for VS2008 and VS2010
2018-09-12 19:22:31 +02:00
Dan Čermák
10929cec7a [CMake] Add EXIV2_TEAM_USE_SANITIZERS option
Setting this option enables address sanitizer and undefined behavior
sanitizer, when available for the given compiler & platform.
It does not currently check whether the architecture is supported,
as CMake does not offer an easy way how to check it. Since we are
mostly developing for x86 & amd64 this is not a huge problem and it's
also a developer only setting.
2018-08-27 17:22:33 +02:00
Luis Diaz Mas
6521f7c4f9 cmake: new option to enable compilations with coverage flags
Note that this will only work with gcc and clang.
2018-07-31 23:43:46 +02:00
Luis Díaz Más
5eee072089 Enable clcache usage and use it in appveyor
* [appveyor] Install clcache with nuget
* [appveyor] Keep clcache in the appveyor jobs
* [appveyor] Print clcache stats after compiling the project
* Use CLCACHE_PATH env variable to find clcache
2018-07-30 21:31:23 +02:00
Luis Diaz Mas
a3444f055e Rename config folder to cmake 2018-06-08 14:04:25 +02:00