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.

507 lines
19KB

  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. endif
  14. endif
  15. # ---------------------------------------------------------------------------------------------------------------------
  16. BINDIR := $(CWD)/../bin
  17. ifeq ($(DEBUG),true)
  18. OBJDIR := $(CWD)/../build/bridges-plugin/Debug
  19. MODULEDIR := $(CWD)/../build/modules/Debug
  20. else
  21. OBJDIR := $(CWD)/../build/bridges-plugin/Release
  22. MODULEDIR := $(CWD)/../build/modules/Release
  23. endif
  24. # ---------------------------------------------------------------------------------------------------------------------
  25. BUILD_CXX_FLAGS += -DBUILD_BRIDGE -I. -I$(CWD) -I$(CWD)/backend -I$(CWD)/includes -I$(CWD)/modules -I$(CWD)/utils
  26. BUILD_CXX_FLAGS += -I$(CWD)/backend/engine -I$(CWD)/backend/plugin
  27. 32BIT_FLAGS += -DBUILD_BRIDGE_ALTERNATIVE_ARCH
  28. 64BIT_FLAGS += -DBUILD_BRIDGE_ALTERNATIVE_ARCH
  29. ARM32_FLAGS += -DBUILD_BRIDGE_ALTERNATIVE_ARCH
  30. # ---------------------------------------------------------------------------------------------------------------------
  31. LIBS_native = $(MODULEDIR)/jackbridge.a
  32. LIBS_arm32 = $(MODULEDIR)/jackbridge.arm32.a
  33. LIBS_posix32 = $(MODULEDIR)/jackbridge.posix32.a
  34. LIBS_posix64 = $(MODULEDIR)/jackbridge.posix64.a
  35. ifeq ($(BUILDING_FOR_WINDOWS),true)
  36. LIBS_win32 = $(MODULEDIR)/jackbridge.win32.a
  37. LIBS_win64 = $(MODULEDIR)/jackbridge.win64.a
  38. else
  39. LIBS_win32 = $(MODULEDIR)/jackbridge.win32e.a
  40. LIBS_win64 = $(MODULEDIR)/jackbridge.win64e.a
  41. endif
  42. LINK_FLAGS += $(JACKBRIDGE_LIBS)
  43. LIBS_native += $(MODULEDIR)/lilv.a
  44. LIBS_arm32 += $(MODULEDIR)/lilv.arm32.a
  45. LIBS_posix32 += $(MODULEDIR)/lilv.posix32.a
  46. LIBS_posix64 += $(MODULEDIR)/lilv.posix64.a
  47. LIBS_win32 += $(MODULEDIR)/lilv.win32.a
  48. LIBS_win64 += $(MODULEDIR)/lilv.win64.a
  49. LINK_FLAGS += $(LILV_LIBS)
  50. LIBS_native += $(MODULEDIR)/rtmempool.a
  51. LIBS_arm32 += $(MODULEDIR)/rtmempool.arm32.a
  52. LIBS_posix32 += $(MODULEDIR)/rtmempool.posix32.a
  53. LIBS_posix64 += $(MODULEDIR)/rtmempool.posix64.a
  54. LIBS_win32 += $(MODULEDIR)/rtmempool.win32.a
  55. LIBS_win64 += $(MODULEDIR)/rtmempool.win64.a
  56. LINK_FLAGS += $(RTMEMPOOL_LIBS)
  57. LIBS_native += $(MODULEDIR)/water.a
  58. LIBS_arm32 += $(MODULEDIR)/water.arm32.a
  59. LIBS_posix32 += $(MODULEDIR)/water.posix32.a
  60. LIBS_posix64 += $(MODULEDIR)/water.posix64.a
  61. LIBS_win32 += $(MODULEDIR)/water.win32.a
  62. LIBS_win64 += $(MODULEDIR)/water.win64.a
  63. LINK_FLAGS += $(WATER_LIBS)
  64. ifeq ($(USING_JUCE),true)
  65. LIBS_native += $(MODULEDIR)/juce_audio_basics.a
  66. LIBS_posix32 += $(MODULEDIR)/juce_audio_basics.posix32.a
  67. LIBS_posix64 += $(MODULEDIR)/juce_audio_basics.posix64.a
  68. LIBS_win32 += $(MODULEDIR)/juce_audio_basics.win32.a
  69. LIBS_win64 += $(MODULEDIR)/juce_audio_basics.win64.a
  70. LINK_FLAGS += $(JUCE_AUDIO_BASICS_LIBS)
  71. LIBS_native += $(MODULEDIR)/juce_audio_processors.a
  72. LIBS_posix32 += $(MODULEDIR)/juce_audio_processors.posix32.a
  73. LIBS_posix64 += $(MODULEDIR)/juce_audio_processors.posix64.a
  74. LIBS_win32 += $(MODULEDIR)/juce_audio_processors.win32.a
  75. LIBS_win64 += $(MODULEDIR)/juce_audio_processors.win64.a
  76. LINK_FLAGS += $(JUCE_AUDIO_PROCESSORS_LIBS)
  77. LIBS_native += $(MODULEDIR)/juce_core.a
  78. LIBS_posix32 += $(MODULEDIR)/juce_core.posix32.a
  79. LIBS_posix64 += $(MODULEDIR)/juce_core.posix64.a
  80. LIBS_win32 += $(MODULEDIR)/juce_core.win32.a
  81. LIBS_win64 += $(MODULEDIR)/juce_core.win64.a
  82. LINK_FLAGS += $(JUCE_CORE_LIBS)
  83. LIBS_native += $(MODULEDIR)/juce_data_structures.a
  84. LIBS_posix32 += $(MODULEDIR)/juce_data_structures.posix32.a
  85. LIBS_posix64 += $(MODULEDIR)/juce_data_structures.posix64.a
  86. LIBS_win32 += $(MODULEDIR)/juce_data_structures.win32.a
  87. LIBS_win64 += $(MODULEDIR)/juce_data_structures.win64.a
  88. LINK_FLAGS += $(JUCE_DATA_STRUCTURES_LIBS)
  89. LIBS_native += $(MODULEDIR)/juce_events.a
  90. LIBS_posix32 += $(MODULEDIR)/juce_events.posix32.a
  91. LIBS_posix64 += $(MODULEDIR)/juce_events.posix64.a
  92. LIBS_win32 += $(MODULEDIR)/juce_events.win32.a
  93. LIBS_win64 += $(MODULEDIR)/juce_events.win64.a
  94. LINK_FLAGS += $(JUCE_EVENTS_LIBS)
  95. LIBS_native += $(MODULEDIR)/juce_graphics.a
  96. LIBS_posix32 += $(MODULEDIR)/juce_graphics.posix32.a
  97. LIBS_posix64 += $(MODULEDIR)/juce_graphics.posix64.a
  98. LIBS_win32 += $(MODULEDIR)/juce_graphics.win32.a
  99. LIBS_win64 += $(MODULEDIR)/juce_graphics.win64.a
  100. LINK_FLAGS += $(JUCE_GRAPHICS_LIBS)
  101. LIBS_native += $(MODULEDIR)/juce_gui_basics.a
  102. LIBS_posix32 += $(MODULEDIR)/juce_gui_basics.posix32.a
  103. LIBS_posix64 += $(MODULEDIR)/juce_gui_basics.posix64.a
  104. LIBS_win32 += $(MODULEDIR)/juce_gui_basics.win32.a
  105. LIBS_win64 += $(MODULEDIR)/juce_gui_basics.win64.a
  106. LINK_FLAGS += $(JUCE_GUI_BASICS_LIBS)
  107. ifeq ($(MACOS),true)
  108. LIBS_native += $(MODULEDIR)/juce_gui_extra.a
  109. LIBS_posix32 += $(MODULEDIR)/juce_gui_extra.posix32.a
  110. LIBS_posix64 += $(MODULEDIR)/juce_gui_extra.posix64.a
  111. LINK_FLAGS += $(JUCE_GUI_EXTRA_LIBS)
  112. endif
  113. endif
  114. LINK_FLAGS += $(X11_LIBS)
  115. # ---------------------------------------------------------------------------------------------------------------------
  116. NATIVE_BUILD_FLAGS = $(NATIVE_PLUGINS_FLAGS)
  117. NATIVE_LINK_FLAGS = $(NATIVE_PLUGINS_LIBS)
  118. NATIVE_BUILD_FLAGS += $(LIBLO_FLAGS)
  119. NATIVE_LINK_FLAGS += $(LIBLO_LIBS)
  120. NATIVE_BUILD_FLAGS += $(FLUIDSYNTH_FLAGS)
  121. NATIVE_LINK_FLAGS += $(FLUIDSYNTH_LIBS)
  122. NATIVE_LINK_FLAGS += $(MAGIC_LIBS)
  123. LIBS_native += $(MODULEDIR)/audio_decoder.a
  124. LIBS_native += $(MODULEDIR)/native-plugins.a
  125. LIBS_native += $(MODULEDIR)/sfzero.a
  126. ifeq ($(HAVE_DGL),true)
  127. LIBS_native += $(MODULEDIR)/dgl.a
  128. endif
  129. ifeq ($(WIN32),true)
  130. EXTRA_LINK_FLAGS += -lole32 -mwindows
  131. endif
  132. # ---------------------------------------------------------------------------------------------------------------------
  133. OBJS_native = \
  134. $(OBJDIR)/CarlaBridgePlugin.cpp.o \
  135. $(OBJDIR)/CarlaEngine.cpp.o \
  136. $(OBJDIR)/CarlaEngineClient.cpp.o \
  137. $(OBJDIR)/CarlaEngineData.cpp.o \
  138. $(OBJDIR)/CarlaEngineGraph.cpp.o \
  139. $(OBJDIR)/CarlaEngineInternal.cpp.o \
  140. $(OBJDIR)/CarlaEngineNative.cpp.o \
  141. $(OBJDIR)/CarlaEngineOscSend.cpp.o \
  142. $(OBJDIR)/CarlaEnginePorts.cpp.o \
  143. $(OBJDIR)/CarlaEngineThread.cpp.o \
  144. $(OBJDIR)/CarlaEngineJack.cpp.o \
  145. $(OBJDIR)/CarlaEngineBridge.cpp.o \
  146. $(OBJDIR)/CarlaPlugin.cpp.o \
  147. $(OBJDIR)/CarlaPluginBridge.cpp.o \
  148. $(OBJDIR)/CarlaPluginInternal.cpp.o \
  149. $(OBJDIR)/CarlaPluginJack.cpp.o \
  150. $(OBJDIR)/CarlaPluginNative.cpp.o \
  151. $(OBJDIR)/CarlaPluginLADSPA.cpp.o \
  152. $(OBJDIR)/CarlaPluginDSSI.cpp.o \
  153. $(OBJDIR)/CarlaPluginLV2.cpp.o \
  154. $(OBJDIR)/CarlaPluginVST2.cpp.o \
  155. $(OBJDIR)/CarlaPluginVST3.cpp.o \
  156. $(OBJDIR)/CarlaPluginAU.cpp.o \
  157. $(OBJDIR)/CarlaPluginJuce.cpp.o \
  158. $(OBJDIR)/CarlaPluginFluidSynth.cpp.o \
  159. $(OBJDIR)/CarlaPluginSFZero.cpp.o \
  160. $(OBJDIR)/CarlaStandalone.cpp.o
  161. OBJS_lv2 = $(OBJS_native) \
  162. $(OBJDIR)/CarlaBridgeSingleLV2.cpp.o
  163. OBJS_arch = \
  164. $(OBJDIR)/CarlaBridgePlugin.cpp.arch.o \
  165. $(OBJDIR)/CarlaEngine.cpp.arch.o \
  166. $(OBJDIR)/CarlaEngineClient.cpp.arch.o \
  167. $(OBJDIR)/CarlaEngineData.cpp.arch.o \
  168. $(OBJDIR)/CarlaEngineInternal.cpp.arch.o \
  169. $(OBJDIR)/CarlaEnginePorts.cpp.arch.o \
  170. $(OBJDIR)/CarlaEngineThread.cpp.arch.o \
  171. $(OBJDIR)/CarlaEngineJack.cpp.arch.o \
  172. $(OBJDIR)/CarlaEngineBridge.cpp.arch.o \
  173. $(OBJDIR)/CarlaPlugin.cpp.arch.o \
  174. $(OBJDIR)/CarlaPluginBridge.cpp.arch.o \
  175. $(OBJDIR)/CarlaPluginInternal.cpp.arch.o \
  176. $(OBJDIR)/CarlaPluginLADSPA.cpp.arch.o \
  177. $(OBJDIR)/CarlaPluginDSSI.cpp.arch.o \
  178. $(OBJDIR)/CarlaPluginLV2.cpp.arch.o \
  179. $(OBJDIR)/CarlaPluginVST2.cpp.arch.o \
  180. $(OBJDIR)/CarlaPluginVST3.cpp.arch.o \
  181. $(OBJDIR)/CarlaPluginAU.cpp.arch.o \
  182. $(OBJDIR)/CarlaPluginJuce.cpp.arch.o \
  183. $(OBJDIR)/CarlaStandalone.cpp.arch.o
  184. OBJS_arm32 = $(OBJS_arch:%.arch.o=%.arm32.o)
  185. OBJS_posix32 = $(OBJS_arch:%.arch.o=%.posix32.o)
  186. OBJS_posix64 = $(OBJS_arch:%.arch.o=%.posix64.o)
  187. OBJS_win32 = $(OBJS_arch:%.arch.o=%.win32.o)
  188. OBJS_win64 = $(OBJS_arch:%.arch.o=%.win64.o)
  189. # ---------------------------------------------------------------------------------------------------------------------
  190. all: native
  191. # ---------------------------------------------------------------------------------------------------------------------
  192. clean:
  193. rm -f $(OBJDIR)/*.o
  194. rm -f $(BINDIR)/$(MODULENAME)-native
  195. rm -f $(BINDIR)/$(MODULENAME)-posix32
  196. rm -f $(BINDIR)/$(MODULENAME)-posix64
  197. rm -f $(BINDIR)/$(MODULENAME)-win*.exe
  198. debug:
  199. $(MAKE) DEBUG=true
  200. # ---------------------------------------------------------------------------------------------------------------------
  201. native: $(BINDIR)/$(MODULENAME)-native$(APP_EXT) $(BINDIR)/$(MODULENAME)-lv2$(LIB_EXT)
  202. arm32: $(BINDIR)/$(MODULENAME)-arm32
  203. posix32: $(BINDIR)/$(MODULENAME)-posix32
  204. posix64: $(BINDIR)/$(MODULENAME)-posix64
  205. win32: $(BINDIR)/$(MODULENAME)-win32.exe
  206. win64: $(BINDIR)/$(MODULENAME)-win64.exe
  207. # ---------------------------------------------------------------------------------------------------------------------
  208. # linking
  209. $(BINDIR)/$(MODULENAME)-native$(APP_EXT): $(OBJS_native) $(LIBS_native)
  210. -@mkdir -p $(BINDIR)
  211. @echo "Linking $(MODULENAME)-native$(APP_EXT)"
  212. @$(CXX) $(OBJS_native) $(LIBS_START) $(LIBS_native) $(LIBS_END) $(LINK_FLAGS) $(EXTRA_LINK_FLAGS) $(NATIVE_LINK_FLAGS) -o $@
  213. $(BINDIR)/$(MODULENAME)-lv2$(LIB_EXT): $(OBJS_lv2) $(LIBS_native)
  214. -@mkdir -p $(BINDIR)
  215. @echo "Linking $(MODULENAME)-lv2$(LIB_EXT)"
  216. @$(CXX) $(OBJS_lv2) $(LIBS_START) $(LIBS_native) $(LIBS_END) $(SHARED) $(LINK_FLAGS) $(NATIVE_LINK_FLAGS) -o $@
  217. $(BINDIR)/$(MODULENAME)-arm32: $(OBJS_arm32) $(LIBS_arm32)
  218. -@mkdir -p $(BINDIR)
  219. @echo "Linking $(MODULENAME)-arm32"
  220. @$(CXX) $(OBJS_arm32) $(LIBS_START) $(LIBS_arm32) $(LIBS_END) $(LINK_FLAGS) $(ARM32_FLAGS) -o $@
  221. $(BINDIR)/$(MODULENAME)-posix32: $(OBJS_posix32) $(LIBS_posix32)
  222. -@mkdir -p $(BINDIR)
  223. @echo "Linking $(MODULENAME)-posix32"
  224. @$(CXX) $(OBJS_posix32) $(LIBS_START) $(LIBS_posix32) $(LIBS_END) $(LINK_FLAGS) $(32BIT_FLAGS) -o $@
  225. $(BINDIR)/$(MODULENAME)-posix64: $(OBJS_posix64) $(LIBS_posix64)
  226. -@mkdir -p $(BINDIR)
  227. @echo "Linking $(MODULENAME)-posix64"
  228. @$(CXX) $(OBJS_posix64) $(LIBS_START) $(LIBS_posix64) $(LIBS_END) $(LINK_FLAGS) $(64BIT_FLAGS) -o $@
  229. $(BINDIR)/$(MODULENAME)-win32.exe: $(OBJS_win32) $(LIBS_win32)
  230. -@mkdir -p $(BINDIR)
  231. @echo "Linking $(MODULENAME)-win32.exe"
  232. @$(CXX) $(OBJS_win32) $(LIBS_START) $(LIBS_win32) $(LIBS_END) $(LINK_FLAGS) $(EXTRA_LINK_FLAGS) $(32BIT_FLAGS) -o $@
  233. $(BINDIR)/$(MODULENAME)-win64.exe: $(OBJS_win64) $(LIBS_win64)
  234. -@mkdir -p $(BINDIR)
  235. @echo "Linking $(MODULENAME)-win64.exe"
  236. @$(CXX) $(OBJS_win64) $(LIBS_START) $(LIBS_win64) $(LIBS_END) $(LINK_FLAGS) $(EXTRA_LINK_FLAGS) $(64BIT_FLAGS) -o $@
  237. # ---------------------------------------------------------------------------------------------------------------------
  238. # native
  239. ifeq ($(MACOS),true)
  240. $(OBJDIR)/CarlaPluginVST2.cpp.o: $(CWD)/backend/plugin/CarlaPluginVST2.cpp
  241. -@mkdir -p $(OBJDIR)
  242. @echo "Compiling CarlaPluginVST2.cpp (bridge)"
  243. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -c -o $@
  244. $(OBJDIR)/CarlaPluginJuce.cpp.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  245. -@mkdir -p $(OBJDIR)
  246. @echo "Compiling CarlaPluginJuce.cpp (bridge)"
  247. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -c -o $@
  248. $(OBJDIR)/CarlaStandalone.cpp.o: $(CWD)/backend/CarlaStandalone.cpp
  249. -@mkdir -p $(OBJDIR)
  250. @echo "Compiling CarlaStandalone.cpp (bridge)"
  251. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -c -o $@
  252. $(OBJDIR)/CarlaBridgePlugin.cpp.o: CarlaBridgePlugin.cpp
  253. -@mkdir -p $(OBJDIR)
  254. @echo "Compiling $<"
  255. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -ObjC++ -c -o $@
  256. else
  257. $(OBJDIR)/CarlaStandalone.cpp.o: $(CWD)/backend/CarlaStandalone.cpp
  258. -@mkdir -p $(OBJDIR)
  259. @echo "Compiling CarlaStandalone.cpp (bridge)"
  260. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  261. $(OBJDIR)/CarlaBridgePlugin.cpp.o: CarlaBridgePlugin.cpp
  262. -@mkdir -p $(OBJDIR)
  263. @echo "Compiling $<"
  264. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  265. endif
  266. $(OBJDIR)/CarlaBridgeSingleLV2.cpp.o: CarlaBridgeSingleLV2.cpp
  267. -@mkdir -p $(OBJDIR)
  268. @echo "Compiling $<"
  269. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  270. $(OBJDIR)/CarlaPlug%.cpp.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  271. -@mkdir -p $(OBJDIR)
  272. @echo "Compiling CarlaPlug$*.cpp (bridge)"
  273. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  274. $(OBJDIR)/CarlaEng%.cpp.o: $(CWD)/backend/engine/CarlaEng%.cpp
  275. -@mkdir -p $(OBJDIR)
  276. @echo "Compiling CarlaEng$*.cpp (bridge)"
  277. @$(CXX) $< $(BUILD_CXX_FLAGS) $(NATIVE_BUILD_FLAGS) -c -o $@
  278. # ---------------------------------------------------------------------------------------------------------------------
  279. # arm32
  280. $(OBJDIR)/CarlaBridgePlugin.cpp.arm32.o: CarlaBridgePlugin.cpp
  281. -@mkdir -p $(OBJDIR)
  282. @echo "Compiling $< (arm32 bridge)"
  283. @$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -c -o $@
  284. $(OBJDIR)/CarlaStandalone.cpp.arm32.o: $(CWD)/backend/CarlaStandalone.cpp
  285. -@mkdir -p $(OBJDIR)
  286. @echo "Compiling CarlaStandalone.cpp (arm32 bridge)"
  287. @$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -c -o $@
  288. $(OBJDIR)/CarlaEng%.cpp.arm32.o: $(CWD)/backend/engine/CarlaEng%.cpp
  289. -@mkdir -p $(OBJDIR)
  290. @echo "Compiling CarlaEng$*.cpp (arm32 bridge)"
  291. @$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -c -o $@
  292. $(OBJDIR)/CarlaPlug%.cpp.arm32.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  293. -@mkdir -p $(OBJDIR)
  294. @echo "Compiling CarlaPlug$*.cpp (arm32 bridge)"
  295. @$(CXX) $< $(BUILD_CXX_FLAGS) $(ARM32_FLAGS) -c -o $@
  296. # ----------------------------------------------------------------------------------------------------------------------
  297. # posix32
  298. ifeq ($(MACOS),true)
  299. $(OBJDIR)/CarlaPluginVST2.cpp.posix32.o: $(CWD)/backend/plugin/CarlaPluginVST2.cpp
  300. -@mkdir -p $(OBJDIR)
  301. @echo "Compiling CarlaPluginVST2.cpp (posix32 bridge)"
  302. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  303. $(OBJDIR)/CarlaPluginJuce.cpp.posix32.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  304. -@mkdir -p $(OBJDIR)
  305. @echo "Compiling CarlaPluginJuce.cpp (posix32 bridge)"
  306. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  307. $(OBJDIR)/CarlaBridgePlugin.cpp.posix32.o: CarlaBridgePlugin.cpp
  308. -@mkdir -p $(OBJDIR)
  309. @echo "Compiling $< (posix32 bridge)"
  310. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  311. $(OBJDIR)/CarlaStandalone.cpp.posix32.o: $(CWD)/backend/CarlaStandalone.cpp
  312. -@mkdir -p $(OBJDIR)
  313. @echo "Compiling CarlaStandalone.cpp (posix32 bridge)"
  314. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  315. else
  316. $(OBJDIR)/CarlaBridgePlugin.cpp.posix32.o: CarlaBridgePlugin.cpp
  317. -@mkdir -p $(OBJDIR)
  318. @echo "Compiling $< (posix32 bridge)"
  319. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  320. $(OBJDIR)/CarlaStandalone.cpp.posix32.o: $(CWD)/backend/CarlaStandalone.cpp
  321. -@mkdir -p $(OBJDIR)
  322. @echo "Compiling CarlaStandalone.cpp (posix32 bridge)"
  323. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  324. endif
  325. $(OBJDIR)/CarlaEng%.cpp.posix32.o: $(CWD)/backend/engine/CarlaEng%.cpp
  326. -@mkdir -p $(OBJDIR)
  327. @echo "Compiling CarlaEng$*.cpp (posix32 bridge)"
  328. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  329. $(OBJDIR)/CarlaPlug%.cpp.posix32.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  330. -@mkdir -p $(OBJDIR)
  331. @echo "Compiling CarlaPlug$*.cpp (posix32 bridge)"
  332. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  333. # ---------------------------------------------------------------------------------------------------------------------
  334. # posix64
  335. ifeq ($(MACOS),true)
  336. $(OBJDIR)/CarlaPluginVST2.cpp.posix64.o: $(CWD)/backend/plugin/CarlaPluginVST2.cpp
  337. -@mkdir -p $(OBJDIR)
  338. @echo "Compiling CarlaPluginVST2.cpp (posix64 bridge)"
  339. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  340. $(OBJDIR)/CarlaPluginJuce.cpp.posix64.o: $(CWD)/backend/plugin/CarlaPluginJuce.cpp
  341. -@mkdir -p $(OBJDIR)
  342. @echo "Compiling CarlaPluginJuce.cpp (posix64 bridge)"
  343. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  344. $(OBJDIR)/CarlaBridgePlugin.cpp.posix64.o: CarlaBridgePlugin.cpp
  345. -@mkdir -p $(OBJDIR)
  346. @echo "Compiling $< (posix64 bridge)"
  347. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  348. $(OBJDIR)/CarlaStandalone.cpp.posix64.o: $(CWD)/backend/CarlaStandalone.cpp
  349. -@mkdir -p $(OBJDIR)
  350. @echo "Compiling CarlaStandalone.cpp (posix64 bridge)"
  351. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  352. else
  353. $(OBJDIR)/CarlaBridgePlugin.cpp.posix64.o: CarlaBridgePlugin.cpp
  354. -@mkdir -p $(OBJDIR)
  355. @echo "Compiling $< (posix64 bridge)"
  356. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  357. $(OBJDIR)/CarlaStandalone.cpp.posix64.o: $(CWD)/backend/CarlaStandalone.cpp
  358. -@mkdir -p $(OBJDIR)
  359. @echo "Compiling CarlaStandalone.cpp (posix64 bridge)"
  360. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  361. endif
  362. $(OBJDIR)/CarlaEng%.cpp.posix64.o: $(CWD)/backend/engine/CarlaEng%.cpp
  363. -@mkdir -p $(OBJDIR)
  364. @echo "Compiling CarlaEng$*.cpp (posix64 bridge)"
  365. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  366. $(OBJDIR)/CarlaPlug%.cpp.posix64.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  367. -@mkdir -p $(OBJDIR)
  368. @echo "Compiling CarlaPlug$*.cpp (posix64 bridge)"
  369. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  370. # ---------------------------------------------------------------------------------------------------------------------
  371. # win32
  372. $(OBJDIR)/CarlaBridgePlugin.cpp.win32.o: CarlaBridgePlugin.cpp
  373. -@mkdir -p $(OBJDIR)
  374. @echo "Compiling $< (win32 bridge)"
  375. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  376. $(OBJDIR)/CarlaEng%.cpp.win32.o: $(CWD)/backend/engine/CarlaEng%.cpp
  377. -@mkdir -p $(OBJDIR)
  378. @echo "Compiling CarlaEng$*.cpp (win32 bridge)"
  379. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  380. $(OBJDIR)/CarlaPlug%.cpp.win32.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  381. -@mkdir -p $(OBJDIR)
  382. @echo "Compiling CarlaPlug$*.cpp (win32 bridge)"
  383. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  384. $(OBJDIR)/CarlaStandalone.cpp.win32.o: $(CWD)/backend/CarlaStandalone.cpp
  385. -@mkdir -p $(OBJDIR)
  386. @echo "Compiling CarlaStandalone.cpp (win32 bridge)"
  387. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  388. # ---------------------------------------------------------------------------------------------------------------------
  389. # win64
  390. $(OBJDIR)/CarlaBridgePlugin.cpp.win64.o: CarlaBridgePlugin.cpp
  391. -@mkdir -p $(OBJDIR)
  392. @echo "Compiling $< (win64 bridge)"
  393. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  394. $(OBJDIR)/CarlaEng%.cpp.win64.o: $(CWD)/backend/engine/CarlaEng%.cpp
  395. -@mkdir -p $(OBJDIR)
  396. @echo "Compiling CarlaEng$*.cpp (win64 bridge)"
  397. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  398. $(OBJDIR)/CarlaPlug%.cpp.win64.o: $(CWD)/backend/plugin/CarlaPlug%.cpp
  399. -@mkdir -p $(OBJDIR)
  400. @echo "Compiling CarlaPlug$*.cpp (win64 bridge)"
  401. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  402. $(OBJDIR)/CarlaStandalone.cpp.win64.o: $(CWD)/backend/CarlaStandalone.cpp
  403. -@mkdir -p $(OBJDIR)
  404. @echo "Compiling CarlaStandalone.cpp (win64 bridge)"
  405. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  406. # ---------------------------------------------------------------------------------------------------------------------
  407. -include $(OBJS_lv2:%.o=%.d)
  408. -include $(OBJS_arm32:%.o=%.d)
  409. -include $(OBJS_posix32:%.o=%.d)
  410. -include $(OBJS_posix64:%.o=%.d)
  411. -include $(OBJS_win32:%.o=%.d)
  412. -include $(OBJS_win64:%.o=%.d)
  413. # ---------------------------------------------------------------------------------------------------------------------