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.

Makefile 30KB

11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
10 years ago
11 years ago
10 years ago
11 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
9 years ago
9 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
9 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
9 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928
  1. #!/usr/bin/make -f
  2. # Makefile for Carla #
  3. # ------------------ #
  4. # Created by falkTX
  5. #
  6. include source/Makefile.mk
  7. # ----------------------------------------------------------------------------------------------------------------------------
  8. LINK := ln -sf
  9. ifeq ($(DEFAULT_QT),4)
  10. PYUIC ?= pyuic4 -w
  11. PYRCC ?= pyrcc4 -py3
  12. else
  13. PYUIC ?= pyuic5
  14. PYRCC ?= pyrcc5
  15. endif
  16. # ----------------------------------------------------------------------------------------------------------------------------
  17. PREFIX := /usr/local
  18. LIBDIR := $(PREFIX)/lib
  19. DESTDIR :=
  20. BINDIR := $(CURDIR)/bin
  21. ifeq ($(DEBUG),true)
  22. MODULEDIR := $(CURDIR)/build/modules/Debug
  23. else
  24. MODULEDIR := $(CURDIR)/build/modules/Release
  25. endif
  26. # ----------------------------------------------------------------------------------------------------------------------------
  27. all: BIN RES UI WIDGETS
  28. # ----------------------------------------------------------------------------------------------------------------------------
  29. # Binaries (native)
  30. BIN: backend discovery bridges-plugin bridges-ui interposer plugin theme
  31. # ----------------------------------------------------------------------------------------------------------------------------
  32. ALL_LIBS = $(MODULEDIR)/carla_engine.a
  33. ALL_LIBS += $(MODULEDIR)/carla_engine_plugin.a
  34. ALL_LIBS += $(MODULEDIR)/carla_plugin.a
  35. ALL_LIBS += $(MODULEDIR)/jackbridge.a
  36. ALL_LIBS += $(MODULEDIR)/native-plugins.a
  37. ALL_LIBS += $(MODULEDIR)/juce_audio_basics.a
  38. ALL_LIBS += $(MODULEDIR)/juce_audio_formats.a
  39. ALL_LIBS += $(MODULEDIR)/juce_core.a
  40. ALL_LIBS += $(MODULEDIR)/lilv.a
  41. ALL_LIBS += $(MODULEDIR)/rtmempool.a
  42. ifeq ($(HAVE_DGL),true)
  43. ALL_LIBS += $(MODULEDIR)/dgl.a
  44. endif
  45. ifeq ($(MACOS_OR_WIN32),true)
  46. ALL_LIBS += $(MODULEDIR)/juce_audio_devices.a
  47. ALL_LIBS += $(MODULEDIR)/juce_audio_processors.a
  48. ALL_LIBS += $(MODULEDIR)/juce_data_structures.a
  49. ALL_LIBS += $(MODULEDIR)/juce_events.a
  50. ALL_LIBS += $(MODULEDIR)/juce_graphics.a
  51. ALL_LIBS += $(MODULEDIR)/juce_gui_basics.a
  52. ifeq ($(MACOS),true)
  53. ALL_LIBS += $(MODULEDIR)/juce_gui_extra.a
  54. endif
  55. else
  56. ALL_LIBS += $(MODULEDIR)/rtaudio.a
  57. ALL_LIBS += $(MODULEDIR)/rtmidi.a
  58. endif
  59. ifeq ($(HAVE_QT4),true)
  60. ALL_LIBS += $(MODULEDIR)/theme.qt4.a
  61. endif
  62. ifeq ($(HAVE_QT5),true)
  63. ALL_LIBS += $(MODULEDIR)/theme.qt5.a
  64. endif
  65. libs: $(ALL_LIBS)
  66. $(MODULEDIR)/carla_engine.a: .FORCE
  67. @$(MAKE) -C source/backend/engine
  68. $(MODULEDIR)/carla_engine_plugin.a: $(MODULEDIR)/carla_engine.a
  69. @$(MAKE) -C source/backend/engine
  70. $(MODULEDIR)/carla_plugin.a: .FORCE
  71. @$(MAKE) -C source/backend/plugin
  72. $(MODULEDIR)/jackbridge.a: .FORCE
  73. @$(MAKE) -C source/jackbridge
  74. $(MODULEDIR)/jackbridge.%.a: .FORCE
  75. @$(MAKE) -C source/jackbridge $*
  76. $(MODULEDIR)/native-plugins.a: .FORCE
  77. @$(MAKE) -C source/native-plugins
  78. $(MODULEDIR)/theme.a: .FORCE
  79. @$(MAKE) -C source/theme
  80. $(MODULEDIR)/theme.qt4.a: .FORCE
  81. @$(MAKE) -C source/theme qt4
  82. $(MODULEDIR)/theme.qt5.a: .FORCE
  83. @$(MAKE) -C source/theme qt5
  84. $(MODULEDIR)/%.posix32.a: .FORCE
  85. @$(MAKE) -C source/modules/$* posix32
  86. $(MODULEDIR)/%.posix64.a: .FORCE
  87. @$(MAKE) -C source/modules/$* posix64
  88. $(MODULEDIR)/%.win32.a: .FORCE
  89. @$(MAKE) -C source/modules/$* win32
  90. $(MODULEDIR)/%.win64.a: .FORCE
  91. @$(MAKE) -C source/modules/$* win64
  92. $(MODULEDIR)/%.a: .FORCE
  93. @$(MAKE) -C source/modules/$*
  94. # ----------------------------------------------------------------------------------------------------------------------------
  95. backend: libs
  96. @$(MAKE) -C source/backend
  97. bridges-plugin: libs
  98. @$(MAKE) -C source/bridges-plugin
  99. bridges-ui: libs
  100. @$(MAKE) -C source/bridges-ui
  101. discovery: libs
  102. @$(MAKE) -C source/discovery
  103. interposer:
  104. @$(MAKE) -C source/interposer
  105. plugin: backend bridges-plugin bridges-ui discovery
  106. @$(MAKE) -C source/plugin
  107. # FIXME
  108. ifeq ($(HAVE_QT),true)
  109. theme:
  110. @$(MAKE) -C source/theme
  111. else
  112. theme:
  113. endif
  114. # ----------------------------------------------------------------------------------------------------------------------------
  115. # Binaries (posix32)
  116. LIBS_POSIX32 = $(MODULEDIR)/jackbridge.posix32.a
  117. LIBS_POSIX32 += $(MODULEDIR)/juce_audio_basics.posix32.a
  118. LIBS_POSIX32 += $(MODULEDIR)/juce_core.posix32.a
  119. LIBS_POSIX32 += $(MODULEDIR)/lilv.posix32.a
  120. LIBS_POSIX32 += $(MODULEDIR)/rtmempool.posix32.a
  121. ifeq ($(MACOS),true)
  122. LIBS_POSIX32 += $(MODULEDIR)/juce_audio_processors.posix32.a
  123. LIBS_POSIX32 += $(MODULEDIR)/juce_data_structures.posix32.a
  124. LIBS_POSIX32 += $(MODULEDIR)/juce_events.posix32.a
  125. LIBS_POSIX32 += $(MODULEDIR)/juce_graphics.posix32.a
  126. LIBS_POSIX32 += $(MODULEDIR)/juce_gui_basics.posix32.a
  127. LIBS_POSIX32 += $(MODULEDIR)/juce_gui_extra.posix32.a
  128. endif
  129. posix32: $(LIBS_POSIX32)
  130. $(MAKE) -C source/bridges-plugin posix32
  131. $(MAKE) -C source/discovery posix32
  132. # ----------------------------------------------------------------------------------------------------------------------------
  133. # Binaries (posix64)
  134. LIBS_POSIX64 = $(MODULEDIR)/jackbridge.posix64.a
  135. LIBS_POSIX64 += $(MODULEDIR)/juce_audio_basics.posix64.a
  136. LIBS_POSIX64 += $(MODULEDIR)/juce_core.posix64.a
  137. LIBS_POSIX64 += $(MODULEDIR)/lilv.posix64.a
  138. LIBS_POSIX64 += $(MODULEDIR)/rtmempool.posix64.a
  139. ifeq ($(MACOS),true)
  140. LIBS_POSIX64 += $(MODULEDIR)/juce_audio_processors.posix64.a
  141. LIBS_POSIX64 += $(MODULEDIR)/juce_data_structures.posix64.a
  142. LIBS_POSIX64 += $(MODULEDIR)/juce_events.posix64.a
  143. LIBS_POSIX64 += $(MODULEDIR)/juce_graphics.posix64.a
  144. LIBS_POSIX64 += $(MODULEDIR)/juce_gui_basics.posix64.a
  145. LIBS_POSIX64 += $(MODULEDIR)/juce_gui_extra.posix64.a
  146. endif
  147. posix64: $(LIBS_POSIX64)
  148. $(MAKE) -C source/bridges-plugin posix64
  149. $(MAKE) -C source/discovery posix64
  150. # ----------------------------------------------------------------------------------------------------------------------------
  151. # Binaries (win32)
  152. LIBS_WIN32 = $(MODULEDIR)/jackbridge.win32e.a
  153. LIBS_WIN32 += $(MODULEDIR)/juce_audio_basics.win32.a
  154. LIBS_WIN32 += $(MODULEDIR)/juce_audio_processors.win32.a
  155. LIBS_WIN32 += $(MODULEDIR)/juce_core.win32.a
  156. LIBS_WIN32 += $(MODULEDIR)/juce_data_structures.win32.a
  157. LIBS_WIN32 += $(MODULEDIR)/juce_events.win32.a
  158. LIBS_WIN32 += $(MODULEDIR)/juce_graphics.win32.a
  159. LIBS_WIN32 += $(MODULEDIR)/juce_gui_basics.win32.a
  160. LIBS_WIN32 += $(MODULEDIR)/lilv.win32.a
  161. LIBS_WIN32 += $(MODULEDIR)/rtmempool.win32.a
  162. win32: $(LIBS_WIN32)
  163. $(MAKE) -C source/bridges-plugin win32
  164. $(MAKE) -C source/discovery win32
  165. # ----------------------------------------------------------------------------------------------------------------------------
  166. # Binaries (win64)
  167. LIBS_WIN64 = $(MODULEDIR)/jackbridge.win64e.a
  168. LIBS_WIN64 += $(MODULEDIR)/juce_audio_basics.win64.a
  169. LIBS_WIN64 += $(MODULEDIR)/juce_audio_processors.win64.a
  170. LIBS_WIN64 += $(MODULEDIR)/juce_core.win64.a
  171. LIBS_WIN64 += $(MODULEDIR)/juce_data_structures.win64.a
  172. LIBS_WIN64 += $(MODULEDIR)/juce_events.win64.a
  173. LIBS_WIN64 += $(MODULEDIR)/juce_graphics.win64.a
  174. LIBS_WIN64 += $(MODULEDIR)/juce_gui_basics.win64.a
  175. LIBS_WIN64 += $(MODULEDIR)/lilv.win64.a
  176. LIBS_WIN64 += $(MODULEDIR)/rtmempool.win64.a
  177. win64: $(LIBS_WIN64)
  178. $(MAKE) -C source/bridges-plugin win64
  179. $(MAKE) -C source/discovery win64
  180. # ----------------------------------------------------------------------------------------------------------------------------
  181. # Binaries (wine)
  182. wine32:
  183. $(MAKE) -C source/jackbridge wine32
  184. cp -f $(MODULEDIR)/jackbridge-wine32.dll.so $(BINDIR)/jackbridge-wine32.dll
  185. wine64:
  186. $(MAKE) -C source/jackbridge wine64
  187. cp -f $(MODULEDIR)/jackbridge-wine64.dll.so $(BINDIR)/jackbridge-wine64.dll
  188. # ----------------------------------------------------------------------------------------------------------------------------
  189. # Resources
  190. ifeq ($(HAVE_PYQT),true)
  191. RES = \
  192. bin/resources/carla_app.py \
  193. bin/resources/carla_backend.py \
  194. bin/resources/carla_backend_qt.py \
  195. bin/resources/carla_config.py \
  196. bin/resources/carla_control.py \
  197. bin/resources/carla_database.py \
  198. bin/resources/carla_host.py \
  199. bin/resources/carla_panels.py \
  200. bin/resources/carla_settings.py \
  201. bin/resources/carla_skin.py \
  202. bin/resources/carla_shared.py \
  203. bin/resources/carla_utils.py \
  204. bin/resources/carla_widgets.py \
  205. bin/resources/canvaspreviewframe.py \
  206. bin/resources/digitalpeakmeter.py \
  207. bin/resources/externalui.py \
  208. bin/resources/ledbutton.py \
  209. bin/resources/paramspinbox.py \
  210. bin/resources/patchcanvas.py \
  211. bin/resources/patchcanvas_theme.py \
  212. bin/resources/pixmapbutton.py \
  213. bin/resources/pixmapdial.py \
  214. bin/resources/pixmapkeyboard.py \
  215. bin/resources/racklistwidget.py \
  216. bin/resources/resources_rc.py \
  217. bin/resources/ui_carla_about.py \
  218. bin/resources/ui_carla_about_juce.py \
  219. bin/resources/ui_carla_database.py \
  220. bin/resources/ui_carla_edit.py \
  221. bin/resources/ui_carla_host.py \
  222. bin/resources/ui_carla_panel_time.py \
  223. bin/resources/ui_carla_parameter.py \
  224. bin/resources/ui_carla_plugin_calf.py \
  225. bin/resources/ui_carla_plugin_classic.py \
  226. bin/resources/ui_carla_plugin_compact.py \
  227. bin/resources/ui_carla_plugin_default.py \
  228. bin/resources/ui_carla_plugin_presets.py \
  229. bin/resources/ui_carla_refresh.py \
  230. bin/resources/ui_carla_settings.py \
  231. bin/resources/ui_carla_settings_driver.py \
  232. bin/resources/ui_inputdialog_value.py \
  233. source/carla_config.py \
  234. source/resources_rc.py
  235. RES: $(RES)
  236. source/carla_config.py:
  237. @echo "#!/usr/bin/env python3" > $@
  238. @echo "# -*- coding: utf-8 -*-" >> $@
  239. ifeq ($(DEFAULT_QT),4)
  240. @echo "config_UseQt5 = False" >> $@
  241. else
  242. @echo "config_UseQt5 = True" >> $@
  243. endif
  244. source/resources_rc.py: resources/resources.qrc resources/*/*.png resources/*/*.svg
  245. $(PYRCC) $< -o $@
  246. bin/resources/%.py: source/%.py
  247. $(LINK) $(CURDIR)/source/$*.py bin/resources/
  248. else
  249. RES:
  250. endif
  251. # ----------------------------------------------------------------------------------------------------------------------------
  252. # UI code
  253. ifeq ($(HAVE_PYQT),true)
  254. UIs = \
  255. source/ui_carla_about.py \
  256. source/ui_carla_about_juce.py \
  257. source/ui_carla_database.py \
  258. source/ui_carla_edit.py \
  259. source/ui_carla_host.py \
  260. source/ui_carla_panel_time.py \
  261. source/ui_carla_parameter.py \
  262. source/ui_carla_plugin_calf.py \
  263. source/ui_carla_plugin_classic.py \
  264. source/ui_carla_plugin_compact.py \
  265. source/ui_carla_plugin_default.py \
  266. source/ui_carla_plugin_presets.py \
  267. source/ui_carla_refresh.py \
  268. source/ui_carla_settings.py \
  269. source/ui_carla_settings_driver.py \
  270. source/ui_inputdialog_value.py
  271. UI: $(UIs)
  272. source/ui_%.py: resources/ui/%.ui
  273. $(PYUIC) $< -o $@
  274. else
  275. UI:
  276. endif
  277. # ----------------------------------------------------------------------------------------------------------------------------
  278. # Widgets
  279. WIDGETS = \
  280. source/canvaspreviewframe.py \
  281. source/digitalpeakmeter.py \
  282. source/ledbutton.py \
  283. source/paramspinbox.py \
  284. source/pixmapbutton.py \
  285. source/pixmapdial.py \
  286. source/pixmapkeyboard.py \
  287. source/racklistwidget.py
  288. WIDGETS: $(WIDGETS)
  289. source/%.py: source/widgets/%.py
  290. $(LINK) widgets/$*.py $@
  291. # ----------------------------------------------------------------------------------------------------------------------------
  292. clean:
  293. $(MAKE) clean -C source/backend
  294. $(MAKE) clean -C source/bridges-plugin
  295. $(MAKE) clean -C source/bridges-ui
  296. $(MAKE) clean -C source/discovery
  297. $(MAKE) clean -C source/modules
  298. $(MAKE) clean -C source/plugin
  299. rm -f $(RES)
  300. rm -f $(UIs)
  301. rm -f $(WIDGETS)
  302. rm -f *~ source/*~ source/*.pyc source/*_rc.py source/ui_*.py
  303. distclean: clean
  304. rm -f bin/*.exe bin/*.dll bin/*.dylib bin/*.so
  305. rm -rf build build-lv2
  306. debug:
  307. $(MAKE) DEBUG=true
  308. doxygen:
  309. $(MAKE) doxygen -C source/backend
  310. stoat:
  311. stoat --recursive ./build/ --suppression ./data/stoat-supression.txt --whitelist ./data/stoat-whitelist.txt --graph-view ./data/stoat-callgraph.png
  312. # stoat --recursive ./build/ \
  313. # --suppression ./data/stoat-supression.txt \
  314. # --whitelist ./data/stoat-whitelist.txt \
  315. # --graph-view ./data/stoat-callgraph.png
  316. # ----------------------------------------------------------------------------------------------------------------------------
  317. install:
  318. # Create directories
  319. install -d $(DESTDIR)$(PREFIX)/bin/
  320. install -d $(DESTDIR)$(PREFIX)/lib/carla/
  321. install -d $(DESTDIR)$(PREFIX)/lib/carla/styles/
  322. install -d $(DESTDIR)$(PREFIX)/lib/pkgconfig/
  323. install -d $(DESTDIR)$(PREFIX)/lib/python3/dist-packages/
  324. install -d $(DESTDIR)$(PREFIX)/include/carla/
  325. install -d $(DESTDIR)$(PREFIX)/include/carla/includes/
  326. install -d $(DESTDIR)$(PREFIX)/include/carla/utils/
  327. install -d $(DESTDIR)$(PREFIX)/share/applications/
  328. install -d $(DESTDIR)$(PREFIX)/share/carla/
  329. install -d $(DESTDIR)$(PREFIX)/share/carla/resources/
  330. ifeq ($(EXPERIMENTAL_PLUGINS),true)
  331. install -d $(DESTDIR)$(PREFIX)/share/carla/resources/at1/
  332. install -d $(DESTDIR)$(PREFIX)/share/carla/resources/bls1/
  333. install -d $(DESTDIR)$(PREFIX)/share/carla/resources/rev1/
  334. endif
  335. ifeq ($(HAVE_ZYN_DEPS),true)
  336. ifeq ($(HAVE_ZYN_UI_DEPS),true)
  337. install -d $(DESTDIR)$(PREFIX)/share/carla/resources/zynaddsubfx/
  338. endif
  339. endif
  340. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  341. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  342. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  343. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  344. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  345. install -d $(DESTDIR)$(PREFIX)/share/mime/packages/
  346. # --------------------------------------------------------------------------------------------------------------------
  347. # Install script files
  348. install -m 755 \
  349. data/carla \
  350. data/carla-control \
  351. data/carla-database \
  352. data/carla-patchbay \
  353. data/carla-rack \
  354. data/carla-single \
  355. data/carla-settings \
  356. $(DESTDIR)$(PREFIX)/bin/
  357. # data/carla-control \
  358. # Install desktop files
  359. install -m 644 data/*.desktop $(DESTDIR)$(PREFIX)/share/applications/
  360. # Install icons, 16x16
  361. install -m 644 resources/16x16/carla.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  362. install -m 644 resources/16x16/carla-control.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  363. # Install icons, 48x48
  364. install -m 644 resources/48x48/carla.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  365. install -m 644 resources/48x48/carla-control.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  366. # Install icons, 128x128
  367. install -m 644 resources/128x128/carla.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  368. install -m 644 resources/128x128/carla-control.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  369. # Install icons, 256x256
  370. install -m 644 resources/256x256/carla.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  371. install -m 644 resources/256x256/carla-control.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  372. # Install icons, scalable
  373. install -m 644 resources/scalable/carla.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  374. install -m 644 resources/scalable/carla-control.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  375. # Install mime package
  376. install -m 644 data/carla.xml $(DESTDIR)$(PREFIX)/share/mime/packages/
  377. # Install pkg-config files
  378. install -m 644 data/*.pc $(DESTDIR)$(PREFIX)/lib/pkgconfig/
  379. # Install backend libs
  380. install -m 644 \
  381. bin/libcarla_*.* \
  382. $(DESTDIR)$(PREFIX)/lib/carla/
  383. # Install other binaries
  384. install -m 755 \
  385. bin/*bridge-* \
  386. bin/carla-discovery-* \
  387. $(DESTDIR)$(PREFIX)/lib/carla/
  388. # Install the real modgui bridge
  389. install -m 755 \
  390. data/carla-bridge-lv2-modgui \
  391. $(DESTDIR)$(PREFIX)/lib/carla/
  392. ifeq ($(HAVE_QT),true)
  393. # Install theme
  394. install -m 644 \
  395. bin/styles/* \
  396. $(DESTDIR)$(PREFIX)/lib/carla/styles/
  397. endif
  398. # Install python code
  399. install -m 644 \
  400. source/carla \
  401. source/carla-control \
  402. source/carla-patchbay \
  403. source/carla-rack \
  404. source/*.py \
  405. $(DESTDIR)$(PREFIX)/share/carla/
  406. install -m 644 \
  407. source/carla_backend.py \
  408. source/carla_utils.py \
  409. $(DESTDIR)$(PREFIX)/lib/python3/dist-packages/
  410. # Install headers
  411. install -m 644 \
  412. source/backend/CarlaBackend.h \
  413. source/backend/CarlaHost.h \
  414. source/backend/CarlaUtils.h \
  415. source/backend/CarlaEngine.hpp \
  416. source/backend/CarlaPlugin.hpp \
  417. source/includes/CarlaNative.h \
  418. $(DESTDIR)$(PREFIX)/include/carla/
  419. install -m 644 \
  420. source/includes/CarlaDefines.h \
  421. source/includes/CarlaMIDI.h \
  422. $(DESTDIR)$(PREFIX)/include/carla/includes/
  423. install -m 644 \
  424. source/utils/CarlaUtils.hpp \
  425. source/utils/CarlaJuceUtils.hpp \
  426. source/utils/CarlaMathUtils.hpp \
  427. source/utils/CarlaPipeUtils.hpp \
  428. source/utils/CarlaPipeUtils.cpp \
  429. source/utils/CarlaExternalUI.hpp \
  430. source/utils/CarlaMutex.hpp \
  431. source/utils/CarlaString.hpp \
  432. $(DESTDIR)$(PREFIX)/include/carla/utils/
  433. # Install resources
  434. install -m 755 \
  435. bin/resources/carla-plugin \
  436. bin/resources/carla-plugin-patchbay \
  437. bin/resources/*-ui \
  438. $(DESTDIR)$(PREFIX)/share/carla/resources/
  439. ifeq ($(EXPERIMENTAL_PLUGINS),true)
  440. install -m 644 \
  441. bin/resources/at1/*.png \
  442. $(DESTDIR)$(PREFIX)/share/carla/resources/at1/
  443. install -m 644 \
  444. bin/resources/bls1/*.png \
  445. $(DESTDIR)$(PREFIX)/share/carla/resources/bls1/
  446. install -m 644 \
  447. bin/resources/rev1/*.png \
  448. $(DESTDIR)$(PREFIX)/share/carla/resources/rev1/
  449. install -m 755 \
  450. bin/resources/at1-ui \
  451. bin/resources/bls1-ui \
  452. bin/resources/rev1-ui \
  453. $(DESTDIR)$(PREFIX)/share/carla/resources/
  454. endif
  455. ifeq ($(HAVE_ZYN_DEPS),true)
  456. ifeq ($(HAVE_ZYN_UI_DEPS),true)
  457. install -m 644 \
  458. bin/resources/zynaddsubfx/*.png \
  459. $(DESTDIR)$(PREFIX)/share/carla/resources/zynaddsubfx/
  460. install -m 755 \
  461. bin/resources/zynaddsubfx-ui \
  462. $(DESTDIR)$(PREFIX)/share/carla/resources/
  463. endif
  464. endif
  465. # Install resources (re-use python files)
  466. $(LINK) $(PREFIX)/share/carla/carla_app.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  467. $(LINK) $(PREFIX)/share/carla/carla_backend.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  468. $(LINK) $(PREFIX)/share/carla/carla_backend_qt.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  469. $(LINK) $(PREFIX)/share/carla/carla_config.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  470. $(LINK) $(PREFIX)/share/carla/carla_control.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  471. $(LINK) $(PREFIX)/share/carla/carla_database.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  472. $(LINK) $(PREFIX)/share/carla/carla_host.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  473. $(LINK) $(PREFIX)/share/carla/carla_modgui.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  474. $(LINK) $(PREFIX)/share/carla/carla_panels.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  475. $(LINK) $(PREFIX)/share/carla/carla_settings.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  476. $(LINK) $(PREFIX)/share/carla/carla_skin.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  477. $(LINK) $(PREFIX)/share/carla/carla_shared.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  478. $(LINK) $(PREFIX)/share/carla/carla_utils.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  479. $(LINK) $(PREFIX)/share/carla/carla_widgets.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  480. $(LINK) $(PREFIX)/share/carla/canvaspreviewframe.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  481. $(LINK) $(PREFIX)/share/carla/digitalpeakmeter.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  482. $(LINK) $(PREFIX)/share/carla/externalui.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  483. $(LINK) $(PREFIX)/share/carla/ledbutton.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  484. $(LINK) $(PREFIX)/share/carla/paramspinbox.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  485. $(LINK) $(PREFIX)/share/carla/patchcanvas.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  486. $(LINK) $(PREFIX)/share/carla/patchcanvas_theme.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  487. $(LINK) $(PREFIX)/share/carla/pixmapbutton.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  488. $(LINK) $(PREFIX)/share/carla/pixmapdial.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  489. $(LINK) $(PREFIX)/share/carla/pixmapkeyboard.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  490. $(LINK) $(PREFIX)/share/carla/racklistwidget.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  491. $(LINK) $(PREFIX)/share/carla/resources_rc.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  492. $(LINK) $(PREFIX)/share/carla/ui_carla_about.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  493. $(LINK) $(PREFIX)/share/carla/ui_carla_about_juce.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  494. $(LINK) $(PREFIX)/share/carla/ui_carla_database.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  495. $(LINK) $(PREFIX)/share/carla/ui_carla_edit.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  496. $(LINK) $(PREFIX)/share/carla/ui_carla_host.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  497. $(LINK) $(PREFIX)/share/carla/ui_carla_panel_time.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  498. $(LINK) $(PREFIX)/share/carla/ui_carla_parameter.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  499. $(LINK) $(PREFIX)/share/carla/ui_carla_plugin_calf.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  500. $(LINK) $(PREFIX)/share/carla/ui_carla_plugin_classic.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  501. $(LINK) $(PREFIX)/share/carla/ui_carla_plugin_compact.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  502. $(LINK) $(PREFIX)/share/carla/ui_carla_plugin_default.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  503. $(LINK) $(PREFIX)/share/carla/ui_carla_plugin_presets.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  504. $(LINK) $(PREFIX)/share/carla/ui_carla_refresh.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  505. $(LINK) $(PREFIX)/share/carla/ui_carla_settings.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  506. $(LINK) $(PREFIX)/share/carla/ui_carla_settings_driver.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  507. $(LINK) $(PREFIX)/share/carla/ui_inputdialog_value.py $(DESTDIR)$(PREFIX)/share/carla/resources/
  508. # Adjust PREFIX value in script files
  509. sed -i "s?X-PREFIX-X?$(PREFIX)?" \
  510. $(DESTDIR)$(PREFIX)/bin/carla \
  511. $(DESTDIR)$(PREFIX)/bin/carla-control \
  512. $(DESTDIR)$(PREFIX)/bin/carla-database \
  513. $(DESTDIR)$(PREFIX)/bin/carla-patchbay \
  514. $(DESTDIR)$(PREFIX)/bin/carla-rack \
  515. $(DESTDIR)$(PREFIX)/bin/carla-single \
  516. $(DESTDIR)$(PREFIX)/bin/carla-settings \
  517. $(DESTDIR)$(PREFIX)/lib/carla/carla-bridge-lv2-modgui \
  518. $(DESTDIR)$(PREFIX)/lib/pkgconfig/carla-standalone.pc \
  519. $(DESTDIR)$(PREFIX)/lib/pkgconfig/carla-utils.pc
  520. # --------------------------------------------------------------------------------------------------------------------
  521. # Install lv2 plugin
  522. install -d $(DESTDIR)$(PREFIX)/lib/lv2/carla.lv2/
  523. install -m 644 \
  524. bin/carla.lv2/carla.* \
  525. bin/carla.lv2/*.ttl \
  526. $(DESTDIR)$(PREFIX)/lib/lv2/carla.lv2/
  527. # Link binaries for lv2 plugin
  528. @for i in $(shell find $(DESTDIR)$(PREFIX)/lib/carla/ -maxdepth 1 -type f -exec basename {} ';'); do \
  529. $(LINK) $(PREFIX)/lib/carla/$$i $(DESTDIR)$(PREFIX)/lib/lv2/carla.lv2/; \
  530. $(LINK) $(PREFIX)/lib/carla/$$i $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/; \
  531. done
  532. rm -f $(DESTDIR)$(PREFIX)/lib/lv2/carla.lv2/libcarla_standalone2.*
  533. rm -f $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/libcarla_standalone2.*
  534. # Link styles for lv2 plugin
  535. $(LINK) $(PREFIX)/lib/carla/styles $(DESTDIR)$(PREFIX)/lib/lv2/carla.lv2/
  536. # Link resources for lv2 plugin
  537. rm -rf $(DESTDIR)$(PREFIX)/lib/lv2/carla.lv2/resources
  538. $(LINK) $(PREFIX)/share/carla/resources/ $(DESTDIR)$(PREFIX)/lib/lv2/carla.lv2/
  539. # --------------------------------------------------------------------------------------------------------------------
  540. ifeq ($(LINUX),true)
  541. ifeq ($(HAVE_X11),true)
  542. ifeq ($(DEFAULT_QT),4)
  543. # Install vst plugin
  544. install -d $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/
  545. install -m 644 \
  546. bin/CarlaRack*.* \
  547. bin/CarlaPatchbay*.* \
  548. $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/
  549. # Link binaries for vst plugin
  550. @for i in $(shell find $(DESTDIR)$(PREFIX)/lib/carla/ -maxdepth 1 -type f -exec basename {} ';'); do \
  551. $(LINK) $(PREFIX)/lib/carla/$$i $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/; \
  552. done
  553. rm -f $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/libcarla_standalone2.*
  554. # Link styles for vst plugin
  555. $(LINK) $(PREFIX)/lib/carla/styles $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/
  556. # Link resources for vst plugin
  557. rm -rf $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/resources
  558. $(LINK) $(PREFIX)/share/carla/resources/ $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/
  559. endif
  560. endif
  561. endif
  562. # ----------------------------------------------------------------------------------------------------------------------------
  563. uninstall:
  564. rm -f $(DESTDIR)$(PREFIX)/bin/carla*
  565. rm -f $(DESTDIR)$(PREFIX)/lib/pkgconfig/carla-standalone.pc
  566. rm -f $(DESTDIR)$(PREFIX)/share/applications/carla.desktop
  567. rm -f $(DESTDIR)$(PREFIX)/share/applications/carla-control.desktop
  568. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/carla.png
  569. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/carla-control.png
  570. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/carla.svg
  571. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/carla-control.svg
  572. rm -f $(DESTDIR)$(PREFIX)/share/mime/packages/carla.xml
  573. rm -rf $(DESTDIR)$(PREFIX)/include/carla/
  574. rm -rf $(DESTDIR)$(PREFIX)/lib/carla/
  575. rm -rf $(DESTDIR)$(PREFIX)/lib/lv2/carla.lv2/
  576. rm -rf $(DESTDIR)$(PREFIX)/lib/lv2/carla-native.lv2/
  577. rm -rf $(DESTDIR)$(PREFIX)/lib/vst/carla.vst/
  578. rm -rf $(DESTDIR)$(PREFIX)/share/carla/
  579. # ----------------------------------------------------------------------------------------------------------------------------
  580. USE_COLORS=true
  581. ifeq ($(HAIKU),true)
  582. USE_COLORS=false
  583. endif
  584. ifeq ($(USE_COLORS),true)
  585. ANS_NO=\033[31m NO \033[0m
  586. ANS_YES=\033[32m YES \033[0m
  587. mS=\033[33m[
  588. mZ=\033[30;1m[
  589. mE=]\033[0m
  590. tS=\033[36m
  591. tE=\033[0m
  592. else
  593. ANS_NO=" NO "
  594. ANS_YES=" YES "
  595. endif
  596. ifeq ($(DEFAULT_QT),4)
  597. FEV="Qt4"
  598. else
  599. FEV="Qt5"
  600. endif
  601. features:
  602. @echo "$(tS)---> Main features $(tE)"
  603. ifeq ($(HAVE_PYQT),true)
  604. @echo "Front-End: $(ANS_YES)(Using $(FEV))"
  605. ifneq ($(WIN32),true)
  606. @echo "LV2 plugin: $(ANS_YES)"
  607. else
  608. @echo "LV2 plugin: $(ANS_NO) $(mZ)Not available for Windows$(mE)"
  609. endif
  610. ifeq ($(LINUX),true)
  611. ifeq ($(DEFAULT_QT),4)
  612. ifeq ($(HAVE_X11),true)
  613. @echo "VST plugin: $(ANS_YES)"
  614. else # HAVE_X11
  615. @echo "VST plugin: $(ANS_NO) $(mS)X11 missing$(mE)"
  616. endif
  617. else # DEFAULT_QT
  618. @echo "VST plugin: $(ANS_NO) $(mZ)Qt4 only$(mE)"
  619. endif
  620. else # LINUX
  621. @echo "VST plugin: $(ANS_NO) $(mZ)Linux only$(mE)"
  622. endif
  623. else
  624. @echo "Front-End: $(ANS_NO) $(mS)Missing PyQt$(mE)"
  625. @echo "LV2 plugin: $(ANS_NO) $(mS)No front-end$(mE)"
  626. @echo "VST plugin: $(ANS_NO) $(mS)No front-end$(mE)"
  627. endif
  628. ifeq ($(HAVE_LIBLO),true)
  629. @echo "OSC support:$(ANS_YES)"
  630. else
  631. @echo "OSC support:$(ANS_NO) $(mS)Missing liblo$(mE)"
  632. endif
  633. @echo ""
  634. @echo "$(tS)---> Engine drivers $(tE)"
  635. @echo "JACK: $(ANS_YES)"
  636. ifeq ($(LINUX),true)
  637. ifeq ($(HAVE_ALSA),true)
  638. @echo "ALSA: $(ANS_YES)"
  639. else
  640. @echo "ALSA: $(ANS_NO) $(mS)Missing ALSA$(mE)"
  641. endif
  642. ifeq ($(HAVE_PULSEAUDIO),true)
  643. @echo "PulseAudio: $(ANS_YES)"
  644. else
  645. @echo "PulseAudio: $(ANS_NO) $(mS)Missing PulseAudio$(mE)"
  646. endif
  647. else
  648. @echo "ALSA: $(ANS_NO) $(mZ)Linux only$(mE)"
  649. @echo "PulseAudio: $(ANS_NO) $(mZ)Linux only$(mE)"
  650. endif
  651. ifeq ($(MACOS),true)
  652. @echo "CoreAudio: $(ANS_YES)"
  653. else
  654. @echo "CoreAudio: $(ANS_NO) $(mZ)MacOS only$(mE)"
  655. endif
  656. ifeq ($(WIN32),true)
  657. @echo "ASIO: $(ANS_YES)"
  658. @echo "DirectSound:$(ANS_YES)"
  659. else
  660. @echo "ASIO: $(ANS_NO) $(mZ)Windows only$(mE)"
  661. @echo "DirectSound:$(ANS_NO) $(mZ)Windows only$(mE)"
  662. endif
  663. @echo ""
  664. @echo "$(tS)---> Plugin formats: $(tE)"
  665. @echo "Internal:$(ANS_YES)"
  666. @echo "LADSPA: $(ANS_YES)"
  667. @echo "DSSI: $(ANS_YES)"
  668. @echo "LV2: $(ANS_YES)"
  669. ifeq ($(MACOS_OR_WIN32),true)
  670. @echo "VST: $(ANS_YES)(with UI)"
  671. else
  672. ifeq ($(LINUX),true)
  673. ifeq ($(HAVE_X11),true)
  674. @echo "VST: $(ANS_YES)(with UI)"
  675. else
  676. @echo "VST: $(ANS_YES)(without UI) $(mS)Missing X11$(mE)"
  677. endif
  678. else # LINUX
  679. @echo "VST: $(ANS_YES)(without UI) $(mZ)Linux, Mac and Windows only$(mE)"
  680. endif
  681. endif
  682. ifeq ($(MACOS_OR_WIN32),true)
  683. @echo "VST3: $(ANS_YES)"
  684. else
  685. @echo "VST3: $(ANS_NO) $(mZ)Windows and MacOS only$(mE)"
  686. endif
  687. ifeq ($(MACOS),true)
  688. @echo "AU: $(ANS_YES)"
  689. else
  690. @echo "AU: $(ANS_NO) $(mZ)MacOS only$(mE)"
  691. endif
  692. @echo ""
  693. @echo "$(tS)---> LV2 UI toolkit support: $(tE)"
  694. @echo "External:$(ANS_YES)(direct)"
  695. ifeq ($(LINUX),true)
  696. ifeq ($(HAVE_GTK2),true)
  697. @echo "Gtk2: $(ANS_YES)(bridge)"
  698. else
  699. @echo "Gtk2: $(ANS_NO) $(mS)Gtk2 missing$(mE)"
  700. endif
  701. ifeq ($(HAVE_GTK3),true)
  702. @echo "Gtk3: $(ANS_YES)(bridge)"
  703. else
  704. @echo "Gtk3: $(ANS_NO) $(mS)Gtk3 missing$(mE)"
  705. endif
  706. ifeq ($(HAVE_QT4),true)
  707. @echo "Qt4: $(ANS_YES)(bridge)"
  708. else
  709. @echo "Qt4: $(ANS_NO) $(mS)Qt4 missing$(mE)"
  710. endif
  711. ifeq ($(HAVE_QT5),true)
  712. @echo "Qt5: $(ANS_YES)(bridge)"
  713. else
  714. @echo "Qt5: $(ANS_NO) $(mS)Qt5 missing$(mE)"
  715. endif
  716. ifeq ($(HAVE_X11),true)
  717. @echo "X11: $(ANS_YES)(direct+bridge)"
  718. else
  719. @echo "X11: $(ANS_NO) $(mS)X11 missing$(mE)"
  720. endif
  721. else # LINUX
  722. @echo "Gtk2: $(ANS_NO) $(mZ)Linux only$(mE)"
  723. @echo "Gtk3: $(ANS_NO) $(mZ)Linux only$(mE)"
  724. @echo "Qt4: $(ANS_NO) $(mZ)Linux only$(mE)"
  725. @echo "Qt5: $(ANS_NO) $(mZ)Linux only$(mE)"
  726. @echo "X11: $(ANS_NO) $(mZ)Linux only$(mE)"
  727. endif # LINUX
  728. ifeq ($(MACOS),true)
  729. @echo "Cocoa: $(ANS_YES)(direct+bridge)"
  730. else
  731. @echo "Cocoa: $(ANS_NO) $(mZ)MacOS only$(mE)"
  732. endif
  733. ifeq ($(WIN32),true)
  734. @echo "Windows: $(ANS_YES)(direct+bridge)"
  735. else
  736. @echo "Windows: $(ANS_NO) $(mZ)Windows only$(mE)"
  737. endif
  738. @echo ""
  739. @echo "$(tS)---> File formats: $(tE)"
  740. ifeq ($(HAVE_LINUXSAMPLER),true)
  741. @echo "GIG:$(ANS_YES)"
  742. else
  743. @echo "GIG:$(ANS_NO) $(mS)LinuxSampler missing or too old$(mE)"
  744. endif
  745. ifeq ($(HAVE_FLUIDSYNTH),true)
  746. @echo "SF2:$(ANS_YES)"
  747. else
  748. @echo "SF2:$(ANS_NO) $(mS)FluidSynth missing$(mE)"
  749. endif
  750. ifeq ($(HAVE_LINUXSAMPLER),true)
  751. @echo "SFZ:$(ANS_YES)"
  752. else
  753. @echo "SFZ:$(ANS_NO) $(mS)LinuxSampler missing or too old$(mE)"
  754. endif
  755. @echo ""
  756. @echo "$(tS)---> Internal plugins: $(tE)"
  757. ifneq ($(WIN32),true)
  758. @echo "Carla-Patchbay: $(ANS_YES)"
  759. @echo "Carla-Rack: $(ANS_YES)"
  760. else
  761. @echo "Carla-Patchbay: $(ANS_NO) $(mS)Not available for Windows$(mE)"
  762. @echo "Carla-Rack: $(ANS_NO) $(mS)Not available for Windows$(mE)"
  763. endif
  764. ifeq ($(HAVE_DGL),true)
  765. @echo "DISTRHO Plugins:$(ANS_YES)(with UI)"
  766. else
  767. @echo "DISTRHO Plugins:$(ANS_YES)(without UI)"
  768. endif
  769. ifeq ($(HAVE_PROJECTM),true)
  770. @echo "DISTRHO ProM: $(ANS_YES)"
  771. else
  772. @echo "DISTRHO ProM: $(ANS_NO) (missing libprojectM)"
  773. endif
  774. ifeq ($(HAVE_ZYN_DEPS),true)
  775. ifeq ($(HAVE_ZYN_UI_DEPS),true)
  776. ifeq ($(HAVE_NTK),true)
  777. @echo "ZynAddSubFX: $(ANS_YES)(with NTK UI)"
  778. else
  779. @echo "ZynAddSubFX: $(ANS_YES)(with FLTK UI)"
  780. endif
  781. else
  782. @echo "ZynAddSubFX: $(ANS_YES)(without UI) $(mS)FLTK or NTK missing$(mE)"
  783. endif
  784. else
  785. @echo "ZynAddSubFX: $(ANS_NO) $(mS)fftw3, mxml or zlib missing$(mE)"
  786. endif
  787. # ----------------------------------------------------------------------------------------------------------------------------
  788. .FORCE:
  789. .PHONY: .FORCE
  790. # ----------------------------------------------------------------------------------------------------------------------------