annotate makefile @ 4:f19dfc9cbd91 tip

Win32 build added
author mathieub <mathieu.barthet@eecs.qmul.ac.uk>
date Wed, 22 Jun 2011 20:41:48 +0100
parents cd5e0ac31ff7
children
rev   line source
mathieu@0 1 # Makefile for the Calcium Signal Analyser Vamp plugin
mathieu@0 2
mathieu@0 3 ## Skeleton Makefile for Vamp plugin builds using command-line tools.
mathieu@0 4 ##
mathieu@0 5 ## Rename this to Makefile, and edit as appropriate.
mathieu@0 6 ## This Makefile WILL NOT WORK until you have edited it as described
mathieu@0 7 ## below -- the Makefile as supplied does nothing useful at all!
mathieu@0 8 ##
mathieu@0 9 ## Various sets of options are provided, commented out -- just uncomment
mathieu@0 10 ## (remove the '#' characters for) the set that most closely resembles
mathieu@0 11 ## your own situation, and adjust to taste. Then run "make".
mathieu@0 12 ##
mathieu@0 13 ## (For Windows builds using MS Visual Studio, start instead with the
mathieu@0 14 ## VampExamplePlugins project found in the build directory of the SDK.)
mathieu@0 15
mathieu@0 16
mathieu@0 17 # Edit this to the base name of your plugin library
mathieu@0 18 #
mathieu@0 19 PLUGIN_LIBRARY_NAME = vamp-calcium-signal-analyser
mathieu@0 20
mathieu@0 21 # Edit this to list one .o file for each .cpp file in your plugin project
mathieu@0 22 #
mathieu@0 23 PLUGIN_CODE_OBJECTS = CalciumSignalAnalyser.o CalciumSignalAnalyser_plugins.o
mathieu@0 24
mathieu@0 25 # Edit this to the location of the Vamp plugin SDK, relative to your
mathieu@0 26 # project directory
mathieu@0 27 #
mathieu@0 28
mathieu@0 29 VAMP_SDK_DIR = ../vamp-plugin-sdk
mathieu@0 30
mathieu@0 31 # Directory of the qm-dsp files
mathieu@0 32
mathieu@0 33 QM_DSP_DIR = ../qm-dsp
mathieu@0 34
mathieu@0 35 ## Uncomment these for an OS/X native build using command-line tools:
mathieu@0 36
mathieu@0 37 CXXFLAGS = -I$(VAMP_SDK_DIR) -I$(QM_DSP_DIR) -Wall -fPIC
mathieu@0 38 PLUGIN_EXT = .dylib
mathieu@0 39 PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
mathieu@0 40 LDFLAGS = -dynamiclib -install_name $(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a $(QM_DSP_DIR)/libqm-dsp.a -exported_symbols_list vamp-plugin.list
mathieu@0 41
mathieu@0 42 ## Uncomment these for an OS/X universal binary using command-line tools:
mathieu@0 43
mathieu@0 44 # CXXFLAGS = -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc -I$(VAMP_SDK_DIR) -I$(QM_DSP_DIR) -Wall -fPIC
mathieu@0 45 # PLUGIN_EXT = .dylib
mathieu@0 46 # PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
mathieu@0 47 # LDFLAGS = -dynamiclib -install_name $(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a $(QM_DSP_DIR)/libqm-dsp.a -exported_symbols_list vamp-plugin.list
mathieu@0 48
mathieu@0 49
mathieu@0 50 ## Uncomment these for Linux using the standard tools:
mathieu@0 51
mathieu@0 52 # CXXFLAGS = -I$(VAMP_SDK_DIR) -I$(QM_DSP_DIR) -Wall -fPIC
mathieu@0 53 # PLUGIN_EXT = .so
mathieu@0 54 # PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
mathieu@0 55 # LDFLAGS = -shared -Wl,-soname=$(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a $(QM_DSP_DIR)/libqm-dsp.a -Wl,--version-script=vamp-plugin.map
mathieu@0 56
mathieu@0 57
mathieu@0 58 ## Uncomment these for a cross-compile from Linux to Windows using MinGW:
mathieu@0 59
mathieu@0 60 # MINGW_DIR = ../mingw-cross-env/usr/bin
mathieu@0 61
mathieu@0 62 # CXX = $(MINGW_DIR)/./i686-pc-mingw32-g++
mathieu@0 63 # CXXFLAGS = -I$(VAMP_SDK_DIR) -I$(QM_DSP_DIR) -Wall
mathieu@0 64 # PLUGIN_EXT = .dll
mathieu@0 65 # PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
mathieu@0 66 # LDFLAGS = --static-libgcc -Wl,-soname=$(PLUGIN) -shared $(VAMP_SDK_DIR)/libvamp-sdk.a $(QM_DSP_DIR)/libqm-dsp.a
mathieu@0 67
mathieu@0 68
mathieu@0 69 ## Uncomment these for OpenSolaris using SunStudio compiler and GNU make:
mathieu@0 70
mathieu@0 71 # CXX = CC
mathieu@0 72 # CXXFLAGS = -G -I$(VAMP_SDK_DIR) -I$(QM_DSP_DIR) +w -KPIC
mathieu@0 73 # PLUGIN_EXT = .so
mathieu@0 74 # PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
mathieu@0 75 # LDFLAGS = -G -h$(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a $(QM_DSP_DIR)/libqm-dsp.a -Qoption ld -Mvamp-plugin.map
mathieu@0 76
mathieu@0 77
mathieu@0 78
mathieu@0 79 ## All of the above
mathieu@0 80
mathieu@0 81 $(PLUGIN): $(PLUGIN_CODE_OBJECTS)
mathieu@0 82 $(CXX) -o $@ $^ $(LDFLAGS)
mathieu@0 83
mathieu@0 84 clean:
mathieu@0 85 rm -f *.o
mathieu@0 86
mathieu@0 87 # only relevant for OS/X
mathieu@0 88
mathieu@0 89 copy:
mathieu@0 90 sudo cp $(PLUGIN_LIBRARY_NAME).dylib /Library/Audio/Plug-Ins/Vamp