[ros-diffs] [akhaldi] 56558: * Introduce _VS_ANALYZE_ option for the VS static analysis support.
akhaldi at svn.reactos.org
akhaldi at svn.reactos.org
Thu May 10 10:39:18 UTC 2012
Author: akhaldi
Date: Thu May 10 10:39:16 2012
New Revision: 56558
URL: http://svn.reactos.org/svn/reactos?rev=56558&view=rev
Log:
* Introduce _VS_ANALYZE_ option for the VS static analysis support.
Modified:
trunk/reactos/cmake/config.cmake
trunk/reactos/cmake/msvc.cmake
Modified: trunk/reactos/cmake/config.cmake
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/config.cmake?rev=56558&r1=56557&r2=56558&view=diff
==============================================================================
--- trunk/reactos/cmake/config.cmake [iso-8859-1] (original)
+++ trunk/reactos/cmake/config.cmake [iso-8859-1] Thu May 10 10:39:16 2012
@@ -69,6 +69,10 @@
"Whether to create a graphml dependency of dlls.")
if(MSVC)
+
set(_PREFAST_ FALSE CACHE BOOL
"Whether to enable PREFAST while compiling.")
+set(_VS_ANALYZE_ FALSE CACHE BOOL
+"Whether to enable static analysis while compiling.")
+
endif()
Modified: trunk/reactos/cmake/msvc.cmake
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/msvc.cmake?rev=56558&r1=56557&r2=56558&view=diff
==============================================================================
--- trunk/reactos/cmake/msvc.cmake [iso-8859-1] (original)
+++ trunk/reactos/cmake/msvc.cmake [iso-8859-1] Thu May 10 10:39:16 2012
@@ -26,7 +26,7 @@
# Debugging
if(${CMAKE_BUILD_TYPE} MATCHES Debug)
- if(NOT _PREFAST_)
+ if(NOT (_PREFAST_ OR _VS_ANALYZE_))
add_compile_flags("/Zi")
endif()
add_compile_flags("/Ob0 /Od")
@@ -56,21 +56,19 @@
"<CMAKE_ASM_COMPILER> /nologo /Cp /Fo<OBJECT> /c /Ta <OBJECT>.tmp")
endif()
-if(_PREFAST_)
- if(MSVC_VERSION EQUAL 1600 OR MSVC_VERSION GREATER 1600)
- add_compile_flags("/analyze")
- else()
- message("PREFAST enabled!")
- set(CMAKE_C_COMPILE_OBJECT "prefast cl ${CMAKE_START_TEMP_FILE} ${CMAKE_CL_NOLOGO} <FLAGS> <DEFINES> /Fo<OBJECT> -c <SOURCE>${CMAKE_END_TEMP_FILE}"
+if(_VS_ANALYZE_)
+ message("VS static analysis enabled!")
+ add_compile_flags("/analyze")
+elseif(_PREFAST_)
+ message("PREFAST enabled!")
+ set(CMAKE_C_COMPILE_OBJECT "prefast cl ${CMAKE_START_TEMP_FILE} ${CMAKE_CL_NOLOGO} <FLAGS> <DEFINES> /Fo<OBJECT> -c <SOURCE>${CMAKE_END_TEMP_FILE}"
"prefast LIST")
- set(CMAKE_CXX_COMPILE_OBJECT "prefast cl ${CMAKE_START_TEMP_FILE} ${CMAKE_CL_NOLOGO} <FLAGS> <DEFINES> /TP /Fo<OBJECT> -c <SOURCE>${CMAKE_END_TEMP_FILE}"
+ set(CMAKE_CXX_COMPILE_OBJECT "prefast cl ${CMAKE_START_TEMP_FILE} ${CMAKE_CL_NOLOGO} <FLAGS> <DEFINES> /TP /Fo<OBJECT> -c <SOURCE>${CMAKE_END_TEMP_FILE}"
"prefast LIST")
- set(CMAKE_C_LINK_EXECUTABLE
+ set(CMAKE_C_LINK_EXECUTABLE
"cl ${CMAKE_CL_NOLOGO} <OBJECTS> ${CMAKE_START_TEMP_FILE} <FLAGS> /Fe<TARGET> -link /implib:<TARGET_IMPLIB> /version:<TARGET_VERSION_MAJOR>.<TARGET_VERSION_MINOR> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <LINK_LIBRARIES>${CMAKE_END_TEMP_FILE}")
- set(CMAKE_CXX_LINK_EXECUTABLE
+ set(CMAKE_CXX_LINK_EXECUTABLE
"cl ${CMAKE_CL_NOLOGO} <OBJECTS> ${CMAKE_START_TEMP_FILE} <FLAGS> /Fe<TARGET> -link /implib:<TARGET_IMPLIB> /version:<TARGET_VERSION_MAJOR>.<TARGET_VERSION_MINOR> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <LINK_LIBRARIES>${CMAKE_END_TEMP_FILE}")
- endif()
-
endif()
set(CMAKE_RC_CREATE_SHARED_LIBRARY ${CMAKE_C_CREATE_SHARED_LIBRARY})
More information about the Ros-diffs
mailing list