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.

190 lines
5.7KB

  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. ifneq ($(CROSS_COMPILING),true)
  13. CAN_GENERATE_TTL = true
  14. else ifneq ($(EXE_WRAPPER),)
  15. CAN_GENERATE_TTL = true
  16. endif
  17. dgl:
  18. ifeq ($(HAVE_CAIRO_OR_OPENGL),true)
  19. $(MAKE) FILE_BROWSER_DISABLED=true -C dpf/dgl
  20. ifeq ($(HAVE_OPENGL),true)
  21. $(MAKE) FILE_BROWSER_DISABLED=true -C dpf/dgl opengl3
  22. endif
  23. endif
  24. plugins: dgl
  25. # FIXME all the FILE_BROWSER_DISABLED=true stuff need to go into individual plugins
  26. # Kars
  27. $(MAKE) all -C plugins/Kars
  28. # Mini-Series
  29. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/3BandEQ
  30. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/3BandSplitter
  31. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/PingPongPan
  32. # ndc-Plugs
  33. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/AmplitudeImposer
  34. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/CycleShifter
  35. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/SoulForce
  36. # MVerb
  37. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/MVerb
  38. # Nekobi
  39. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/Nekobi
  40. # Max-Gen stuff
  41. $(MAKE) all -C plugins/bitcrush
  42. $(MAKE) all -C plugins/freeverb
  43. $(MAKE) all -C plugins/gigaverb
  44. $(MAKE) all -C plugins/pitchshift
  45. ifeq ($(HAVE_OPENGL),true)
  46. # glBars (needs OpenGL)
  47. $(MAKE) FILE_BROWSER_DISABLED=true all -C plugins/glBars
  48. # ProM (needs OpenGL + ProjectM)
  49. $(MAKE) all -C plugins/ProM
  50. endif # HAVE_OPENGL
  51. ifeq ($(HAVE_OPENGL),true)
  52. resources: gen
  53. # LV2 fonts
  54. install -d bin/ProM.lv2/resources/fonts
  55. ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.lv2/resources/fonts/
  56. # LV2 presets
  57. install -d bin/ProM.lv2/resources/presets
  58. ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.lv2/resources/presets/
  59. ifeq ($(MACOS),true)
  60. # VST2 fonts
  61. install -d bin/ProM.vst/Contents/Resources/fonts
  62. ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst/Contents/Resources/fonts/
  63. # VST2 presets
  64. install -d bin/ProM.vst/Contents/Resources/presets
  65. ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst/Contents/Resources/presets/
  66. else
  67. # VST2 fonts
  68. install -d bin/ProM.vst/resources/fonts
  69. ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst/resources/fonts/
  70. # VST2 presets
  71. install -d bin/ProM.vst/resources/presets
  72. ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst/resources/presets/
  73. endif
  74. # VST3 fonts
  75. install -d bin/ProM.vst3/Contents/Resources/fonts
  76. ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst3/Contents/Resources/fonts/
  77. # VST3 presets
  78. install -d bin/ProM.vst3/Contents/Resources/presets
  79. ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst3/Contents/Resources/presets/
  80. else
  81. resources:
  82. endif
  83. gen: plugins dpf/utils/lv2_ttl_generator
  84. ifeq ($(CAN_GENERATE_TTL),true)
  85. @$(CURDIR)/dpf/utils/generate-ttl.sh
  86. endif
  87. dpf/utils/lv2_ttl_generator:
  88. $(MAKE) -C dpf/utils/lv2-ttl-generator
  89. # --------------------------------------------------------------
  90. clean:
  91. $(MAKE) clean -C dpf/dgl
  92. $(MAKE) clean -C dpf/utils/lv2-ttl-generator
  93. # glBars
  94. $(MAKE) clean -C plugins/glBars
  95. # Kars
  96. $(MAKE) clean -C plugins/Kars
  97. # Mini-Series
  98. $(MAKE) clean -C plugins/3BandEQ
  99. $(MAKE) clean -C plugins/3BandSplitter
  100. $(MAKE) clean -C plugins/PingPongPan
  101. # ndc-Plugs
  102. $(MAKE) clean -C plugins/AmplitudeImposer
  103. $(MAKE) clean -C plugins/CycleShifter
  104. $(MAKE) clean -C plugins/SoulForce
  105. # MVerb
  106. $(MAKE) clean -C plugins/MVerb
  107. # Nekobi
  108. $(MAKE) clean -C plugins/Nekobi
  109. # ProM
  110. $(MAKE) clean -C plugins/ProM
  111. # Max-Gen stuff
  112. $(MAKE) clean -C plugins/bitcrush
  113. $(MAKE) clean -C plugins/freeverb
  114. $(MAKE) clean -C plugins/gigaverb
  115. $(MAKE) clean -C plugins/pitchshift
  116. # --------------------------------------------------------------
  117. install:
  118. install -d $(DESTDIR)$(PREFIX)/lib/ladspa/
  119. install -d $(DESTDIR)$(PREFIX)/lib/dssi/
  120. install -d $(DESTDIR)$(PREFIX)/lib/lv2/
  121. install -d $(DESTDIR)$(PREFIX)/lib/vst/
  122. install -d $(DESTDIR)$(PREFIX)/bin/
  123. install -m 644 bin/*-ladspa.* $(DESTDIR)$(PREFIX)/lib/ladspa/
  124. install -m 644 bin/*-dssi.* $(DESTDIR)$(PREFIX)/lib/dssi/
  125. ifneq ($(MACOS),true)
  126. install -m 644 bin/*-vst.* $(DESTDIR)$(PREFIX)/lib/vst/
  127. endif
  128. ifeq ($(HAVE_CAIRO_OR_OPENGL),true)
  129. cp -r bin/*-dssi $(DESTDIR)$(PREFIX)/lib/dssi/
  130. endif # HAVE_CAIRO_OR_OPENGL
  131. cp -r bin/*.lv2 $(DESTDIR)$(PREFIX)/lib/lv2/
  132. ifeq ($(HAVE_OPENGL),true)
  133. cp -r bin/*.vst $(DESTDIR)$(PREFIX)/lib/vst/
  134. endif
  135. install -m 755 bin/Kars$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  136. install -m 755 bin/3BandEQ$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  137. install -m 755 bin/3BandSplitter$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  138. install -m 755 bin/PingPongPan$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  139. install -m 755 bin/AmplitudeImposer$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  140. install -m 755 bin/CycleShifter$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  141. install -m 755 bin/SoulForce$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  142. install -m 755 bin/MVerb$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  143. install -m 755 bin/Nekobi$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  144. install -m 755 bin/MaBitcrush$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  145. install -m 755 bin/MaFreeverb$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  146. install -m 755 bin/MaGigaverb$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  147. install -m 755 bin/MaPitchshift$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  148. ifeq ($(HAVE_OPENGL),true)
  149. install -m 755 bin/glBars$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
  150. endif # HAVE_OPENGL
  151. # --------------------------------------------------------------
  152. .PHONY: plugins