[CMAKE]
[reactos.git] / toolchain-msvc.cmake
index cab2ec5..506fda9 100644 (file)
@@ -1,25 +1,4 @@
 \r
-if(NOT ARCH)\r
-  set(ARCH i386)\r
-endif()\r
-\r
-# WDK support\r
-string(REPLACE * ${ARCH} ATL_LIB_PATH $ENV{ATL_LIB_PATH})\r
-string(REPLACE * ${ARCH} CRT_LIB_PATH $ENV{CRT_LIB_PATH})\r
-string(REPLACE * ${ARCH} DDK_LIB_PATH $ENV{DDK_LIB_PATH})\r
-string(REPLACE * ${ARCH} KMDF_LIB_PATH $ENV{KMDF_LIB_PATH})\r
-string(REPLACE * ${ARCH} MFC_LIB_PATH $ENV{MFC_LIB_PATH})\r
-string(REPLACE * ${ARCH} SDK_LIB_PATH $ENV{SDK_LIB_PATH})\r
-\r
-link_directories(\r
-#${ATL_LIB_PATH}\r
-                 ${CRT_LIB_PATH}\r
-                 ${DDK_LIB_PATH}\r
-#                 ${IFSKIT_LIB_PATH}\r
-#                 ${KMDF_LIB_PATH}\r
-#                 ${MFC_LIB_PATH}\r
-                 ${SDK_LIB_PATH})\r
-\r
 # the name of the target operating system\r
 set(CMAKE_SYSTEM_NAME Windows)\r
 set(CMAKE_SYSTEM_PROCESSOR i686)\r
@@ -27,20 +6,21 @@ set(CMAKE_SYSTEM_PROCESSOR i686)
 # which compilers to use for C and C++\r
 set(CMAKE_C_COMPILER cl)\r
 set(CMAKE_CXX_COMPILER cl)\r
-SET(CMAKE_RC_COMPILER rc)\r
-SET(CMAKE_ASM_COMPILER ml)\r
-\r
-SET(CMAKE_RC_COMPILE_OBJECT "<CMAKE_RC_COMPILER> <DEFINES> /I${REACTOS_SOURCE_DIR}/include/psdk /I${REACTOS_BINARY_DIR}/include/psdk /I${REACTOS_SOURCE_DIR}/include /I${REACTOS_SOURCE_DIR}/include/reactos /I${REACTOS_BINARY_DIR}/include/reactos /I${REACTOS_SOURCE_DIR}/include/reactos/wine /I${REACTOS_SOURCE_DIR}/include/crt /I${REACTOS_SOURCE_DIR}/include/crt/mingw32 /fo <OBJECT> <SOURCE>")\r
-\r
-set(CMAKE_C_FLAGS_INIT "/DWIN32 /D_WINDOWS /W1 /Zm1000")\r
-set(CMAKE_C_FLAGS_DEBUG_INIT "/D_DEBUG /MDd /Zi  /Ob0 /Od")\r
-SET(CMAKE_CXX_FLAGS_DEBUG_INIT "/D_DEBUG /MDd /Zi /Ob0 /Od")\r
+set(CMAKE_RC_COMPILER rc)\r
+if(${ARCH} MATCHES amd64)\r
+    set(CMAKE_ASM_COMPILER ml64)\r
+else()\r
+    set(CMAKE_ASM_COMPILER ml)\r
+endif()\r
 \r
-set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)\r
-set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)\r
-set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)\r
+set(CMAKE_RC_COMPILE_OBJECT "<CMAKE_RC_COMPILER> <DEFINES> /I${REACTOS_SOURCE_DIR}/include/psdk /I${REACTOS_BINARY_DIR}/include/psdk /I${REACTOS_SOURCE_DIR}/include /I${REACTOS_SOURCE_DIR}/include/reactos /I${REACTOS_BINARY_DIR}/include/reactos /I${REACTOS_SOURCE_DIR}/include/reactos/wine /I${REACTOS_SOURCE_DIR}/include/crt /I${REACTOS_SOURCE_DIR}/include/crt/mingw32 /fo <OBJECT> <SOURCE>")\r
 \r
-# Prevent from using run time checking when testing the compiler\r
-set(CMAKE_BUILD_TYPE "RelwithDebInfo" CACHE STRING "Build Type")\r
+set(CMAKE_ASM_COMPILE_OBJECT\r
+    "<CMAKE_C_COMPILER> /nologo /X /I${REACTOS_SOURCE_DIR}/include/asm /I${REACTOS_BINARY_DIR}/include/asm <FLAGS> <DEFINES> /D__ASM__ /D_USE_ML /EP /c <SOURCE> > <OBJECT>.tmp"\r
+    "<CMAKE_ASM_COMPILER> /nologo /Cp /Fo<OBJECT> /c /Ta <OBJECT>.tmp")\r
 \r
 set(CMAKE_C_STANDARD_LIBRARIES "" CACHE INTERNAL "")\r
+\r
+if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86")\r
+    add_definitions(-D__i386__)\r
+endif()\r