annotate Makefile.inc.em @ 86:e434cb4f850d

Allow user-specified EMFLAGS
author Chris Cannam <c.cannam@qmul.ac.uk>
date Wed, 14 Sep 2016 14:58:34 +0100
parents 604244038b81
children 22e100563c4d
rev   line source
c@84 1
c@84 2 ADAPTER_HEADERS := VamPipeAdapter.h VamPipePluginLibrary.h
c@84 3 ADAPTER_SOURCES := VamPipePluginLibrary.cpp
c@84 4
c@84 5 SDK_DIR := ../vamp-plugin-sdk
c@84 6
c@84 7 SDK_SOURCES := \
c@84 8 $(SDK_DIR)/src/vamp-hostsdk/PluginBufferingAdapter.cpp \
c@84 9 $(SDK_DIR)/src/vamp-hostsdk/PluginChannelAdapter.cpp \
c@84 10 $(SDK_DIR)/src/vamp-hostsdk/PluginHostAdapter.cpp \
c@84 11 $(SDK_DIR)/src/vamp-hostsdk/PluginInputDomainAdapter.cpp \
c@84 12 $(SDK_DIR)/src/vamp-hostsdk/PluginLoader.cpp \
c@84 13 $(SDK_DIR)/src/vamp-hostsdk/PluginSummarisingAdapter.cpp \
c@84 14 $(SDK_DIR)/src/vamp-hostsdk/PluginWrapper.cpp \
c@84 15 $(SDK_DIR)/src/vamp-hostsdk/RealTime.cpp \
c@84 16 $(SDK_DIR)/src/vamp-hostsdk/Files.cpp \
c@84 17 $(SDK_DIR)/src/vamp-sdk/PluginAdapter.cpp \
c@84 18 $(SDK_DIR)/src/vamp-sdk/RealTime.cpp \
c@84 19 $(SDK_DIR)/src/vamp-sdk/FFT.cpp
c@84 20
c@84 21 OTHER_SOURCES := \
c@84 22 ../json/json11/json11.cpp
c@84 23
c@84 24 MODULE_EXT := .js
c@84 25 MODULE := $(MODULE_NAME)$(MODULE_EXT)
c@84 26 MODULE_SYMBOL := $(MODULE_NAME)Module
c@84 27
c@84 28 EMFLAGS := \
c@84 29 --memory-init-file 0 \
c@84 30 -s MODULARIZE=1 \
c@84 31 -s NO_FILESYSTEM=1 \
c@84 32 -s ERROR_ON_UNDEFINED_SYMBOLS=1 \
c@84 33 -s DISABLE_EXCEPTION_CATCHING=0 \
c@84 34 -s EXPORT_NAME="'$(MODULE_SYMBOL)'" \
c@86 35 -s EXPORTED_FUNCTIONS="['_vampipeRequestJson','_vampipeProcessRaw','_vampipeFreeJson']" \
c@86 36 $(EMFLAGS)
c@84 37
c@84 38 SOURCES := $(MODULE_SOURCE) $(ADAPTER_SOURCES) $(PLUGIN_SOURCES) $(OTHER_SOURCES)
c@84 39 LDFLAGS := $(EMFLAGS)
c@84 40
c@84 41 CXX := em++
c@84 42
c@84 43 #OPTFLAGS := -g3
c@84 44 OPTFLAGS := -O3 -ffast-math
c@84 45
c@84 46 DEFINES := -DSINGLE_PRECISION_FFT $(DEFINES)
c@84 47
c@84 48 CXXFLAGS := -std=c++11 -fPIC -Wall -Wextra $(DEFINES) $(OPTFLAGS)
c@84 49
c@84 50 INCPATH := -I$(SDK_DIR) -I.. -I../json $(INCPATH)
c@84 51
c@84 52 all: $(MODULE)
c@84 53
c@84 54 $(MODULE): $(SOURCES) $(ADAPTER_HEADERS) $(SDK_SOURCES)
c@84 55 $(CXX) $(CXXFLAGS) $(EMFLAGS) $(INCPATH) -o $(MODULE) \
c@84 56 $(SOURCES) $(SDK_SOURCES) $(MODULE_LDFLAGS) && \
c@84 57 ( echo "module.exports=$(MODULE_SYMBOL);" >> $(MODULE) )
c@84 58
c@84 59 clean:
c@84 60 rm -f $(MODULE)