/
githubmirror
/
x64dbg
Обзор
Документация
Войти
/
githubmirror
/
x64dbg
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
development
cmake.toml
295 строк
6 KB
Michael Maltsev
Disable linker manifest generation for exe and launcher
04 июл 2026, 12:31
04 июл 2026, 12:31
f0f756d
Код
Авторство
О чём код?
[cmake] version = "3.15" cmkr-include = "cmake/cmkr.cmake" [options] X64DBG_BUILD_IN_TREE = true X64DBG_RELEASE = false [variables] CMAKE_MODULE_PATH = "${CMAKE_SOURCE_DIR}/cmake" [project] name = "x64dbg" description = "An open-source x64/x32 debugger for windows." msvc-runtime = "dynamic" include-before = [ "cmake/VSToolchain.cmake" ] include-after = [ "cmake/VSFlags.cmake", ] [conditions] x86 = "CMAKE_SIZEOF_VOID_P EQUAL 4" x64 = "CMAKE_SIZEOF_VOID_P EQUAL 8" [find-package] Qt5 = { components = ["Widgets", "WinExtras"] } [subdir."src/zydis_wrapper"] [subdir."src/gui/Src/ThirdPartyLibs/md4c"] [subdir."src/third_party"] [subdir."src/tests"] [target.bridge] type = "shared" sources = [ "src/bridge/*.cpp", "src/bridge/*.c", "src/bridge/*.h", ] private-compile-definitions = [ "BUILD_BRIDGE", ] [target.bridge.properties] x86.OUTPUT_NAME = "x32bridge" x64.OUTPUT_NAME = "x64bridge" [target.btparser] type = "static" sources = [ "src/dbg/btparser/btparser/lexer.cpp", "src/dbg/btparser/btparser/helpers.h", "src/dbg/btparser/btparser/keywords.h", "src/dbg/btparser/btparser/lexer.h", "src/dbg/btparser/btparser/operators.h", "src/dbg/btparser/btparser/parser.h", "src/dbg/btparser/btparser/testfiles.h", ] include-directories = [ "src/dbg/btparser", ] clang-any.compile-options = ["-Wno-self-assign-field"] [target.dbg] type = "shared" sources = [ "src/dbg/*.cpp", "src/dbg/*.h", "src/dbg/analysis/*.cpp", "src/dbg/analysis/*.h", "src/dbg/commands/*.cpp", "src/dbg/commands/*.h", "src/dbg/DeviceNameResolver/*.h", "src/dbg/jansson/*.h", "src/dbg/lz4/*.h", "src/dbg/msdia/*.cpp", "src/dbg/msdia/*.h", "src/dbg/ntdll/*.h", "src/dbg/TitanEngine/*.h", "src/dbg/WinInet-Downloader/*.cpp", "src/dbg/WinInet-Downloader/*.h", "src/dbg/XEDParse/*.h", ] private-link-libraries = [ "::zydis_wrapper", "::bridge", "::btparser", "Psapi", "Shlwapi", "Ws2_32", "Wininet", "Iphlpapi", ] x86.private-link-libraries = [ "src/dbg/dbghelp/dbghelp_x86.lib", "src/dbg/DeviceNameResolver/DeviceNameResolver_x86.lib", "src/dbg/jansson/jansson_x86.lib", "src/dbg/lz4/lz4_x86.lib", "src/dbg/ntdll/ntdll_x86.lib", "src/dbg/TitanEngine/TitanEngine_x86.lib", "src/dbg/XEDParse/XEDParse_x86.lib", "src/dbg/LLVMDemangle/LLVMDemangle_x86.lib", ] x64.private-link-libraries = [ "src/dbg/dbghelp/dbghelp_x64.lib", "src/dbg/DeviceNameResolver/DeviceNameResolver_x64.lib", "src/dbg/jansson/jansson_x64.lib", "src/dbg/lz4/lz4_x64.lib", "src/dbg/ntdll/ntdll_x64.lib", "src/dbg/TitanEngine/TitanEngine_x64.lib", "src/dbg/XEDParse/XEDParse_x64.lib", "src/dbg/LLVMDemangle/LLVMDemangle_x64.lib", ] private-compile-definitions = [ "BUILD_DBG", "NOMINMAX", ] private-include-directories = [ "src/dbg", "src/dbg/analysis", "src/dbg/commands", ] msvc.link-options = [ "/DELAYLOAD:TitanEngine.dll", ] msvc.link-libraries = [ "Delayimp", ] [target.dbg.properties] x86.OUTPUT_NAME = "x32dbg" x64.OUTPUT_NAME = "x64dbg" [target.gui] type = "shared" sources = [ "src/gui/**.cpp", "src/gui/**.h", "src/gui/**.ui", "src/gui/**.qrc", ] private-link-libraries = [ "Qt5::Widgets", "Qt5::WinExtras", "::zydis_wrapper", "::bridge", "::md4c-html", "winmm", "wininet", "dwmapi" ] x86.private-link-libraries = [ "src/gui/Src/ThirdPartyLibs/ldconvert/ldconvert_x86.lib", ] x64.private-link-libraries = [ "src/gui/Src/ThirdPartyLibs/ldconvert/ldconvert_x64.lib", ] private-include-directories = [ "src", "src/gui/Src", "src/gui/Src/Gui", "src/gui/Src/BasicView", "src/gui/Src/Disassembler", "src/gui/Src/Memory", "src/gui/Src/Bridge", "src/gui/Src/Global", "src/gui/Src/Utils", "src/gui/Src/ThirdPartyLibs/ldconvert", ] private-compile-definitions = [ "BUILD_LIB", "NOMINMAX", "X64DBG", ] X64DBG_RELEASE.compile-definitions = ["X64DBG_RELEASE"] include-after = ["cmake/deps.cmake"] [target.gui.properties] x86.OUTPUT_NAME = "x32gui" x64.OUTPUT_NAME = "x64gui" AUTOMOC = true AUTORCC = true AUTOUIC = true [target.exe] type = "executable" msvc-runtime = "static" sources = [ "src/exe/*.cpp", "src/exe/*.h", "src/exe/manifest.xml", "src/exe/resource.rc", "src/exe/strings_utf8.rc", ] x86.sources = ["src/exe/icon32.rc"] x64.sources = ["src/exe/icon64.rc"] link-libraries = [ "::bridge", "Wintrust", ] msvc.link-options = [ # resource.rc already embeds manifest.xml as RT_MANIFEST, so disable the # linker's default manifest to avoid embedding a second one. "/MANIFEST:NO", "/DELAYLOAD:user32.dll", "/DELAYLOAD:wintrust.dll", "/DELAYLOAD:$<TARGET_FILE_NAME:bridge>", "/NOIMPLIB", "/NOEXP", "/LARGEADDRESSAWARE", ] msvc.link-libraries = [ "Delayimp", ] # Make the executable build everything dependencies = [ "dbg", "gui", "loaddll", "deps", "third_party", ] x86.dependencies = ["launcher"] [target.exe.properties] x86.OUTPUT_NAME = "x32dbg" x64.OUTPUT_NAME = "x64dbg" x86.ARCHIVE_OUTPUT_NAME = "x32dbg_exe" x64.ARCHIVE_OUTPUT_NAME = "x64dbg_exe" x86.PDB_NAME = "x32dbg_exe" x64.PDB_NAME = "x64dbg_exe" WIN32_EXECUTABLE = "ON" [target.loaddll] type = "executable" msvc-runtime = "static" sources = [ "src/loaddll/loaddll.cpp", ] x86.link-libraries = [ "src/dbg/ntdll/ntdll_x86.lib", ] x64.link-libraries = [ "src/dbg/ntdll/ntdll_x64.lib", ] msvc.link-options = [ "/DELAYLOAD:user32.dll", ] msvc.link-libraries = [ "Delayimp", ] [target.loaddll.properties] WIN32_EXECUTABLE = "ON" [target.headless] type = "executable" sources = [ "src/headless/*.cpp", "src/headless/*.h", ] link-libraries = [ "::bridge", ] msvc.link-options = [ "/LARGEADDRESSAWARE", ] dependencies = ["exe"] [target.launcher] type = "executable" condition = "x86" msvc-runtime = "static" sources = [ "src/launcher/*.cpp", "src/exe/icon.rc", "src/exe/resource.rc", "src/exe/strings_utf8.rc", ] msvc.link-options = [ # resource.rc already embeds manifest.xml as RT_MANIFEST, so disable the # linker's default manifest to avoid embedding a second one. "/MANIFEST:NO", ] link-libraries = [ "Shlwapi", "Comctl32", ] [target.launcher.properties] OUTPUT_NAME = "x96dbg" WIN32_EXECUTABLE = "ON" X64DBG_BUILD_IN_TREE.RUNTIME_OUTPUT_DIRECTORY = "${PROJECT_SOURCE_DIR}/bin"