Audio plugin host https://kx.studio/carla
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.

113 lines
3.9KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla tests #
  3. # ------------------------ #
  4. # Created by falkTX
  5. #
  6. # --------------------------------------------------------------
  7. BASE_FLAGS = -Wall -Wextra -Werror -fPIC -DPIC -pipe -DREAL_BUILD
  8. BASE_FLAGS += -Wcast-qual -Wconversion -Wlogical-op
  9. BASE_FLAGS += -Wsign-conversion -Wuninitialized -Wunused-parameter
  10. BASE_FLAGS += -DDEBUG -O0 -g
  11. BASE_FLAGS += -I. -I../backend -I../includes -I../utils
  12. BASE_FLAGS += -isystem ../modules
  13. # --------------------------------------------------------------
  14. ANSI_FLAGS = $(BASE_FLAGS) -DBUILD_ANSI_TEST
  15. ANSI_FLAGS += -ansi -pedantic -pedantic-errors -Waggregate-return
  16. ANSI_FLAGS += -I../backend -I../includes
  17. ANSI_FLAGS += -L../backend -lcarla_standalone2
  18. # --------------------------------------------------------------
  19. GNU_CXX_FLAGS = $(BASE_FLAGS)
  20. GNU_CXX_FLAGS += -std=c++11 -std=gnu++11 -Wzero-as-null-pointer-constant
  21. # --------------------------------------------------------------
  22. PEDANTIC_CXX_FLAGS = $(BASE_FLAGS)
  23. PEDANTIC_CXX_FLAGS += -std=c++11 -pedantic -pedantic-errors -Wzero-as-null-pointer-constant -Wno-vla
  24. PEDANTIC_CXX_FLAGS += -isystem /opt/kxstudio/include
  25. # --------------------------------------------------------------
  26. TARGETS = ansi-pedantic-test_c ansi-pedantic-test_c99 ansi-pedantic-test_cxx ansi-pedantic-test_cxx11
  27. TARGETS += CarlaString EngineEvents PipeServer Print RtLinkedList RtLinkedListGnu Utils
  28. all: $(TARGETS)
  29. # --------------------------------------------------------------
  30. ansi-pedantic-test_c: ansi-pedantic-test.c ../backend/Carla*.h
  31. $(CC) $< $(ANSI_FLAGS) -Wc++-compat -o $@
  32. ansi-pedantic-test_c99: ansi-pedantic-test.c ../backend/Carla*.h
  33. $(CC) $< $(ANSI_FLAGS) -std=c99 -Wc++-compat -o $@
  34. ansi-pedantic-test_cxx: ansi-pedantic-test.c ../backend/Carla*.h
  35. $(CXX) $< $(ANSI_FLAGS) -o $@
  36. ansi-pedantic-test_cxx11: ansi-pedantic-test.c ../backend/Carla*.h
  37. $(CXX) $< $(ANSI_FLAGS) -std=c++11 -Wzero-as-null-pointer-constant -o $@
  38. # --------------------------------------------------------------
  39. CarlaString: CarlaString.cpp ../utils/CarlaString.hpp
  40. $(CXX) $< $(PEDANTIC_CXX_FLAGS) -o $@
  41. valgrind ./$@
  42. EngineEvents: EngineEvents.cpp
  43. $(CXX) $< $(PEDANTIC_CXX_FLAGS) -L../backend -lcarla_standalone2 -o $@
  44. env LD_LIBRARY_PATH=../backend valgrind ./$@
  45. PipeServer: PipeServer.cpp ../utils/CarlaPipeUtils.hpp
  46. $(CXX) $< $(PEDANTIC_CXX_FLAGS) -o $@
  47. # valgrind ./$@
  48. Print: Print.cpp ../utils/CarlaUtils.hpp
  49. $(CXX) $< $(PEDANTIC_CXX_FLAGS) -o $@
  50. valgrind ./$@
  51. RtLinkedList: RtLinkedList.cpp ../utils/LinkedList.hpp ../utils/RtLinkedList.hpp ../modules/rtmempool.a
  52. $(CXX) $< ../modules/rtmempool.a $(PEDANTIC_CXX_FLAGS) -lpthread -o $@
  53. valgrind ./$@
  54. RtLinkedListGnu: RtLinkedList.cpp ../utils/LinkedList.hpp ../utils/RtLinkedList.hpp ../modules/rtmempool.a
  55. $(CXX) $< ../modules/rtmempool.a $(GNU_CXX_FLAGS) -lpthread -o $@
  56. valgrind ./$@
  57. Utils: Utils.cpp ../utils/*.hpp
  58. $(CXX) $< $(PEDANTIC_CXX_FLAGS) -ldl -lpthread -o $@
  59. valgrind ./$@
  60. # --------------------------------------------------------------
  61. ../modules/%.a:
  62. $(MAKE) -C ../modules $*
  63. # --------------------------------------------------------------
  64. clean:
  65. rm -f *.o $(TARGETS)
  66. debug:
  67. $(MAKE) DEBUG=true
  68. # --------------------------------------------------------------
  69. DISTRHO: DISTRHO.cpp ../modules/distrho/*.hpp ../modules/distrho/src/*.cpp
  70. $(CXX) $< ../modules/dgl.a $(PEDANTIC_CXX_FLAGS) -I../modules/distrho -I../modules/carla_native/nekobi $(LINK_FLAGS) $(DGL_LIBS) -lpthread -o $@
  71. ./DISTRHO
  72. DISTRHO.so: DISTRHO.cpp ../modules/distrho/*.hpp ../modules/distrho/src/*.cpp
  73. $(CXX) $< ../modules/dgl.a $(PEDANTIC_CXX_FLAGS) -I../modules/distrho -I../modules/carla_native/nekobi -DSHARED_DLL $(LINK_FLAGS) $(DGL_LIBS) -lpthread -shared -Wl,--no-undefined -o $@
  74. DGL: DGL.cpp ../modules/distrho/dgl/src/Window.cpp
  75. $(CXX) $< $(PEDANTIC_CXX_FLAGS) $(LINK_FLAGS) $(DGL_LIBS) -o $@
  76. # ./DGL
  77. # valgrind ./DGL
  78. # --------------------------------------------------------------