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.

318 lines
12KB

  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 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. tools: \
  33. src/ui_logs.py src/ui_render.py \
  34. src/ui_settings_app.py src/ui_settings_jack.py
  35. src/ui_%.py: resources/ui/%.ui
  36. $(PYUIC) $< -o $@
  37. #
  38. # src/ui_cadence_tb_jack.py: resources/ui/cadence_tb_jack.ui
  39. # $(PYUIC) $< -o $@
  40. #
  41. # src/ui_cadence_tb_alsa.py: resources/ui/cadence_tb_alsa.ui
  42. # $(PYUIC) $< -o $@
  43. #
  44. # src/ui_cadence_tb_a2j.py: resources/ui/cadence_tb_a2j.ui
  45. # $(PYUIC) $< -o $@
  46. #
  47. # src/ui_cadence_tb_pa.py: resources/ui/cadence_tb_pa.ui
  48. # $(PYUIC) $< -o $@
  49. #
  50. # src/ui_cadence_rwait.py: resources/ui/cadence_rwait.ui
  51. # $(PYUIC) $< -o $@
  52. #
  53. # src/ui_catarina.py: resources/ui/catarina.ui
  54. # $(PYUIC) $< -o $@
  55. #
  56. # src/ui_catarina_addgroup.py: resources/ui/catarina_addgroup.ui
  57. # $(PYUIC) $< -o $@
  58. #
  59. # src/ui_catarina_removegroup.py: resources/ui/catarina_removegroup.ui
  60. # $(PYUIC) $< -o $@
  61. #
  62. # src/ui_catarina_renamegroup.py: resources/ui/catarina_renamegroup.ui
  63. # $(PYUIC) $< -o $@
  64. #
  65. # src/ui_catarina_addport.py: resources/ui/catarina_addport.ui
  66. # $(PYUIC) $< -o $@
  67. #
  68. # src/ui_catarina_removeport.py: resources/ui/catarina_removeport.ui
  69. # $(PYUIC) $< -o $@
  70. #
  71. # src/ui_catarina_renameport.py: resources/ui/catarina_renameport.ui
  72. # $(PYUIC) $< -o $@
  73. #
  74. # src/ui_catarina_connectports.py: resources/ui/catarina_connectports.ui
  75. # $(PYUIC) $< -o $@
  76. #
  77. # src/ui_catarina_disconnectports.py: resources/ui/catarina_disconnectports.ui
  78. # $(PYUIC) $< -o $@
  79. #
  80. # src/ui_catia.py: resources/ui/catia.ui
  81. # $(PYUIC) $< -o $@
  82. #
  83. # src/ui_claudia.py: resources/ui/claudia.ui
  84. # $(PYUIC) $< -o $@
  85. #
  86. # src/ui_claudia_studioname.py: resources/ui/claudia_studioname.ui
  87. # $(PYUIC) $< -o $@
  88. #
  89. # src/ui_claudia_studiolist.py: resources/ui/claudia_studiolist.ui
  90. # $(PYUIC) $< -o $@
  91. #
  92. # src/ui_claudia_createroom.py: resources/ui/claudia_createroom.ui
  93. # $(PYUIC) $< -o $@
  94. #
  95. # src/ui_claudia_projectname.py: resources/ui/claudia_projectname.ui
  96. # $(PYUIC) $< -o $@
  97. #
  98. # src/ui_claudia_projectproperties.py: resources/ui/claudia_projectproperties.ui
  99. # $(PYUIC) $< -o $@
  100. #
  101. # src/ui_claudia_runcustom.py: resources/ui/claudia_runcustom.ui
  102. # $(PYUIC) $< -o $@
  103. #
  104. # src/ui_claudia_launcher.py: resources/ui/claudia_launcher.ui
  105. # $(PYUIC) $< -o $@
  106. #
  107. # src/ui_claudia_launcher_app.py: resources/ui/claudia_launcher_app.ui
  108. # $(PYUIC) $< -o $@
  109. #
  110. # src/ui_caitlyn.py: resources/ui/caitlyn.ui
  111. # $(PYUIC) $< -o $@
  112. #
  113. # src/ui_carla.py: resources/ui/carla.ui
  114. # $(PYUIC) $< -o $@
  115. #
  116. # src/ui_carla_control.py: resources/ui/carla_control.ui
  117. # $(PYUIC) $< -o $@
  118. #
  119. # src/ui_carla_about.py: resources/ui/carla_about.ui
  120. # $(PYUIC) $< -o $@
  121. #
  122. # src/ui_carla_database.py: resources/ui/carla_database.ui
  123. # $(PYUIC) $< -o $@
  124. #
  125. # src/ui_carla_edit.py: resources/ui/carla_edit.ui
  126. # $(PYUIC) $< -o $@
  127. #
  128. # src/ui_carla_parameter.py: resources/ui/carla_parameter.ui
  129. # $(PYUIC) $< -o $@
  130. #
  131. # src/ui_carla_plugin.py: resources/ui/carla_plugin.ui
  132. # $(PYUIC) $< -o $@
  133. #
  134. # src/ui_carla_refresh.py: resources/ui/carla_refresh.ui
  135. # $(PYUIC) $< -o $@
  136. #
  137. # src/ui_logs.py: resources/ui/logs.ui
  138. # $(PYUIC) $< -o $@
  139. #
  140. # src/ui_render.py: resources/ui/render.ui
  141. # $(PYUIC) $< -o $@
  142. #
  143. # src/ui_settings_app.py: resources/ui/settings_app.ui
  144. # $(PYUIC) $< -o $@
  145. #
  146. # src/ui_settings_jack.py: resources/ui/settings_jack.ui
  147. # $(PYUIC) $< -o $@
  148. #
  149. # src/ui_inputdialog_value.py: resources/ui/inputdialog_value.ui
  150. # $(PYUIC) $< -o $@
  151. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  152. RES: src/resources_rc.py
  153. src/resources_rc.py: resources/resources.qrc
  154. $(PYRCC) $< -o $@
  155. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  156. CPP: jackmeter xycontroller
  157. jackmeter:
  158. $(MAKE) -C c++/jackmeter
  159. xycontroller:
  160. $(MAKE) -C c++/xycontroller
  161. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  162. debug:
  163. $(MAKE) DEBUG=true
  164. # ------------------------------------------------------------------------------------------------------------------------------------------------------
  165. clean:
  166. $(MAKE) clean -C c++/jackmeter
  167. $(MAKE) clean -C c++/xycontroller
  168. rm -f *~ src/*~ src/*.pyc src/ui_*.py src/resources_rc.py
  169. install:
  170. # Create directories
  171. install -d $(DESTDIR)$(PREFIX)/bin/
  172. install -d $(DESTDIR)$(PREFIX)/share/applications/
  173. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  174. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  175. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  176. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  177. install -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  178. install -d $(DESTDIR)$(PREFIX)/share/cadence/
  179. install -d $(DESTDIR)$(PREFIX)/share/cadence/src/
  180. install -d $(DESTDIR)$(PREFIX)/share/cadence/pulse2jack/
  181. install -d $(DESTDIR)$(PREFIX)/share/cadence/icons/
  182. install -d $(DESTDIR)$(PREFIX)/share/cadence/templates/
  183. install -d $(X11_RC_DIR)
  184. # Install script files and binaries
  185. install -m 755 \
  186. data/cadence \
  187. data/cadence-aloop-daemon \
  188. data/cadence-jacksettings \
  189. data/cadence-logs \
  190. data/cadence-pulse2jack \
  191. data/cadence-render \
  192. data/cadence-session-start \
  193. data/catarina \
  194. data/catia \
  195. data/claudia \
  196. data/claudia-launcher \
  197. c++/jackmeter/cadence-jackmeter \
  198. c++/xycontroller/cadence-xycontroller \
  199. $(DESTDIR)$(PREFIX)/bin/
  200. # Install desktop files
  201. install -m 644 data/*.desktop $(DESTDIR)$(PREFIX)/share/applications/
  202. # Install icons, 16x16
  203. install -m 644 resources/16x16/cadence.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  204. install -m 644 resources/16x16/catarina.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  205. install -m 644 resources/16x16/catia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  206. install -m 644 resources/16x16/claudia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  207. install -m 644 resources/16x16/claudia-launcher.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/16x16/apps/
  208. # Install icons, 48x48
  209. install -m 644 resources/48x48/cadence.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  210. install -m 644 resources/48x48/catarina.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  211. install -m 644 resources/48x48/catia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  212. install -m 644 resources/48x48/claudia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  213. install -m 644 resources/48x48/claudia-launcher.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/48x48/apps/
  214. # Install icons, 128x128
  215. install -m 644 resources/128x128/cadence.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  216. install -m 644 resources/128x128/catarina.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  217. install -m 644 resources/128x128/catia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  218. install -m 644 resources/128x128/claudia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  219. install -m 644 resources/128x128/claudia-launcher.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/128x128/apps/
  220. # Install icons, 256x256
  221. install -m 644 resources/256x256/cadence.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  222. install -m 644 resources/256x256/catarina.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  223. install -m 644 resources/256x256/catia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  224. install -m 644 resources/256x256/claudia.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  225. install -m 644 resources/256x256/claudia-launcher.png $(DESTDIR)$(PREFIX)/share/icons/hicolor/256x256/apps/
  226. # Install icons, scalable
  227. install -m 644 resources/scalable/cadence.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  228. install -m 644 resources/scalable/catarina.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  229. install -m 644 resources/scalable/catia.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  230. install -m 644 resources/scalable/claudia.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  231. install -m 644 resources/scalable/claudia-launcher.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/
  232. # Install main code
  233. install -m 755 src/*.py $(DESTDIR)$(PREFIX)/share/cadence/src/
  234. # Install addtional stuff for Cadence
  235. install -m 644 data/pulse2jack/* $(DESTDIR)$(PREFIX)/share/cadence/pulse2jack/
  236. install -m 644 data/70cadence-plugin-paths $(X11_RC_DIR)
  237. install -m 644 data/99cadence-session-start $(X11_RC_DIR)
  238. # Install addtional stuff for Claudia
  239. cp -r data/icons/* $(DESTDIR)$(PREFIX)/share/cadence/icons/
  240. cp -r data/templates/* $(DESTDIR)$(PREFIX)/share/cadence/templates/
  241. # Adjust PREFIX value in script files
  242. sed -i "s/X-PREFIX-X/$(SED_PREFIX)/" \
  243. $(DESTDIR)$(PREFIX)/bin/cadence \
  244. $(DESTDIR)$(PREFIX)/bin/cadence-aloop-daemon \
  245. $(DESTDIR)$(PREFIX)/bin/cadence-jacksettings \
  246. $(DESTDIR)$(PREFIX)/bin/cadence-logs \
  247. $(DESTDIR)$(PREFIX)/bin/cadence-pulse2jack \
  248. $(DESTDIR)$(PREFIX)/bin/cadence-render \
  249. $(DESTDIR)$(PREFIX)/bin/cadence-session-start \
  250. $(DESTDIR)$(PREFIX)/bin/catarina \
  251. $(DESTDIR)$(PREFIX)/bin/catia \
  252. $(DESTDIR)$(PREFIX)/bin/claudia \
  253. $(DESTDIR)$(PREFIX)/bin/claudia-launcher \
  254. $(DESTDIR)$(PREFIX)/bin/caitlyn \
  255. $(X11_RC_DIR)/70cadence-plugin-paths \
  256. $(X11_RC_DIR)/99cadence-session-start
  257. uninstall:
  258. rm -f $(DESTDIR)$(PREFIX)/bin/cadence*
  259. rm -f $(DESTDIR)$(PREFIX)/bin/catarina
  260. rm -f $(DESTDIR)$(PREFIX)/bin/catia
  261. rm -f $(DESTDIR)$(PREFIX)/bin/claudia*
  262. rm -f $(DESTDIR)$(PREFIX)/share/applications/cadence.desktop
  263. rm -f $(DESTDIR)$(PREFIX)/share/applications/catarina.desktop
  264. rm -f $(DESTDIR)$(PREFIX)/share/applications/catia.desktop
  265. rm -f $(DESTDIR)$(PREFIX)/share/applications/claudia.desktop
  266. rm -f $(DESTDIR)$(PREFIX)/share/applications/claudia-launcher.desktop
  267. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/cadence.png
  268. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/catarina.png
  269. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/catia.png
  270. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/claudia.png
  271. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/*/apps/claudia-launcher.png
  272. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/cadence.svg
  273. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/catarina.svg
  274. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/catia.svg
  275. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/claudia.svg
  276. rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/claudia-launcher.svg
  277. rm -f $(X11_RC_DIR)/70cadence-plugin-paths
  278. rm -f $(X11_RC_DIR)/99cadence-session-start
  279. rm -rf $(DESTDIR)$(PREFIX)/share/cadence/