cmake_minimum_required(VERSION 3.10) project(diec VERSION 3.10 LANGUAGES CXX) include_guard(DIRECTORY) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(MAKE_DIRECTORY ../release) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ../release) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ../release) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ../release) find_package(QT NAMES Qt5 COMPONENTS Core REQUIRED) find_package(Qt5 COMPONENTS Concurrent REQUIRED) find_package(Qt5 COMPONENTS Script REQUIRED) add_definitions(-DUSE_DEX) add_definitions(-DUSE_PDF) add_definitions(-DUSE_ARCHIVE) include(${PROJECT_SOURCE_DIR}/../die_script/die_script.cmake) include(${PROJECT_SOURCE_DIR}/../XOptions/xoptions.cmake) include(${PROJECT_SOURCE_DIR}/../XEntropyWidget/entropyprocess.cmake) include(${PROJECT_SOURCE_DIR}/../XFileInfo/xfileinfo.cmake) set(PROJECT_SOURCES ${DIE_SCRIPT_SOURCES} ${XOPTIONS_SOURCES} ${ENTROPYPROCESS_SOURCES} ${XFILEINFO_SOURCES} main_console.cpp consoleoutput.cpp ) if(APPLE) add_library(${PROJECT_NAME} MODULE ${PROJECT_SOURCES}) set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE_GUI_IDENTIFIER ntinfo.die MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION} MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} BUNDLE TRUE) set(MACOSX_BUNDLE_ICON_FILE ../icons/main.icns) else() add_executable(${PROJECT_NAME} ${PROJECT_SOURCES} ) endif() target_link_libraries(${PROJECT_NAME} bzip2) target_link_libraries(${PROJECT_NAME} lzma) target_link_libraries(${PROJECT_NAME} zlib) target_link_libraries(${PROJECT_NAME} capstone_x86) target_link_libraries(${PROJECT_NAME} Qt5::Core) target_link_libraries(${PROJECT_NAME} Qt5::Concurrent) target_link_libraries(${PROJECT_NAME} Qt5::Script) if(WIN32) target_link_libraries(${PROJECT_NAME} Wintrust) target_link_libraries(${PROJECT_NAME} Crypt32) endif()