From d78b00d2de9cb90e794e94f73a3483641e5f07e3 Mon Sep 17 00:00:00 2001 From: Arnaud Farbos Date: Thu, 5 Nov 2015 12:03:37 -0800 Subject: [PATCH] handle generation of dynamic and static library on windows. --- CMakeLists.txt | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c32bce3..4ac6853 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -298,13 +298,21 @@ set (TARGETS) # static vs. shared foreach (TYPE IN ITEMS STATIC SHARED) if (BUILD_${TYPE}_LIBS) + + string (TOLOWER "${TYPE}" type) + # whether or not targets are a DLL if (OS_WINDOWS AND "^${TYPE}$" STREQUAL "^SHARED$") set (GFLAGS_IS_A_DLL 1) + set(GFLAG_STATIC_EXTENSION "") else () + if (OS_WINDOWS) + set(GFLAG_STATIC_EXTENSION _${type}) + endif () set (GFLAGS_IS_A_DLL 0) endif () - string (TOLOWER "${TYPE}" type) + + # multi-threaded vs. single-threaded foreach (opts IN ITEMS "" _nothreads) if (BUILD_gflags${opts}_LIB) @@ -325,9 +333,10 @@ foreach (TYPE IN ITEMS STATIC SHARED) target_link_libraries (gflags${opts}-${type} ${CMAKE_THREAD_LIBS_INIT}) endif () endif () + set_target_properties ( gflags${opts}-${type} PROPERTIES COMPILE_DEFINITIONS "${defines}" - OUTPUT_NAME "gflags${opts}" + OUTPUT_NAME "gflags${opts}${GFLAG_STATIC_EXTENSION}" VERSION "${PACKAGE_VERSION}" SOVERSION "${PACKAGE_SOVERSION}" ) -- 2.7.4