changeset 77:5e26aaba2eed

Build fixes for MinGW32
author Chris Cannam
date Wed, 25 Feb 2015 14:05:47 +0000
parents d8eaa10e153e
children e101ff25d757
files Makefile.mingw32 PyTypeInterface.h
diffstat 2 files changed, 9 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile.mingw32	Fri Nov 28 15:28:31 2014 +0000
+++ b/Makefile.mingw32	Wed Feb 25 14:05:47 2015 +0000
@@ -5,10 +5,13 @@
 LD		= $(TOOLPREFIX)g++
 AR		= $(TOOLPREFIX)ar
 RANLIB		= $(TOOLPREFIX)ranlib
-CXXFLAGS	:= -I../include -O2 -Wall -I../../Python26/include
 
-vampy.dll:	PyPlugin.o PyPlugScanner.o vampy-main.o Mutex.o PyTypeInterface.o PyExtensionModule.o PyRealTime.o PyFeature.o PyParameterDescriptor.o PyOutputDescriptor.o PyFeatureSet.o  PyExtensionManager.o
-	i586-mingw32msvc-g++ -shared $^ -o $@ -L../lib -L../../Python26/libs -Wl,-Bstatic -lvamp-sdk -Wl,-Bdynamic -lpython26 -Wl,--retain-symbols-file=vamp-plugin.list
+PYVER		= 27
+CXXFLAGS	:= $(CXXFLAGS) -I../include -O2 -Wall -I../../Python$(PYVER)/include -I../../Python$(PYVER)/Lib/site-packages/numpy/core/include -DHAVE_NUMPY
+LDFLAGS		:= $(LDFLAGS) -static -L../lib -L../../Python$(PYVER)/libs -Wl,-Bstatic -lvamp-sdk -Wl,-Bdynamic -lpython$(PYVER) -Wl,--retain-symbols-file=vamp-plugin.list
+
+vampy.dll:	PyPlugin.o PyPlugScanner.o vampy-main.o Mutex.o PyTypeInterface.o PyExtensionModule.o PyRealTime.o PyFeature.o PyParameterDescriptor.o PyOutputDescriptor.o PyFeatureSet.o PyExtensionManager.o
+	$(TOOLPREFIX)g++ -shared $^ -o $@ $(LDFLAGS)
 
 clean:	
 	rm -f *.o 
--- a/PyTypeInterface.h	Fri Nov 28 15:28:31 2014 +0000
+++ b/PyTypeInterface.h	Wed Feb 25 14:05:47 2015 +0000
@@ -328,6 +328,7 @@
 		return rValue;
 	}
 
+#ifdef HAVE_NUMPY
 	/// this is a special case. numpy.float64 has an array interface but no array descriptor
 	inline std::vector<float> PyArray0D_Convert(PyArrayInterface *ai) const
 	{
@@ -343,7 +344,8 @@
 #endif
 		return rValue;
 	}
-
+#endif
+	
 	//Vamp specific types
 	Vamp::Plugin::FeatureSet PyValue_To_FeatureSet(PyObject*) const;
 	inline void PyValue_To_rValue(PyObject *pyValue, Vamp::Plugin::FeatureSet &r) const