From a3424a40e6a531ad7809f9c03871ebb3ce9bc8fb Mon Sep 17 00:00:00 2001 From: Felix Moessbauer Date: Tue, 10 Dec 2019 18:06:46 +0100 Subject: [PATCH] fix: manually generate export header for detector.h --- common/CMakeLists.txt | 1 + common/detector/Detector.h | 16 ++++++++++++++-- vendor/HowardHinnant/date | 2 +- vendor/gabime/spdlog | 2 +- vendor/google/benchmark | 2 +- vendor/google/googletest | 2 +- vendor/greg7mdp/parallel-hashmap | 2 +- vendor/greg7mdp/sparsepp | 2 +- vendor/jtilly/inih | 2 +- vendor/leethomason/tinyxml2 | 2 +- vendor/muellan/clipp | 2 +- 11 files changed, 24 insertions(+), 11 deletions(-) diff --git a/common/CMakeLists.txt b/common/CMakeLists.txt index 83d5e00..7807dcc 100644 --- a/common/CMakeLists.txt +++ b/common/CMakeLists.txt @@ -6,6 +6,7 @@ include(${PROJECT_SOURCE_DIR}/CMakeExt/git_watcher.cmake) # Common header-only target add_library("drace-common" INTERFACE) target_include_directories("drace-common" INTERFACE $) +target_compile_definitions("drace-common" INTERFACE "DETECTOR_EXPORTS") add_dependencies("drace-common" check_git_repository) ################ configure test module ################ diff --git a/common/detector/Detector.h b/common/detector/Detector.h index 8ee58ab..337b500 100644 --- a/common/detector/Detector.h +++ b/common/detector/Detector.h @@ -12,6 +12,18 @@ #include +// this is a header only target, hence we cannot rely on cmake +// to generate the export headers. +#ifdef WIN32 +#ifdef DETECTOR_EXPORTS +#define DETECTOR_EXPORT __declspec(dllexport) +#else +#define DETECTOR_EXPORT __declspec(dllimport) +#endif +#else +#define DETECTOR_EXPORT +#endif + /** Interface for a DRace compatible race detector @@ -22,7 +34,7 @@ - A read or write will never contain a tid which was not forked - A read can happen before a write - A read and a write with the same TID will never arrive concurrently - - A happens after may arrive before a corresponding happens beore arrives + - A happens after may arrive before a corresponding happens before arrives - A lock may be be released, before it will be acquired -> the last three bullet points must not cause a crash @@ -204,4 +216,4 @@ class Detector { }; /// create a new detector instance -extern "C" Detector * CreateDetector(); +extern "C" DETECTOR_EXPORT Detector * CreateDetector(); diff --git a/vendor/HowardHinnant/date b/vendor/HowardHinnant/date index 48433b9..6a4d93a 160000 --- a/vendor/HowardHinnant/date +++ b/vendor/HowardHinnant/date @@ -1 +1 @@ -Subproject commit 48433b9892ac5741f8d4d8753beb76e49c57f7c8 +Subproject commit 6a4d93a0bd8b56db68821067322c09ec37d0d8a9 diff --git a/vendor/gabime/spdlog b/vendor/gabime/spdlog index a51b485..7d40244 160000 --- a/vendor/gabime/spdlog +++ b/vendor/gabime/spdlog @@ -1 +1 @@ -Subproject commit a51b4856377a71f81b6d74b9af459305c4c644f8 +Subproject commit 7d40244a8962ea920f4460c71bf801ad0aa20f5c diff --git a/vendor/google/benchmark b/vendor/google/benchmark index 3671194..4c2af07 160000 --- a/vendor/google/benchmark +++ b/vendor/google/benchmark @@ -1 +1 @@ -Subproject commit 367119482ff4abc3d73e4a109b410090fc281337 +Subproject commit 4c2af0788977d3bd900585528c2d08b875b2cd39 diff --git a/vendor/google/googletest b/vendor/google/googletest index 78fdd6c..98a0d00 160000 --- a/vendor/google/googletest +++ b/vendor/google/googletest @@ -1 +1 @@ -Subproject commit 78fdd6c00b8fa5dd67066fbb796affc87ba0e075 +Subproject commit 98a0d007d7092b72eea0e501bb9ad17908a1a036 diff --git a/vendor/greg7mdp/parallel-hashmap b/vendor/greg7mdp/parallel-hashmap index 3299224..8834c9d 160000 --- a/vendor/greg7mdp/parallel-hashmap +++ b/vendor/greg7mdp/parallel-hashmap @@ -1 +1 @@ -Subproject commit 329922436e9515e1708375ffb0eb1240a53bff6c +Subproject commit 8834c9d62452a2d363695de7253c49cabff7ade9 diff --git a/vendor/greg7mdp/sparsepp b/vendor/greg7mdp/sparsepp index 209cb77..8e07943 160000 --- a/vendor/greg7mdp/sparsepp +++ b/vendor/greg7mdp/sparsepp @@ -1 +1 @@ -Subproject commit 209cb772c28272eb6b2157b79afe554c0102fb61 +Subproject commit 8e07943ad6e1779c3701016c402c1fad87c9b21a diff --git a/vendor/jtilly/inih b/vendor/jtilly/inih index 1185eac..53621f4 160000 --- a/vendor/jtilly/inih +++ b/vendor/jtilly/inih @@ -1 +1 @@ -Subproject commit 1185eac0f0977654f9ac804055702e110bb4da91 +Subproject commit 53621f48c23ca481b45d7b7a2154f2f93838362c diff --git a/vendor/leethomason/tinyxml2 b/vendor/leethomason/tinyxml2 index ff61650..61a4c7d 160000 --- a/vendor/leethomason/tinyxml2 +++ b/vendor/leethomason/tinyxml2 @@ -1 +1 @@ -Subproject commit ff61650517cc32d524689366f977716e73d4f924 +Subproject commit 61a4c7d507322c9f494f5880d4c94b60e4ce9590 diff --git a/vendor/muellan/clipp b/vendor/muellan/clipp index 2c32b2f..973e6f5 160000 --- a/vendor/muellan/clipp +++ b/vendor/muellan/clipp @@ -1 +1 @@ -Subproject commit 2c32b2f1f7cc530b1ec1f62c92f698643bb368db +Subproject commit 973e6f53edb5485ef8028800112f917a3f8660f8