|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- #!/usr/bin/make -f
- # Makefile for carla-bridges #
- # -------------------------- #
- # Created by falkTX
- #
-
- include ../Makefile.mk
-
- # --------------------------------------------------------------
-
- BUILD_CXX_FLAGS += -DBUILD_BRIDGE
- BUILD_CXX_FLAGS += -I. -I../backend -I../includes -I../utils -isystem ../modules
- BUILD_CXX_FLAGS += $(LIBLO_FLAGS)
-
- BUILD_LV2_FLAGS = $(BUILD_CXX_FLAGS) -DBRIDGE_LV2
- BUILD_VST_FLAGS = $(BUILD_CXX_FLAGS) -DBRIDGE_VST
-
- ifeq ($(CARLA_VESTIGE_HEADER),true)
- BUILD_VST_FLAGS += -DVESTIGE_HEADER
- endif
-
- LINK_FLAGS += $(JUCE_CORE_LIBS)
- LINK_FLAGS += $(LIBLO_LIBS)
-
- # --------------------------------------------------------------
-
- BUILD_LV2_GTK2_FLAGS = $(BUILD_LV2_FLAGS) -DBRIDGE_GTK2 -DBRIDGE_LV2_GTK2 $(shell pkg-config --cflags gtk+-2.0)
- LINK_LV2_GTK2_FLAGS = $(LINK_FLAGS) $(shell pkg-config --libs gtk+-2.0) -ldl
-
- BUILD_LV2_GTK3_FLAGS = $(BUILD_LV2_FLAGS) -DBRIDGE_GTK3 -DBRIDGE_LV2_GTK3 $(shell pkg-config --cflags gtk+-3.0)
- LINK_LV2_GTK3_FLAGS = $(LINK_FLAGS) $(shell pkg-config --libs gtk+-3.0) -ldl
-
- BUILD_LV2_QT4_FLAGS = $(BUILD_LV2_FLAGS) -DBRIDGE_QT4 -DBRIDGE_LV2_QT4 $(shell pkg-config --cflags QtCore QtGui)
- LINK_LV2_QT4_FLAGS = $(LINK_FLAGS) $(shell pkg-config --libs QtCore QtGui) -ldl
-
- BUILD_LV2_QT5_FLAGS = $(BUILD_LV2_FLAGS) -DBRIDGE_QT5 -DBRIDGE_LV2_QT5 $(shell pkg-config --cflags Qt5Core Qt5Gui Qt5Widgets)
- LINK_LV2_QT5_FLAGS = $(LINK_FLAGS) $(shell pkg-config --libs Qt5Core Qt5Gui Qt5Widgets) -ldl
-
- BUILD_LV2_X11_FLAGS = $(BUILD_LV2_FLAGS) -DBRIDGE_X11 -DBRIDGE_LV2_X11 $(X11_FLAGS)
- LINK_LV2_X11_FLAGS = $(LINK_FLAGS) $(X11_LIBS) -ldl
-
- BUILD_LV2_COCOA_FLAGS = $(BUILD_LV2_FLAGS) -DBRIDGE_COCOA -DBRIDGE_LV2_COCOA
- LINK_LV2_COCOA_FLAGS = $(LINK_FLAGS) -ldl
-
- BUILD_LV2_WINDOWS_FLAGS = $(BUILD_LV2_FLAGS) -DBRIDGE_HWND -DBRIDGE_LV2_HWND
- LINK_LV2_WINDOWS_FLAGS = $(LINK_FLAGS) -static -mwindows
-
- BUILD_VST_X11_FLAGS = $(BUILD_VST_FLAGS) -DBRIDGE_X11 -DBRIDGE_VST_X11 $(X11_FLAGS)
- LINK_VST_X11_FLAGS = $(LINK_FLAGS) $(X11_LIBS) -ldl
-
- # --------------------------------------------------------------
-
- ifeq ($(HAVE_GTK2),true)
- TARGETS += ui_lv2-gtk2
- endif
-
- ifeq ($(HAVE_GTK3),true)
- TARGETS += ui_lv2-gtk3
- endif
-
- ifeq ($(HAVE_QT4),true)
- TARGETS += ui_lv2-qt4
- endif
-
- ifeq ($(HAVE_QT5),true)
- TARGETS += ui_lv2-qt5
- endif
-
- ifeq ($(HAVE_X11),true)
- TARGETS += ui_lv2-x11
- TARGETS += ui_vst-x11
- endif
-
- ifeq ($(MACOS),true)
- TARGETS += ui_lv2-cocoa
- endif
-
- ifeq ($(WIN32),true)
- TARGETS += ui_lv2-windows
- endif
-
- # --------------------------------------------------------------
-
- all: $(TARGETS)
-
- ui_lv2-gtk2: ../../bin/carla-bridge-lv2-gtk2
- ui_lv2-gtk3: ../../bin/carla-bridge-lv2-gtk3
- ui_lv2-qt4: ../../bin/carla-bridge-lv2-qt4
- ui_lv2-qt5: ../../bin/carla-bridge-lv2-qt5
- ui_lv2-x11: ../../bin/carla-bridge-lv2-x11
- ui_lv2-cocoa: ../../bin/carla-bridge-lv2-cocoa
- ui_lv2-windows: ../../bin/carla-bridge-lv2-windows.exe
- ui_vst-x11: ../../bin/carla-bridge-vst-x11
-
- # --------------------------------------------------------------
- # UI common
-
- OBJS_LV2_LIBS = \
- ../modules/juce_core.a \
- ../modules/lilv.a
-
- OBJS_VST_LIBS = \
- ../modules/juce_core.a
-
- %__lv2.o: %.cpp
- $(CXX) $< $(BUILD_LV2_FLAGS) -c -o $@
-
- %__vst.o: %.cpp
- $(CXX) $< $(BUILD_VST_FLAGS) -c -o $@
-
- resources.qt4.cpp: ../../resources/resources-theme.qrc
- $(RCC_QT4) $< -o $@
-
- resources.qt5.cpp: ../../resources/resources-theme.qrc
- $(RCC_QT5) $< -o $@
-
- CarlaBridgeToolkitQt4.moc: CarlaBridgeToolkitQt.cpp
- $(MOC_QT4) $< -DMOC_PARSING -o $@
-
- CarlaBridgeToolkitQt5.moc: CarlaBridgeToolkitQt.cpp
- $(MOC_QT5) $< -DMOC_PARSING -o $@
-
- # --------------------------------------------------------------
- # ui_lv2-gtk2
-
- OBJS_LV2_GTK2 = \
- CarlaBridgeClient__lv2.o \
- CarlaBridgeOsc__lv2.o \
- CarlaBridgeToolkitGtk__lv2-gtk2.o \
- CarlaBridgeUI-LV2__lv2-gtk2.o
-
- ../../bin/carla-bridge-lv2-gtk2: $(OBJS_LV2_GTK2) $(OBJS_LV2_LIBS)
- $(CXX) $^ $(LINK_LV2_GTK2_FLAGS) -o $@
-
- %__lv2-gtk2.o: %.cpp
- $(CXX) $< $(BUILD_LV2_GTK2_FLAGS) -c -o $@
-
- # --------------------------------------------------------------
- # ui_lv2-gtk3
-
- OBJS_LV2_GTK3 = \
- CarlaBridgeClient__lv2.o \
- CarlaBridgeOsc__lv2.o \
- CarlaBridgeToolkitGtk__lv2-gtk3.o \
- CarlaBridgeUI-LV2__lv2-gtk3.o
-
- ../../bin/carla-bridge-lv2-gtk3: $(OBJS_LV2_GTK3) $(OBJS_LV2_LIBS)
- $(CXX) $^ $(LINK_LV2_GTK3_FLAGS) -o $@
-
- %__lv2-gtk3.o: %.cpp
- $(CXX) $< $(BUILD_LV2_GTK3_FLAGS) -c -o $@
-
- # --------------------------------------------------------------
- # ui_lv2-qt4
-
- OBJS_LV2_QT4 = \
- CarlaBridgeClient__lv2.o \
- CarlaBridgeOsc__lv2.o \
- CarlaBridgeToolkitQt__lv2-qt4.o \
- CarlaBridgeUI-LV2__lv2-qt4.o
-
- ../../bin/carla-bridge-lv2-qt4: $(OBJS_LV2_QT4) $(OBJS_LV2_LIBS) ../modules/theme.qt4.a
- $(CXX) $^ $(LINK_LV2_QT4_FLAGS) -o $@
-
- %__lv2-qt4.o: %.cpp CarlaBridgeToolkitQt4.moc resources.qt4.cpp
- $(CXX) $< $(BUILD_LV2_QT4_FLAGS) -I../modules/theme -c -o $@
-
- # --------------------------------------------------------------
- # ui_lv2-qt5
-
- OBJS_LV2_QT5 = \
- CarlaBridgeClient__lv2.o \
- CarlaBridgeOsc__lv2.o \
- CarlaBridgeToolkitQt__lv2-qt5.o \
- CarlaBridgeUI-LV2__lv2-qt5.o
-
- ../../bin/carla-bridge-lv2-qt5: $(OBJS_LV2_QT5) $(OBJS_LV2_LIBS) ../modules/theme.qt5.a
- $(CXX) $^ $(LINK_LV2_QT5_FLAGS) -o $@
-
- %__lv2-qt5.o: %.cpp CarlaBridgeToolkitQt5.moc resources.qt5.cpp
- $(CXX) $< $(BUILD_LV2_QT5_FLAGS) -I../modules/theme -c -o $@
-
- # --------------------------------------------------------------
- # ui_lv2-x11
-
- OBJS_LV2_X11 = \
- CarlaBridgeClient__lv2.o \
- CarlaBridgeOsc__lv2.o \
- CarlaBridgeToolkitPlugin__lv2-x11.o \
- CarlaBridgeUI-LV2__lv2-x11.o
-
- ../../bin/carla-bridge-lv2-x11: $(OBJS_LV2_X11) $(OBJS_LV2_LIBS)
- $(CXX) $^ $(LINK_LV2_X11_FLAGS) -o $@
-
- %__lv2-x11.o: %.cpp
- $(CXX) $< $(BUILD_LV2_X11_FLAGS) -c -o $@
-
- # --------------------------------------------------------------
- # ui_lv2-cocoa
-
- OBJS_LV2_COCOA = \
- CarlaBridgeClient__lv2.o \
- CarlaBridgeOsc__lv2.o \
- CarlaBridgeToolkitPlugin__lv2-cocoa.o \
- CarlaBridgeUI-LV2__lv2-cocoa.o
-
- ../../bin/carla-bridge-lv2-cocoa: $(OBJS_LV2_COCOA) $(OBJS_LV2_LIBS)
- $(CXX) $^ $(LINK_LV2_COCOA_FLAGS) -o $@
-
- %__lv2-cocoa.o: %.cpp
- $(CXX) $< $(BUILD_LV2_COCOA_FLAGS) -c -o $@
-
- # --------------------------------------------------------------
- # ui_lv2-windows
-
- OBJS_LV2_WINDOWS = \
- CarlaBridgeClient__lv2.o \
- CarlaBridgeOsc__lv2.o \
- CarlaBridgeToolkitPlugin__lv2-windows.o \
- CarlaBridgeUI-LV2__lv2-windows.o
-
- ../../bin/carla-bridge-lv2-windows.exe: $(OBJS_LV2_WINDOWS) $(OBJS_LV2_LIBS)
- $(CXX) $^ $(LINK_LV2_WINDOWS_FLAGS) -o $@
-
- %__lv2-windows.o: %.cpp
- $(CXX) $< $(BUILD_LV2_WINDOWS_FLAGS) -c -o $@
-
- # --------------------------------------------------------------
- # ui_vst-x11
-
- OBJS_VST_X11 = \
- CarlaBridgeClient__vst.o \
- CarlaBridgeOsc__vst.o \
- CarlaBridgeToolkitPlugin__vst-x11.o \
- CarlaBridgeUI-VST__vst-x11.o \
-
- ../../bin/carla-bridge-vst-x11: $(OBJS_VST_X11) $(OBJS_VST_LIBS)
- $(CXX) $^ $(LINK_VST_X11_FLAGS) -o $@
-
- %__vst-x11.o: %.cpp
- $(CXX) $< $(BUILD_VST_X11_FLAGS) -c -o $@
-
- # --------------------------------------------------------------
-
- clean:
- $(RM) *.moc *.o
- $(RM) resources.*.cpp
- $(RM) ../../bin/carla-bridge-lv2-* ../../bin/carla-bridge-vst-*
-
- debug:
- $(MAKE) DEBUG=true
-
- doxygen: carla_bridge.doxygen
- doxygen $<
-
- # --------------------------------------------------------------
|