annotate Makefile.cc-linux @ 8:adf83d1d4b93 matthiasm-plugin

added rules for safer building, but changed the boost root, so will have to change back
author matthiasm
date Wed, 02 Jun 2010 16:03:48 +0000
parents 8aa2e8b3a778
children f679cd0e1d62
rev   line source
matthiasm@0 1
matthiasm@0 2 ## Skeleton Makefile for Vamp plugin builds using command-line tools.
matthiasm@0 3 ##
matthiasm@0 4 ## Rename this to Makefile, and edit as appropriate.
matthiasm@0 5 ## This Makefile WILL NOT WORK until you have edited it as described
matthiasm@0 6 ## below -- the Makefile as supplied does nothing useful at all!
matthiasm@0 7 ##
matthiasm@0 8 ## Various sets of options are provided, commented out -- just uncomment
matthiasm@0 9 ## (remove the '#' characters for) the set that most closely resembles
matthiasm@0 10 ## your own situation, and adjust to taste. Then run "make".
matthiasm@0 11 ##
matthiasm@0 12 ## (For Windows builds using MS Visual Studio, start instead with the
matthiasm@0 13 ## VampExamplePlugins project found in the build directory of the SDK.)
matthiasm@0 14
matthiasm@0 15
matthiasm@0 16 # Edit this to the base name of your plugin library
matthiasm@0 17 #
matthiasm@0 18 PLUGIN_LIBRARY_NAME = matthiasm
matthiasm@0 19
matthiasm@0 20 # Edit this to list one .o file for each .cpp file in your plugin project
matthiasm@0 21 #
matthiasm@0 22 PLUGIN_CODE_OBJECTS = NNLSChroma.o plugins.o coskernel-20-105-3-44100-16384-80.o
matthiasm@0 23
matthiasm@0 24 # Edit this to the location of the Vamp plugin SDK, relative to your
matthiasm@0 25 # project directory
matthiasm@0 26 #
matthiasm@0 27 VAMP_SDK_DIR = /work/vamp-plugin-sdk
matthiasm@0 28 LAPACK_DIR = /work/qm-dsp/include
matthiasm@0 29 QMDSP_DIR = /work/qm-dsp
matthiasm@0 30 FFT_DIR = /work/qm-dsp/dsp/transforms
matthiasm@0 31 NNLS_DIR = ../tsnnls/tsnnls
matthiasm@0 32
matthiasm@0 33
matthiasm@0 34
matthiasm@0 35 ## Uncomment these for an OS/X native build using command-line tools:
matthiasm@0 36 #CXXFLAGS = -I$(VAMP_SDK_DIR) -I$(LAPACK_DIR) -I$(FFT_DIR) -I$(NNLS_DIR) -Wall -fPIC -g
matthiasm@0 37 #PLUGIN_EXT = .dylib
matthiasm@0 38 #PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
matthiasm@0 39 #LDFLAGS = -dynamiclib -install_name $(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a $(QMDSP_DIR)/libqm-dsp.a ../tsnnls/tsnnls/.libs/libtsnnls.a -exported_symbols_list vamp-plugin.list -framework Accelerate
matthiasm@0 40
matthiasm@0 41
matthiasm@0 42 ## Uncomment these for an OS/X universal binary using command-line tools:
matthiasm@0 43
matthiasm@0 44 # CXXFLAGS = -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc -I$(VAMP_SDK_DIR) -Wall -fPIC
matthiasm@0 45 # PLUGIN_EXT = .dylib
matthiasm@0 46 # PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
matthiasm@0 47 # LDFLAGS = -dynamiclib -install_name $(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a -exported_symbols_list vamp-plugin.list
matthiasm@0 48
matthiasm@0 49
matthiasm@0 50 ## Uncomment these for Linux using the standard tools:
matthiasm@0 51
matthiasm@0 52 CXXFLAGS = -I$(VAMP_SDK_DIR) -I$(LAPACK_DIR) -I$(FFT_DIR) -I$(NNLS_DIR) -Wall -fPIC
matthiasm@0 53 PLUGIN_EXT = .so
matthiasm@0 54 PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
matthiasm@0 55 LDFLAGS = -shared -Wl,-soname=$(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a -Wl,--version-script=vamp-plugin.map $(QMDSP_DIR)/libqm-dsp.a ../tsnnls/tsnnls/.libs/libtsnnls.a -llapack-3
matthiasm@0 56
matthiasm@0 57
matthiasm@0 58 ## Uncomment these for a cross-compile from Linux to Windows using MinGW:
matthiasm@0 59
matthiasm@0 60 # CXX = i586-mingw32msvc-g++
matthiasm@0 61 # CXXFLAGS = -I$(VAMP_SDK_DIR) -Wall
matthiasm@0 62 # PLUGIN_EXT = .dll
matthiasm@0 63 # PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
matthiasm@0 64 # LDFLAGS = --static-libgcc -Wl,-soname=$(PLUGIN) -shared $(VAMP_SDK_DIR)/libvamp-sdk.a
matthiasm@0 65
matthiasm@0 66
matthiasm@0 67 ## Uncomment these for OpenSolaris using SunStudio compiler and GNU make:
matthiasm@0 68
matthiasm@0 69 # CXX = CC
matthiasm@0 70 # CXXFLAGS = -G -I$(VAMP_SDK_DIR) +w -KPIC
matthiasm@0 71 # PLUGIN_EXT = .so
matthiasm@0 72 # PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
matthiasm@0 73 # LDFLAGS = -G -h$(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a -Qoption ld -Mvamp-plugin.map
matthiasm@0 74
matthiasm@0 75
matthiasm@0 76
matthiasm@0 77 ## All of the above
matthiasm@0 78
matthiasm@0 79 $(PLUGIN): $(PLUGIN_CODE_OBJECTS)
matthiasm@0 80 $(CXX) -o $@ $^ $(LDFLAGS)
matthiasm@0 81
matthiasm@0 82 clean:
matthiasm@0 83 rm -f *.o
matthiasm@0 84