diff --git a/libs/spandsp/src/Makefile.am b/libs/spandsp/src/Makefile.am index 1169b3bb57..0f56650fe0 100644 --- a/libs/spandsp/src/Makefile.am +++ b/libs/spandsp/src/Makefile.am @@ -1,485 +1,487 @@ -## -## SpanDSP - a series of DSP components for telephony -## -## Makefile.am - Process this file with automake to produce Makefile.in -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU Lesser General Public License version 2.1, -## as published by the Free Software Foundation. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU Lesser General Public License for more details. -## -## You should have received a copy of the GNU Lesser General Public -## License along with this program; if not, write to the Free Software -## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -## -## $Id: Makefile.am,v 1.124 2009/02/14 15:21:14 steveu Exp $ - -AM_CFLAGS = $(COMP_VENDOR_CFLAGS) -AM_LDFLAGS = $(COMP_VENDOR_LDFLAGS) - -MAINTAINERCLEANFILES = Makefile.in - -EXTRA_DIST = floating_fudge.h \ - spandsp/version.h.in \ - libspandsp.dsp \ - libspandsp.2008.sln \ - libspandsp.2005.sln \ - libspandsp.2008.vcproj \ - libtiff.2008.vcproj \ - libspandsp.2005.vcproj \ - libtiff.2005.vcproj \ - msvc/config.h \ - msvc/getopt.c \ - msvc/gettimeofday.c \ - msvc/inttypes.h \ - msvc/tgmath.h \ - msvc/unistd.h \ - msvc/spandsp.h \ - msvc/sys/time.h \ - msvc/make_at_dictionary.2008.vcproj \ - msvc/make_modem_filter.2008.vcproj \ - msvc/make_at_dictionary.2005.vcproj \ - msvc/make_modem_filter.2005.vcproj \ - msvc/Download_TIFF.2008.vcproj \ - msvc/Download_TIFF.2005.vcproj \ - msvc/tiff/cleancout \ - msvc/msvcproj.head \ - msvc/msvcproj.foot \ - msvc/vc8proj.head \ - msvc/vc8proj.foot \ - msvc/vc9proj.head \ - msvc/vc9proj.foot \ - spandsp/private/README -INCLUDES = -I$(top_builddir) - -lib_LTLIBRARIES = libspandsp.la - -libspandsp_la_SOURCES = adsi.c \ - async.c \ - at_interpreter.c \ - awgn.c \ - bell_r2_mf.c \ - bert.c \ - bit_operations.c \ - bitstream.c \ - complex_filters.c \ - complex_vector_float.c \ - complex_vector_int.c \ - crc.c \ - dds_float.c \ - dds_int.c \ - dtmf.c \ - echo.c \ - fax.c \ - fax_modems.c \ - fsk.c \ - g711.c \ - g722.c \ - g726.c \ - gsm0610_decode.c \ - gsm0610_encode.c \ - gsm0610_long_term.c \ - gsm0610_lpc.c \ - gsm0610_preprocess.c \ - gsm0610_rpe.c \ - gsm0610_short_term.c \ - hdlc.c \ - ima_adpcm.c \ - logging.c \ - lpc10_analyse.c \ - lpc10_decode.c \ - lpc10_encode.c \ - lpc10_placev.c \ - lpc10_voicing.c \ - modem_echo.c \ - modem_connect_tones.c \ - noise.c \ - oki_adpcm.c \ - playout.c \ - plc.c \ - power_meter.c \ - queue.c \ - schedule.c \ - sig_tone.c \ - silence_gen.c \ - super_tone_rx.c \ - super_tone_tx.c \ - t4.c \ - t30.c \ - t30_api.c \ - t30_logging.c \ - t31.c \ - t35.c \ - t38_core.c \ - t38_gateway.c \ - t38_non_ecm_buffer.c \ - t38_terminal.c \ - testcpuid.c \ - time_scale.c \ - tone_detect.c \ - tone_generate.c \ - v17rx.c \ - v17tx.c \ - v22bis_rx.c \ - v22bis_tx.c \ - v27ter_rx.c \ - v27ter_tx.c \ - v29rx.c \ - v29tx.c \ - v42.c \ - v42bis.c \ - v8.c \ - vector_float.c \ - vector_int.c - -libspandsp_la_LDFLAGS = -version-info @SPANDSP_LT_CURRENT@:@SPANDSP_LT_REVISION@:@SPANDSP_LT_AGE@ $(COMP_VENDOR_FLAGS) - -nobase_include_HEADERS = spandsp/adsi.h \ - spandsp/async.h \ - spandsp/arctan2.h \ - spandsp/at_interpreter.h \ - spandsp/awgn.h \ - spandsp/bell_r2_mf.h \ - spandsp/bert.h \ - spandsp/biquad.h \ - spandsp/bit_operations.h \ - spandsp/bitstream.h \ - spandsp/crc.h \ - spandsp/complex.h \ - spandsp/complex_filters.h \ - spandsp/complex_vector_float.h \ - spandsp/complex_vector_int.h \ - spandsp/dc_restore.h \ - spandsp/dds.h \ - spandsp/dtmf.h \ - spandsp/echo.h \ - spandsp/fast_convert.h \ - spandsp/fax.h \ - spandsp/fax_modems.h \ - spandsp/fir.h \ - spandsp/fsk.h \ - spandsp/g168models.h \ - spandsp/g711.h \ - spandsp/g722.h \ - spandsp/g726.h \ - spandsp/gsm0610.h \ - spandsp/hdlc.h \ - spandsp/ima_adpcm.h \ - spandsp/logging.h \ - spandsp/lpc10.h \ - spandsp/modem_echo.h \ - spandsp/modem_connect_tones.h \ - spandsp/noise.h \ - spandsp/oki_adpcm.h \ - spandsp/playout.h \ - spandsp/plc.h \ - spandsp/power_meter.h \ - spandsp/queue.h \ - spandsp/saturated.h \ - spandsp/schedule.h \ - spandsp/sig_tone.h \ - spandsp/silence_gen.h \ - spandsp/super_tone_rx.h \ - spandsp/super_tone_tx.h \ - spandsp/t4.h \ - spandsp/t30.h \ - spandsp/t30_api.h \ - spandsp/t30_fcf.h \ - spandsp/t30_logging.h \ - spandsp/t31.h \ - spandsp/t35.h \ - spandsp/t38_core.h \ - spandsp/t38_gateway.h \ - spandsp/t38_non_ecm_buffer.h \ - spandsp/t38_terminal.h \ - spandsp/telephony.h \ - spandsp/time_scale.h \ - spandsp/timing.h \ - spandsp/tone_detect.h \ - spandsp/tone_generate.h \ - spandsp/v17rx.h \ - spandsp/v17tx.h \ - spandsp/v22bis.h \ - spandsp/v27ter_rx.h \ - spandsp/v27ter_tx.h \ - spandsp/v29rx.h \ - spandsp/v29tx.h \ - spandsp/v42.h \ - spandsp/v42bis.h \ - spandsp/v8.h \ - spandsp/vector_float.h \ - spandsp/vector_int.h \ - spandsp/version.h \ - spandsp/private/adsi.h \ - spandsp/private/async.h \ - spandsp/private/at_interpreter.h \ - spandsp/private/awgn.h \ - spandsp/private/bell_r2_mf.h \ - spandsp/private/bert.h \ - spandsp/private/bitstream.h \ - spandsp/private/dtmf.h \ - spandsp/private/fax.h \ - spandsp/private/fax_modems.h \ - spandsp/private/fsk.h \ - spandsp/private/g711.h \ - spandsp/private/g722.h \ - spandsp/private/g726.h \ - spandsp/private/gsm0610.h \ - spandsp/private/hdlc.h \ - spandsp/private/ima_adpcm.h \ - spandsp/private/logging.h \ - spandsp/private/lpc10.h \ - spandsp/private/modem_connect_tones.h \ - spandsp/private/noise.h \ - spandsp/private/oki_adpcm.h \ - spandsp/private/queue.h \ - spandsp/private/schedule.h \ - spandsp/private/sig_tone.h \ - spandsp/private/super_tone_rx.h \ - spandsp/private/super_tone_tx.h \ - spandsp/private/t30.h \ - spandsp/private/t31.h \ - spandsp/private/t38_core.h \ - spandsp/private/t38_gateway.h \ - spandsp/private/t38_non_ecm_buffer.h \ - spandsp/private/t38_terminal.h \ - spandsp/private/t4.h \ - spandsp/private/time_scale.h \ - spandsp/private/tone_detect.h \ - spandsp/private/tone_generate.h \ - spandsp/private/v17rx.h \ - spandsp/private/v17tx.h \ - spandsp/private/v22bis.h \ - spandsp/private/v27ter_rx.h \ - spandsp/private/v27ter_tx.h \ - spandsp/private/v29rx.h \ - spandsp/private/v29tx.h \ - spandsp/private/v42.h \ - spandsp/private/v42bis.h \ - spandsp/private/v8.h \ - spandsp/expose.h - -nodist_include_HEADERS = spandsp.h - -noinst_HEADERS = faxfont.h \ - filter_tools.h \ - gsm0610_local.h \ - lpc10_encdecs.h \ - t30_local.h \ - t4_states.h \ - v17rx_constellation_maps.h \ - v17tx_constellation_maps.h \ - v29tx_constellation_maps.h - -noinst_PROGRAMS = make_at_dictionary \ - make_modem_filter - -make_modem_filter_SOURCES = make_modem_filter.c \ - filter_tools.c - -# We need to run make_at_dictionary, so it generates the -# at_interpreter_dictionary.h file - -at_interpreter.$(OBJEXT): at_interpreter_dictionary.h - -at_interpreter.lo: at_interpreter_dictionary.h - -at_interpreter_dictionary.h: make_at_dictionary$(EXEEXT) - ./make_at_dictionary$(EXEEXT) >at_interpreter_dictionary.h - -v17rx.$(OBJEXT): v17rx_fixed_rrc.h v17rx_floating_rrc.h - -v17rx.lo: v17rx_fixed_rrc.h v17rx_floating_rrc.h - -v17rx_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.17 -i -r >v17rx_fixed_rrc.h - -v17rx_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.17 -r >v17rx_floating_rrc.h - -v17tx.$(OBJEXT): v17tx_fixed_rrc.h v17tx_floating_rrc.h - -v17tx.lo: v17tx_fixed_rrc.h v17tx_floating_rrc.h - -v17tx_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.17 -i -t >v17tx_fixed_rrc.h - -v17tx_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.17 -t >v17tx_floating_rrc.h - -v22bis_rx.$(OBJEXT): v22bis_rx_1200_fixed_rrc.h \ - v22bis_rx_2400_fixed_rrc.h \ - v22bis_rx_1200_floating_rrc.h \ - v22bis_rx_2400_floating_rrc.h - -v22bis_rx.lo: v22bis_rx_1200_fixed_rrc.h \ - v22bis_rx_2400_fixed_rrc.h \ - v22bis_rx_1200_floating_rrc.h \ - v22bis_rx_2400_floating_rrc.h - -v22bis_rx_1200_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.22bis1200 -i -r >v22bis_rx_1200_fixed_rrc.h - -v22bis_rx_2400_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.22bis2400 -i -r >v22bis_rx_2400_fixed_rrc.h - -v22bis_rx_1200_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.22bis1200 -r >v22bis_rx_1200_floating_rrc.h - -v22bis_rx_2400_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.22bis2400 -r >v22bis_rx_2400_floating_rrc.h - -v22bis_tx.$(OBJEXT): v22bis_tx_fixed_rrc.h v22bis_tx_floating_rrc.h - -v22bis_tx.lo: v22bis_tx_fixed_rrc.h v22bis_tx_floating_rrc.h - -v22bis_tx_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.22bis -i -t >v22bis_tx_fixed_rrc.h - -v22bis_tx_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.22bis -t >v22bis_tx_floating_rrc.h - -v27ter_rx_.$(OBJEXT): v27ter_rx_2400_fixed_rrc.h \ - v27ter_rx_4800_fixed_rrc.h \ - v27ter_rx_2400_floating_rrc.h \ - v27ter_rx_4800_floating_rrc.h - -v27ter_rx.lo: v27ter_rx_2400_fixed_rrc.h \ - v27ter_rx_4800_fixed_rrc.h \ - v27ter_rx_2400_floating_rrc.h \ - v27ter_rx_4800_floating_rrc.h - -v27ter_rx_2400_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.27ter2400 -i -r >v27ter_rx_2400_fixed_rrc.h - -v27ter_rx_4800_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.27ter4800 -i -r >v27ter_rx_4800_fixed_rrc.h - -v27ter_rx_2400_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.27ter2400 -r >v27ter_rx_2400_floating_rrc.h - -v27ter_rx_4800_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.27ter4800 -r >v27ter_rx_4800_floating_rrc.h - -v27ter_tx_.$(OBJEXT): v27ter_tx_2400_fixed_rrc.h \ - v27ter_tx_4800_fixed_rrc.h \ - v27ter_tx_2400_floating_rrc.h \ - v27ter_tx_4800_floating_rrc.h - -v27ter_tx.lo: v27ter_tx_2400_fixed_rrc.h \ - v27ter_tx_4800_fixed_rrc.h \ - v27ter_tx_2400_floating_rrc.h \ - v27ter_tx_4800_floating_rrc.h - -v27ter_tx_2400_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.27ter2400 -i -t >v27ter_tx_2400_fixed_rrc.h - -v27ter_tx_4800_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.27ter4800 -i -t >v27ter_tx_4800_fixed_rrc.h - -v27ter_tx_2400_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.27ter2400 -t >v27ter_tx_2400_floating_rrc.h - -v27ter_tx_4800_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.27ter4800 -t >v27ter_tx_4800_floating_rrc.h - -v29rx.$(OBJEXT): v29rx_fixed_rrc.h v29rx_floating_rrc.h - -v29rx.lo: v29rx_fixed_rrc.h v29rx_floating_rrc.h - -v29rx_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.29 -i -r >v29rx_fixed_rrc.h - -v29rx_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.29 -r >v29rx_floating_rrc.h - -v29tx.$(OBJEXT): v29tx_fixed_rrc.h v29tx_floating_rrc.h - -v29tx.lo: v29tx_fixed_rrc.h v29tx_floating_rrc.h - -v29tx_fixed_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.29 -i -t >v29tx_fixed_rrc.h - -v29tx_floating_rrc.h: make_modem_filter$(EXEEXT) - ./make_modem_filter$(EXEEXT) -m V.29 -t >v29tx_floating_rrc.h - -DSP = libspandsp.dsp -VCPROJ8 = libspandsp.2005.vcproj -VCPROJ9 = libspandsp.2008.vcproj - -WIN32SOURCES = $(libspandsp_la_SOURCES) .\\msvc\\gettimeofday.c -WIN32HEADERS = $(nobase_include_HEADERS) spandsp.h - -DSPOUT = | awk '{printf("%s\r\n", $$0)}' >> $(DSP) -VCPROJOUT8 = | awk '{printf("%s\r\n", $$0)}' >> $(VCPROJ8) -VCPROJOUT9 = | awk '{printf("%s\r\n", $$0)}' >> $(VCPROJ9) - -$(DSP): msvc/msvcproj.head msvc/msvcproj.foot Makefile.am - echo "creating $(DSP)" - @(cp $(srcdir)/msvc/msvcproj.head $(DSP); \ - echo "# Begin Group \"Source Files\"" $(DSPOUT); \ - for file in $(WIN32SOURCES); do \ - echo "# Begin Source File" $(DSPOUT); \ - echo "" $(DSPOUT); \ - echo "SOURCE=.\\"$$file $(DSPOUT); \ - echo "# End Source File" $(DSPOUT); \ - done; \ - echo "# End Group" $(DSPOUT); \ - echo "# Begin Group \"Header Files\"" $(DSPOUT); \ - for file in $(WIN32HEADERS); do \ - echo "# Begin Source File" $(DSPOUT); \ - echo "" $(DSPOUT); \ - echo "SOURCE=.\\"$$file $(DSPOUT); \ - echo "# End Source File" $(DSPOUT); \ - done; \ - echo "# End Group" $(DSPOUT); \ - cat $(srcdir)/msvc/msvcproj.foot $(DSPOUT) ) - -$(VCPROJ8): msvc/vc8proj.head msvc/vc8proj.foot Makefile.am - echo "creating $(VCPROJ8)" - @(cp $(srcdir)/msvc/vc8proj.head $(VCPROJ8); \ - for file in $(WIN32SOURCES); do \ - echo "" $(VCPROJOUT8); \ - done; \ - echo "" $(VCPROJOUT8); \ - for file in $(WIN32HEADERS); do \ - echo "" $(VCPROJOUT8); \ - done; \ - cat $(srcdir)/msvc/vc8proj.foot $(VCPROJOUT8) ) - -$(VCPROJ9): msvc/vc9proj.head msvc/vc9proj.foot Makefile.am - echo "creating $(VCPROJ9)" - @(cp $(srcdir)/msvc/vc9proj.head $(VCPROJ9); \ - for file in $(WIN32SOURCES); do \ - echo "" $(VCPROJOUT9); \ - done; \ - echo "" $(VCPROJOUT9); \ - for file in $(WIN32HEADERS); do \ - echo "" $(VCPROJOUT9); \ - done; \ - cat $(srcdir)/msvc/vc8proj.foot $(VCPROJOUT9) ) - -$(srcdir)/msvc/spandsp.h: spandsp.h.in - echo "creating $(srcdir)/msvc/spandsp.h" - @cp $(srcdir)/spandsp.h.in $(srcdir)/msvc/spandsp.h - @sed -i -e "s/\@SPANDSP_USE_FIXED_POINT\@/#undef SPANDSP_USE_FIXED_POINT/" $(srcdir)/msvc/spandsp.h - @sed -i -e "s/\@SPANDSP_MISALIGNED_ACCESS_FAILS\@/#undef SPANDSP_MISALIGNED_ACCESS_FAILS/" $(srcdir)/msvc/spandsp.h - @sed -i -e "s/\@SPANDSP_USE_EXPORT_CAPABILITY\@/#define SPANDSP_USE_EXPORT_CAPABILITY 1/" $(srcdir)/msvc/spandsp.h - @sed -i -e "s/\@INSERT_INTTYPES_HEADER\@/#include /" $(srcdir)/msvc/spandsp.h - @sed -i -e "s/\@INSERT_MATH_HEADER\@/#include /" $(srcdir)/msvc/spandsp.h - -spandsp/version.h: - NOWDATE=`date --utc +"%Y%m%d"` ; \ - NOWTIME=`date --utc +"%H%M%S"` ; \ - sed 's/$$SPANDSP_RELEASE_DATE/'$$NOWDATE'/;s/$$SPANDSP_RELEASE_TIME/'$$NOWTIME'/' \ - spandsp/version.h - -dist-hook: - NOWDATE=`date --utc +"%Y%m%d"` ; \ - NOWTIME=`date --utc +"%H%M%S"` ; \ - sed 's/$$SPANDSP_RELEASE_DATE/'$$NOWDATE'/;s/$$SPANDSP_RELEASE_TIME/'$$NOWTIME'/' \ - spandsp/version.h +## +## SpanDSP - a series of DSP components for telephony +## +## Makefile.am - Process this file with automake to produce Makefile.in +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU Lesser General Public License version 2.1, +## as published by the Free Software Foundation. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU Lesser General Public License for more details. +## +## You should have received a copy of the GNU Lesser General Public +## License along with this program; if not, write to the Free Software +## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +## +## $Id: Makefile.am,v 1.126 2009/02/21 05:39:08 steveu Exp $ + +AM_CFLAGS = $(COMP_VENDOR_CFLAGS) +AM_LDFLAGS = $(COMP_VENDOR_LDFLAGS) + +MAINTAINERCLEANFILES = Makefile.in + +EXTRA_DIST = floating_fudge.h \ + spandsp/version.h.in \ + libspandsp.dsp \ + libspandsp.2005.sln \ + libspandsp.2008.sln \ + libspandsp.2005.vcproj \ + libspandsp.2008.vcproj \ + libtiff.2005.vcproj \ + libtiff.2008.vcproj \ + msvc/config.h \ + msvc/Download_TIFF.2005.vcproj \ + msvc/Download_TIFF.2008.vcproj \ + msvc/getopt.c \ + msvc/gettimeofday.c \ + msvc/inttypes.h \ + msvc/make_at_dictionary.2005.vcproj \ + msvc/make_at_dictionary.2008.vcproj \ + msvc/make_modem_filter.2005.vcproj \ + msvc/make_modem_filter.2008.vcproj \ + msvc/spandsp.h \ + msvc/unistd.h \ + msvc/tgmath.h \ + msvc/msvcproj.head \ + msvc/msvcproj.foot \ + msvc/util.vbs \ + msvc/vc8proj.head \ + msvc/vc8proj.foot \ + msvc/vc9proj.head \ + msvc/vc9proj.foot \ + msvc/sys/time.h \ + msvc/tiff/cleancount \ + spandsp/private/README + +INCLUDES = -I$(top_builddir) + +lib_LTLIBRARIES = libspandsp.la + +libspandsp_la_SOURCES = adsi.c \ + async.c \ + at_interpreter.c \ + awgn.c \ + bell_r2_mf.c \ + bert.c \ + bit_operations.c \ + bitstream.c \ + complex_filters.c \ + complex_vector_float.c \ + complex_vector_int.c \ + crc.c \ + dds_float.c \ + dds_int.c \ + dtmf.c \ + echo.c \ + fax.c \ + fax_modems.c \ + fsk.c \ + g711.c \ + g722.c \ + g726.c \ + gsm0610_decode.c \ + gsm0610_encode.c \ + gsm0610_long_term.c \ + gsm0610_lpc.c \ + gsm0610_preprocess.c \ + gsm0610_rpe.c \ + gsm0610_short_term.c \ + hdlc.c \ + ima_adpcm.c \ + logging.c \ + lpc10_analyse.c \ + lpc10_decode.c \ + lpc10_encode.c \ + lpc10_placev.c \ + lpc10_voicing.c \ + modem_echo.c \ + modem_connect_tones.c \ + noise.c \ + oki_adpcm.c \ + playout.c \ + plc.c \ + power_meter.c \ + queue.c \ + schedule.c \ + sig_tone.c \ + silence_gen.c \ + super_tone_rx.c \ + super_tone_tx.c \ + t4.c \ + t30.c \ + t30_api.c \ + t30_logging.c \ + t31.c \ + t35.c \ + t38_core.c \ + t38_gateway.c \ + t38_non_ecm_buffer.c \ + t38_terminal.c \ + testcpuid.c \ + time_scale.c \ + tone_detect.c \ + tone_generate.c \ + v17rx.c \ + v17tx.c \ + v22bis_rx.c \ + v22bis_tx.c \ + v27ter_rx.c \ + v27ter_tx.c \ + v29rx.c \ + v29tx.c \ + v42.c \ + v42bis.c \ + v8.c \ + vector_float.c \ + vector_int.c + +libspandsp_la_LDFLAGS = -version-info @SPANDSP_LT_CURRENT@:@SPANDSP_LT_REVISION@:@SPANDSP_LT_AGE@ $(COMP_VENDOR_FLAGS) + +nobase_include_HEADERS = spandsp/adsi.h \ + spandsp/async.h \ + spandsp/arctan2.h \ + spandsp/at_interpreter.h \ + spandsp/awgn.h \ + spandsp/bell_r2_mf.h \ + spandsp/bert.h \ + spandsp/biquad.h \ + spandsp/bit_operations.h \ + spandsp/bitstream.h \ + spandsp/crc.h \ + spandsp/complex.h \ + spandsp/complex_filters.h \ + spandsp/complex_vector_float.h \ + spandsp/complex_vector_int.h \ + spandsp/dc_restore.h \ + spandsp/dds.h \ + spandsp/dtmf.h \ + spandsp/echo.h \ + spandsp/fast_convert.h \ + spandsp/fax.h \ + spandsp/fax_modems.h \ + spandsp/fir.h \ + spandsp/fsk.h \ + spandsp/g168models.h \ + spandsp/g711.h \ + spandsp/g722.h \ + spandsp/g726.h \ + spandsp/gsm0610.h \ + spandsp/hdlc.h \ + spandsp/ima_adpcm.h \ + spandsp/logging.h \ + spandsp/lpc10.h \ + spandsp/modem_echo.h \ + spandsp/modem_connect_tones.h \ + spandsp/noise.h \ + spandsp/oki_adpcm.h \ + spandsp/playout.h \ + spandsp/plc.h \ + spandsp/power_meter.h \ + spandsp/queue.h \ + spandsp/saturated.h \ + spandsp/schedule.h \ + spandsp/sig_tone.h \ + spandsp/silence_gen.h \ + spandsp/super_tone_rx.h \ + spandsp/super_tone_tx.h \ + spandsp/t4.h \ + spandsp/t30.h \ + spandsp/t30_api.h \ + spandsp/t30_fcf.h \ + spandsp/t30_logging.h \ + spandsp/t31.h \ + spandsp/t35.h \ + spandsp/t38_core.h \ + spandsp/t38_gateway.h \ + spandsp/t38_non_ecm_buffer.h \ + spandsp/t38_terminal.h \ + spandsp/telephony.h \ + spandsp/time_scale.h \ + spandsp/timing.h \ + spandsp/tone_detect.h \ + spandsp/tone_generate.h \ + spandsp/v17rx.h \ + spandsp/v17tx.h \ + spandsp/v22bis.h \ + spandsp/v27ter_rx.h \ + spandsp/v27ter_tx.h \ + spandsp/v29rx.h \ + spandsp/v29tx.h \ + spandsp/v42.h \ + spandsp/v42bis.h \ + spandsp/v8.h \ + spandsp/vector_float.h \ + spandsp/vector_int.h \ + spandsp/version.h \ + spandsp/private/adsi.h \ + spandsp/private/async.h \ + spandsp/private/at_interpreter.h \ + spandsp/private/awgn.h \ + spandsp/private/bell_r2_mf.h \ + spandsp/private/bert.h \ + spandsp/private/bitstream.h \ + spandsp/private/dtmf.h \ + spandsp/private/fax.h \ + spandsp/private/fax_modems.h \ + spandsp/private/fsk.h \ + spandsp/private/g711.h \ + spandsp/private/g722.h \ + spandsp/private/g726.h \ + spandsp/private/gsm0610.h \ + spandsp/private/hdlc.h \ + spandsp/private/ima_adpcm.h \ + spandsp/private/logging.h \ + spandsp/private/lpc10.h \ + spandsp/private/modem_connect_tones.h \ + spandsp/private/noise.h \ + spandsp/private/oki_adpcm.h \ + spandsp/private/queue.h \ + spandsp/private/schedule.h \ + spandsp/private/sig_tone.h \ + spandsp/private/super_tone_rx.h \ + spandsp/private/super_tone_tx.h \ + spandsp/private/t30.h \ + spandsp/private/t31.h \ + spandsp/private/t38_core.h \ + spandsp/private/t38_gateway.h \ + spandsp/private/t38_non_ecm_buffer.h \ + spandsp/private/t38_terminal.h \ + spandsp/private/t4.h \ + spandsp/private/time_scale.h \ + spandsp/private/tone_detect.h \ + spandsp/private/tone_generate.h \ + spandsp/private/v17rx.h \ + spandsp/private/v17tx.h \ + spandsp/private/v22bis.h \ + spandsp/private/v27ter_rx.h \ + spandsp/private/v27ter_tx.h \ + spandsp/private/v29rx.h \ + spandsp/private/v29tx.h \ + spandsp/private/v42.h \ + spandsp/private/v42bis.h \ + spandsp/private/v8.h \ + spandsp/expose.h + +nodist_include_HEADERS = spandsp.h + +noinst_HEADERS = faxfont.h \ + filter_tools.h \ + gsm0610_local.h \ + lpc10_encdecs.h \ + t30_local.h \ + t4_states.h \ + v17rx_constellation_maps.h \ + v17tx_constellation_maps.h \ + v29tx_constellation_maps.h + +noinst_PROGRAMS = make_at_dictionary \ + make_modem_filter + +make_modem_filter_SOURCES = make_modem_filter.c \ + filter_tools.c + +# We need to run make_at_dictionary, so it generates the +# at_interpreter_dictionary.h file + +at_interpreter.$(OBJEXT): at_interpreter_dictionary.h + +at_interpreter.lo: at_interpreter_dictionary.h + +at_interpreter_dictionary.h: make_at_dictionary$(EXEEXT) + ./make_at_dictionary$(EXEEXT) >at_interpreter_dictionary.h + +v17rx.$(OBJEXT): v17rx_fixed_rrc.h v17rx_floating_rrc.h + +v17rx.lo: v17rx_fixed_rrc.h v17rx_floating_rrc.h + +v17rx_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.17 -i -r >v17rx_fixed_rrc.h + +v17rx_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.17 -r >v17rx_floating_rrc.h + +v17tx.$(OBJEXT): v17tx_fixed_rrc.h v17tx_floating_rrc.h + +v17tx.lo: v17tx_fixed_rrc.h v17tx_floating_rrc.h + +v17tx_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.17 -i -t >v17tx_fixed_rrc.h + +v17tx_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.17 -t >v17tx_floating_rrc.h + +v22bis_rx.$(OBJEXT): v22bis_rx_1200_fixed_rrc.h \ + v22bis_rx_2400_fixed_rrc.h \ + v22bis_rx_1200_floating_rrc.h \ + v22bis_rx_2400_floating_rrc.h + +v22bis_rx.lo: v22bis_rx_1200_fixed_rrc.h \ + v22bis_rx_2400_fixed_rrc.h \ + v22bis_rx_1200_floating_rrc.h \ + v22bis_rx_2400_floating_rrc.h + +v22bis_rx_1200_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.22bis1200 -i -r >v22bis_rx_1200_fixed_rrc.h + +v22bis_rx_2400_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.22bis2400 -i -r >v22bis_rx_2400_fixed_rrc.h + +v22bis_rx_1200_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.22bis1200 -r >v22bis_rx_1200_floating_rrc.h + +v22bis_rx_2400_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.22bis2400 -r >v22bis_rx_2400_floating_rrc.h + +v22bis_tx.$(OBJEXT): v22bis_tx_fixed_rrc.h v22bis_tx_floating_rrc.h + +v22bis_tx.lo: v22bis_tx_fixed_rrc.h v22bis_tx_floating_rrc.h + +v22bis_tx_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.22bis -i -t >v22bis_tx_fixed_rrc.h + +v22bis_tx_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.22bis -t >v22bis_tx_floating_rrc.h + +v27ter_rx_.$(OBJEXT): v27ter_rx_2400_fixed_rrc.h \ + v27ter_rx_4800_fixed_rrc.h \ + v27ter_rx_2400_floating_rrc.h \ + v27ter_rx_4800_floating_rrc.h + +v27ter_rx.lo: v27ter_rx_2400_fixed_rrc.h \ + v27ter_rx_4800_fixed_rrc.h \ + v27ter_rx_2400_floating_rrc.h \ + v27ter_rx_4800_floating_rrc.h + +v27ter_rx_2400_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.27ter2400 -i -r >v27ter_rx_2400_fixed_rrc.h + +v27ter_rx_4800_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.27ter4800 -i -r >v27ter_rx_4800_fixed_rrc.h + +v27ter_rx_2400_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.27ter2400 -r >v27ter_rx_2400_floating_rrc.h + +v27ter_rx_4800_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.27ter4800 -r >v27ter_rx_4800_floating_rrc.h + +v27ter_tx_.$(OBJEXT): v27ter_tx_2400_fixed_rrc.h \ + v27ter_tx_4800_fixed_rrc.h \ + v27ter_tx_2400_floating_rrc.h \ + v27ter_tx_4800_floating_rrc.h + +v27ter_tx.lo: v27ter_tx_2400_fixed_rrc.h \ + v27ter_tx_4800_fixed_rrc.h \ + v27ter_tx_2400_floating_rrc.h \ + v27ter_tx_4800_floating_rrc.h + +v27ter_tx_2400_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.27ter2400 -i -t >v27ter_tx_2400_fixed_rrc.h + +v27ter_tx_4800_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.27ter4800 -i -t >v27ter_tx_4800_fixed_rrc.h + +v27ter_tx_2400_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.27ter2400 -t >v27ter_tx_2400_floating_rrc.h + +v27ter_tx_4800_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.27ter4800 -t >v27ter_tx_4800_floating_rrc.h + +v29rx.$(OBJEXT): v29rx_fixed_rrc.h v29rx_floating_rrc.h + +v29rx.lo: v29rx_fixed_rrc.h v29rx_floating_rrc.h + +v29rx_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.29 -i -r >v29rx_fixed_rrc.h + +v29rx_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.29 -r >v29rx_floating_rrc.h + +v29tx.$(OBJEXT): v29tx_fixed_rrc.h v29tx_floating_rrc.h + +v29tx.lo: v29tx_fixed_rrc.h v29tx_floating_rrc.h + +v29tx_fixed_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.29 -i -t >v29tx_fixed_rrc.h + +v29tx_floating_rrc.h: make_modem_filter$(EXEEXT) + ./make_modem_filter$(EXEEXT) -m V.29 -t >v29tx_floating_rrc.h + +DSP = libspandsp.dsp +VCPROJ8 = libspandsp.2005.vcproj +VCPROJ9 = libspandsp.2008.vcproj + +WIN32SOURCES = $(libspandsp_la_SOURCES) .\\msvc\\gettimeofday.c +WIN32HEADERS = $(nobase_include_HEADERS) spandsp.h + +DSPOUT = | awk '{printf("%s\r\n", $$0)}' >> $(DSP) +VCPROJOUT8 = | awk '{printf("%s\r\n", $$0)}' >> $(VCPROJ8) +VCPROJOUT9 = | awk '{printf("%s\r\n", $$0)}' >> $(VCPROJ9) + +$(DSP): msvc/msvcproj.head msvc/msvcproj.foot Makefile.am + echo "creating $(DSP)" + @(cp $(srcdir)/msvc/msvcproj.head $(DSP); \ + echo "# Begin Group \"Source Files\"" $(DSPOUT); \ + for file in $(WIN32SOURCES); do \ + echo "# Begin Source File" $(DSPOUT); \ + echo "" $(DSPOUT); \ + echo "SOURCE=.\\"$$file $(DSPOUT); \ + echo "# End Source File" $(DSPOUT); \ + done; \ + echo "# End Group" $(DSPOUT); \ + echo "# Begin Group \"Header Files\"" $(DSPOUT); \ + for file in $(WIN32HEADERS); do \ + echo "# Begin Source File" $(DSPOUT); \ + echo "" $(DSPOUT); \ + echo "SOURCE=.\\"$$file $(DSPOUT); \ + echo "# End Source File" $(DSPOUT); \ + done; \ + echo "# End Group" $(DSPOUT); \ + cat $(srcdir)/msvc/msvcproj.foot $(DSPOUT) ) + +$(VCPROJ8): msvc/vc8proj.head msvc/vc8proj.foot Makefile.am + echo "creating $(VCPROJ8)" + @(cp $(srcdir)/msvc/vc8proj.head $(VCPROJ8); \ + for file in $(WIN32SOURCES); do \ + echo "" $(VCPROJOUT8); \ + done; \ + echo "" $(VCPROJOUT8); \ + for file in $(WIN32HEADERS); do \ + echo "" $(VCPROJOUT8); \ + done; \ + cat $(srcdir)/msvc/vc8proj.foot $(VCPROJOUT8) ) + +$(VCPROJ9): msvc/vc9proj.head msvc/vc9proj.foot Makefile.am + echo "creating $(VCPROJ9)" + @(cp $(srcdir)/msvc/vc9proj.head $(VCPROJ9); \ + for file in $(WIN32SOURCES); do \ + echo "" $(VCPROJOUT9); \ + done; \ + echo "" $(VCPROJOUT9); \ + for file in $(WIN32HEADERS); do \ + echo "" $(VCPROJOUT9); \ + done; \ + cat $(srcdir)/msvc/vc9proj.foot $(VCPROJOUT9) ) + +$(srcdir)/msvc/spandsp.h: spandsp.h.in + echo "creating $(srcdir)/msvc/spandsp.h" + @cp $(srcdir)/spandsp.h.in $(srcdir)/msvc/spandsp.h + @sed -i -e "s/\@SPANDSP_USE_FIXED_POINT\@/#undef SPANDSP_USE_FIXED_POINT/" $(srcdir)/msvc/spandsp.h + @sed -i -e "s/\@SPANDSP_MISALIGNED_ACCESS_FAILS\@/#undef SPANDSP_MISALIGNED_ACCESS_FAILS/" $(srcdir)/msvc/spandsp.h + @sed -i -e "s/\@SPANDSP_USE_EXPORT_CAPABILITY\@/#define SPANDSP_USE_EXPORT_CAPABILITY 1/" $(srcdir)/msvc/spandsp.h + @sed -i -e "s/\@INSERT_INTTYPES_HEADER\@/#include /" $(srcdir)/msvc/spandsp.h + @sed -i -e "s/\@INSERT_MATH_HEADER\@/#include /" $(srcdir)/msvc/spandsp.h + +spandsp/version.h: + NOWDATE=`date --utc +"%Y%m%d"` ; \ + NOWTIME=`date --utc +"%H%M%S"` ; \ + sed 's/$$SPANDSP_RELEASE_DATE/'$$NOWDATE'/;s/$$SPANDSP_RELEASE_TIME/'$$NOWTIME'/' \ + spandsp/version.h + +dist-hook: + NOWDATE=`date --utc +"%Y%m%d"` ; \ + NOWTIME=`date --utc +"%H%M%S"` ; \ + sed 's/$$SPANDSP_RELEASE_DATE/'$$NOWDATE'/;s/$$SPANDSP_RELEASE_TIME/'$$NOWTIME'/' \ + spandsp/version.h diff --git a/libs/spandsp/src/complex_vector_int.c b/libs/spandsp/src/complex_vector_int.c index e614d4fede..7f00bdfd9e 100644 --- a/libs/spandsp/src/complex_vector_int.c +++ b/libs/spandsp/src/complex_vector_int.c @@ -22,7 +22,7 @@ * License along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: complex_vector_int.c,v 1.7 2009/02/03 16:28:39 steveu Exp $ + * $Id: complex_vector_int.c,v 1.8 2009/02/21 04:27:46 steveu Exp $ */ /*! \file */ @@ -123,8 +123,8 @@ SPAN_DECLARE(void) cvec_lmsi16(const complexi16_t x[], complexi16_t y[], int n, for (i = 0; i < n; i++) { - y[i].re = (int16_t)(y[i].re + (((int32_t) x[i].im*(int32_t) error->im + (int32_t) x[i].re*(int32_t) error->re) >> 12)); - y[i].im = (int16_t)(y[i].im + (((int32_t) x[i].re*(int32_t) error->im - (int32_t) x[i].im*(int32_t) error->re) >> 12)); + y[i].re += (int16_t) (((int32_t) x[i].im*(int32_t) error->im + (int32_t) x[i].re*(int32_t) error->re) >> 12); + y[i].im += (int16_t) (((int32_t) x[i].re*(int32_t) error->im - (int32_t) x[i].im*(int32_t) error->re) >> 12); } } /*- End of function --------------------------------------------------------*/ diff --git a/libs/spandsp/src/dds_int.c b/libs/spandsp/src/dds_int.c index aebd844479..9f30d83c80 100644 --- a/libs/spandsp/src/dds_int.c +++ b/libs/spandsp/src/dds_int.c @@ -22,7 +22,7 @@ * License along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: dds_int.c,v 1.15 2009/02/03 16:28:39 steveu Exp $ + * $Id: dds_int.c,v 1.16 2009/02/21 04:27:46 steveu Exp $ */ /*! \file */ @@ -309,8 +309,8 @@ SPAN_DECLARE(complexi16_t) dds_complexi16_mod(uint32_t *phase_acc, int32_t phase { complexi16_t amp; - amp = complex_seti16((int16_t)(((int32_t) dds_lookup(*phase_acc + phase + (1 << 30))*(int32_t) scale) >> 15), - (int16_t)(((int32_t) dds_lookup(*phase_acc + phase)*(int32_t) scale) >> 15)); + amp = complex_seti16((int16_t) (((int32_t) dds_lookup(*phase_acc + phase + (1 << 30))*(int32_t) scale) >> 15), + (int16_t) (((int32_t) dds_lookup(*phase_acc + phase)*(int32_t) scale) >> 15)); *phase_acc += phase_rate; return amp; } diff --git a/libs/spandsp/src/fax_modems.c b/libs/spandsp/src/fax_modems.c index c271b34f8c..3d5ab3ebec 100644 --- a/libs/spandsp/src/fax_modems.c +++ b/libs/spandsp/src/fax_modems.c @@ -22,7 +22,7 @@ * License along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: fax_modems.c,v 1.2 2009/02/16 09:57:22 steveu Exp $ + * $Id: fax_modems.c,v 1.3 2009/02/21 04:27:46 steveu Exp $ */ /*! \file */ @@ -200,7 +200,7 @@ static void v29_rx_status_handler(void *user_data, int status) } /*- End of function --------------------------------------------------------*/ -void start_fax_modems_rx_modem(fax_modems_state_t *s, int which) +SPAN_DECLARE(void) start_fax_modems_rx_modem(fax_modems_state_t *s, int which) { switch (which) { diff --git a/libs/spandsp/src/g722.c b/libs/spandsp/src/g722.c index e51c4d96a6..9a5d49b6c4 100644 --- a/libs/spandsp/src/g722.c +++ b/libs/spandsp/src/g722.c @@ -28,7 +28,7 @@ * Computer Science, Speech Group * Chengxiang Lu and Alex Hauptmann * - * $Id: g722.c,v 1.8 2009/02/10 13:06:46 steveu Exp $ + * $Id: g722.c,v 1.9 2009/02/21 04:27:46 steveu Exp $ */ /*! \file */ @@ -214,7 +214,7 @@ static void block4(g722_band_t *s, int16_t dx) /* UPPOL1 */ wd1 = ((p ^ s->p[0]) & 0x8000) ? -192 : 192; - wd2 = (int16_t)(((int32_t) s->a[0]*(int32_t) 32640) >> 15); + wd2 = (int16_t) (((int32_t) s->a[0]*(int32_t) 32640) >> 15); ap[0] = saturated_add16(wd1, wd2); wd3 = saturated_sub16(15360, ap[1]); @@ -223,9 +223,9 @@ static void block4(g722_band_t *s, int16_t dx) /* FILTEP */ wd1 = saturated_add16(r, r); - wd1 = (int16_t)(((int32_t) ap[0]*(int32_t) wd1) >> 15); + wd1 = (int16_t) (((int32_t) ap[0]*(int32_t) wd1) >> 15); wd2 = saturated_add16(s->r, s->r); - wd2 = (int16_t)(((int32_t) ap[1]*(int32_t) wd2) >> 15); + wd2 = (int16_t) (((int32_t) ap[1]*(int32_t) wd2) >> 15); sp = saturated_add16(wd1, wd2); s->r = r; s->a[1] = ap[1]; @@ -242,7 +242,7 @@ static void block4(g722_band_t *s, int16_t dx) for (i = 5; i >= 0; i--) { wd2 = ((s->d[i + 1] ^ dx) & 0x8000) ? -wd1 : wd1; - wd3 = (int16_t)(((int32_t) s->b[i]*(int32_t) 32640) >> 15); + wd3 = (int16_t) (((int32_t) s->b[i]*(int32_t) 32640) >> 15); s->b[i] = saturated_add16(wd2, wd3); wd3 = saturated_add16(s->d[i], s->d[i]); sz += ((int32_t) s->b[i]*(int32_t) wd3) >> 15; diff --git a/libs/spandsp/src/libspandsp.2008.vcproj b/libs/spandsp/src/libspandsp.2008.vcproj index a900a8baa3..1090f3e3b0 100644 --- a/libs/spandsp/src/libspandsp.2008.vcproj +++ b/libs/spandsp/src/libspandsp.2008.vcproj @@ -358,4 +358,14 @@ - \ No newline at end of file + + + + + + + diff --git a/libs/spandsp/src/lpc10_decode.c b/libs/spandsp/src/lpc10_decode.c index 0cb54bfcd4..88a88f404b 100644 --- a/libs/spandsp/src/lpc10_decode.c +++ b/libs/spandsp/src/lpc10_decode.c @@ -68,7 +68,7 @@ static int32_t lpc10_random(lpc10_decode_state_t *s) /* The following is a 16 bit 2's complement addition, with overflow checking disabled */ - s->y[s->k] = (int16_t)(s->y[s->k] + s->y[s->j]); + s->y[s->k] += s->y[s->j]; ret_val = s->y[s->k]; if (--s->k < 0) s->k = 4; diff --git a/libs/spandsp/src/msvc/make_at_dictionary.2005.vcproj b/libs/spandsp/src/msvc/make_at_dictionary.2005.vcproj index 38944e62cc..2e947066d3 100644 --- a/libs/spandsp/src/msvc/make_at_dictionary.2005.vcproj +++ b/libs/spandsp/src/msvc/make_at_dictionary.2005.vcproj @@ -88,7 +88,7 @@ /> diff --git a/libs/spandsp/src/msvc/make_at_dictionary.2008.vcproj b/libs/spandsp/src/msvc/make_at_dictionary.2008.vcproj index e4c60d9f56..54dda51ac8 100644 --- a/libs/spandsp/src/msvc/make_at_dictionary.2008.vcproj +++ b/libs/spandsp/src/msvc/make_at_dictionary.2008.vcproj @@ -86,7 +86,7 @@ /> diff --git a/libs/spandsp/src/msvc/make_modem_filter.2008.vcproj b/libs/spandsp/src/msvc/make_modem_filter.2008.vcproj index 84d63668dd..5be6875c87 100644 --- a/libs/spandsp/src/msvc/make_modem_filter.2008.vcproj +++ b/libs/spandsp/src/msvc/make_modem_filter.2008.vcproj @@ -86,7 +86,7 @@ /> diff --git a/libs/spandsp/src/oki_adpcm.c b/libs/spandsp/src/oki_adpcm.c index d20f22f0fb..787df3e322 100644 --- a/libs/spandsp/src/oki_adpcm.c +++ b/libs/spandsp/src/oki_adpcm.c @@ -178,7 +178,7 @@ static int16_t decode(oki_adpcm_state_t *s, uint8_t adpcm) e += (ss >> 1); /*endif*/ if (adpcm & 0x04) - e = (int16_t)(e + ss); + e += ss; /*endif*/ if (adpcm & 0x08) e = -e; @@ -193,7 +193,7 @@ static int16_t decode(oki_adpcm_state_t *s, uint8_t adpcm) /*endif*/ s->last = linear; - s->step_index = (int16_t)(s->step_index + step_adjustment[adpcm & 0x07]); + s->step_index += step_adjustment[adpcm & 0x07]; if (s->step_index < 0) s->step_index = 0; else if (s->step_index > 48) @@ -222,13 +222,13 @@ static uint8_t encode(oki_adpcm_state_t *s, int16_t linear) if (e >= ss) { adpcm |= (uint8_t) 0x04; - e = (int16_t)(e - ss); + e -= ss; } /*endif*/ if (e >= (ss >> 1)) { adpcm |= (uint8_t) 0x02; - e = (int16_t)(e - ss); + e -= ss; } /*endif*/ if (e >= (ss >> 2)) diff --git a/libs/spandsp/src/spandsp/complex.h b/libs/spandsp/src/spandsp/complex.h index 955b1b1367..4575f68b6f 100644 --- a/libs/spandsp/src/spandsp/complex.h +++ b/libs/spandsp/src/spandsp/complex.h @@ -22,7 +22,7 @@ * License along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: complex.h,v 1.19 2009/02/10 17:16:57 steveu Exp $ + * $Id: complex.h,v 1.20 2009/02/21 05:39:08 steveu Exp $ */ /*! \file */ @@ -343,8 +343,8 @@ static __inline__ complexi16_t complex_muli16(const complexi16_t *x, const compl { complexi16_t z; - z.re = (int16_t)((int32_t) x->re*(int32_t) y->re - (int32_t) x->im*(int32_t) y->im); - z.im = (int16_t)((int32_t) x->re*(int32_t) y->im + (int32_t) x->im*(int32_t) y->re); + z.re = (int16_t) ((int32_t) x->re*(int32_t) y->re - (int32_t) x->im*(int32_t) y->im); + z.im = (int16_t) ((int32_t) x->re*(int32_t) y->im + (int32_t) x->im*(int32_t) y->re); return z; } /*- End of function --------------------------------------------------------*/ @@ -353,8 +353,8 @@ static __inline__ complexi16_t complex_mul_q1_15(const complexi16_t *x, const co { complexi16_t z; - z.re = (int16_t)(((int32_t) x->re*(int32_t) y->re - (int32_t) x->im*(int32_t) y->im) >> 15); - z.im = (int16_t)(((int32_t) x->re*(int32_t) y->im + (int32_t) x->im*(int32_t) y->re) >> 15); + z.re = (int16_t) (((int32_t) x->re*(int32_t) y->re - (int32_t) x->im*(int32_t) y->im) >> 15); + z.im = (int16_t) (((int32_t) x->re*(int32_t) y->im + (int32_t) x->im*(int32_t) y->re) >> 15); return z; } /*- End of function --------------------------------------------------------*/ diff --git a/libs/spandsp/src/spandsp/fast_convert.h b/libs/spandsp/src/spandsp/fast_convert.h index 196ec2762a..a09882edfb 100644 --- a/libs/spandsp/src/spandsp/fast_convert.h +++ b/libs/spandsp/src/spandsp/fast_convert.h @@ -22,7 +22,7 @@ * License along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: fast_convert.h,v 1.3 2009/02/10 13:06:47 steveu Exp $ + * $Id: fast_convert.h,v 1.4 2009/02/21 05:39:09 steveu Exp $ */ #if !defined(_SPANDSP_FAST_CONVERT_H_) @@ -231,7 +231,7 @@ extern "C" } #endif -#elif (defined(WIN32) || defined(_WIN32)) && !defined(_WIN64) +#elif (defined(WIN32) || defined(_WIN32)) && !defined(_WIN64) /* * Win32 doesn't seem to have the lrint() and lrintf() functions. * Therefore implement inline versions of these functions here. @@ -304,18 +304,34 @@ extern "C" #elif defined(WIN64) || defined(_WIN64) /* x86_64 machines will do best with a simple assignment. */ + __inline long int lrint(double x) + { + long int i; + + _asm + { + fld x + fistp i + }; + return i; + } + + __inline long int lrintf(float x) + { + long int i; + + _asm + { + fld x + fistp i + }; + return i; + } + __inline long int lfastrint(double x) { return (long int) (x); } - __inline__ long int lrint(double x) - { - return (long int) (x); - } - __inline__ long int lrintf(float x) - { - return (long int) (x); - } __inline long int lfastrintf(float x) { diff --git a/libs/spandsp/src/spandsp/version.h b/libs/spandsp/src/spandsp/version.h index 4dce7a7f8e..002a2964db 100644 --- a/libs/spandsp/src/spandsp/version.h +++ b/libs/spandsp/src/spandsp/version.h @@ -30,8 +30,8 @@ /* The date and time of the version are in UTC form. */ -#define SPANDSP_RELEASE_DATE 20090220 -#define SPANDSP_RELEASE_TIME 124309 +#define SPANDSP_RELEASE_DATE 20090221 +#define SPANDSP_RELEASE_TIME 054406 #endif /*- End of file ------------------------------------------------------------*/ diff --git a/libs/spandsp/src/t4.c b/libs/spandsp/src/t4.c index 549d2c74a2..e69fad80e4 100644 --- a/libs/spandsp/src/t4.c +++ b/libs/spandsp/src/t4.c @@ -24,7 +24,7 @@ * License along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: t4.c,v 1.126 2009/02/20 12:34:20 steveu Exp $ + * $Id: t4.c,v 1.127 2009/02/21 04:27:46 steveu Exp $ */ /* @@ -410,11 +410,8 @@ static int test_tiff_directory_info(t4_state_t *s) return -1; parm = 0; TIFFGetField(t->tiff_file, TIFFTAG_IMAGEWIDTH, &parm); - if (s->image_width != (int)parm) - { -printf("Width changed\n"); + if (s->image_width != (int) parm) return 1; - } x_resolution = 0.0f; TIFFGetField(t->tiff_file, TIFFTAG_XRESOLUTION, &x_resolution); y_resolution = 0.0f; @@ -431,20 +428,14 @@ printf("Width changed\n"); break; } if (s->x_resolution != x_res_table[i].code) - { -printf("X-res changed\n"); return 1; - } for (i = 0; y_res_table[i].code > 0; i++) { if (test_resolution(res_unit, y_resolution, y_res_table[i].resolution)) break; } if (s->y_resolution != y_res_table[i].code) - { -printf("Y-res changed\n"); return 1; - } return 0; } /*- End of function --------------------------------------------------------*/ diff --git a/libs/spandsp/src/vector_int.c b/libs/spandsp/src/vector_int.c index 17d5883a4d..4ce779f551 100644 --- a/libs/spandsp/src/vector_int.c +++ b/libs/spandsp/src/vector_int.c @@ -22,7 +22,7 @@ * License along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: vector_int.c,v 1.24 2009/02/03 16:28:40 steveu Exp $ + * $Id: vector_int.c,v 1.25 2009/02/21 04:27:46 steveu Exp $ */ /*! \file */ @@ -300,7 +300,7 @@ SPAN_DECLARE(void) vec_lmsi16(const int16_t x[], int16_t y[], int n, int16_t err int i; for (i = 0; i < n; i++) - y[i] = (int16_t) (y[i] + (((int32_t) x[i]*(int32_t) error) >> 15)); + y[i] += (int16_t) (((int32_t) x[i]*(int32_t) error) >> 15); } /*- End of function --------------------------------------------------------*/ diff --git a/libs/spandsp/tests/regression_tests.sh b/libs/spandsp/tests/regression_tests.sh index 249ca22dba..fd391da81b 100755 --- a/libs/spandsp/tests/regression_tests.sh +++ b/libs/spandsp/tests/regression_tests.sh @@ -17,10 +17,11 @@ # License along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # -# $Id: regression_tests.sh,v 1.54 2009/01/12 17:20:59 steveu Exp $ +# $Id: regression_tests.sh,v 1.55 2009/02/20 14:04:40 steveu Exp $ # ITUTESTS_TIF=../test-data/itu/fax/itutests.tif +MIXEDSIZES_TIF=../test-data/itu/fax/mixed_size_pages.tif STDOUT_DEST=xyzzy STDERR_DEST=xyzzy2 @@ -181,6 +182,7 @@ echo dtmf_tx_tests completed OK #echo echo_tests completed OK echo echo_tests not enabled +#Try the ITU test pages without ECM rm -f fax_tests_1.tif ./fax_tests >$STDOUT_DEST 2>$STDERR_DEST RETVAL=$? @@ -198,6 +200,7 @@ then echo fax_tests failed! exit $RETVAL fi +#Try the ITU test pages with ECM rm -f fax_tests_1.tif ./fax_tests -e >$STDOUT_DEST 2>$STDERR_DEST RETVAL=$? @@ -215,6 +218,24 @@ then echo fax_tests -e failed! exit $RETVAL fi +#Try some mixed sized test pages without ECM +rm -f fax_tests_1.tif +./fax_tests -i ${MIXEDSIZES_TIF} >$STDOUT_DEST 2>$STDERR_DEST +RETVAL=$? +if [ $RETVAL != 0 ] +then + echo fax_tests failed! + exit $RETVAL +fi +# Now use tiffcmp to check the results. It will return non-zero if any page images differ. The -t +# option means the normal differences in tags will be ignored. +tiffcmp -t ${MIXEDSIZES_TIF} fax_tests_1.tif >/dev/null +RETVAL=$? +if [ $RETVAL != 0 ] +then + echo fax_tests failed! + exit $RETVAL +fi echo fax_tests completed OK ./fsk_tests >$STDOUT_DEST 2>$STDERR_DEST