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.

66 lines
2.1KB

  1. cmake_minimum_required(VERSION 3.9)
  2. project(DHE_Modules DESCRIPTION "DHE Modules for VCV Rack" VERSION 0.0.0)
  3. set(CMAKE_OSX_DEPLOYMENT_TARGET 10.7)
  4. if (DEFINED ENV{RACK_DIR})
  5. set(RACK_DIR "$ENV{RACK_DIR}")
  6. endif (DEFINED ENV{RACK_DIR})
  7. if (NOT DEFINED RACK_DIR)
  8. set(RACK_DIR ../..)
  9. endif (NOT DEFINED RACK_DIR)
  10. add_library(rack INTERFACE)
  11. target_include_directories(rack
  12. INTERFACE
  13. ${RACK_DIR}/include
  14. ${RACK_DIR}/dep/include
  15. )
  16. target_compile_features(rack INTERFACE cxx_std_11)
  17. target_compile_options(rack INTERFACE -stdlib=libc++)
  18. add_library(plugin SHARED
  19. src/gui/booster-stage-widget.h
  20. src/gui/booster-stage-widget.cpp
  21. src/gui/module-widget.h
  22. src/gui/module-widget.cpp
  23. src/gui/hostage-widget.h
  24. src/gui/hostage-widget.cpp
  25. src/gui/stage-widget.h
  26. src/gui/stage-widget.cpp
  27. src/gui/swave-widget.h
  28. src/gui/swave-widget.cpp
  29. src/gui/upstage-widget.h
  30. src/gui/upstage-widget.cpp
  31. src/modules/booster-stage-module.h
  32. src/modules/hostage-module.h
  33. src/modules/stage-module.h
  34. src/modules/swave-module.h
  35. src/modules/upstage-module.h
  36. src/plugin/dhe-modules.h
  37. src/plugin/dhe-modules.cpp
  38. src/util/controls.h
  39. src/util/d-flip-flop.h
  40. src/util/d-latch.h
  41. src/util/range.h
  42. src/util/latch.h
  43. src/util/ramp.h
  44. src/util/sigmoid.h
  45. src/util/mode.h)
  46. target_link_libraries(plugin
  47. PUBLIC -stdlib=libc++
  48. PUBLIC rack
  49. PRIVATE "-undefined dynamic_lookup"
  50. )
  51. target_include_directories(plugin PUBLIC src)
  52. add_executable(tests
  53. test/catch/catch.hpp
  54. test/runner/main.cpp
  55. test/runner/environment.cpp
  56. test/stage-tests.cpp
  57. test/upstage-tests.cpp
  58. )
  59. target_compile_features(tests PUBLIC cxx_std_11)
  60. target_compile_options(tests PUBLIC -stdlib=libc++)
  61. target_include_directories(tests PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/test ${CMAKE_CURRENT_SOURCE_DIR}/src)
  62. target_link_libraries(tests PUBLIC rack -stdlib=libc++)