piem@75
|
1 # Makefile for vamp-aubio. This file gets included from platform specific makefiles.
|
piem@75
|
2 #
|
piem@75
|
3 # To build on OSX, use:
|
piem@75
|
4 #
|
piem@75
|
5 # $ make -f Makefile.osx
|
piem@75
|
6 #
|
piem@75
|
7 # To build on linux, use:
|
piem@75
|
8 #
|
piem@75
|
9 # $ make -f Makefile.linux
|
piem@75
|
10 #
|
piem@75
|
11 # To build with mingw32, use:
|
piem@75
|
12 #
|
piem@75
|
13 # $ make -f Makefile.mingw
|
piem@75
|
14
|
piem@104
|
15 # Defaults, overridden from the platform-specific Makefile
|
piem@123
|
16 VAMPSDK_DIR ?= ./contrib/vamp-plugin-sdk-2.6
|
piem@104
|
17 PLUGIN_EXT ?= .so
|
piem@104
|
18 CXX ?= g++
|
piem@104
|
19 CC ?= gcc
|
piem@104
|
20
|
piem@75
|
21 CFLAGS := $(ARCHFLAGS) $(CFLAGS)
|
piem@123
|
22 CXXFLAGS := $(CFLAGS) -I$(VAMPSDK_DIR) $(CXXFLAGS)
|
piem@75
|
23
|
piem@123
|
24 LDFLAGS := $(ARCHFLAGS) -L$(VAMPSDK_DIR) $(LDFLAGS)
|
piem@75
|
25 PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS)
|
piem@75
|
26
|
piem@75
|
27 # Location of our plugins
|
piem@75
|
28 #
|
piem@75
|
29 PLUGINDIR = plugins
|
piem@75
|
30
|
piem@75
|
31 PLUGIN_OBJECTS = libmain.o $(patsubst %.cpp,%.o,$(wildcard $(PLUGINDIR)/*.cpp))
|
piem@75
|
32 PLUGIN_HEADERS = $(patsubst %.cpp,%.h,$(wildcard $(PLUGINDIR)/*.cpp))
|
piem@75
|
33 PLUGIN_TARGET = vamp-aubio$(PLUGIN_EXT)
|
piem@75
|
34
|
piem@123
|
35 # use local aubio, can be build with ./scripts/get_aubio.sh
|
piem@123
|
36 CXXFLAGS := $(CXXFLAGS) -I./contrib/aubio-dist/include
|
piem@123
|
37
|
piem@75
|
38 all: $(PLUGIN_TARGET)
|
piem@75
|
39
|
piem@75
|
40 $(PLUGIN_TARGET): $(PLUGIN_OBJECTS) $(PLUGIN_HEADERS)
|
piem@83
|
41 $(CXX) -o $@ $(PLUGIN_OBJECTS) $(PLUGIN_LDFLAGS) $(PLUGIN_LIBS)
|
piem@75
|
42
|
piem@75
|
43 clean:
|
piem@75
|
44 rm -f $(PLUGIN_OBJECTS)
|
piem@75
|
45
|
piem@75
|
46 distclean: clean
|
piem@75
|
47 rm -f $(PLUGIN_TARGET) *~ */*~
|
piem@123
|
48
|
piem@178
|
49 WAFCMD=python waf
|
piem@178
|
50 WAFURL=https://waf.io/waf-1.9.6
|
piem@178
|
51
|
piem@178
|
52 checkwaf:
|
piem@178
|
53 @[ -f waf ] || make getwaf
|
piem@178
|
54
|
piem@178
|
55 getwaf:
|
piem@178
|
56 ./scripts/get_waf.sh
|
piem@178
|
57
|
piem@178
|
58 expandwaf: getwaf
|
piem@178
|
59 [ -d wafilb ] || rm -fr waflib
|
piem@178
|
60 $(WAFCMD) --help > /dev/null
|
piem@178
|
61 mv .waf*/waflib . && rm -fr .waf*
|
piem@178
|
62 sed '/^#==>$$/,$$d' waf > waf2 && mv waf2 waf
|
piem@178
|
63 chmod +x waf && chmod -R go-w waflib
|
piem@178
|
64
|
piem@178
|
65 cleanwaf:
|
piem@178
|
66 rm -rf waf waflib .waf*
|