shithub: libsamplerate

Download patch

ref: d8d6e97062b2f8e3f21c284bc48055555dd5d50d
parent: 4892715f5e8ee12a911a7f44e1192b4e432907b8
author: Erik de Castro Lopo <erikd@mega-nerd.com>
date: Mon Mar 17 07:26:25 EDT 2008

More Win32 updates.

--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-03-17  Erik de Castro Lopo  <erikd AT mega-nerd DOT com>
+
+    * tests/throughput_test.c
+    Include config.h and float_cast.h." -- tests/throughput_test.c 
+
+    * Make.bat Win32/*
+    Bunch more Win32 updates.
+
 2008-03-15  Erik de Castro Lopo  <erikd AT mega-nerd DOT com>
 
     * src/* tests/*
--- a/Win32/Makefile.am
+++ b/Win32/Makefile.am
@@ -1,2 +1,2 @@
-EXTRA_DIST = Makefile.msvc config.h unistd.h unistd.h libsamplerate.def
+EXTRA_DIST = Makefile.msvc config.h unistd.h unistd.h libsamplerate-0.def
   
--- a/Win32/Makefile.msvc
+++ b/Win32/Makefile.msvc
@@ -1,21 +1,24 @@
 
 # Set the value of $(MSVCDir) for your installation.
 
-MSVCDir="C:\Progra~1\Micros~1\VC98"
+# MSVCDir="C:\Progra~1\Micros~1\VC98"
+# CFLAGS=/nologo /MD /W1 /GX /O2 /I "$(MSVCDir)\Include" /I . /I "Win32" /I "src" /D "WIN32" /D "_USRDLL" /YX /FD
+# PROG_LINK_FLAGS=/nologo /incremental:no /libpath:"$(MSVCDir)\Lib" /pdb:"libsamplerate-0.pdb" /machine:I386 /exetype:dynamic
 
+MSVCDir="C:\Progra~1\Micros~1.Net\Vc7"
+CFLAGS=/nologo /MD /W1 /GX /O2 /I "$(MSVCDir)\Include" /I "$(MSVCDir)\PlatformSDK\Include" /I . /I "Win32" /I "src" /D "WIN32" /D "_USRDLL" /YX /FD
+PROG_LINK_FLAGS=/nologo /incremental:no /libpath:"$(MSVCDir)\Lib" /libpath:"$(MSVCDir)\PlatformSDK\Lib" /pdb:"libsamplerate-0.pdb" /machine:I386 /exetype:dynamic
+
 CPP=cl.exe
 LINK32=link.exe
-DLL_LINK_FLAGS=/nologo /dll /incremental:no /libpath:"$(MSVCDir)\Lib" /pdb:"libsamplerate.pdb" /implib:".\libsamplerate.lib" /machine:I386 /out:"libsamplerate.dll"
-PROG_LINK_FLAGS=/nologo /incremental:no /libpath:"$(MSVCDir)\Lib" /pdb:"libsamplerate.pdb" /machine:I386 /exetype:dynamic
+DLL_LINK_FLAGS=/nologo /dll /incremental:no /libpath:"$(MSVCDir)\Lib" /pdb:"libsamplerate-0.pdb" /implib:".\libsamplerate-0.lib" /machine:I386 /out:"libsamplerate-0.dll"
 
-CFLAGS=/nologo /MD /W1 /GX /O2 /I "$(MSVCDir)\Include" /I . /I "Win32" /I "src" /D "WIN32" /D "_USRDLL" /YX /FD
-
 #====================================================================
 # Targets
 
-ALL : libsamplerate.dll \
+ALL : libsndfile-1.lib libsamplerate-0.dll \
 	".\examples\sndfile-resample.exe" \
-	".\examples\varispeed-play.exe" 
+	".\examples\varispeed-play.exe"
 
 CLEAN :
     -@erase "src\*.obj"
@@ -29,27 +32,28 @@
 	".\src\src_zoh.obj" \
 	".\src\src_sinc.obj"
 
-libsamplerate.dll : $(LINK32_OBJS) ".\Win32\libsamplerate.def"
-    $(LINK32) $(DLL_LINK_FLAGS) /def:".\Win32\libsamplerate.def" $(LINK32_OBJS)
+libsamplerate-0.dll : $(LINK32_OBJS) ".\Win32\libsamplerate-0.def"
+    $(LINK32) $(DLL_LINK_FLAGS) /def:".\Win32\libsamplerate-0.def" $(LINK32_OBJS)
 
 ".\examples\sndfile-resample.exe" : ".\examples\sndfile-resample.c"
     $(CPP) $(CFLAGS) /Fo".\examples\sndfile-resample.obj" /c ".\examples\sndfile-resample.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\examples\sndfile-resample.exe" ".\examples\sndfile-resample.obj" libsamplerate.lib libsndfile.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\examples\sndfile-resample.exe" ".\examples\sndfile-resample.obj" libsamplerate-0.lib libsndfile-1.lib
 
 ".\examples\varispeed-play.exe" : ".\examples\varispeed-play.c" ".\examples\audio_out.obj"
     $(CPP) $(CFLAGS) /Fo".\examples\varispeed-play.obj" /c ".\examples\varispeed-play.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\examples\varispeed-play.exe" ".\examples\varispeed-play.obj" ".\examples\audio_out.obj" libsamplerate.lib libsndfile.lib winmm.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\examples\varispeed-play.exe" ".\examples\varispeed-play.obj" ".\examples\audio_out.obj" libsamplerate-0.lib libsndfile-1.lib winmm.lib
 
 ".\examples\audio_out.obj" : ".\examples\audio_out.c"
     $(CPP) $(CFLAGS) /Fo".\examples\audio_out.obj" /c ".\examples\audio_out.c"
 
 TEST_PROGS= \
-     ".\tests\misc_test.exe" \
-     ".\tests\termination_test.exe" \
-     ".\tests\simple_test.exe" \
-     ".\tests\reset_test.exe" \
-     ".\tests\multi_channel_test.exe" \
-     ".\tests\snr_bw_test.exe"
+    ".\tests\misc_test.exe" \
+    ".\tests\termination_test.exe" \
+    ".\tests\simple_test.exe" \
+    ".\tests\reset_test.exe" \
+    ".\tests\multi_channel_test.exe" \
+    ".\tests\snr_bw_test.exe" \
+	".\tests\throughput_test.exe"
 
 CHECK: $(TEST_PROGS)
      ".\tests\misc_test.exe"
@@ -58,6 +62,7 @@
      ".\tests\reset_test.exe"
      ".\tests\multi_channel_test.exe"
      ".\tests\snr_bw_test.exe"
+	 ".\tests\throughput_test.exe"
     -@echo ----------------------------------------------------------------------
     -@echo libsamplerate passed all tests
     -@echo ----------------------------------------------------------------------
@@ -94,31 +99,52 @@
 
 ".\tests\misc_test.exe" : ".\tests\misc_test.c" ".\tests\util.obj"
     $(CPP) $(CFLAGS) /Fo".\tests\misc_test.obj" /c ".\tests\misc_test.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\misc_test.exe" ".\tests\misc_test.obj" ".\tests\util.obj" libsamplerate.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\misc_test.exe" ".\tests\misc_test.obj" ".\tests\util.obj" libsamplerate-0.lib
 
 ".\tests\termination_test.exe" : ".\tests\termination_test.c" ".\tests\util.obj"
     $(CPP) $(CFLAGS) /Fo".\tests\termination_test.obj" /c ".\tests\termination_test.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\termination_test.exe" ".\tests\termination_test.obj" ".\tests\util.obj" libsamplerate.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\termination_test.exe" ".\tests\termination_test.obj" ".\tests\util.obj" libsamplerate-0.lib
 
 ".\tests\streaming_test.exe" : ".\tests\streaming_test.c" ".\tests\util.obj"
     $(CPP) $(CFLAGS) /Fo".\tests\streaming_test.obj" /c ".\tests\streaming_test.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\streaming_test.exe" ".\tests\streaming_test.obj" ".\tests\util.obj" libsamplerate.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\streaming_test.exe" ".\tests\streaming_test.obj" ".\tests\util.obj" libsamplerate-0.lib
 
 ".\tests\simple_test.exe" : ".\tests\simple_test.c" ".\tests\util.obj"
     $(CPP) $(CFLAGS) /Fo".\tests\simple_test.obj" /c ".\tests\simple_test.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\simple_test.exe" ".\tests\simple_test.obj" ".\tests\util.obj" libsamplerate.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\simple_test.exe" ".\tests\simple_test.obj" ".\tests\util.obj" libsamplerate-0.lib
 
 ".\tests\reset_test.exe" : ".\tests\reset_test.c" ".\tests\util.obj"
     $(CPP) $(CFLAGS) /Fo".\tests\reset_test.obj" /c ".\tests\reset_test.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\reset_test.exe" ".\tests\reset_test.obj" ".\tests\util.obj" libsamplerate.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\reset_test.exe" ".\tests\reset_test.obj" ".\tests\util.obj" libsamplerate-0.lib
 
 ".\tests\multi_channel_test.exe" : ".\tests\multi_channel_test.c" ".\tests\util.obj" ".\tests\calc_snr.obj"
     $(CPP) $(CFLAGS) /Fo".\tests\multi_channel_test.obj" /c ".\tests\multi_channel_test.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\multi_channel_test.exe" ".\tests\multi_channel_test.obj" ".\tests\util.obj" ".\tests\calc_snr.obj" libsamplerate.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\multi_channel_test.exe" ".\tests\multi_channel_test.obj" ".\tests\util.obj" ".\tests\calc_snr.obj" libsamplerate-0.lib
 
 ".\tests\snr_bw_test.exe" : ".\tests\snr_bw_test.c" ".\tests\util.obj"
     $(CPP) $(CFLAGS) /Fo".\tests\snr_bw_test.obj" /c ".\tests\snr_bw_test.c"
-    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\snr_bw_test.exe" ".\tests\snr_bw_test.obj" ".\tests\util.obj" libsamplerate.lib
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\snr_bw_test.exe" ".\tests\snr_bw_test.obj" ".\tests\util.obj" libsamplerate-0.lib
+
+".\tests\throughput_test.exe" : ".\tests\throughput_test.c" ".\tests\util.obj"
+    $(CPP) $(CFLAGS) /Fo".\tests\throughput_test.obj" /c ".\tests\throughput_test.c"
+    $(LINK32) $(PROG_LINK_FLAGS) /out:".\tests\throughput_test.exe" ".\tests\throughput_test.obj" ".\tests\util.obj" libsamplerate-0.lib
+
+#====================================================================
+# Bit of extra trickery.
+
+sndfile.h libsndfile-1.dll libsndfile-1.def :
+	-@echo *---------------------------------------------------------------
+	-@echo * You need to get the pre-built Win32 binaries for libsndfile
+	-@echo * from : http://www.mega-nerd.com/libsndfile
+	-@echo * The prebuilt binaries will be in a ZIP file which contains
+	-@echo * the files :
+	-@echo * sndfile.h libsndfile-1.dll libsndfile-1.def
+	-@echo * which need to be copied to this directory.
+	-@echo *---------------------------------------------------------------
+	-@exit 1
+
+libsndfile-1.lib : libsndfile-1.dll libsndfile-1.def
+	lib /machine:i386 /def:libsndfile-1.def
 
 # End of Makefile
 #====================================================================
--- a/Win32/config.h
+++ b/Win32/config.h
@@ -188,3 +188,15 @@
 /* Version number of package */
 #define VERSION "0.1.3"
 
+
+
+/* Extra Win32 hacks. */
+
+/*
+**	Microsoft's compiler still does not support the 1999 ISO C Standard 
+**	which includes 'inline'.
+*/
+
+#define inline __inline
+
+#define sleep _sleep