annotate Makefile.inc.em @ 43:90bf9d9f9c95

Rearrange and rename VamPipe -> Piper as appropriate
author Chris Cannam
date Mon, 10 Oct 2016 17:05:37 +0100
parents 946c965fd1eb
children afaeb2258678
rev   line source
Chris@15 1
Chris@43 2 ADAPTER_HEADERS := PiperAdapter.h PiperPluginLibrary.h
Chris@43 3 ADAPTER_SOURCES := PiperPluginLibrary.cpp
Chris@15 4
Chris@15 5 SDK_DIR := ../vamp-plugin-sdk
Chris@43 6 PIPERCPP_DIR := ../piper-cpp
Chris@15 7
Chris@15 8 SDK_SOURCES := \
Chris@15 9 $(SDK_DIR)/src/vamp-hostsdk/PluginBufferingAdapter.cpp \
Chris@15 10 $(SDK_DIR)/src/vamp-hostsdk/PluginChannelAdapter.cpp \
Chris@15 11 $(SDK_DIR)/src/vamp-hostsdk/PluginHostAdapter.cpp \
Chris@15 12 $(SDK_DIR)/src/vamp-hostsdk/PluginInputDomainAdapter.cpp \
Chris@15 13 $(SDK_DIR)/src/vamp-hostsdk/PluginLoader.cpp \
Chris@15 14 $(SDK_DIR)/src/vamp-hostsdk/PluginSummarisingAdapter.cpp \
Chris@15 15 $(SDK_DIR)/src/vamp-hostsdk/PluginWrapper.cpp \
Chris@15 16 $(SDK_DIR)/src/vamp-hostsdk/RealTime.cpp \
Chris@15 17 $(SDK_DIR)/src/vamp-hostsdk/Files.cpp \
Chris@15 18 $(SDK_DIR)/src/vamp-sdk/PluginAdapter.cpp \
Chris@15 19 $(SDK_DIR)/src/vamp-sdk/RealTime.cpp \
Chris@15 20 $(SDK_DIR)/src/vamp-sdk/FFT.cpp
Chris@15 21
Chris@15 22 OTHER_SOURCES := \
Chris@43 23 $(PIPERCPP_DIR)/json11/json11.cpp
Chris@15 24
Chris@15 25 MODULE_EXT := .js
Chris@15 26 MODULE := $(MODULE_NAME)$(MODULE_EXT)
Chris@15 27 MODULE_SYMBOL := $(MODULE_NAME)Module
Chris@15 28
Chris@15 29 EMFLAGS := \
Chris@15 30 --memory-init-file 0 \
Chris@15 31 -s MODULARIZE=1 \
Chris@15 32 -s NO_FILESYSTEM=1 \
Chris@15 33 -s ERROR_ON_UNDEFINED_SYMBOLS=1 \
Chris@15 34 -s EXPORT_NAME="'$(MODULE_SYMBOL)'" \
Chris@43 35 -s EXPORTED_FUNCTIONS="['_piperRequestJson','_piperProcessRaw','_piperFreeJson']" \
Chris@17 36 $(EMFLAGS)
Chris@15 37
Chris@37 38 CXX_SOURCES := $(MODULE_SOURCE) $(ADAPTER_SOURCES) $(PLUGIN_SOURCES) $(SDK_SOURCES) $(OTHER_SOURCES)
Chris@15 39 LDFLAGS := $(EMFLAGS)
Chris@15 40
Chris@15 41 CXX := em++
Chris@37 42 CC := emcc
Chris@15 43
Chris@15 44 #OPTFLAGS := -g3
Chris@15 45 OPTFLAGS := -O3 -ffast-math
Chris@15 46
Chris@35 47 DEFINES := $(DEFINES)
Chris@15 48
Chris@43 49 INCPATH := -I$(SDK_DIR) -I$(PIPERCPP_DIR) $(INCPATH)
Chris@15 50
Chris@37 51 CXXFLAGS := -std=c++11 -fPIC -Wall -Wextra $(DEFINES) $(OPTFLAGS) $(EMFLAGS) $(INCPATH)
Chris@37 52 CFLAGS := -fPIC -Wall -Wextra $(DEFINES) $(OPTFLAGS) $(EMFLAGS) $(INCPATH)
Chris@37 53
Chris@37 54 CXX_OBJECTS := $(CXX_SOURCES:.cpp=.o)
Chris@37 55 C_OBJECTS := $(C_SOURCES:.c=.o)
Chris@37 56 OBJECTS := $(CXX_OBJECTS) $(C_OBJECTS)
Chris@15 57
Chris@15 58 all: $(MODULE)
Chris@15 59
Chris@37 60 $(MODULE): $(OBJECTS)
Chris@38 61 $(CXX) $(OPTFLAGS) $(EMFLAGS) -o $(MODULE) $(OBJECTS) $(MODULE_LDFLAGS) && \
Chris@21 62 ( echo "if (typeof process === 'object') module.exports=$(MODULE_SYMBOL);" >> $(MODULE) )
Chris@15 63
Chris@15 64 clean:
Chris@37 65 rm -f $(MODULE) $(OBJECTS)