Collection of tools useful for audio production
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.

407 lines
15KB

  1. #!/usr/bin/make -f
  2. # Makefile for Cadence #
  3. # ---------------------- #
  4. # Created by falkTX
  5. #
  6. PREFIX = /usr/local
  7. DESTDIR =
  8. SED_PREFIX = $(shell echo $(PREFIX) | sed "s/\//\\\\\\\\\//g")
  9. PYUIC = pyuic4
  10. PYRCC = pyrcc4 -py3
  11. # Detect X11 rules dir
  12. ifeq "$(wildcard /etc/X11/xinit/xinitrc.d/ )" ""
  13. X11_RC_DIR = $(DESTDIR)/etc/X11/Xsession.d/
  14. else
  15. X11_RC_DIR = $(DESTDIR)/etc/X11/xinit/xinitrc.d/
  16. endif
  17. all: UI RES CPP
  18. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  19. UI: cadence catarina catia claudia carla tools
  20. cadence: src/ui_cadence.py \
  21. src/ui_cadence_tb_jack.py src/ui_cadence_tb_alsa.py src/ui_cadence_tb_a2j.py src/ui_cadence_tb_pa.py \
  22. src/ui_cadence_rwait.py
  23. catarina: src/ui_catarina.py \
  24. src/ui_catarina_addgroup.py src/ui_catarina_removegroup.py src/ui_catarina_renamegroup.py \
  25. src/ui_catarina_addport.py src/ui_catarina_removeport.py src/ui_catarina_renameport.py \
  26. src/ui_catarina_connectports.py src/ui_catarina_disconnectports.py
  27. catia: src/ui_catia.py
  28. claudia: src/ui_claudia.py \
  29. src/ui_claudia_studioname.py src/ui_claudia_studiolist.py \
  30. src/ui_claudia_createroom.py src/ui_claudia_projectname.py src/ui_claudia_projectproperties.py \
  31. src/ui_claudia_runcustom.py src/ui_claudia_launcher.py src/ui_claudia_launcher_app.py
  32. carla: src/ui_carla.py src/ui_carla_control.py \
  33. src/ui_carla_about.py src/ui_carla_database.py src/ui_carla_edit.py src/ui_carla_parameter.py src/ui_carla_plugin.py src/ui_carla_refresh.py \
  34. src/ui_inputdialog_value.py
  35. tools: \
  36. src/ui_logs.py src/ui_render.py \
  37. src/ui_settings_app.py src/ui_settings_jack.py
  38. src/ui_cadence.py: resources/ui/cadence.ui
  39. $(PYUIC) $< -o $@
  40. src/ui_cadence_tb_jack.py: resources/ui/cadence_tb_jack.ui
  41. $(PYUIC) $< -o $@
  42. src/ui_cadence_tb_alsa.py: resources/ui/cadence_tb_alsa.ui
  43. $(PYUIC) $< -o $@
  44. src/ui_cadence_tb_a2j.py: resources/ui/cadence_tb_a2j.ui
  45. $(PYUIC) $< -o $@
  46. src/ui_cadence_tb_pa.py: resources/ui/cadence_tb_pa.ui
  47. $(PYUIC) $< -o $@
  48. src/ui_cadence_rwait.py: resources/ui/cadence_rwait.ui
  49. $(PYUIC) $< -o $@
  50. src/ui_catarina.py: resources/ui/catarina.ui
  51. $(PYUIC) $< -o $@
  52. src/ui_catarina_addgroup.py: resources/ui/catarina_addgroup.ui
  53. $(PYUIC) $< -o $@
  54. src/ui_catarina_removegroup.py: resources/ui/catarina_removegroup.ui
  55. $(PYUIC) $< -o $@
  56. src/ui_catarina_renamegroup.py: resources/ui/catarina_renamegroup.ui
  57. $(PYUIC) $< -o $@
  58. src/ui_catarina_addport.py: resources/ui/catarina_addport.ui
  59. $(PYUIC) $< -o $@
  60. src/ui_catarina_removeport.py: resources/ui/catarina_removeport.ui
  61. $(PYUIC) $< -o $@
  62. src/ui_catarina_renameport.py: resources/ui/catarina_renameport.ui
  63. $(PYUIC) $< -o $@
  64. src/ui_catarina_connectports.py: resources/ui/catarina_connectports.ui
  65. $(PYUIC) $< -o $@
  66. src/ui_catarina_disconnectports.py: resources/ui/catarina_disconnectports.ui
  67. $(PYUIC) $< -o $@
  68. src/ui_catia.py: resources/ui/catia.ui
  69. $(PYUIC) $< -o $@
  70. src/ui_claudia.py: resources/ui/claudia.ui
  71. $(PYUIC) $< -o $@
  72. src/ui_claudia_studioname.py: resources/ui/claudia_studioname.ui
  73. $(PYUIC) $< -o $@
  74. src/ui_claudia_studiolist.py: resources/ui/claudia_studiolist.ui
  75. $(PYUIC) $< -o $@
  76. src/ui_claudia_createroom.py: resources/ui/claudia_createroom.ui
  77. $(PYUIC) $< -o $@
  78. src/ui_claudia_projectname.py: resources/ui/claudia_projectname.ui
  79. $(PYUIC) $< -o $@
  80. src/ui_claudia_projectproperties.py: resources/ui/claudia_projectproperties.ui
  81. $(PYUIC) $< -o $@
  82. src/ui_claudia_runcustom.py: resources/ui/claudia_runcustom.ui
  83. $(PYUIC) $< -o $@
  84. src/ui_claudia_launcher.py: resources/ui/claudia_launcher.ui
  85. $(PYUIC) $< -o $@
  86. src/ui_claudia_launcher_app.py: resources/ui/claudia_launcher_app.ui
  87. $(PYUIC) $< -o $@
  88. src/ui_carla.py: resources/ui/carla.ui
  89. $(PYUIC) $< -o $@
  90. src/ui_carla_control.py: resources/ui/carla_control.ui
  91. $(PYUIC) $< -o $@
  92. src/ui_carla_about.py: resources/ui/carla_about.ui
  93. $(PYUIC) $< -o $@
  94. src/ui_carla_database.py: resources/ui/carla_database.ui
  95. $(PYUIC) $< -o $@
  96. src/ui_carla_edit.py: resources/ui/carla_edit.ui
  97. $(PYUIC) $< -o $@
  98. src/ui_carla_parameter.py: resources/ui/carla_parameter.ui
  99. $(PYUIC) $< -o $@
  100. src/ui_carla_plugin.py: resources/ui/carla_plugin.ui
  101. $(PYUIC) $< -o $@
  102. src/ui_carla_refresh.py: resources/ui/carla_refresh.ui
  103. $(PYUIC) $< -o $@
  104. src/ui_logs.py: resources/ui/logs.ui
  105. $(PYUIC) $< -o $@
  106. src/ui_render.py: resources/ui/render.ui
  107. $(PYUIC) $< -o $@
  108. src/ui_settings_app.py: resources/ui/settings_app.ui
  109. $(PYUIC) $< -o $@
  110. src/ui_settings_jack.py: resources/ui/settings_jack.ui
  111. $(PYUIC) $< -o $@
  112. src/ui_inputdialog_value.py: resources/ui/inputdialog_value.ui
  113. $(PYUIC) $< -o $@
  114. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  115. RES: src/resources_rc.py
  116. src/resources_rc.py: resources/resources.qrc
  117. $(PYRCC) $< -o $@
  118. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  119. CPP: carla-backend carla-bridge carla-discovery jackmeter xycontroller
  120. carla-backend: carla-engine carla-native carla-plugin
  121. $(MAKE) -C c++/carla-backend
  122. carla-bridge:
  123. $(MAKE) -C c++/carla-bridge
  124. carla-discovery:
  125. $(MAKE) -C c++/carla-discovery NATIVE=1
  126. carla-engine:
  127. $(MAKE) -C c++/carla-engine
  128. carla-lilv:
  129. $(MAKE) -C c++/carla-lilv
  130. carla-native:
  131. $(MAKE) -C c++/carla-native
  132. carla-plugin:
  133. $(MAKE) -C c++/carla-plugin
  134. carla-rtmempool:
  135. $(MAKE) -C c++/carla-rtmempool
  136. jackmeter:
  137. $(MAKE) -C c++/jackmeter
  138. xycontroller:
  139. $(MAKE) -C c++/xycontroller
  140. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  141. debug:
  142. $(MAKE) DEBUG=true
  143. doc:
  144. $(MAKE) doc -C c++/carla-backend
  145. $(MAKE) doc -C c++/carla-bridge
  146. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  147. posix32:
  148. $(MAKE) -C c++/carla-bridge posix32
  149. $(MAKE) -C c++/carla-discovery posix32
  150. posix64:
  151. $(MAKE) -C c++/carla-bridge posix64
  152. $(MAKE) -C c++/carla-discovery posix64
  153. win32:
  154. $(MAKE) -C c++/carla-bridge win32
  155. $(MAKE) -C c++/carla-discovery win32
  156. win64:
  157. $(MAKE) -C c++/carla-bridge win64
  158. $(MAKE) -C c++/carla-discovery win64
  159. wine32:
  160. $(MAKE) -C c++/carla-jackbridge wine32
  161. cp c++/carla-jackbridge/libcarla-jackbridge-win32.dll.so c++/carla-bridge/libcarla-jackbridge-win32.dll
  162. wine64:
  163. $(MAKE) -C c++/carla-jackbridge wine64
  164. cp c++/carla-jackbridge/libcarla-jackbridge-win64.dll.so c++/carla-bridge/libcarla-jackbridge-win64.dll
  165. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  166. clean:
  167. $(MAKE) clean -C c++/carla-backend
  168. $(MAKE) clean -C c++/carla-bridge
  169. $(MAKE) clean -C c++/carla-discovery
  170. $(MAKE) clean -C c++/carla-engine
  171. $(MAKE) clean -C c++/carla-jackbridge
  172. $(MAKE) clean -C c++/carla-lilv
  173. $(MAKE) clean -C c++/carla-native
  174. $(MAKE) clean -C c++/carla-plugin
  175. $(MAKE) clean -C c++/carla-rtmempool
  176. $(MAKE) clean -C c++/jackmeter
  177. $(MAKE) clean -C c++/xycontroller
  178. rm -f *~ src/*~ src/*.pyc src/ui_*.py src/resources_rc.py
  179. install:
  180. # Create directories
  181. install -d $(DESTDIR)$(PREFIX)/bin/
  182. install -d $(DESTDIR)$(PREFIX)/lib/carla/
  183. install -d $(DESTDIR)$(PREFIX)/share/applications/
  184. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  185. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  186. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  187. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  188. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  189. install -d $(DESTDIR)$(PREFIX)/share/cadence/
  190. install -d $(DESTDIR)$(PREFIX)/share/cadence/src/
  191. install -d $(DESTDIR)$(PREFIX)/share/cadence/pulse2jack/
  192. install -d $(DESTDIR)$(PREFIX)/share/cadence/icons/
  193. install -d $(DESTDIR)$(PREFIX)/share/cadence/templates/
  194. install -d $(X11_RC_DIR)
  195. # Install script files and binaries
  196. install -m 755 \
  197. data/cadence \
  198. data/cadence-aloop-daemon \
  199. data/cadence-jacksettings \
  200. data/cadence-logs \
  201. data/cadence-pulse2jack \
  202. data/cadence-render \
  203. data/cadence-session-start \
  204. data/catarina \
  205. data/catia \
  206. data/claudia \
  207. data/claudia-launcher \
  208. data/carla \
  209. data/carla-control \
  210. c++/jackmeter/cadence-jackmeter \
  211. c++/xycontroller/cadence-xycontroller \
  212. $(DESTDIR)$(PREFIX)/bin/
  213. # Install desktop files
  214. install -m 644 data/*.desktop $(DESTDIR)$(PREFIX)/share/applications/
  215. # Install icons, 16x16
  216. install -m 644 resources/16x16/cadence.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  217. install -m 644 resources/16x16/catarina.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  218. install -m 644 resources/16x16/catia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  219. install -m 644 resources/16x16/claudia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  220. install -m 644 resources/16x16/claudia-launcher.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  221. install -m 644 resources/16x16/carla.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  222. install -m 644 resources/16x16/carla-control.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  223. # Install icons, 48x48
  224. install -m 644 resources/48x48/cadence.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  225. install -m 644 resources/48x48/catarina.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  226. install -m 644 resources/48x48/catia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  227. install -m 644 resources/48x48/claudia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  228. install -m 644 resources/48x48/claudia-launcher.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  229. install -m 644 resources/48x48/carla.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  230. install -m 644 resources/48x48/carla-control.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  231. # Install icons, 128x128
  232. install -m 644 resources/128x128/cadence.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  233. install -m 644 resources/128x128/catarina.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  234. install -m 644 resources/128x128/catia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  235. install -m 644 resources/128x128/claudia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  236. install -m 644 resources/128x128/claudia-launcher.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  237. install -m 644 resources/128x128/carla.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  238. install -m 644 resources/128x128/carla-control.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  239. # Install icons, 256x256
  240. install -m 644 resources/256x256/cadence.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  241. install -m 644 resources/256x256/catarina.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  242. install -m 644 resources/256x256/catia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  243. install -m 644 resources/256x256/claudia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  244. install -m 644 resources/256x256/claudia-launcher.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  245. install -m 644 resources/256x256/carla.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  246. install -m 644 resources/256x256/carla-control.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  247. # Install icons, scalable
  248. install -m 644 resources/scalable/cadence.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  249. install -m 644 resources/scalable/catarina.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  250. install -m 644 resources/scalable/catia.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  251. install -m 644 resources/scalable/claudia.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  252. install -m 644 resources/scalable/claudia-launcher.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  253. install -m 644 resources/scalable/carla.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  254. install -m 644 resources/scalable/carla-control.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  255. # Install main code
  256. install -m 755 src/*.py $(DESTDIR)$(PREFIX)/share/cadence/src/
  257. install -m 755 \
  258. c++/carla-backend/*.so \
  259. c++/carla-bridge/carla-bridge-* \
  260. c++/carla-discovery/carla-discovery-* \
  261. $(DESTDIR)$(PREFIX)/lib/carla/
  262. # Install addtional stuff for Cadence
  263. install -m 644 data/pulse2jack/* $(DESTDIR)$(PREFIX)/share/cadence/pulse2jack/
  264. install -m 644 data/99cadence-session-start $(X11_RC_DIR)
  265. # Install addtional stuff for Claudia
  266. cp -r data/icons/* $(DESTDIR)$(PREFIX)/share/cadence/icons/
  267. cp -r data/templates/* $(DESTDIR)$(PREFIX)/share/cadence/templates/
  268. # Adjust PREFIX value in script files
  269. sed -i "s/X-PREFIX-X/$(SED_PREFIX)/" \
  270. $(DESTDIR)$(PREFIX)/bin/cadence \
  271. $(DESTDIR)$(PREFIX)/bin/cadence-aloop-daemon \
  272. $(DESTDIR)$(PREFIX)/bin/cadence-jacksettings \
  273. $(DESTDIR)$(PREFIX)/bin/cadence-logs \
  274. $(DESTDIR)$(PREFIX)/bin/cadence-pulse2jack \
  275. $(DESTDIR)$(PREFIX)/bin/cadence-render \
  276. $(DESTDIR)$(PREFIX)/bin/cadence-session-start \
  277. $(DESTDIR)$(PREFIX)/bin/catarina \
  278. $(DESTDIR)$(PREFIX)/bin/catia \
  279. $(DESTDIR)$(PREFIX)/bin/claudia \
  280. $(DESTDIR)$(PREFIX)/bin/claudia-launcher \
  281. $(DESTDIR)$(PREFIX)/bin/carla \
  282. $(DESTDIR)$(PREFIX)/bin/carla-control \
  283. $(X11_RC_DIR)/99cadence-session-start
  284. uninstall:
  285. rm -f $(DESTDIR)$(PREFIX)/bin/cadence*
  286. rm -f $(DESTDIR)$(PREFIX)/bin/catarina
  287. rm -f $(DESTDIR)$(PREFIX)/bin/catia
  288. rm -f $(DESTDIR)$(PREFIX)/bin/claudia*
  289. rm -f $(DESTDIR)$(PREFIX)/bin/carla*
  290. rm -f $(DESTDIR)$(PREFIX)/share/applications/cadence.desktop
  291. rm -f $(DESTDIR)$(PREFIX)/share/applications/catarina.desktop
  292. rm -f $(DESTDIR)$(PREFIX)/share/applications/catia.desktop
  293. rm -f $(DESTDIR)$(PREFIX)/share/applications/claudia.desktop
  294. rm -f $(DESTDIR)$(PREFIX)/share/applications/claudia-launcher.desktop
  295. rm -f $(DESTDIR)$(PREFIX)/share/applications/carla.desktop
  296. rm -f $(DESTDIR)$(PREFIX)/share/applications/carla-control.desktop
  297. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/cadence.png
  298. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/catarina.png
  299. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/catia.png
  300. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/claudia.png
  301. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/claudia-launcher.png
  302. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/carla.png
  303. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/carla-control.png
  304. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/cadence.svg
  305. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/catarina.svg
  306. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/catia.svg
  307. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/claudia.svg
  308. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/claudia-launcher.svg
  309. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/carla.svg
  310. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/carla-control.svg
  311. rm -f $(X11_RC_DIR)/99cadence-session-start
  312. rm -rf $(DESTDIR)$(PREFIX)/lib/carla/
  313. rm -rf $(DESTDIR)$(PREFIX)/share/cadence/