Skip to content

Commit 1bfaabb

Browse files
committed
Link libraries via CMake instead of #pragma
1 parent c70c6f1 commit 1bfaabb

File tree

2 files changed

+18
-21
lines changed

2 files changed

+18
-21
lines changed

cmake/x64dbg.cmake

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,25 @@
11

22
if(NOT TARGET x64dbg)
3-
file(GLOB_RECURSE HEADERS CONFIGURE_DEPENDS ${x64dbg_SOURCE_DIR}/pluginsdk/*.h)
3+
file(GLOB_RECURSE HEADERS ${x64dbg_SOURCE_DIR}/pluginsdk/*.h)
44
add_custom_target(x64dbg-sdk SOURCES ${HEADERS})
55
source_group(TREE ${x64dbg_SOURCE_DIR} FILES ${HEADERS})
66

77
add_library(x64dbg INTERFACE)
88
target_include_directories(x64dbg INTERFACE ${x64dbg_SOURCE_DIR})
99
target_link_directories(x64dbg INTERFACE ${x64dbg_SOURCE_DIR})
10+
11+
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
12+
file(GLOB_RECURSE LIBS
13+
${x64dbg_SOURCE_DIR}/pluginsdk/*_x64.lib
14+
${x64dbg_SOURCE_DIR}/pluginsdk/x64*.lib
15+
)
16+
else()
17+
file(GLOB_RECURSE LIBS
18+
${x64dbg_SOURCE_DIR}/pluginsdk/*_x86.lib
19+
${x64dbg_SOURCE_DIR}/pluginsdk/x32*.lib
20+
)
21+
endif()
22+
target_link_libraries(x64dbg INTERFACE ${LIBS})
1023
endif()
1124

1225
function(x64dbg_plugin target)
@@ -31,6 +44,8 @@ function(x64dbg_plugin target)
3144
target_compile_definitions(${target} PRIVATE "-DPLUGIN_NAME=\"${target}\"")
3245

3346
# Support PluginDevHelper (https://github.com/x64dbg/PluginDevHelper)
34-
add_custom_command(TARGET ${target} PRE_LINK COMMAND if exist "\"$(SolutionDir)PluginDevBuildTool.exe\"" "(\"$(SolutionDir)PluginDevBuildTool.exe\"" unload "\"$(TargetPath)\")" else (echo Copy PluginDevBuildTool.exe next to the .sln to automatically reload plugins when building))
35-
add_custom_command(TARGET ${target} POST_BUILD COMMAND if exist "\"$(SolutionDir)PluginDevBuildTool.exe\"" ("\"$(SolutionDir)PluginDevBuildTool.exe\"" reload "\"$(TargetPath)\""))
47+
if(CMAKE_GENERATOR MATCHES "Visual Studio")
48+
add_custom_command(TARGET ${target} PRE_LINK COMMAND if exist "\"$(SolutionDir)PluginDevBuildTool.exe\"" "(\"$(SolutionDir)PluginDevBuildTool.exe\"" unload "\"$(TargetPath)\")" else (echo Copy PluginDevBuildTool.exe next to the .sln to automatically reload plugins when building))
49+
add_custom_command(TARGET ${target} POST_BUILD COMMAND if exist "\"$(SolutionDir)PluginDevBuildTool.exe\"" ("\"$(SolutionDir)PluginDevBuildTool.exe\"" reload "\"$(TargetPath)\""))
50+
endif()
3651
endfunction()

src/pluginmain.h

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -32,24 +32,6 @@
3232
#include "pluginsdk/TitanEngine/TitanEngine.h"
3333
#include "pluginsdk/XEDParse/XEDParse.h"
3434

35-
#ifdef _WIN64
36-
#pragma comment(lib, "pluginsdk/x64dbg.lib")
37-
#pragma comment(lib, "pluginsdk/x64bridge.lib")
38-
#pragma comment(lib, "pluginsdk/DeviceNameResolver/DeviceNameResolver_x64.lib")
39-
#pragma comment(lib, "pluginsdk/jansson/jansson_x64.lib")
40-
#pragma comment(lib, "pluginsdk/lz4/lz4_x64.lib")
41-
#pragma comment(lib, "pluginsdk/TitanEngine/TitanEngine_x64.lib")
42-
#pragma comment(lib, "pluginsdk/XEDParse/XEDParse_x64.lib")
43-
#else
44-
#pragma comment(lib, "pluginsdk/x32dbg.lib")
45-
#pragma comment(lib, "pluginsdk/x32bridge.lib")
46-
#pragma comment(lib, "pluginsdk/DeviceNameResolver/DeviceNameResolver_x86.lib")
47-
#pragma comment(lib, "pluginsdk/jansson/jansson_x86.lib")
48-
#pragma comment(lib, "pluginsdk/lz4/lz4_x86.lib")
49-
#pragma comment(lib, "pluginsdk/TitanEngine/TitanEngine_x86.lib")
50-
#pragma comment(lib, "pluginsdk/XEDParse/XEDParse_x86.lib")
51-
#endif //_WIN64
52-
5335
#define Cmd(x) DbgCmdExecDirect(x)
5436
#define Eval(x) DbgValFromString(x)
5537
#define dprintf(x, ...) _plugin_logprintf("[" PLUGIN_NAME "] " x, __VA_ARGS__)

0 commit comments

Comments
 (0)