cmake_minimum_required(VERSION 3.27) set(CMAKE_CXX_STANDARD 17) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) set(PROJECT_NAME sillyimage CACHE BOOL "") set(PROJECT_VERSION 1.0) project(${PROJECT_NAME} VERSION ${PROJECT_VERSION}) message(STATUS "find Magick++ library") add_definitions(-DMAGICKCORE_QUANTUM_DEPTH=8) add_definitions(-DMAGICKCORE_HDRI_ENABLE=0) find_package(ImageMagick COMPONENTS Magick++) # yes... im using glob... dont judge me.... file(GLOB_RECURSE PROJECT_SOURCES CONFIGURE_DEPENDS "src/*.cpp" "src/*.c") set(PROJECT_INCLUDE "src" ${ImageMagick_INCLUDE_DIRS}) set(PROJECT_LIBRARY ${ImageMagick_LIBRARIES}) set(PROJECT_DEFINITION VERSION="${PROJECT_VERSION}") add_executable(${PROJECT_NAME} ${PROJECT_SOURCES}) target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_INCLUDE}) target_link_libraries(${PROJECT_NAME} PRIVATE ${PROJECT_LIBRARY}) target_compile_definitions(${PROJECT_NAME} PRIVATE ${PROJECT_DEFINITION}) set_target_properties(${PROJECT_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/dist")