File tree Expand file tree Collapse file tree 4 files changed +30
-19
lines changed
Expand file tree Collapse file tree 4 files changed +30
-19
lines changed Original file line number Diff line number Diff line change @@ -15,6 +15,16 @@ endif()
1515set (CMAKE_CXX_STANDARD 17)
1616set (CMAKE_CXX_STANDARD_REQUIRED ON )
1717
18+ set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} /bin)
19+ set (CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR} /bin)
20+ set (CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR} /bin)
21+ set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} /bin)
22+ set (CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR} /bin)
23+ set (CMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR} /bin)
24+ set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} /lib)
25+ set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR} /lib)
26+ set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR} /lib)
27+
1828set (CPACK_PROJECT_NAME ${SEVEN_BIT_DI_PROJECT_NAME} )
1929set (CPACK_PROJECT_VERSION ${SEVEN_BIT_DI_VERSION} )
2030
Original file line number Diff line number Diff line change 22
33#include " SevenBit/DI/Version.hpp"
44
5- #define SEVEN_BIT_DI_HEADER_ONLY
65
7- #ifdef SEVEN_BIT_DI_COMPILED_LIB
8- #undef SEVEN_BIT_DI_HEADER_ONLY
9-
10- #ifdef SEVEB_BIT_DI_BUILD_SHARED
6+ #ifdef SEVEN_BIT_DI_BUILD_SHARED
117// !!! cmake when compiling shared lib sets <target_name>_EXPORTS
128
139#if defined(_WIN32) || defined(_WIN64) || defined(WIN32) || defined(WIN64)
1410// Microsoft
15- #ifdef SevenBitDI_EXPORTS
11+ #ifdef _7BitDI_EXPORTS
1612/* We are building this library */
1713#define EXPORT __declspec (dllexport)
1814#else
2218
2319#elif defined(__linux__) || defined(UNIX) || defined(__unix__) || defined(LINUX)
2420// GCC
25- #if defined(SevenBitDI_EXPORTS )
21+ #if defined(_7BitDI_EXPORTS )
2622#define EXPORT __attribute__ ((visibility(" default" )))
2723#else
2824#define EXPORT
3531#endif
3632
3733#else
38- // Static lib
34+
35+ // Static lib or header only lib
3936#define EXPORT
40- #endif
41- #endif
4237
43- #ifdef SEVEN_BIT_DI_HEADER_ONLY
38+ #ifdef SEVEN_BIT_DI_COMPILED_LIB // Static lib
39+ #define INLINE
40+
41+ #else // header only lib
4442
4543#define SEVEN_BIT_DI_ADD_IMPL
4644#define INLINE inline
47- #define EXPORT
48-
49- #else
5045
51- #define INLINE
46+ #endif
5247
5348#endif
49+
Original file line number Diff line number Diff line change 11
2- if (SEVEB_BIT_DI_BUILD_SHARED OR BUILD_SHARED_LIBS )
2+ include (GenerateExportHeader)
3+
4+ if (SEVEN_BIT_DI_BUILD_SHARED OR BUILD_SHARED_LIBS )
35 add_library (7BitDI SHARED
4- Source .cpp ${SEVEB_BIT_DI_ALL_HEADERS }
6+ Source .cpp ${SEVEN_BIT_DI_ALL_HEADERS }
57 )
6- target_compile_definitions (7BitDI PUBLIC SEVEB_BIT_DI_BUILD_SHARED)
8+ GENERATE_EXPORT_HEADER(7BitDI)
9+ target_compile_definitions (7BitDI PUBLIC SEVEN_BIT_DI_BUILD_SHARED)
710else ()
811 add_library (7BitDI STATIC
9- Source .cpp ${SEVEB_BIT_DI_ALL_HEADERS }
12+ Source .cpp ${SEVEN_BIT_DI_ALL_HEADERS }
1013 )
1114endif ()
1215
Original file line number Diff line number Diff line change 2121 )
2222endif ()
2323
24+ install (TARGETS Tests)
25+
2426gtest_discover_tests(Tests
2527 WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}
2628 PROPERTIES TIMEOUT 10)
You can’t perform that action at this time.
0 commit comments