1#!/usr/bin/make -f 2# Makefile for DISTRHO Plugins # 3# ---------------------------- # 4# Created by falkTX, Christopher Arndt, and Patrick Desaulniers 5# 6 7# -------------------------------------------------------------- 8# Installation directories 9 10PREFIX ?= /usr/local 11BINDIR ?= $(PREFIX)/bin 12LIBDIR ?= $(PREFIX)/lib 13DSSI_DIR ?= $(LIBDIR)/dssi 14LADSPA_DIR ?= $(LIBDIR)/ladspa 15ifneq ($(MACOS_OR_WINDOWS),true) 16LV2_DIR ?= $(LIBDIR)/lv2 17VST_DIR ?= $(LIBDIR)/vst 18endif 19ifeq ($(MACOS),true) 20LV2_DIR ?= /Library/Audio/Plug-Ins/LV2 21VST_DIR ?= /Library/Audio/Plug-Ins/VST 22endif 23ifeq ($(WINDOWS),true) 24LV2_DIR ?= $(COMMONPROGRAMFILES)/LV2 25VST_DIR ?= $(COMMONPROGRAMFILES)/VST2 26endif 27 28USER_DSSI_DIR ?= $(HOME)/.dssi 29USER_LADSPA_DIR ?= $(HOME)/.ladspa 30ifneq ($(MACOS_OR_WINDOWS),true) 31USER_LV2_DIR ?= $(HOME)/.lv2 32USER_VST_DIR ?= $(HOME)/.vst 33endif 34ifeq ($(MACOS),true) 35USER_LV2_DIR ?= $(HOME)/Library/Audio/Plug-Ins/LV2 36USER_VST_DIR ?= $(HOME)/Library/Audio/Plug-Ins/VST 37endif 38ifeq ($(WINDOWS),true) 39USER_LV2_DIR ?= $(APPDATA)/LV2 40USER_VST_DIR ?= $(APPDATA)/VST 41endif 42 43# -------------------------------------------------------------- 44# Project name, used for binaries 45 46NAME = fogpad 47 48# -------------------------------------------------------------- 49# Plugin types to build 50 51BUILD_LV2 ?= true 52BUILD_VST2 ?= true 53BUILD_JACK ?= true 54BUILD_DSSI ?= false 55BUILD_LADSPA ?= false 56 57# -------------------------------------------------------------- 58# Files to build 59 60FILES_SHARED = \ 61 sources/allpass.cpp \ 62 sources/audiobuffer.cpp \ 63 sources/bitcrusher.cpp \ 64 sources/comb.cpp \ 65 sources/decimator.cpp \ 66 sources/filter.cpp \ 67 sources/lfo.cpp \ 68 sources/limiter.cpp \ 69 sources/reverbprocess.cpp \ 70 sources/plugin/SharedFogpad.cpp 71 72FILES_DSP = \ 73 sources/plugin/PluginFogpad.cpp \ 74 $(FILES_SHARED) 75 76FILES_UI = \ 77 sources/plugin/UIFogpad.cpp \ 78 sources/plugin/resource.cpp \ 79 sources/ui/BitmapCache.cpp \ 80 sources/ui/Control.cpp \ 81 sources/ui/CheckBox.cpp \ 82 sources/ui/Knob.cpp \ 83 sources/ui/CairoExtra.cpp \ 84 gen/FogpadEditRes.cpp \ 85 $(FILES_SHARED) 86 87# -------------------------------------------------------------- 88# Do some magic 89 90UI_TYPE = cairo 91include ../../dpf/Makefile.plugins.mk 92 93BUILD_CXX_FLAGS += -Wno-multichar 94BUILD_CXX_FLAGS += -Isources -Isources/plugin -Igen 95 96# -------------------------------------------------------------- 97# Enable all selected plugin types 98 99ifeq ($(BUILD_LV2),true) 100ifeq ($(HAVE_CAIRO),true) 101TARGETS += lv2_sep 102else 103TARGETS += lv2_dsp 104endif 105endif 106 107ifeq ($(BUILD_VST2),true) 108TARGETS += vst 109endif 110 111ifeq ($(BUILD_JACK),true) 112ifeq ($(HAVE_JACK),true) 113TARGETS += jack 114endif 115endif 116 117ifeq ($(BUILD_DSSI),true) 118ifneq ($(MACOS_OR_WINDOWS),true) 119ifeq ($(HAVE_CAIRO),true) 120ifeq ($(HAVE_LIBLO),true) 121TARGETS += dssi 122endif 123endif 124endif 125endif 126 127ifeq ($(BUILD_LADSPA),true) 128TARGETS += ladspa 129endif 130 131all: $(TARGETS) 132 133install: all 134ifeq ($(BUILD_DSSI),true) 135ifneq ($(MACOS_OR_WINDOWS),true) 136ifeq ($(HAVE_CAIRO),true) 137ifeq ($(HAVE_LIBLO),true) 138 @mkdir -p -m 755 $(DESTDIR)$(DSSI_DIR) 139 @install -m 755 $(TARGET_DIR)/$(NAME)-dssi$(LIB_EXT) $(DESTDIR)$(DSSI_DIR)/$(NAME)-dssi$(LIB_EXT) 140endif 141endif 142endif 143endif 144ifeq ($(BUILD_LADSPA),true) 145 @mkdir -p -m 755 $(DESTDIR)$(LADSPA_DIR) 146 @install -m 755 $(TARGET_DIR)/$(NAME)-ladspa$(LIB_EXT) $(DESTDIR)$(LADSPA_DIR)/$(NAME)-ladspa$(LIB_EXT) 147endif 148ifeq ($(BUILD_VST2),true) 149 @mkdir -p -m 755 $(DESTDIR)$(VST_DIR) 150 @install -m 755 $(TARGET_DIR)/$(NAME)-vst$(LIB_EXT) $(DESTDIR)$(VST_DIR)/$(NAME)-vst$(LIB_EXT) 151endif 152ifeq ($(BUILD_LV2),true) 153 @mkdir -p -m 755 $(DESTDIR)$(LV2_DIR)/$(NAME).lv2 154 @install -m 644 $(TARGET_DIR)/$(NAME).lv2/*.ttl $(DESTDIR)$(LV2_DIR)/$(NAME).lv2 155 @install -m 755 $(TARGET_DIR)/$(NAME).lv2/*.so $(DESTDIR)$(LV2_DIR)/$(NAME).lv2 156endif 157ifeq ($(BUILD_JACK),true) 158ifeq ($(HAVE_JACK),true) 159 @mkdir -p -m 755 $(DESTDIR)$(BINDIR) 160 @install -m 755 $(TARGET_DIR)/$(NAME)$(APP_EXT) $(DESTDIR)$(BINDIR)/$(NAME)$(APP_EXT) 161endif 162endif 163 164install-user: all 165ifeq ($(BUILD_DSSI),true) 166ifneq ($(MACOS_OR_WINDOWS),true) 167ifeq ($(HAVE_CAIRO),true) 168ifeq ($(HAVE_LIBLO),true) 169 @mkdir -p -m 755 $(USER_DSSI_DIR) 170 @install -m 755 $(TARGET_DIR)/$(NAME)-dssi$(LIB_EXT) $(USER_DSSI_DIR)/$(NAME)-dssi$(LIB_EXT) 171endif 172endif 173endif 174endif 175ifeq ($(BUILD_LADSPA),true) 176 @mkdir -p -m 755 $(USER_LADSPA_DIR) 177 @install -m 755 $(TARGET_DIR)/$(NAME)-ladspa$(LIB_EXT) $(USER_LADSPA_DIR)/$(NAME)-ladspa$(LIB_EXT) 178endif 179ifeq ($(BUILD_VST2),true) 180 @mkdir -p -m 755 $(USER_VST_DIR) 181 @install -m 755 $(TARGET_DIR)/$(NAME)-vst$(LIB_EXT) $(USER_VST_DIR)/$(NAME)-vst$(LIB_EXT) 182endif 183ifeq ($(BUILD_LV2),true) 184 @mkdir -p -m 755 $(USER_LV2_DIR)/$(NAME).lv2 185 @install -m 644 $(TARGET_DIR)/$(NAME).lv2/*.ttl $(USER_LV2_DIR)/$(NAME).lv2 186 @install -m 755 $(TARGET_DIR)/$(NAME).lv2/*.so $(USER_LV2_DIR)/$(NAME).lv2 187endif 188ifeq ($(BUILD_JACK),true) 189ifeq ($(HAVE_JACK),true) 190 @mkdir -p -m 755 $(HOME)/bin 191 @install -m 755 $(TARGET_DIR)/$(NAME)$(APP_EXT) $(HOME)/bin/$(NAME)$(APP_EXT) 192endif 193endif 194 195# -------------------------------------------------------------- 196 197.PHONY: all install install-user 198