-
Notifications
You must be signed in to change notification settings - Fork 0
/
starswine-winevdm-cmake.patch
55 lines (54 loc) · 1.96 KB
/
starswine-winevdm-cmake.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 16fdb432..fa71785a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,13 +1,28 @@
cmake_minimum_required(VERSION 3.10.2)
#-Dinline=__inline
project(winevdm)
-set(ASM_TOOL_DIR )
+set(ASM_TOOL_DIR "c:/msys64/usr/bin/")
# prevent wine error
if (NOT(MSVC))
string(APPEND CMAKE_CXX_FLAGS " -Wno-narrowing ")
add_definitions(-D__inline=inline)
else()
- add_definitions(-DUSE_COMPILER_EXCEPTIONS -Dinline=__inline)
+ add_definitions(-DUSE_COMPILER_EXCEPTIONS -Dinline=__inline -DWINVER=0x0601 -D_WIN32_WINNT=0x0601)
+
+ # Using /MT avoids dynamically linking against the MSVC runtime libraries
+ set(CompilerFlags
+ CMAKE_CXX_FLAGS
+ CMAKE_CXX_FLAGS_DEBUG
+ CMAKE_CXX_FLAGS_RELEASE
+ CMAKE_CXX_FLAGS_RELWITHDEBINFO
+ CMAKE_C_FLAGS
+ CMAKE_C_FLAGS_DEBUG
+ CMAKE_C_FLAGS_RELEASE
+ CMAKE_C_FLAGS_RELWITHDEBINFO
+ )
+ foreach(CompilerFlag ${CompilerFlags})
+ string(REPLACE "/MD" "/MT" ${CompilerFlag} "${${CompilerFlag}}")
+ endforeach()
endif()
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
diff --git a/otvdm/CMakeLists.txt b/otvdm/CMakeLists.txt
index 561f29dd..17a2d885 100644
--- a/otvdm/CMakeLists.txt
+++ b/otvdm/CMakeLists.txt
@@ -2,13 +2,13 @@ file(GLOB SOURCE *.c)
add_executable(otvdm ${SOURCE})
include_directories(../wine)
add_definitions(-D_X86_)
-target_link_libraries(otvdm libwine krnl386)
+target_link_libraries(otvdm libwine krnl386 delayimp.lib)
set(DELAYED_LOADS "/DELAYLOAD:krnl386.exe16 /DELAYLOAD:libwine.dll /DELAYLOAD:user32.dll /DELAYLOAD:kernel32.dll /DELAYLOAD:gdi32.dll /DELAYLOAD:shell32.dll /DELAYLOAD:comdlg32.dll /DELAYLOAD:ADVAPI32.dll")
if (MSVC)
set_target_properties(otvdm PROPERTIES LINK_FLAGS ${DELAYED_LOADS})
endif()
add_executable(otvdmw WIN32 ${SOURCE})
-target_link_libraries(otvdmw libwine krnl386)
+target_link_libraries(otvdmw libwine krnl386 delayimp.lib)
if (MSVC)
set_target_properties(otvdmw PROPERTIES LINK_FLAGS ${DELAYED_LOADS})
endif()