You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

87 lines
2.3KB

  1. cmake_minimum_required(VERSION 3.13)
  2. project(DHE-Modules
  3. VERSION 0.6.4
  4. LANGUAGES CXX)
  5. add_library(plugin)
  6. target_sources(plugin
  7. PRIVATE
  8. include/display/controls.h
  9. include/display/panel.h
  10. include/util/duration.h
  11. include/util/gate.h
  12. include/util/mode.h
  13. include/util/phase-accumulator.h
  14. include/util/range.h
  15. include/util/rotation.h
  16. include/util/selector.h
  17. include/util/sigmoid.h
  18. include/util/signal.h
  19. include/util/stage-components.h
  20. include/util/trigger.h
  21. include/dhe-modules.h
  22. src/booster-stage.cpp
  23. src/cubic.cpp
  24. src/dhe-modules.cpp
  25. src/func.cpp
  26. src/hostage.cpp
  27. src/ranger.cpp
  28. src/stage.cpp
  29. src/swave.cpp
  30. src/tapers.cpp
  31. src/upstage.cpp
  32. src/xycloid.cpp)
  33. set_target_properties(plugin
  34. PROPERTIES
  35. CXX_STANDARD 11
  36. CXX_STANDARD_REQUIRED YES
  37. CXX_EXTENSIONS NO
  38. PREFIX ""
  39. )
  40. target_compile_options(plugin
  41. PRIVATE
  42. -stdlib=libc++
  43. -march=nocona
  44. -MMD
  45. -MP
  46. -O3
  47. -ffast-math
  48. -fno-finite-math-only
  49. -mmacosx-version-min=10.7
  50. -Wall
  51. -Wextra
  52. -Wno-unused-parameter
  53. )
  54. target_compile_definitions(plugin
  55. PRIVATE
  56. ARCH_MAC
  57. SLUG=DHE-Modules
  58. VERSION=0.6.4
  59. )
  60. target_include_directories(plugin PRIVATE include)
  61. target_link_libraries(plugin PRIVATE racksdk)
  62. target_link_options(plugin
  63. PRIVATE
  64. "LINKER:-undefined,dynamic_lookup"
  65. )
  66. add_library(racksdk INTERFACE)
  67. target_include_directories(racksdk
  68. INTERFACE
  69. ../../Rack-SDK/include
  70. ../../Rack-SDK/dep/include)
  71. target_compile_features(racksdk INTERFACE
  72. cxx_std_11)
  73. set(CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_BINARY_DIR}/rack)
  74. set(PLUGINS_INSTALL_DIR plugins)
  75. set(PLUGIN_INSTALL_DIR plugins/${PROJECT_NAME})
  76. install(TARGETS plugin
  77. LIBRARY DESTINATION ${PLUGIN_INSTALL_DIR}
  78. ARCHIVE DESTINATION ${PLUGIN_INSTALL_DIR})
  79. install(DIRECTORY ../svg DESTINATION ${PLUGIN_INSTALL_DIR})
  80. install(FILES ../LICENSE.txt DESTINATION ${PLUGIN_INSTALL_DIR})
  81. install(DIRECTORY /Users/Dale/Documents/Rack/plugins/Fundamental DESTINATION ${PLUGINS_INSTALL_DIR})