History

Preliminary support for compiling with MinGW.

Erik de Castro Lopo committed 22 years ago

Commit 8ef3d1e1 parent 850e9c33 files · +137 −13Browse files

Unified · Split

3 files
  1. ChangeLog +7 −1
  2. Win32/Makefile.mingw.in +107 −0
  3. configure.ac +23 −12
ChangeLog+7−1
@@ -1,3 +1,9 @@
1+2004-09-12 Erik de Castro Lopo <erikd AT mega-nerd DOT com>
2+
3+ * configure.ac Win32/Makefile.mingw.in
4+ Add preliminary support for compiling on Win32 using MinGW.
5+ Bump version to 0.1.2.
6+
17 2004-09-10 Erik de Castro Lopo <erikd AT mega-nerd DOT com>
28
39 * tests/util.h tests/*.c
@@ -13,7 +19,7 @@ · 9 unmodified lines
1319 2004-08-27 Erik de Castro Lopo <erikd AT mega-nerd DOT com>
1420
1521 * src/src_sinc.c
16− Fix typos in converter name strings. Thanks to Tom Szilagyi for find them.
22+ Fix typos in converter name strings. Thanks to Tom Szilagyi for finding them.
1723
1824 2004-07-18 Erik de Castro Lopo <erikd AT mega-nerd DOT com>
1925
Win32/Makefile.mingw.in+107−0
@@ -0,0 +1,107 @@
1+TARGETS = libsamplerate.dll sndfile-resample.exe varispeed-play.exe
2+
3+AR = @AR@
4+CC = @CC@
5+CFLAGS = @CFLAGS@ -Isrc
6+COMPILER_IS_GCC = @COMPILER_IS_GCC@
7+CPP = @CPP@
8+CPPFLAGS = @CPPFLAGS@
9+CXX = @CXX@
10+DLLTOOL = @DLLTOOL@
11+DLLWRAP = @DLLWRAP@
12+LDFLAGS = @LDFLAGS@
13+LN_S = @LN_S@
14+OS_SPECIFIC_CFLAGS = @OS_SPECIFIC_CFLAGS@
15+OS_SPECIFIC_LINKS = @OS_SPECIFIC_LINKS@
16+PEXPORTS = @PEXPORTS@
17+PACKAGE = @PACKAGE@
18+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
19+PACKAGE_NAME = @PACKAGE_NAME@
20+PACKAGE_STRING = @PACKAGE_STRING@
21+PACKAGE_TARNAME = @PACKAGE_TARNAME@
22+PACKAGE_VERSION = @PACKAGE_VERSION@
23+RANLIB = @RANLIB@
24+STRIP = @STRIP@
25+
26+#====================================================================
27+# Targets
28+
29+all : $(TARGETS)
30+
31+clean :
32+ rm -f $(TARGETS) *.del *.lib src/*.o tests/*.o tests/*.exe
33+
34+#====================================================================
35+
36+LINK_OBJS = \
37+ src/src_linear.o \
38+ src/src_sinc.o \
39+ src/src_zoh.o \
40+ src/samplerate.o
41+
42+libsamplerate.dll libsamplerate.lib : $(LINK_OBJS)
43+ $(DLLWRAP) --def Win32/libsamplerate.def $(LINK_OBJS) --output-lib libsamplerate.lib -o libsamplerate.dll
44+ $(STRIP) libsamplerate.dll
45+
46+sndfile-resample.exe : examples/sndfile-resample.o libsamplerate.lib
47+ $(CC) $+ -o $@
48+
49+varispeed-play.exe : examples/varispeed-play.o libsamplerate.lib
50+ $(CC) $+ -lwinmm -o $@
51+
52+#====================================================================
53+# Testing programs.
54+
55+TEST_PROGS = \
56+ tests/misc_test.exe \
57+ tests/termination_test.exe \
58+ tests/simple_test.exe \
59+ tests/callback_test.exe \
60+ tests/reset_test.exe \
61+ tests/multi_channel_test.exe \
62+ tests/float_short_test.exe \
63+ tests/snr_bw_test.exe
64+
65+
66+check : $(TEST_PROGS)
67+ tests/misc_test.exe
68+ tests/termination_test.exe
69+ tests/simple_test.exe
70+ tests/callback_test.exe
71+ tests/reset_test.exe
72+ tests/multi_channel_test.exe
73+ tests/float_short_test.exe
74+ tests/snr_bw_test.exe
75+ @echo ----------------------------------------------------------------------
76+ @echo libsamplerate passed all tests
77+ @echo ----------------------------------------------------------------------
78+
79+#====================================================================
80+# Test programs.
81+
82+tests/misc_test.exe : tests/misc_test.o tests/util.o libsamplerate.lib
83+ $(CC) $+ -o $@
84+
85+tests/termination_test.exe : tests/termination_test.o tests/util.o libsamplerate.lib
86+ $(CC) $+ -o $@
87+
88+tests/simple_test.exe : tests/simple_test.o tests/util.o libsamplerate.lib
89+ $(CC) $+ -o $@
90+
91+tests/callback_test.exe : tests/callback_test.o tests/util.o libsamplerate.lib
92+ $(CC) $+ -o $@
93+
94+tests/reset_test.exe : tests/reset_test.o tests/util.o libsamplerate.lib
95+ $(CC) $+ -o $@
96+
97+tests/multi_channel_test.exe : tests/multi_channel_test.o tests/util.o tests/calc_snr.o libsamplerate.lib
98+ $(CC) $+ -o $@
99+
100+tests/float_short_test.exe : tests/float_short_test.o tests/util.o libsamplerate.lib
101+ $(CC) $+ -o $@
102+
103+tests/snr_bw_test.exe : tests/snr_bw_test.o tests/util.o tests/calc_snr.o libsamplerate.lib
104+ $(CC) $+ -o $@
105+
106+# End of Makefile
107+#====================================================================
configure.ac+23−12
@@ -35,6 +35,12 @@ AC_PROG_LN_S · 34 unmodified lines
3535 AC_PROG_LIBTOOL
3636 AM_PROG_LIBTOOL
3737
38+if test "x-$build_os-$host_os-$target_os" = x-mingw32-mingw32-mingw32 ; then
39+ AC_CHECK_PROG(DLLTOOL, dlltool, dlltool)
40+ AC_CHECK_PROG(DLLWRAP, dllwrap, dllwrap)
41+ AC_CHECK_PROG(PEXPORTS, pexports, pexports)
42+ fi
43+
3844 AC_HEADER_STDC
3945
4046 AC_CHECK_HEADERS(stdint.h sys/times.h)
@@ -210,17 +216,8 @@ case "$target_os" in · 169 unmodified lines
210216 OS_SPECIFIC_INCLUDES="-fpascal-strings -I/Developer/Headers/FlatCarbon"
211217 OS_SPECIFIC_LINKS="-framework CoreAudio"
212218 ;;
213− mingw32msvc)
214− AC_CHECK_HEADERS(mmreg.h)
215− if test "x$ac_cv_header_mmreg_h" = xno ; then
216− AC_MSG_WARN([[******************************************************************]])
217− AC_MSG_WARN([[*** Can't find mmreg.h which means that we can't build one of ]])
218− AC_MSG_WARN([[*** the example programs. The library can however be built. ]])
219− AC_MSG_WARN([[*** To correct this, you can grab the mmreg.h file from the ]])
220− AC_MSG_WARN([[*** WINE project (http://www.winehq.com/) and placing it in a ]])
221− AC_MSG_WARN([[*** directory where the cross compiler can find it. ]])
222− AC_MSG_WARN([[******************************************************************]])
223− fi
219+ mingw32*)
220+ OS_SPECIFIC_LINKS="-lwinmm"
224221 ;;
225222 *)
226223 OS_SPECIFIC_INCLUDES=""
@@ -256,11 +253,25 @@ AC_SUBST(HAVE_SNDFILE) · 29 unmodified lines
256253 AC_SUBST(SNDFILE_CFLAGS)
257254 AC_SUBST(SNDFILE_LIBS)
258255
259−AC_CONFIG_FILES([Makefile src/Version_script Win32/Makefile \
256+AC_CONFIG_FILES([Makefile src/Version_script Win32/Makefile Win32/Makefile.mingw \
260257 src/Makefile examples/Makefile tests/Makefile doc/Makefile \
261258 libsamplerate.spec samplerate.pc])
262259 AC_OUTPUT
263260
261+#====================================================================================
262+# Special case for MinGW32.
263+
264+if test "x-$build_os-$host_os-$target_os" = x-mingw32-mingw32-mingw32 ; then
265+ cp -f Win32/Makefile.mingw Makefile
266+ echo
267+ echo "Now run \"make\" and \"make check\"."
268+ echo
269+ echo "There is no automatic install script on this platform."
270+ echo
271+
272+ exit 0
273+ fi
274+
264275 #====================================================================================
265276
266277 AC_MSG_RESULT([

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t