aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcryptobiote <hakmo.koo@gmail.com>2013-06-20 11:00:40 -0600
committercryptobiote <hakmo.koo@gmail.com>2013-06-20 11:00:40 -0600
commit19a19d1952b7afbc5d3d58374c900708a09ae039 (patch)
tree23089b0150edb6362fa17c9617df2989b3a564c4
parent68e201add8f856e81fe0fe116adebe2d344cbfa8 (diff)
downloadjansson-19a19d1952b7afbc5d3d58374c900708a09ae039.zip
jansson-19a19d1952b7afbc5d3d58374c900708a09ae039.tar.gz
jansson-19a19d1952b7afbc5d3d58374c900708a09ae039.tar.bz2
Adding option for MSVC for those who are linking statically.
-rw-r--r--CMakeLists.txt17
1 files changed, 16 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index cdad582..bf10214 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -53,6 +53,12 @@ project (jansson C)
# Options
OPTION (BUILD_SHARED_LIBS "Build shared libraries." OFF)
+IF(MSVC)
+ # This option must match the settings used in your program, in particular if you
+ # are linking statically
+ OPTION( STATIC_CRT "Link the static CRT libraries" OFF )
+ENDIF()
+
# Set some nicer output dirs.
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
@@ -84,15 +90,24 @@ include (CheckFunctionKeywords)
include (CheckIncludeFiles)
include (CheckTypeSize)
-# Turn off Microsofts "security" warnings.
+
if (MSVC)
+ # Turn off Microsofts "security" warnings.
add_definitions( "/W3 /D_CRT_SECURE_NO_WARNINGS /wd4005 /wd4996 /nologo" )
+
+ if (STATIC_CRT)
+ set(CMAKE_C_FLAGS_RELEASE "/MT")
+ set(CMAKE_C_FLAGS_DEBUG "/MTd")
+ endif()
+
endif()
if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
set(CMAKE_C_FLAGS "-fPIC")
endif()
+
+
# Check for the int-type includes
check_include_files (sys/types.h HAVE_SYS_TYPES_H)
check_include_files (inttypes.h HAVE_INTTYPES_H)