You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

156 lines
4.4KB

  1. # MinGW specific Makefile for libsamplerate.
  2. @SET_MAKE@
  3. PROGRAMS = sndfile-resample.exe
  4. TARGETS = libsamplerate.dll $(PROGRAMS) varispeed-play.exe samplerate.pc
  5. AR = @AR@
  6. CC = @CC@
  7. CFLAGS = @CFLAGS@ -Isrc
  8. COMPILER_IS_GCC = @COMPILER_IS_GCC@
  9. CPP = @CPP@
  10. CPPFLAGS = @CPPFLAGS@
  11. CXX = @CXX@
  12. DLLTOOL = @DLLTOOL@
  13. DLLWRAP = @DLLWRAP@
  14. FFTW3_CFLAGS = @FFTW3_CFLAGS@
  15. FFTW3_LIBS = @FFTW3_LIBS@
  16. INSTALL = @INSTALL@
  17. INSTALL_DATA = ${INSTALL} -m 644
  18. install_sh = @install_sh@
  19. LDFLAGS = @LDFLAGS@
  20. LN_S = @LN_S@
  21. PEXPORTS = @PEXPORTS@
  22. PACKAGE = @PACKAGE@
  23. PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
  24. PACKAGE_NAME = @PACKAGE_NAME@
  25. PACKAGE_STRING = @PACKAGE_STRING@
  26. PACKAGE_TARNAME = @PACKAGE_TARNAME@
  27. PACKAGE_VERSION = @PACKAGE_VERSION@
  28. RANLIB = @RANLIB@
  29. SNDFILE_CFLAGS = -std=c99 @SNDFILE_CFLAGS@
  30. SNDFILE_LIBS = @SNDFILE_LIBS@
  31. STRIP = @STRIP@
  32. #====================================================================
  33. # Target directories.
  34. bindir = @bindir@
  35. exec_prefix = @exec_prefix@
  36. htmldocdir = @htmldocdir@
  37. includedir = @includedir@
  38. libdir = @libdir@
  39. pkgconfigdir = @libdir@/pkgconfig
  40. prefix = @prefix@
  41. #====================================================================
  42. # Targets
  43. all : $(TARGETS)
  44. clean :
  45. rm -f $(TARGETS) *.del *.lib src/*.o tests/*.o tests/*.exe
  46. install : $(TARGETS)
  47. $(install_sh) -c libsamplerate.dll $(libdir)
  48. $(install_sh) -c samplerate.pc $(pkgconfigdir)
  49. @for prog in $(PROGRAMS); do \
  50. echo "installing ... $$prog" ; \
  51. $(install_sh) -c "$$prog" $(bindir) ; \
  52. done;
  53. $(install_sh) -c src/samplerate.h $(includedir)
  54. uninstall :
  55. rm -f $(libdir)/libsamplerate.dll
  56. rm -f $(pkgconfigdir)/samplerate.pc
  57. @for prog in $(PROGRAMS); do \
  58. echo "removing ... $(bindir)/$$prog" ; \
  59. rm -f $(bindir)/"$$prog" ; \
  60. done;
  61. rm -f $(includedir)/samplerate.h
  62. #====================================================================
  63. LINK_OBJS = \
  64. src/src_linear.o \
  65. src/src_sinc.o \
  66. src/src_zoh.o \
  67. src/samplerate.o
  68. libsamplerate.dll libsamplerate.lib : $(LINK_OBJS)
  69. $(DLLWRAP) --def Win32/libsamplerate.def $(LINK_OBJS) --output-lib libsamplerate.lib -o libsamplerate.dll
  70. $(STRIP) libsamplerate.dll
  71. sndfile-resample.exe : examples/sndfile-resample.c libsamplerate.lib
  72. $(CC) $(CFLAGS) $(SNDFILE_CFLAGS) $+ $(SNDFILE_LIBS) -o $@
  73. varispeed-play.exe : examples/varispeed-play.c examples/audio_out.o libsamplerate.lib
  74. $(CC) $(CFLAGS) $(SNDFILE_CFLAGS) $+ $(SNDFILE_LIBS) -lwinmm -o $@
  75. examples/audio_out.o : examples/audio_out.c
  76. $(CC) $(CFLAGS) $(SNDFILE_CFLAGS) -c $+ -o $@
  77. samplerate.pc : samplerate.pc.in config.status
  78. @./config.status $@
  79. config.status :
  80. ./configure
  81. #====================================================================
  82. # Testing programs.
  83. TEST_PROGS = \
  84. tests/misc_test.exe \
  85. tests/termination_test.exe \
  86. tests/simple_test.exe \
  87. tests/callback_test.exe \
  88. tests/reset_test.exe \
  89. tests/multi_channel_test.exe \
  90. tests/float_short_test.exe \
  91. tests/snr_bw_test.exe
  92. check : $(TEST_PROGS)
  93. tests/misc_test.exe
  94. tests/termination_test.exe
  95. tests/simple_test.exe
  96. tests/callback_test.exe
  97. tests/reset_test.exe
  98. tests/multi_channel_test.exe
  99. tests/float_short_test.exe
  100. tests/snr_bw_test.exe
  101. @echo ----------------------------------------------------------------------
  102. @echo libsamplerate passed all tests
  103. @echo ----------------------------------------------------------------------
  104. #====================================================================
  105. # Test programs.
  106. tests/misc_test.exe : tests/misc_test.c tests/util.c libsamplerate.lib
  107. $(CC) $(CFLAGS) $+ -o $@
  108. tests/termination_test.exe : tests/termination_test.c tests/util.c libsamplerate.lib
  109. $(CC) $(CFLAGS) $+ -o $@
  110. tests/simple_test.exe : tests/simple_test.c tests/util.c libsamplerate.lib
  111. $(CC) $(CFLAGS) $+ -o $@
  112. tests/callback_test.exe : tests/callback_test.c tests/util.c libsamplerate.lib
  113. $(CC) $(CFLAGS) $+ -o $@
  114. tests/reset_test.exe : tests/reset_test.c tests/util.c libsamplerate.lib
  115. $(CC) $(CFLAGS) $+ -o $@
  116. tests/float_short_test.exe : tests/float_short_test.c tests/util.c libsamplerate.lib
  117. $(CC) $(CFLAGS) $+ -o $@
  118. tests/multi_channel_test.exe : tests/multi_channel_test.c tests/util.c tests/calc_snr.c libsamplerate.lib
  119. $(CC) $(CFLAGS) $(FFTW3_CFLAGS) $+ $(FFTW3_LIBS) -o $@
  120. tests/snr_bw_test.exe : tests/snr_bw_test.c tests/util.c tests/calc_snr.c libsamplerate.lib
  121. $(CC) $(CFLAGS) $(FFTW3_CFLAGS) $+ $(FFTW3_LIBS) -o $@
  122. # End of Makefile
  123. #====================================================================