84 lines
2.2 KiB
CMake
Executable File
84 lines
2.2 KiB
CMake
Executable File
cmake_minimum_required(VERSION 3.31)
|
|
project(ChromiumDataDumper LANGUAGES C CXX)
|
|
|
|
set(CMAKE_C_STANDARD 17)
|
|
set(CMAKE_C_STANDARD_REQUIRED ON)
|
|
|
|
set(CMAKE_CXX_STANDARD 23)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
# decryptor
|
|
set(CHROMIUM_DECRYPTOR_HEADERS
|
|
decryptor/include/types.h
|
|
decryptor/include/buffer.h
|
|
decryptor/include/utils.h
|
|
decryptor/include/crypto.h
|
|
decryptor/include/browser.h
|
|
decryptor/include/profile.h
|
|
decryptor/include/handle_duplicator.h
|
|
decryptor/include/extractor.h
|
|
decryptor/include/orchestrator.h
|
|
|
|
decryptor/include/reflective_loader.h
|
|
)
|
|
|
|
set(CHROMIUM_DECRYPTOR_SOURCES
|
|
decryptor/src/dllmain.c
|
|
decryptor/src/buffer.c
|
|
decryptor/src/utils.c
|
|
decryptor/src/crypto.c
|
|
decryptor/src/browser.c
|
|
decryptor/src/profile.c
|
|
decryptor/src/handle_duplicator.c
|
|
decryptor/src/extractor.c
|
|
decryptor/src/orchestrator.c
|
|
|
|
decryptor/src/reflective_loader.c
|
|
)
|
|
|
|
find_package(EASTL CONFIG REQUIRED)
|
|
|
|
add_library(ChromiumDecryptor SHARED ${CHROMIUM_DECRYPTOR_HEADERS} ${CHROMIUM_DECRYPTOR_SOURCES})
|
|
|
|
target_include_directories(ChromiumDecryptor PRIVATE
|
|
${CMAKE_CURRENT_SOURCE_DIR}/decryptor/include
|
|
${CMAKE_CURRENT_SOURCE_DIR}/third_party/sqlite
|
|
)
|
|
|
|
add_library(sqlite3 STATIC
|
|
third_party/sqlite/sqlite3.h
|
|
third_party/sqlite/sqlite3.c
|
|
)
|
|
|
|
target_link_libraries(ChromiumDecryptor PRIVATE sqlite3 EASTL)
|
|
|
|
# injector
|
|
set(CHROMIUM_INJECTOR_HEADERS
|
|
injector/include/types.h
|
|
injector/include/utils.h
|
|
injector/include/browser_resolver.h
|
|
injector/include/target_process.h
|
|
injector/include/pipe_communicator.h
|
|
injector/include/injection_manager.h
|
|
)
|
|
|
|
set(CHROMIUM_INJECTOR_SOURCES
|
|
injector/src/main.c
|
|
injector/src/utils.c
|
|
injector/src/browser_resolver.c
|
|
injector/src/target_process.c
|
|
injector/src/pipe_communicator.c
|
|
injector/src/injection_manager.c
|
|
)
|
|
|
|
add_executable(ChromiumInjector ${CHROMIUM_INJECTOR_HEADERS} ${CHROMIUM_INJECTOR_SOURCES})
|
|
|
|
target_include_directories(ChromiumInjector PRIVATE
|
|
${CMAKE_CURRENT_SOURCE_DIR}/injector/include
|
|
)
|
|
|
|
if (MSVC)
|
|
add_compile_options(/wd4471)
|
|
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
|
add_compile_options(-Wno-enum-forward-declaration)
|
|
endif() |