# This file is automatically generated from cmake.toml - DO NOT EDIT # See https://github.com/build-cpp/cmkr for more information cmake_minimum_required(VERSION 3.15) if(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) message(FATAL_ERROR "In-tree builds are not supported. Run CMake from a separate directory: cmake -B build") endif() # Regenerate CMakeLists.txt automatically in the root project set(CMKR_ROOT_PROJECT OFF) if(CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR) set(CMKR_ROOT_PROJECT ON) # Bootstrap cmkr include(cmkr.cmake OPTIONAL RESULT_VARIABLE CMKR_INCLUDE_RESULT) if(CMKR_INCLUDE_RESULT) cmkr() endif() # Enable folder support set_property(GLOBAL PROPERTY USE_FOLDERS ON) endif() # Create a configure-time dependency on cmake.toml to improve IDE support if(CMKR_ROOT_PROJECT) configure_file(cmake.toml cmake.toml COPYONLY) endif() project(Theodosius) # dependencies set(CMKR_CMAKE_FOLDER ${CMAKE_FOLDER}) if(CMAKE_FOLDER) set(CMAKE_FOLDER "${CMAKE_FOLDER}/dependencies") else() set(CMAKE_FOLDER dependencies) endif() add_subdirectory(dependencies) set(CMAKE_FOLDER ${CMKR_CMAKE_FOLDER}) # examples set(CMKR_CMAKE_FOLDER ${CMAKE_FOLDER}) if(CMAKE_FOLDER) set(CMAKE_FOLDER "${CMAKE_FOLDER}/examples") else() set(CMAKE_FOLDER examples) endif() add_subdirectory(examples) set(CMAKE_FOLDER ${CMKR_CMAKE_FOLDER}) # Target Theodosius set(CMKR_TARGET Theodosius) set(Theodosius_SOURCES "") list(APPEND Theodosius_SOURCES "include/decomp/decomp.hpp" "include/decomp/routine.hpp" "include/decomp/symbol.hpp" "include/obf/engine.hpp" "include/obf/pass.hpp" "include/obf/passes/func_split_pass.hpp" "include/obf/passes/jcc_rewrite_pass.hpp" "include/obf/passes/next_inst_pass.hpp" "include/obf/passes/reloc_transform_pass.hpp" "include/obf/transform/add_op.hpp" "include/obf/transform/gen.hpp" "include/obf/transform/operation.hpp" "include/obf/transform/rol_op.hpp" "include/obf/transform/ror_op.hpp" "include/obf/transform/sub_op.hpp" "include/obf/transform/transform.hpp" "include/obf/transform/xor_op.hpp" "include/recomp/recomp.hpp" "include/recomp/reloc.hpp" "include/recomp/symbol_table.hpp" "include/theo.hpp" "src/decomp/decomp.cpp" "src/decomp/routine.cpp" "src/decomp/symbol.cpp" "src/obf/engine.cpp" "src/obf/passes/func_split_pass.cpp" "src/obf/passes/jcc_rewrite_pass.cpp" "src/obf/passes/next_inst_pass.cpp" "src/obf/passes/reloc_transform_pass.cpp" "src/recomp/recomp.cpp" "src/recomp/symbol_table.cpp" "src/theo.cpp" ) list(APPEND Theodosius_SOURCES cmake.toml ) set(CMKR_SOURCES ${Theodosius_SOURCES}) add_library(Theodosius STATIC) if(Theodosius_SOURCES) target_sources(Theodosius PRIVATE ${Theodosius_SOURCES}) endif() source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${Theodosius_SOURCES}) target_compile_definitions(Theodosius PUBLIC NOMINMAX ) target_compile_features(Theodosius PUBLIC cxx_std_20 ) target_include_directories(Theodosius PUBLIC include ) target_link_libraries(Theodosius PUBLIC linux-pe spdlog xed ) unset(CMKR_TARGET) unset(CMKR_SOURCES)