diff options
| author | Daniel Mensinger <daniel@mensinger-ka.de> | 2020-02-04 11:59:41 +0100 |
|---|---|---|
| committer | Daniel Mensinger <daniel@mensinger-ka.de> | 2020-02-05 12:11:37 +0100 |
| commit | 379f3d899530111a082dd586c5b0e8a825cdcf63 (patch) | |
| tree | 48b946f91763670db4533ea7edf6269cbbd97315 /test cases/cmake/16 threads/subprojects/cmMod | |
| parent | 883262dbf6a5ba9a3abb16d0d501c44d79c6d0d8 (diff) | |
| download | meson-379f3d899530111a082dd586c5b0e8a825cdcf63.tar.gz | |
cmake: Added test case for #6566
Diffstat (limited to 'test cases/cmake/16 threads/subprojects/cmMod')
| -rw-r--r-- | test cases/cmake/16 threads/subprojects/cmMod/CMakeLists.txt | 6 | ||||
| -rw-r--r-- | test cases/cmake/16 threads/subprojects/cmMod/cmMod.hpp | 13 |
2 files changed, 18 insertions, 1 deletions
diff --git a/test cases/cmake/16 threads/subprojects/cmMod/CMakeLists.txt b/test cases/cmake/16 threads/subprojects/cmMod/CMakeLists.txt index 37d32c123..442a60eec 100644 --- a/test cases/cmake/16 threads/subprojects/cmMod/CMakeLists.txt +++ b/test cases/cmake/16 threads/subprojects/cmMod/CMakeLists.txt @@ -3,7 +3,13 @@ cmake_minimum_required(VERSION 3.5) project(cmMod CXX) set (CMAKE_CXX_STANDARD 14) +if(NOT USE_PTHREAD STREQUAL NOT_SET) + set(THREADS_PREFER_PTHREAD_FLAG ${USE_PTHREAD}) +endif() find_package(Threads) add_library(cmModLib STATIC cmMod.cpp) target_link_libraries(cmModLib PRIVATE Threads::Threads) + +add_library(cmModLib_shared SHARED cmMod.cpp) +target_link_libraries(cmModLib_shared PUBLIC Threads::Threads) diff --git a/test cases/cmake/16 threads/subprojects/cmMod/cmMod.hpp b/test cases/cmake/16 threads/subprojects/cmMod/cmMod.hpp index 1c85a8b1a..81c5ec867 100644 --- a/test cases/cmake/16 threads/subprojects/cmMod/cmMod.hpp +++ b/test cases/cmake/16 threads/subprojects/cmMod/cmMod.hpp @@ -1,6 +1,17 @@ #pragma once -class CmMod { +#if defined _WIN32 || defined __CYGWIN__ +#define DLL_PUBLIC __declspec(dllexport) +#else +#if defined __GNUC__ +#define DLL_PUBLIC __attribute__((visibility("default"))) +#else +#pragma message("Compiler does not support symbol visibility.") +#define DLL_PUBLIC +#endif +#endif + +class DLL_PUBLIC CmMod { private: int num = 0; |
