When cross-compiling spdlog from x86-64 to armhf, I ran spdlog-utests
via qemu-arm and noticed that the "daily_logger rotate" test was failing
because count_files always returned zero.
Investigation of count_files revealed that readdir was returning nullptr
immediately and setting errno to 75, i.e. "value too large for defined
data type". I suspected this had something to do with some 64 vs.
32-bit thing, so I added _FILE_OFFSET_BITS=64 to the build and that
seems to have made readdir happy.
It might be safe to add _FILE_OFFSET_BITS=64 for all Linux builds, but
it only seems to be necessary for the 32-bit case (which is a pretty
small audience these days -- I'm only building for armhf to target a
Raspberry Pi 3 running Raspbian, which runs in 32-bit mode).
Create a macro to add tests for both static/header only.
The only differneces between these two are the libraries they link
with and the target names. Created the simple macro:
_spdlog_prepare_test(<target> <spdlog_lib>)
which does the work.
Signed-off-by: Andrei-Florin BENCSIK <andrei.bencsik@gmail.com>
Added:
* Release/Debug job for gcc 7 and clang 3.5
* Debug asan gcc 7 job
* Debug tsan gcc 7 job
* Disabled extensions
* Added a spdlog::spdlog alias for tests
Removed:
* Valgrind workaround, the current version is 3.10.1
* install_libcxx
* Makefiles
Fixed:
* examples build
* multisink build
Workarounds:
* gcc7 with tsan and asan needs gold linker, otherwise build
fails becase of unrecognized option '--push-state'