Skip to content

Commit 298e84a

Browse files
authored
Merge pull request #809 from msutovsky-r7/feat/mingw/adds_debug_compilation
Adds debug compilation for Mingw
2 parents fdba753 + 4bf7c63 commit 298e84a

27 files changed

Lines changed: 109 additions & 62 deletions

File tree

c/meterpreter/Makefile

Lines changed: 68 additions & 60 deletions
Large diffs are not rendered by default.

c/meterpreter/workspace/CMakeListsFuncs.txt

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,22 @@ endfunction()
1010
function(copyoutput)
1111
add_custom_command(TARGET ${ARGV0} POST_BUILD
1212
COMMAND ${CMAKE_COMMAND} -E make_directory ${ARGV1})
13-
add_custom_command(TARGET ${ARGV0} POST_BUILD
14-
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${ARGV0}> ${ARGV1})
13+
if(DBGTRACE OR DBGTRACE_VERBOSE)
14+
add_custom_command(TARGET ${ARGV0} POST_BUILD
15+
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${ARGV0}> ${ARGV1}$<TARGET_FILE_BASE_NAME:${ARGV0}>.debug$<TARGET_FILE_SUFFIX:${ARGV0}>)
16+
else()
17+
add_custom_command(TARGET ${ARGV0} POST_BUILD
18+
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${ARGV0}> ${ARGV1})
19+
endif()
20+
endfunction()
21+
22+
function(append_debug_sources out_var)
23+
if(DBGTRACE OR DBGTRACE_VERBOSE)
24+
set(${out_var}
25+
${${out_var}}
26+
${CMAKE_SOURCE_DIR}/../source/logging/logging.c
27+
PARENT_SCOPE)
28+
endif()
1529
endfunction()
1630

1731
function(add_rdi)

c/meterpreter/workspace/dump_sam/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ file(GLOB SRC_FILES
1717
${SRC_DIR}/*.c
1818
${SRC_DIR}/dump_sam.def
1919
)
20+
append_debug_sources(SRC_FILES)
2021
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
2122
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}.${TARGET_ARCH})
2223
if(MSVC)

c/meterpreter/workspace/elevator/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ file(GLOB SRC_FILES
1919
${SRC_DIR}/*.c
2020
${MOD_DEF_DIR}/plugin.def
2121
)
22+
append_debug_sources(SRC_FILES)
2223
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
2324
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}.${TARGET_ARCH})
2425
set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS "/DEF:\"${MOD_DEF_DIR}/plugin.def\"")

c/meterpreter/workspace/ext_server_bofloader/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ foreach(srcfile SRC_FILES)
3131
endforeach(SRC_FILES)
3232

3333

34+
append_debug_sources(SRC_FILES)
3435
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
3536
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}.${TARGET_ARCH})
3637

c/meterpreter/workspace/ext_server_espia/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ file(GLOB SRC_FILES
2121
${SRC_DIR}/*.c
2222
${EXTENSION_DEF_FILE}
2323
)
24+
append_debug_sources(SRC_FILES)
2425
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
2526
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}.${TARGET_ARCH})
2627
if(MSVC)

c/meterpreter/workspace/ext_server_extapi/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ file(GLOB SRC_FILES
2323
${EXTENSION_DEF_FILE}
2424
)
2525

26+
append_debug_sources(SRC_FILES)
2627
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
2728
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}.${TARGET_ARCH})
2829
if(MSVC)

c/meterpreter/workspace/ext_server_incognito/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ file(GLOB SRC_FILES
2222
${SRC_DIR}/*.c
2323
${EXTENSION_DEF_FILE}
2424
)
25+
append_debug_sources(SRC_FILES)
2526
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
2627
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}.${TARGET_ARCH})
2728
if(MSVC)

c/meterpreter/workspace/ext_server_kiwi/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ file(GLOB SRC_FILES
8282
# Ditch some old stuff that shouldn't even be here in the mimikatz repo!
8383
list(REMOVE_ITEM SRC_FILES ${CMAKE_CURRENT_SOURCE_DIR}/${SRC_DIR}/mimikatz/mimikatz/modules/kuhl_m_dpapi.c)
8484

85+
append_debug_sources(SRC_FILES)
8586
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
8687
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}.${TARGET_ARCH})
8788
if(MSVC)

c/meterpreter/workspace/ext_server_lanattacks/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ file(GLOB SRC_FILES
2424
${SRC_DIR}/*.cpp
2525
${EXTENSION_DEF_FILE}
2626
)
27+
append_debug_sources(SRC_FILES)
2728
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
2829
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}.${TARGET_ARCH})
2930
if(MSVC)

0 commit comments

Comments
 (0)