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.

375 lines
14KB

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