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 23KB

10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
5 years ago
5 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
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613
  1. #!/usr/bin/make -f
  2. # Makefile for carla-bridges-plugin #
  3. # --------------------------------- #
  4. # Created by falkTX
  5. #
  6. CWD=..
  7. MODULENAME=carla-bridge
  8. include $(CWD)/Makefile.mk
  9. # Workaround GCC bug
  10. ifeq ($(TESTBUILD),true)
  11. ifeq ($(USING_JUCE),true)
  12. BUILD_CXX_FLAGS += -Wno-undef
  13. # FIXME
  14. BUILD_CXX_FLAGS += -Wno-deprecated-declarations
  15. endif
  16. endif
  17. ifneq ($(HAIKU),true)
  18. ifneq ($(WASM),true)
  19. BUILD_CXX_FLAGS += -pthread
  20. endif
  21. endif
  22. # ---------------------------------------------------------------------------------------------------------------------
  23. BINDIR := $(CWD)/../bin
  24. ifeq ($(DEBUG),true)
  25. OBJDIR := $(CWD)/../build/bridges-plugin/Debug
  26. MODULEDIR := $(CWD)/../build/modules/Debug
  27. else
  28. OBJDIR := $(CWD)/../build/bridges-plugin/Release
  29. MODULEDIR := $(CWD)/../build/modules/Release
  30. endif
  31. # ---------------------------------------------------------------------------------------------------------------------
  32. BUILD_CXX_FLAGS += -DBUILD_BRIDGE -I. -I$(CWD) -I$(CWD)/backend -I$(CWD)/includes -I$(CWD)/modules -I$(CWD)/utils
  33. BUILD_CXX_FLAGS += -I$(CWD)/backend/engine -I$(CWD)/backend/plugin
  34. BUILD_CXX_FLAGS += -UHAVE_SDL
  35. BUILD_CXX_FLAGS += -UUSING_JUCE_AUDIO_DEVICES
  36. BUILD_CXX_FLAGS += -UUSING_RTAUDIO
  37. ifeq ($(USING_JUCE),true)
  38. ifeq ($(WINDOWS),true)
  39. BUILD_CXX_FLAGS += -I$(CWD)/modules/mingw-std-threads
  40. endif
  41. endif
  42. 32BIT_FLAGS += -DBUILD_BRIDGE_ALTERNATIVE_ARCH
  43. 64BIT_FLAGS += -DBUILD_BRIDGE_ALTERNATIVE_ARCH
  44. ARM32_FLAGS += -DBUILD_BRIDGE_ALTERNATIVE_ARCH
  45. # ---------------------------------------------------------------------------------------------------------------------
  46. LIBS_native = $(MODULEDIR)/jackbridge.a
  47. LIBS_arm32 = $(MODULEDIR)/jackbridge.arm32.a
  48. LIBS_posix32 = $(MODULEDIR)/jackbridge.posix32.a
  49. LIBS_posix64 = $(MODULEDIR)/jackbridge.posix64.a
  50. ifeq ($(BUILDING_FOR_WINE),true)
  51. LIBS_win32 = $(MODULEDIR)/jackbridge.win32e.a
  52. LIBS_win64 = $(MODULEDIR)/jackbridge.win64e.a
  53. else
  54. LIBS_win32 = $(MODULEDIR)/jackbridge.win32.a
  55. LIBS_win64 = $(MODULEDIR)/jackbridge.win64.a
  56. endif
  57. LINK_FLAGS += $(JACKBRIDGE_LIBS)
  58. LIBS_native += $(MODULEDIR)/lilv.a
  59. LIBS_arm32 += $(MODULEDIR)/lilv.arm32.a
  60. LIBS_posix32 += $(MODULEDIR)/lilv.posix32.a
  61. LIBS_posix64 += $(MODULEDIR)/lilv.posix64.a
  62. LIBS_win32 += $(MODULEDIR)/lilv.win32.a
  63. LIBS_win64 += $(MODULEDIR)/lilv.win64.a
  64. LINK_FLAGS += $(LILV_LIBS)
  65. LIBS_native += $(MODULEDIR)/rtmempool.a
  66. LIBS_arm32 += $(MODULEDIR)/rtmempool.arm32.a
  67. LIBS_posix32 += $(MODULEDIR)/rtmempool.posix32.a
  68. LIBS_posix64 += $(MODULEDIR)/rtmempool.posix64.a
  69. LIBS_win32 += $(MODULEDIR)/rtmempool.win32.a
  70. LIBS_win64 += $(MODULEDIR)/rtmempool.win64.a
  71. LINK_FLAGS += $(RTMEMPOOL_LIBS)
  72. LIBS_native += $(MODULEDIR)/water.a
  73. LIBS_arm32 += $(MODULEDIR)/water.arm32.a
  74. LIBS_posix32 += $(MODULEDIR)/water.posix32.a
  75. LIBS_posix64 += $(MODULEDIR)/water.posix64.a
  76. LIBS_win32 += $(MODULEDIR)/water.win32.a
  77. LIBS_win64 += $(MODULEDIR)/water.win64.a
  78. LINK_FLAGS += $(WATER_LIBS)
  79. ifeq ($(USING_JUCE),true)
  80. LIBS_native += $(MODULEDIR)/carla_juce.a
  81. LIBS_posix32 += $(MODULEDIR)/carla_juce.posix32.a
  82. LIBS_posix64 += $(MODULEDIR)/carla_juce.posix64.a
  83. LIBS_win32 += $(MODULEDIR)/carla_juce.win32.a
  84. LIBS_win64 += $(MODULEDIR)/carla_juce.win64.a
  85. LIBS_native += $(MODULEDIR)/juce_audio_basics.a
  86. LIBS_posix32 += $(MODULEDIR)/juce_audio_basics.posix32.a
  87. LIBS_posix64 += $(MODULEDIR)/juce_audio_basics.posix64.a
  88. LIBS_win32 += $(MODULEDIR)/juce_audio_basics.win32.a
  89. LIBS_win64 += $(MODULEDIR)/juce_audio_basics.win64.a
  90. LINK_FLAGS += $(JUCE_AUDIO_BASICS_LIBS)
  91. LIBS_native += $(MODULEDIR)/juce_audio_processors.a
  92. LIBS_posix32 += $(MODULEDIR)/juce_audio_processors.posix32.a
  93. LIBS_posix64 += $(MODULEDIR)/juce_audio_processors.posix64.a
  94. LIBS_win32 += $(MODULEDIR)/juce_audio_processors.win32.a
  95. LIBS_win64 += $(MODULEDIR)/juce_audio_processors.win64.a
  96. LINK_FLAGS += $(JUCE_AUDIO_PROCESSORS_LIBS)
  97. LIBS_native += $(MODULEDIR)/juce_core.a
  98. LIBS_posix32 += $(MODULEDIR)/juce_core.posix32.a
  99. LIBS_posix64 += $(MODULEDIR)/juce_core.posix64.a
  100. LIBS_win32 += $(MODULEDIR)/juce_core.win32.a
  101. LIBS_win64 += $(MODULEDIR)/juce_core.win64.a
  102. LINK_FLAGS += $(JUCE_CORE_LIBS)
  103. LIBS_native += $(MODULEDIR)/juce_data_structures.a
  104. LIBS_posix32 += $(MODULEDIR)/juce_data_structures.posix32.a
  105. LIBS_posix64 += $(MODULEDIR)/juce_data_structures.posix64.a
  106. LIBS_win32 += $(MODULEDIR)/juce_data_structures.win32.a
  107. LIBS_win64 += $(MODULEDIR)/juce_data_structures.win64.a
  108. LINK_FLAGS += $(JUCE_DATA_STRUCTURES_LIBS)
  109. LIBS_native += $(MODULEDIR)/juce_events.a
  110. LIBS_posix32 += $(MODULEDIR)/juce_events.posix32.a
  111. LIBS_posix64 += $(MODULEDIR)/juce_events.posix64.a
  112. LIBS_win32 += $(MODULEDIR)/juce_events.win32.a
  113. LIBS_win64 += $(MODULEDIR)/juce_events.win64.a
  114. LINK_FLAGS += $(JUCE_EVENTS_LIBS)
  115. LIBS_native += $(MODULEDIR)/juce_graphics.a
  116. LIBS_posix32 += $(MODULEDIR)/juce_graphics.posix32.a
  117. LIBS_posix64 += $(MODULEDIR)/juce_graphics.posix64.a
  118. LIBS_win32 += $(MODULEDIR)/juce_graphics.win32.a
  119. LIBS_win64 += $(MODULEDIR)/juce_graphics.win64.a
  120. LINK_FLAGS += $(JUCE_GRAPHICS_LIBS)
  121. LIBS_native += $(MODULEDIR)/juce_gui_basics.a
  122. LIBS_posix32 += $(MODULEDIR)/juce_gui_basics.posix32.a
  123. LIBS_posix64 += $(MODULEDIR)/juce_gui_basics.posix64.a
  124. LIBS_win32 += $(MODULEDIR)/juce_gui_basics.win32.a
  125. LIBS_win64 += $(MODULEDIR)/juce_gui_basics.win64.a
  126. LINK_FLAGS += $(JUCE_GUI_BASICS_LIBS)
  127. LIBS_native += $(MODULEDIR)/juce_gui_extra.a
  128. LIBS_posix32 += $(MODULEDIR)/juce_gui_extra.posix32.a
  129. LIBS_posix64 += $(MODULEDIR)/juce_gui_extra.posix64.a
  130. LIBS_win32 += $(MODULEDIR)/juce_gui_extra.win32.a
  131. LIBS_win64 += $(MODULEDIR)/juce_gui_extra.win64.a
  132. LINK_FLAGS += $(JUCE_GUI_EXTRA_LIBS)
  133. endif
  134. LIBS_native += $(MODULEDIR)/ysfx.a
  135. LINK_FLAGS += $(YSFX_GRAPHICS_LIBS)
  136. ifeq ($(JACKBRIDGE_DIRECT),true)
  137. LINK_FLAGS += $(JACK_LIBS)
  138. endif
  139. LINK_FLAGS += $(X11_LIBS)
  140. # ---------------------------------------------------------------------------------------------------------------------
  141. NATIVE_BUILD_FLAGS = $(NATIVE_PLUGINS_FLAGS)
  142. NATIVE_LINK_FLAGS = $(NATIVE_PLUGINS_LIBS)
  143. NATIVE_BUILD_FLAGS += $(LIBLO_FLAGS)
  144. NATIVE_LINK_FLAGS += $(LIBLO_LIBS)
  145. NATIVE_BUILD_FLAGS += $(FLUIDSYNTH_FLAGS)
  146. NATIVE_LINK_FLAGS += $(FLUIDSYNTH_LIBS)
  147. NATIVE_LINK_FLAGS += $(MAGIC_LIBS)
  148. LIBS_native += $(MODULEDIR)/audio_decoder.a
  149. LIBS_native += $(MODULEDIR)/native-plugins.a
  150. LIBS_native += $(MODULEDIR)/sfzero.a
  151. LIBS_native += $(MODULEDIR)/zita-resampler.a
  152. ifeq ($(HAVE_DGL),true)
  153. ifneq ($(USING_CUSTOM_DPF),true)
  154. LIBS_native += $(MODULEDIR)/dgl.a
  155. else
  156. LIBS_native += $(CUSTOM_DPF_PATH)/build/libdgl-opengl.a
  157. endif
  158. endif
  159. ifeq ($(WINDOWS),true)
  160. EXTRA_LINK_FLAGS += -lole32 -lssp -mwindows
  161. endif
  162. # ---------------------------------------------------------------------------------------------------------------------
  163. OBJS_native = \
  164. $(OBJDIR)/CarlaBridgePlugin.cpp.o \
  165. $(OBJDIR)/CarlaEngine.cpp.o \
  166. $(OBJDIR)/CarlaEngineClient.cpp.o \
  167. $(OBJDIR)/CarlaEngineData.cpp.o \
  168. $(OBJDIR)/CarlaEngineDummy.cpp.o \
  169. $(OBJDIR)/CarlaEngineGraph.cpp.o \
  170. $(OBJDIR)/CarlaEngineInternal.cpp.o \
  171. $(OBJDIR)/CarlaEngineNative.cpp.o \
  172. $(OBJDIR)/CarlaEngineOscSend.cpp.o \
  173. $(OBJDIR)/CarlaEnginePorts.cpp.o \
  174. $(OBJDIR)/CarlaEngineRunner.cpp.o \
  175. $(OBJDIR)/CarlaEngineJack.cpp.o \
  176. $(OBJDIR)/CarlaEngineBridge.cpp.o \
  177. $(OBJDIR)/CarlaPlugin.cpp.o \
  178. $(OBJDIR)/CarlaPluginBridge.cpp.o \
  179. $(OBJDIR)/CarlaPluginInternal.cpp.o \
  180. $(OBJDIR)/CarlaPluginJack.cpp.o \
  181. $(OBJDIR)/CarlaPluginNative.cpp.o \
  182. $(OBJDIR)/CarlaPluginCLAP.cpp.o \
  183. $(OBJDIR)/CarlaPluginLADSPADSSI.cpp.o \
  184. $(OBJDIR)/CarlaPluginLV2.cpp.o \
  185. $(OBJDIR)/CarlaPluginVST2.cpp.o \
  186. $(OBJDIR)/CarlaPluginVST3.cpp.o \
  187. $(OBJDIR)/CarlaPluginAU.cpp.o \
  188. $(OBJDIR)/CarlaPluginJSFX.cpp.o \
  189. $(OBJDIR)/CarlaPluginJuce.cpp.o \
  190. $(OBJDIR)/CarlaPluginFluidSynth.cpp.o \
  191. $(OBJDIR)/CarlaPluginSFZero.cpp.o \
  192. $(OBJDIR)/CarlaStandalone.cpp.o
  193. OBJS_lv2 = $(OBJS_native) \
  194. $(OBJDIR)/CarlaBridgeSingleLV2.cpp.o
  195. OBJS_arch = \
  196. $(OBJDIR)/CarlaBridgePlugin.cpp.arch.o \
  197. $(OBJDIR)/CarlaEngine.cpp.arch.o \
  198. $(OBJDIR)/CarlaEngineClient.cpp.arch.o \
  199. $(OBJDIR)/CarlaEngineData.cpp.arch.o \
  200. $(OBJDIR)/CarlaEngineInternal.cpp.arch.o \
  201. $(OBJDIR)/CarlaEnginePorts.cpp.arch.o \
  202. $(OBJDIR)/CarlaEngineRunner.cpp.arch.o \
  203. $(OBJDIR)/CarlaEngineJack.cpp.arch.o \
  204. $(OBJDIR)/CarlaEngineBridge.cpp.arch.o \
  205. $(OBJDIR)/CarlaPlugin.cpp.arch.o \
  206. $(OBJDIR)/CarlaPluginBridge.cpp.arch.o \
  207. $(OBJDIR)/CarlaPluginInternal.cpp.arch.o \
  208. $(OBJDIR)/CarlaPluginCLAP.cpp.arch.o \
  209. $(OBJDIR)/CarlaPluginLADSPADSSI.cpp.arch.o \
  210. $(OBJDIR)/CarlaPluginLV2.cpp.arch.o \
  211. $(OBJDIR)/CarlaPluginVST2.cpp.arch.o \
  212. $(OBJDIR)/CarlaPluginVST3.cpp.arch.o \
  213. $(OBJDIR)/CarlaPluginAU.cpp.arch.o \
  214. $(OBJDIR)/CarlaPluginJuce.cpp.arch.o \
  215. $(OBJDIR)/CarlaStandalone.cpp.arch.o
  216. OBJS_arm32 = $(OBJS_arch:%.arch.o=%.arm32.o)
  217. OBJS_posix32 = $(OBJS_arch:%.arch.o=%.posix32.o)
  218. OBJS_posix64 = $(OBJS_arch:%.arch.o=%.posix64.o)
  219. OBJS_win32 = $(OBJS_arch:%.arch.o=%.win32.o)
  220. OBJS_win64 = $(OBJS_arch:%.arch.o=%.win64.o)
  221. # ---------------------------------------------------------------------------------------------------------------------
  222. all: native
  223. # ---------------------------------------------------------------------------------------------------------------------
  224. clean:
  225. rm -f $(OBJDIR)/*.o
  226. rm -f $(BINDIR)/$(MODULENAME)-native$(APP_EXT)
  227. rm -f $(BINDIR)/$(MODULENAME)-posix32
  228. rm -f $(BINDIR)/$(MODULENAME)-posix64
  229. rm -f $(BINDIR)/$(MODULENAME)-win*.exe
  230. debug:
  231. $(MAKE) DEBUG=true
  232. # ---------------------------------------------------------------------------------------------------------------------
  233. native: $(BINDIR)/$(MODULENAME)-native$(APP_EXT) $(BINDIR)/$(MODULENAME)-lv2$(LIB_EXT)
  234. arm32: $(BINDIR)/$(MODULENAME)-arm32
  235. posix32: $(BINDIR)/$(MODULENAME)-posix32
  236. posix64: $(BINDIR)/$(MODULENAME)-posix64
  237. win32: $(BINDIR)/$(MODULENAME)-win32.exe
  238. win64: $(BINDIR)/$(MODULENAME)-win64.exe
  239. # ---------------------------------------------------------------------------------------------------------------------
  240. # linking
  241. $(BINDIR)/$(MODULENAME)-native$(APP_EXT): $(OBJS_native) $(LIBS_native)
  242. -@mkdir -p $(BINDIR)
  243. @echo "Linking $(MODULENAME)-native$(APP_EXT)"
  244. $(SILENT)$(CXX) $(OBJS_native) $(BUILD_CXX_FLAGS) $(LIBS_START) $(LIBS_native) $(LIBS_END) $(LINK_FLAGS) $(EXTRA_LINK_FLAGS) $(NATIVE_LINK_FLAGS) -o $@
  245. $(BINDIR)/$(MODULENAME)-lv2$(LIB_EXT): $(OBJS_lv2) $(LIBS_native)
  246. -@mkdir -p $(BINDIR)
  247. @echo "Linking $(MODULENAME)-lv2$(LIB_EXT)"
  248. $(SILENT)$(CXX) $(OBJS_lv2) $(BUILD_CXX_FLAGS) $(LIBS_START) $(LIBS_native) $(LIBS_END) $(SHARED) $(LINK_FLAGS) $(NATIVE_LINK_FLAGS) -o $@
  249. $(BINDIR)/$(MODULENAME)-arm32: $(OBJS_arm32) $(LIBS_arm32)
  250. -@mkdir -p $(BINDIR)
  251. @echo "Linking $(MODULENAME)-arm32"
  252. $(SILENT)$(CXX) $(OBJS_arm32) $(BUILD_CXX_FLAGS) $(LIBS_START) $(LIBS_arm32) $(LIBS_END) $(LINK_FLAGS) $(ARM32_FLAGS) -o $@
  253. $(BINDIR)/$(MODULENAME)-posix32: $(OBJS_posix32) $(LIBS_posix32)
  254. -@mkdir -p $(BINDIR)
  255. @echo "Linking $(MODULENAME)-posix32"
  256. $(SILENT)$(CXX) $(OBJS_posix32) $(BUILD_CXX_FLAGS) $(LIBS_START) $(LIBS_posix32) $(LIBS_END) $(LINK_FLAGS) $(32BIT_FLAGS) -o $@
  257. $(BINDIR)/$(MODULENAME)-posix64: $(OBJS_posix64) $(LIBS_posix64)
  258. -@mkdir -p $(BINDIR)
  259. @echo "Linking $(MODULENAME)-posix64"
  260. $(SILENT)$(CXX) $(OBJS_posix64) $(BUILD_CXX_FLAGS) $(LIBS_START) $(LIBS_posix64) $(LIBS_END) $(LINK_FLAGS) $(64BIT_FLAGS) -o $@
  261. $(BINDIR)/$(MODULENAME)-win32.exe: $(OBJS_win32) $(LIBS_win32)
  262. -@mkdir -p $(BINDIR)
  263. @echo "Linking $(MODULENAME)-win32.exe"
  264. $(SILENT)$(CXX) $(OBJS_win32) $(BUILD_CXX_FLAGS) $(LIBS_START) $(LIBS_win32) $(LIBS_END) $(LINK_FLAGS) $(EXTRA_LINK_FLAGS) $(32BIT_FLAGS) -o $@
  265. $(BINDIR)/$(MODULENAME)-win64.exe: $(OBJS_win64) $(LIBS_win64)
  266. -@mkdir -p $(BINDIR)
  267. @echo "Linking $(MODULENAME)-win64.exe"
  268. $(SILENT)$(CXX) $(OBJS_win64) $(BUILD_CXX_FLAGS) $(LIBS_START) $(LIBS_win64) $(LIBS_END) $(LINK_FLAGS) $(EXTRA_LINK_FLAGS) $(64BIT_FLAGS) -o $@
  269. # ---------------------------------------------------------------------------------------------------------------------
  270. # native
  271. $(OBJDIR)/CarlaPluginJSFX.cpp.o: $(CWD)/backend/plugin/CarlaPluginJSFX.cpp
  272. -@mkdir -p $(OBJDIR)
  273. @echo "Compiling CarlaPluginJSFX.cpp (bridge)"
  274. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) $(YSFX_FLAGS) -c -o $@
  275. ifeq ($(MACOS),true)
  276. $(OBJDIR)/CarlaPluginVST2.cpp.o: $(CWD)/backend/plugin/CarlaPluginVST2.cpp
  277. -@mkdir -p $(OBJDIR)
  278. @echo "Compiling CarlaPluginVST2.cpp (bridge)"
  279. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -c -o $@
  280. $(OBJDIR)/CarlaPluginVST3.cpp.o: $(CWD)/backend/plugin/CarlaPluginVST3.cpp
  281. -@mkdir -p $(OBJDIR)
  282. @echo "Compiling CarlaPluginVST3.cpp (bridge)"
  283. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -c -o $@
  284. $(OBJDIR)/CarlaStandalone.cpp.o: $(CWD)/backend/CarlaStandalone.cpp
  285. -@mkdir -p $(OBJDIR)
  286. @echo "Compiling CarlaStandalone.cpp (bridge)"
  287. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -c -o $@
  288. $(OBJDIR)/CarlaBridgePlugin.cpp.o: CarlaBridgePlugin.cpp
  289. -@mkdir -p $(OBJDIR)
  290. @echo "Compiling $<"
  291. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -c -o $@
  292. else
  293. $(OBJDIR)/CarlaStandalone.cpp.o: $(CWD)/backend/CarlaStandalone.cpp
  294. -@mkdir -p $(OBJDIR)
  295. @echo "Compiling CarlaStandalone.cpp (bridge)"
  296. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  297. $(OBJDIR)/CarlaBridgePlugin.cpp.o: CarlaBridgePlugin.cpp
  298. -@mkdir -p $(OBJDIR)
  299. @echo "Compiling $<"
  300. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  301. endif
  302. ifeq ($(USING_JUCE),true)
  303. ifeq ($(MACOS),true)
  304. $(OBJDIR)/CarlaPluginJuce.cpp.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  305. -@mkdir -p $(OBJDIR)
  306. @echo "Compiling CarlaPluginJuce.cpp (bridge)"
  307. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -std=gnu++14 -c -o $@
  308. else
  309. $(OBJDIR)/CarlaPluginJuce.cpp.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  310. -@mkdir -p $(OBJDIR)
  311. @echo "Compiling CarlaPluginJuce.cpp (bridge)"
  312. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -std=gnu++14 -c -o $@
  313. endif
  314. endif
  315. $(OBJDIR)/CarlaBridgeSingleLV2.cpp.o: CarlaBridgeSingleLV2.cpp
  316. -@mkdir -p $(OBJDIR)
  317. @echo "Compiling $<"
  318. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  319. $(OBJDIR)/CarlaPlug%.cpp.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  320. -@mkdir -p $(OBJDIR)
  321. @echo "Compiling CarlaPlug$*.cpp (bridge)"
  322. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  323. $(OBJDIR)/CarlaEng%.cpp.o: $(CWD)/backend/engine/CarlaEng%.cpp
  324. -@mkdir -p $(OBJDIR)
  325. @echo "Compiling CarlaEng$*.cpp (bridge)"
  326. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  327. # ---------------------------------------------------------------------------------------------------------------------
  328. # arm32
  329. ifeq ($(USING_JUCE),true)
  330. $(OBJDIR)/CarlaPluginJuce.arm32.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  331. -@mkdir -p $(OBJDIR)
  332. @echo "Compiling CarlaPluginJuce.cpp (arm32 bridge)"
  333. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -std=gnu++14 -c -o $@
  334. endif
  335. $(OBJDIR)/CarlaBridgePlugin.cpp.arm32.o: CarlaBridgePlugin.cpp
  336. -@mkdir -p $(OBJDIR)
  337. @echo "Compiling $< (arm32 bridge)"
  338. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -c -o $@
  339. $(OBJDIR)/CarlaStandalone.cpp.arm32.o: $(CWD)/backend/CarlaStandalone.cpp
  340. -@mkdir -p $(OBJDIR)
  341. @echo "Compiling CarlaStandalone.cpp (arm32 bridge)"
  342. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -c -o $@
  343. $(OBJDIR)/CarlaEng%.cpp.arm32.o: $(CWD)/backend/engine/CarlaEng%.cpp
  344. -@mkdir -p $(OBJDIR)
  345. @echo "Compiling CarlaEng$*.cpp (arm32 bridge)"
  346. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -c -o $@
  347. $(OBJDIR)/CarlaPlug%.cpp.arm32.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  348. -@mkdir -p $(OBJDIR)
  349. @echo "Compiling CarlaPlug$*.cpp (arm32 bridge)"
  350. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -c -o $@
  351. # ----------------------------------------------------------------------------------------------------------------------
  352. # posix32
  353. ifeq ($(MACOS),true)
  354. $(OBJDIR)/CarlaPluginVST2.cpp.posix32.o: $(CWD)/backend/plugin/CarlaPluginVST2.cpp
  355. -@mkdir -p $(OBJDIR)
  356. @echo "Compiling CarlaPluginVST2.cpp (posix32 bridge)"
  357. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  358. $(OBJDIR)/CarlaPluginVST3.cpp.posix32.o: $(CWD)/backend/plugin/CarlaPluginVST3.cpp
  359. -@mkdir -p $(OBJDIR)
  360. @echo "Compiling CarlaPluginVST3.cpp (posix32 bridge)"
  361. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  362. $(OBJDIR)/CarlaBridgePlugin.cpp.posix32.o: CarlaBridgePlugin.cpp
  363. -@mkdir -p $(OBJDIR)
  364. @echo "Compiling $< (posix32 bridge)"
  365. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  366. $(OBJDIR)/CarlaStandalone.cpp.posix32.o: $(CWD)/backend/CarlaStandalone.cpp
  367. -@mkdir -p $(OBJDIR)
  368. @echo "Compiling CarlaStandalone.cpp (posix32 bridge)"
  369. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  370. else
  371. $(OBJDIR)/CarlaBridgePlugin.cpp.posix32.o: CarlaBridgePlugin.cpp
  372. -@mkdir -p $(OBJDIR)
  373. @echo "Compiling $< (posix32 bridge)"
  374. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  375. $(OBJDIR)/CarlaStandalone.cpp.posix32.o: $(CWD)/backend/CarlaStandalone.cpp
  376. -@mkdir -p $(OBJDIR)
  377. @echo "Compiling CarlaStandalone.cpp (posix32 bridge)"
  378. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  379. endif
  380. ifeq ($(USING_JUCE),true)
  381. ifeq ($(MACOS),true)
  382. $(OBJDIR)/CarlaPluginJuce.cpp.posix32.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  383. -@mkdir -p $(OBJDIR)
  384. @echo "Compiling CarlaPluginJuce.cpp (posix32 bridge)"
  385. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -std=gnu++14 -c -o $@
  386. else
  387. $(OBJDIR)/CarlaPluginJuce.cpp.posix32.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  388. -@mkdir -p $(OBJDIR)
  389. @echo "Compiling CarlaPluginJuce.cpp (posix32 bridge)"
  390. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -std=gnu++14 -c -o $@
  391. endif
  392. endif
  393. $(OBJDIR)/CarlaEng%.cpp.posix32.o: $(CWD)/backend/engine/CarlaEng%.cpp
  394. -@mkdir -p $(OBJDIR)
  395. @echo "Compiling CarlaEng$*.cpp (posix32 bridge)"
  396. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  397. $(OBJDIR)/CarlaPlug%.cpp.posix32.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  398. -@mkdir -p $(OBJDIR)
  399. @echo "Compiling CarlaPlug$*.cpp (posix32 bridge)"
  400. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  401. # ---------------------------------------------------------------------------------------------------------------------
  402. # posix64
  403. ifeq ($(MACOS),true)
  404. $(OBJDIR)/CarlaPluginVST2.cpp.posix64.o: $(CWD)/backend/plugin/CarlaPluginVST2.cpp
  405. -@mkdir -p $(OBJDIR)
  406. @echo "Compiling CarlaPluginVST2.cpp (posix64 bridge)"
  407. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  408. $(OBJDIR)/CarlaPluginVST3.cpp.posix64.o: $(CWD)/backend/plugin/CarlaPluginVST3.cpp
  409. -@mkdir -p $(OBJDIR)
  410. @echo "Compiling CarlaPluginVST3.cpp (posix64 bridge)"
  411. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  412. $(OBJDIR)/CarlaBridgePlugin.cpp.posix64.o: CarlaBridgePlugin.cpp
  413. -@mkdir -p $(OBJDIR)
  414. @echo "Compiling $< (posix64 bridge)"
  415. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  416. $(OBJDIR)/CarlaStandalone.cpp.posix64.o: $(CWD)/backend/CarlaStandalone.cpp
  417. -@mkdir -p $(OBJDIR)
  418. @echo "Compiling CarlaStandalone.cpp (posix64 bridge)"
  419. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  420. else
  421. $(OBJDIR)/CarlaBridgePlugin.cpp.posix64.o: CarlaBridgePlugin.cpp
  422. -@mkdir -p $(OBJDIR)
  423. @echo "Compiling $< (posix64 bridge)"
  424. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  425. $(OBJDIR)/CarlaStandalone.cpp.posix64.o: $(CWD)/backend/CarlaStandalone.cpp
  426. -@mkdir -p $(OBJDIR)
  427. @echo "Compiling CarlaStandalone.cpp (posix64 bridge)"
  428. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  429. endif
  430. ifeq ($(USING_JUCE),true)
  431. ifeq ($(MACOS),true)
  432. $(OBJDIR)/CarlaPluginJuce.cpp.posix64.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  433. -@mkdir -p $(OBJDIR)
  434. @echo "Compiling CarlaPluginJuce.cpp (posix64 bridge)"
  435. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -std=gnu++14 -c -o $@
  436. else
  437. $(OBJDIR)/CarlaPluginJuce.cpp.posix64.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  438. -@mkdir -p $(OBJDIR)
  439. @echo "Compiling CarlaPluginJuce.cpp (posix64 bridge)"
  440. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -std=gnu++14 -c -o $@
  441. endif
  442. endif
  443. $(OBJDIR)/CarlaEng%.cpp.posix64.o: $(CWD)/backend/engine/CarlaEng%.cpp
  444. -@mkdir -p $(OBJDIR)
  445. @echo "Compiling CarlaEng$*.cpp (posix64 bridge)"
  446. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  447. $(OBJDIR)/CarlaPlug%.cpp.posix64.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  448. -@mkdir -p $(OBJDIR)
  449. @echo "Compiling CarlaPlug$*.cpp (posix64 bridge)"
  450. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  451. # ---------------------------------------------------------------------------------------------------------------------
  452. # win32
  453. ifeq ($(USING_JUCE),true)
  454. $(OBJDIR)/CarlaPluginJuce.cpp.win32.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  455. -@mkdir -p $(OBJDIR)
  456. @echo "Compiling CarlaPluginJuce.cpp (win32 bridge)"
  457. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -std=gnu++14 -c -o $@
  458. endif
  459. $(OBJDIR)/CarlaBridgePlugin.cpp.win32.o: CarlaBridgePlugin.cpp
  460. -@mkdir -p $(OBJDIR)
  461. @echo "Compiling $< (win32 bridge)"
  462. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  463. $(OBJDIR)/CarlaStandalone.cpp.win32.o: $(CWD)/backend/CarlaStandalone.cpp
  464. -@mkdir -p $(OBJDIR)
  465. @echo "Compiling CarlaStandalone.cpp (win32 bridge)"
  466. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  467. $(OBJDIR)/CarlaEng%.cpp.win32.o: $(CWD)/backend/engine/CarlaEng%.cpp
  468. -@mkdir -p $(OBJDIR)
  469. @echo "Compiling CarlaEng$*.cpp (win32 bridge)"
  470. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  471. $(OBJDIR)/CarlaPlug%.cpp.win32.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  472. -@mkdir -p $(OBJDIR)
  473. @echo "Compiling CarlaPlug$*.cpp (win32 bridge)"
  474. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  475. # ---------------------------------------------------------------------------------------------------------------------
  476. # win64
  477. ifeq ($(USING_JUCE),true)
  478. $(OBJDIR)/CarlaPluginJuce.cpp.win64.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  479. -@mkdir -p $(OBJDIR)
  480. @echo "Compiling CarlaPluginJuce.cpp (win64 bridge)"
  481. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -std=gnu++14 -c -o $@
  482. endif
  483. $(OBJDIR)/CarlaBridgePlugin.cpp.win64.o: CarlaBridgePlugin.cpp
  484. -@mkdir -p $(OBJDIR)
  485. @echo "Compiling $< (win64 bridge)"
  486. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  487. $(OBJDIR)/CarlaStandalone.cpp.win64.o: $(CWD)/backend/CarlaStandalone.cpp
  488. -@mkdir -p $(OBJDIR)
  489. @echo "Compiling CarlaStandalone.cpp (win64 bridge)"
  490. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  491. $(OBJDIR)/CarlaEng%.cpp.win64.o: $(CWD)/backend/engine/CarlaEng%.cpp
  492. -@mkdir -p $(OBJDIR)
  493. @echo "Compiling CarlaEng$*.cpp (win64 bridge)"
  494. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  495. $(OBJDIR)/CarlaPlug%.cpp.win64.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  496. -@mkdir -p $(OBJDIR)
  497. @echo "Compiling CarlaPlug$*.cpp (win64 bridge)"
  498. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  499. # ---------------------------------------------------------------------------------------------------------------------
  500. -include $(OBJS_lv2:%.o=%.d)
  501. -include $(OBJS_arm32:%.o=%.d)
  502. -include $(OBJS_posix32:%.o=%.d)
  503. -include $(OBJS_posix64:%.o=%.d)
  504. -include $(OBJS_win32:%.o=%.d)
  505. -include $(OBJS_win64:%.o=%.d)
  506. # ---------------------------------------------------------------------------------------------------------------------