piem@75: ## Makefile for Vamp aubio plugin using MinGW tools on Windows. piem@75: ## piem@75: ## Edit this to adjust compiler and library settings when piem@75: ## building using MinGW. piem@75: ## piem@75: ## Note that the list of source files, etc, goes in Makefile.inc piem@75: ## instead so that it can be included by all platform Makefiles. piem@75: piem@94: # Location of Vamp plugin SDK relative to the project directory piem@162: VAMPSDK_DIR ?= ./contrib/vamp-plugin-sdk-2.6 piem@94: piem@94: # Location of libvamp-sdk.dll piem@162: #VAMPBIN_DIR ?= ./contrib/vamp-plugin-sdk-2.6-binaries-win32-mingw piem@162: VAMPBIN_DIR ?= ./contrib/vamp-plugin-sdk-2.6 piem@94: piem@108: # Location of cross compiled and installed aubio tree piem@162: AUBIO_MINGW32_DISTDIR ?= ./contrib/aubio-dist piem@94: piem@94: # Toolchain prefix piem@162: # on debian/ubuntu systems, you will want to install g++-mingw-w64-i686 piem@162: TOOLPREFIX ?= i686-w64-mingw32- piem@94: piem@75: CXX = $(TOOLPREFIX)g++ piem@75: CC = $(TOOLPREFIX)gcc piem@75: LD = $(TOOLPREFIX)g++ piem@75: AR = $(TOOLPREFIX)ar piem@75: RANLIB = $(TOOLPREFIX)ranlib piem@75: piem@75: # For a debug build... piem@75: #CFLAGS := -Wall -Wextra -g piem@75: piem@75: # ... or for a release build piem@75: CFLAGS := -Wall -Wextra -O3 -ftree-vectorize piem@75: piem@94: # add AUBIO_MINGW32_DISTDIR to ARCHFLAGS piem@162: ARCHFLAGS := -I$(AUBIO_MINGW32_DISTDIR)/include piem@77: piem@94: # add AUBIO_MINGW32_DISTDIR to PLUGIN_LDFLAGS piem@162: PLUGIN_LDFLAGS := piem@75: piem@75: # Libraries and linker flags required by plugin: add any -l piem@75: # options here piem@94: PLUGIN_LDFLAGS += -Wl,--enable-auto-import piem@162: PLUGIN_LDFLAGS += -fno-exceptions -static -static-libgcc piem@162: PLUGIN_LDFLAGS += -shared -Wl,-Bsymbolic piem@162: PLUGIN_LDFLAGS += -Wl,--retain-symbols-file=vamp-plugin.list piem@162: PLUGIN_LIBS := $(AUBIO_MINGW32_DISTDIR)/lib/libaubio.dll.a $(VAMPBIN_DIR)/libvamp-sdk.a piem@75: piem@75: # File extension for plugin library on this platform piem@75: PLUGIN_EXT := .dll piem@75: piem@75: include Makefile.inc