CMakeLists.txt (2442B)
1 cmake_minimum_required(VERSION 3.15) 2 3 # build a fat binary that runs on both intel and the new Apple M1 chip 4 if(APPLE) 5 include(xcodeversion.cmake) 6 7 set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64" CACHE STRING "OS X Architectures") 8 9 message("CMAKE_GENERATOR: " ${CMAKE_GENERATOR}) 10 message("XCODE_VERSION: " ${XCODE_VERSION}) 11 12 # Xcode 14+ can not build for anything < High Sierra anymore 13 if(CMAKE_GENERATOR STREQUAL Xcode AND XCODE_VERSION VERSION_GREATER_EQUAL 14.0.0) 14 set(CMAKE_OSX_DEPLOYMENT_TARGET "10.13" CACHE STRING "Minimum OS X deployment version") 15 else() 16 # 10.12 is now the minimum because we use std::shared_mutex in patch manager 17 set(CMAKE_OSX_DEPLOYMENT_TARGET "10.12" CACHE STRING "Minimum OS X deployment version") 18 endif() 19 message("CMAKE_OSX_DEPLOYMENT_TARGET: " ${CMAKE_OSX_DEPLOYMENT_TARGET}) 20 endif() 21 22 project(gearmulator VERSION 1.4.4) 23 24 include(base.cmake) 25 include(CTest) 26 27 option(${PROJECT_NAME}_BUILD_JUCEPLUGIN "Build Juce plugin" on) 28 option(${PROJECT_NAME}_BUILD_JUCEPLUGIN_CLAP "Build CLAP version of Juce plugin" on) 29 30 # ----------------- CPack basic parameters 31 32 message("CMAKE_SYSTEM_NAME: " ${CMAKE_SYSTEM_NAME}) 33 message("CMAKE_SYSTEM_PROCESSOR: " ${CMAKE_SYSTEM_PROCESSOR}) 34 35 if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") 36 set(CPACK_SYSTEM_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR}) 37 elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin") 38 set(CPACK_SYSTEM_NAME "MacOS") 39 endif() 40 41 set(CPACK_PACKAGE_CONTACT "The Usual Suspects") 42 set(CPACK_PACKAGE_VENDOR "The Usual Suspects") 43 set(CPACK_PACKAGE_NAME "DSP56300Emu") 44 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "DSP 56300 family emulator audio plugin") 45 46 set(CPACK_DEBIAN_PACKAGE_MAINTAINER "The Usual Suspects") 47 set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://dsp56300.wordpress.com") 48 set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) 49 50 set(CPACK_RPM_PACKAGE_AUTOREQ "yes") 51 set(CPACK_RPM_PACKAGE_URL ${CPACK_DEBIAN_PACKAGE_HOMEPAGE}) 52 set(CPACK_RPM_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION_SUMMARY}) 53 54 # ----------------- source 55 56 add_subdirectory(source) 57 add_subdirectory(doc) 58 59 # ----------------- CPack parameters based on source 60 61 get_cmake_property(CPACK_COMPONENTS_ALL COMPONENTS) 62 list(REMOVE_ITEM CPACK_COMPONENTS_ALL "Unspecified") 63 64 set(CPACK_COMPONENTS_GROUPING IGNORE) 65 66 set(CPACK_ARCHIVE_COMPONENT_INSTALL ON) 67 set(CPACK_DEB_COMPONENT_INSTALL ON) 68 set(CPACK_RPM_COMPONENT_INSTALL ON) 69 70 if(UNIX AND NOT APPLE) 71 set(CPACK_PACKAGING_INSTALL_PREFIX /usr/local) 72 endif() 73 74 include(CPack)