changeset 23:42e71acaba8e

Go for Makefile.inc/Makefile.* arrangement; build fix
author Chris Cannam
date Tue, 17 Feb 2015 11:22:08 +0000
parents d7f18dca3f48
children 867364fe9bf6
files Makefile Makefile.inc Makefile.linux Makefile.mingw32 Makefile.osx VampTestPlugin.cpp
diffstat 6 files changed, 74 insertions(+), 61 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Wed Jan 14 17:33:52 2015 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-
-PLUGIN_LIBRARY_NAME := vamp-test-plugin
-
-PLUGIN_SOURCES := VampTestPlugin.cpp plugins.cpp
-
-PLUGIN_HEADERS := VampTestPlugin.h
-
-VAMP_SDK_DIR := ../vamp-plugin-sdk
-
-
-CXXFLAGS := -I$(VAMP_SDK_DIR) -Wall -fPIC
-PLUGIN_EXT := .so
-LDFLAGS := -shared -Wl,-soname=$(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT) $(VAMP_SDK_DIR)/libvamp-sdk.a -Wl,--version-script=vamp-plugin.map
-
-
-PLUGIN_OBJECTS := $(PLUGIN_SOURCES:.cpp=.o)
-PLUGIN_OBJECTS := $(PLUGIN_OBJECTS:.c=.o)
-
-$(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT): $(PLUGIN_OBJECTS)
-	   $(CXX) -o $@ $^ $(LDFLAGS)
-
-$(PLUGIN_OBJECTS): $(PLUGIN_HEADERS)
-
-clean:
-	rm -f *.o
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Makefile.inc	Tue Feb 17 11:22:08 2015 +0000
@@ -0,0 +1,45 @@
+
+PLUGIN_LIBRARY_NAME := vamp-test-plugin
+
+PLUGIN_SOURCES 	    := VampTestPlugin.cpp plugins.cpp
+
+PLUGIN_HEADERS 	    := VampTestPlugin.h
+
+SRC_DIR		:= .
+
+CFLAGS		:= $(ARCHFLAGS) $(CFLAGS)
+CXXFLAGS	:= $(CFLAGS) -I. -I$(VAMPSDK_DIR) $(CXXFLAGS)
+
+LDFLAGS		:= $(ARCHFLAGS) $(LDFLAGS)
+PLUGIN_LDFLAGS	:= $(LDFLAGS) $(PLUGIN_LDFLAGS)
+
+VAMPSDK_DIR	?= ../vamp-plugin-sdk
+PLUGIN_EXT	?= .so
+CXX 		?= g++
+CC 		?= gcc
+
+PLUGIN 		:= $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
+
+PLUGIN_OBJECTS 	:= $(PLUGIN_SOURCES:.cpp=.o)
+PLUGIN_OBJECTS 	:= $(PLUGIN_OBJECTS:.c=.o)
+
+all: 		$(PLUGIN)
+
+$(PLUGIN): 	$(PLUGIN_OBJECTS) 
+		$(CXX) -o $@ $^ $(PLUGIN_LDFLAGS)
+
+$(PLUGIN_OBJECTS): $(PLUGIN_HEADERS)
+
+clean:
+	rm -f $(PLUGIN_OBJECTS)
+
+distclean:	clean
+	rm -f $(PLUGIN)
+
+depend:
+	makedepend -Y -fMakefile.inc $(PLUGIN_SOURCES) $(PLUGIN_HEADERS)
+
+# DO NOT DELETE
+
+VampTestPlugin.o: VampTestPlugin.h
+plugins.o: VampTestPlugin.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Makefile.linux	Tue Feb 17 11:22:08 2015 +0000
@@ -0,0 +1,14 @@
+
+VAMPSDK_DIR	:= ../vamp-plugin-sdk
+
+CXXFLAGS	:= -Wall -Wextra -Werror -g -fPIC -I$(VAMPSDK_DIR)
+
+PLUGIN_LDFLAGS	:= -shared -Wl,-Bsymbolic -Wl,-z,defs -Wl,--version-script=vamp-plugin.map -Wl,-Bstatic -L$(VAMPSDK_DIR) -lvamp-sdk -Wl,-Bdynamic
+
+PLUGIN_EXT	:= .so
+
+MAKEFILE_EXT 	:= .linux
+
+include Makefile.inc
+
+
--- a/Makefile.mingw32	Wed Jan 14 17:33:52 2015 +0000
+++ b/Makefile.mingw32	Tue Feb 17 11:22:08 2015 +0000
@@ -1,24 +1,15 @@
 
-PLUGIN_LIBRARY_NAME := vamp-test-plugin
-PLUGIN_SOURCES := VampTestPlugin.cpp plugins.cpp
-PLUGIN_HEADERS := VampTestPlugin.h
-VAMP_SDK_DIR := ../vamp-plugin-sdk
+VAMPSDK_DIR	:= ../vamp-plugin-sdk
 
-CXX	:= i486-mingw32-c++
+CXX	        := i486-mingw32-c++
 
-CXXFLAGS := -I$(VAMP_SDK_DIR) -Wall 
-PLUGIN_EXT := .dll
-LDFLAGS := -shared -Wl,-soname=$(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT) $(VAMP_SDK_DIR)/libvamp-sdk.a -Wl,--retain-symbols-file=vamp-plugin.list
+CXXFLAGS	:= -Wall -Wextra -Werror -I$(VAMPSDK_DIR) -g -fPIC $(ARCHFLAGS)
 
+PLUGIN_LDFLAGS	:= -shared -Wl,-soname=$(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT) -Wl,-Bstatic -L$(VAMPSDK_DIR) -lvamp-sdk -Wl,-Bdynamic -Wl,--retain-symbols-file=vamp-plugin.list
 
-PLUGIN_OBJECTS := $(PLUGIN_SOURCES:.cpp=.o)
-PLUGIN_OBJECTS := $(PLUGIN_OBJECTS:.c=.o)
+PLUGIN_EXT	:= .dll
 
-$(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT): $(PLUGIN_OBJECTS)
-	   $(CXX) -o $@ $^ $(LDFLAGS)
+MAKEFILE_EXT 	:= .mingw32
 
-$(PLUGIN_OBJECTS): $(PLUGIN_HEADERS)
+include Makefile.inc
 
-clean:
-	rm -f *.o
-
--- a/Makefile.osx	Wed Jan 14 17:33:52 2015 +0000
+++ b/Makefile.osx	Tue Feb 17 11:22:08 2015 +0000
@@ -1,26 +1,15 @@
 
-PLUGIN_LIBRARY_NAME := vamp-test-plugin
+VAMPSDK_DIR	:= ../vamp-plugin-sdk
 
-PLUGIN_SOURCES := VampTestPlugin.cpp plugins.cpp
+ARCHFLAGS 	:= -mmacosx-version-min=10.6
 
-PLUGIN_HEADERS := VampTestPlugin.h
+CXXFLAGS	:= -Wall -Wextra -Werror -I$(VAMPSDK_DIR) -g -fPIC $(ARCHFLAGS)
 
-VAMP_SDK_DIR := ../vamp-plugin-sdk
+PLUGIN_LDFLAGS	:= -dynamiclib $(ARCHFLAGS) $(VAMP_SDK_DIR)/libvamp-sdk.a -exported_symbols_list vamp-plugin.list -install_name $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
 
-ARCHFLAGS := -mmacosx-version-min=10.6
-CXXFLAGS := -I$(VAMP_SDK_DIR) -Wall -fPIC $(ARCHFLAGS)
-PLUGIN_EXT := .dylib
-LDFLAGS := -dynamiclib $(ARCHFLAGS) $(VAMP_SDK_DIR)/libvamp-sdk.a -exported_symbols_list vamp-plugin.list -install_name $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
+PLUGIN_EXT	:= .dylib
 
+MAKEFILE_EXT 	:= .osx
 
-PLUGIN_OBJECTS := $(PLUGIN_SOURCES:.cpp=.o)
-PLUGIN_OBJECTS := $(PLUGIN_OBJECTS:.c=.o)
+include Makefile.inc
 
-$(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT): $(PLUGIN_OBJECTS)
-	   $(CXX) -o $@ $^ $(LDFLAGS)
-
-$(PLUGIN_OBJECTS): $(PLUGIN_HEADERS)
-
-clean:
-	rm -f *.o
-
--- a/VampTestPlugin.cpp	Wed Jan 14 17:33:52 2015 +0000
+++ b/VampTestPlugin.cpp	Tue Feb 17 11:22:08 2015 +0000
@@ -157,7 +157,7 @@
 }
 
 void
-VampTestPlugin::selectProgram(string name)
+VampTestPlugin::selectProgram(string)
 {
 }