aboutsummaryrefslogtreecommitdiff
path: root/primedev/wsockproxy/CMakeLists.txt
diff options
context:
space:
mode:
authorJan <sentrycraft123@gmail.com>2024-02-18 22:11:09 +0100
committerGitHub <noreply@github.com>2024-02-18 22:11:09 +0100
commit30e58ac08b6ee122de3130f3f02d6a855130ae51 (patch)
tree9f7abd79db5af2191ea7df1b9046c4378182e092 /primedev/wsockproxy/CMakeLists.txt
parentfc63948e092b3495461e7aab4748af27c6dfa5ee (diff)
downloadNorthstarLauncher-1.24.1-rc2.tar.gz
NorthstarLauncher-1.24.1-rc2.zip
Clean up wsock proxy code and move wsock build system logic (#671)v1.24.1-rc2v1.24.1-rc1v1.24.1
- moves `WSockProxy` to `wsockproxy/CmakeLists` - remove exepath stuff from dllmain + its still done in loader.cpp because its used when reporting failure - Disabled any Thread Library calls + we don't need to know about threads at all in the proxy - yoink `wsock32.asm` into outer space + turns out, we can just call the function in a void shim since that wont touch the registers - stop copying `wsock32.dll` to the game directory + this should improve the state of things when using the EA App
Diffstat (limited to 'primedev/wsockproxy/CMakeLists.txt')
-rw-r--r--primedev/wsockproxy/CMakeLists.txt48
1 files changed, 48 insertions, 0 deletions
diff --git a/primedev/wsockproxy/CMakeLists.txt b/primedev/wsockproxy/CMakeLists.txt
new file mode 100644
index 00000000..0dbac745
--- /dev/null
+++ b/primedev/wsockproxy/CMakeLists.txt
@@ -0,0 +1,48 @@
+# loader_wsock32_proxy
+
+find_package(minhook REQUIRED)
+
+add_library(
+ loader_wsock32_proxy SHARED
+ "dllmain.cpp"
+ "loader.cpp"
+ "loader.h"
+ "wsock32.def"
+ )
+
+target_link_libraries(
+ loader_wsock32_proxy
+ PRIVATE minhook
+ mswsock.lib
+ ws2_32.lib
+ ShLwApi.lib
+ imagehlp.lib
+ dbghelp.lib
+ kernel32.lib
+ user32.lib
+ gdi32.lib
+ winspool.lib
+ comdlg32.lib
+ advapi32.lib
+ shell32.lib
+ ole32.lib
+ oleaut32.lib
+ uuid.lib
+ odbc32.lib
+ odbccp32.lib
+ )
+
+target_precompile_headers(
+ loader_wsock32_proxy
+ PRIVATE
+ pch.h
+ )
+
+target_compile_definitions(loader_wsock32_proxy PRIVATE UNICODE _UNICODE)
+
+set_target_properties(
+ loader_wsock32_proxy
+ PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${NS_BINARY_DIR}/bin/x64_retail
+ OUTPUT_NAME wsock32
+ LINK_FLAGS "/MANIFEST:NO /DEBUG"
+ )