Collection of DPF-based plugins for packaging
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.

198 lines
5.6KB

  1. #!/usr/bin/make -f
  2. # Makefile for DISTRHO Plugins #
  3. # ---------------------------- #
  4. # Created by falkTX
  5. #
  6. include dpf/Makefile.base.mk
  7. all: dgl plugins resources gen
  8. # --------------------------------------------------------------
  9. PREFIX ?= /usr/local
  10. DESTDIR ?=
  11. # --------------------------------------------------------------
  12. # Check for system-wide projectM
  13. HAVE_PROJECTM = $(shell pkg-config --exists libprojectM && echo true)
  14. # --------------------------------------------------------------
  15. ifneq ($(CROSS_COMPILING),true)
  16. CAN_GENERATE_TTL = true
  17. else ifneq ($(EXE_WRAPPER),)
  18. CAN_GENERATE_TTL = true
  19. endif
  20. dgl:
  21. ifeq ($(HAVE_CAIRO_OR_OPENGL),true)
  22. $(MAKE) -C dpf/dgl
  23. endif
  24. plugins: dgl
  25. # Kars
  26. $(MAKE) all -C plugins/Kars
  27. # Mini-Series
  28. $(MAKE) all -C plugins/3BandEQ
  29. $(MAKE) all -C plugins/3BandSplitter
  30. $(MAKE) all -C plugins/PingPongPan
  31. # ndc-Plugs
  32. $(MAKE) all -C plugins/AmplitudeImposer
  33. $(MAKE) all -C plugins/CycleShifter
  34. $(MAKE) all -C plugins/SoulForce
  35. # MVerb
  36. $(MAKE) all -C plugins/MVerb
  37. # Nekobi
  38. $(MAKE) all -C plugins/Nekobi
  39. # Max-Gen stuff
  40. $(MAKE) all -C plugins/bitcrush
  41. $(MAKE) all -C plugins/freeverb
  42. $(MAKE) all -C plugins/gigaverb
  43. $(MAKE) all -C plugins/pitchshift
  44. ifeq ($(HAVE_OPENGL),true)
  45. # glBars (needs OpenGL)
  46. $(MAKE) all -C plugins/glBars
  47. # ProM (needs OpenGL + ProjectM)
  48. $(MAKE) all -C plugins/ProM
  49. endif # HAVE_OPENGL
  50. ifneq ($(HAVE_PROJECTM),true)
  51. resources: gen
  52. # LV2 fonts
  53. install -d bin/ProM.lv2/resources/fonts
  54. ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.lv2/resources/fonts/
  55. # LV2 presets
  56. install -d bin/ProM.lv2/resources/presets
  57. ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.lv2/resources/presets/
  58. ifeq ($(MACOS),true)
  59. # VST2 fonts
  60. install -d bin/ProM.vst/Contents/Resources/fonts
  61. ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst/Contents/Resources/fonts/
  62. # VST2 presets
  63. install -d bin/ProM.vst/Contents/Resources/presets
  64. ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst/Contents/Resources/presets/
  65. else
  66. # VST2 directory
  67. install -d bin/ProM.vst
  68. mv bin/ProM-vst$(LIB_EXT) bin/ProM.vst/ProM$(LIB_EXT)
  69. # VST2 fonts
  70. install -d bin/ProM.vst/resources/fonts
  71. ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst/resources/fonts/
  72. # VST2 presets
  73. install -d bin/ProM.vst/resources/presets
  74. ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst/resources/presets/
  75. endif
  76. # VST3 fonts
  77. install -d bin/ProM.vst3/Contents/Resources/fonts
  78. ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst3/Contents/Resources/fonts/
  79. # VST3 presets
  80. install -d bin/ProM.vst3/Contents/Resources/presets
  81. ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst3/Contents/Resources/presets/
  82. else
  83. resources:
  84. endif
  85. gen: plugins dpf/utils/lv2_ttl_generator
  86. ifeq ($(CAN_GENERATE_TTL),true)
  87. @$(CURDIR)/dpf/utils/generate-ttl.sh
  88. endif
  89. ifeq ($(MACOS),true)
  90. @$(CURDIR)/dpf/utils/generate-vst-bundles.sh
  91. endif
  92. dpf/utils/lv2_ttl_generator:
  93. $(MAKE) -C dpf/utils/lv2-ttl-generator
  94. # --------------------------------------------------------------
  95. clean:
  96. $(MAKE) clean -C dpf/dgl
  97. $(MAKE) clean -C dpf/utils/lv2-ttl-generator
  98. # glBars
  99. $(MAKE) clean -C plugins/glBars
  100. # Kars
  101. $(MAKE) clean -C plugins/Kars
  102. # Mini-Series
  103. $(MAKE) clean -C plugins/3BandEQ
  104. $(MAKE) clean -C plugins/3BandSplitter
  105. $(MAKE) clean -C plugins/PingPongPan
  106. # ndc-Plugs
  107. $(MAKE) clean -C plugins/AmplitudeImposer
  108. $(MAKE) clean -C plugins/CycleShifter
  109. $(MAKE) clean -C plugins/SoulForce
  110. # MVerb
  111. $(MAKE) clean -C plugins/MVerb
  112. # Nekobi
  113. $(MAKE) clean -C plugins/Nekobi
  114. # ProM
  115. $(MAKE) clean -C plugins/ProM
  116. # Max-Gen stuff
  117. $(MAKE) clean -C plugins/bitcrush
  118. $(MAKE) clean -C plugins/freeverb
  119. $(MAKE) clean -C plugins/gigaverb
  120. $(MAKE) clean -C plugins/pitchshift
  121. # --------------------------------------------------------------
  122. install:
  123. install -d $(DESTDIR)$(PREFIX)/lib/ladspa/
  124. install -d $(DESTDIR)$(PREFIX)/lib/dssi/
  125. install -d $(DESTDIR)$(PREFIX)/lib/lv2/
  126. install -d $(DESTDIR)$(PREFIX)/lib/vst/
  127. install -d $(DESTDIR)$(PREFIX)/bin/
  128. install -m 644 bin/*-ladspa.* $(DESTDIR)$(PREFIX)/lib/ladspa/
  129. install -m 644 bin/*-dssi.* $(DESTDIR)$(PREFIX)/lib/dssi/
  130. ifeq ($(MACOS),true)
  131. cp -r bin/*.vst $(DESTDIR)$(PREFIX)/lib/vst/
  132. else
  133. install -m 644 bin/*-vst.* $(DESTDIR)$(PREFIX)/lib/vst/
  134. endif
  135. ifneq ($(MACOS),true)
  136. ifeq ($(HAVE_CAIRO_OR_OPENGL),true)
  137. cp -r bin/*-dssi $(DESTDIR)$(PREFIX)/lib/dssi/
  138. endif # HAVE_CAIRO_OR_OPENGL
  139. endif # MACOS
  140. cp -r bin/*.lv2 $(DESTDIR)$(PREFIX)/lib/lv2/
  141. install -m 755 bin/Kars$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  142. install -m 755 bin/3BandEQ$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  143. install -m 755 bin/3BandSplitter$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  144. install -m 755 bin/PingPongPan$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  145. install -m 755 bin/AmplitudeImposer$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  146. install -m 755 bin/CycleShifter$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  147. install -m 755 bin/SoulForce$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  148. install -m 755 bin/MVerb$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  149. install -m 755 bin/Nekobi$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  150. install -m 755 bin/MaBitcrush$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  151. install -m 755 bin/MaFreeverb$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  152. install -m 755 bin/MaGigaverb$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  153. install -m 755 bin/MaPitchshift$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  154. ifeq ($(HAVE_OPENGL),true)
  155. install -m 755 bin/glBars$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  156. endif # HAVE_OPENGL
  157. # --------------------------------------------------------------
  158. .PHONY: plugins