- Add AUDIOSRCS in Makefile.in, which will be filled in with the appropriate

source files needed for the audio system chosen. Note in particular
  a2d.f90 no longer needs to be wrapped with a #ifdef PORTAUDIO since
  it is now only compiled and linked when needed.

  Tested on portaudio here, but untested on alsa. Please test that
  I have not screwed it up on alsa or windows. ;-)



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/trunk@102 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Diane Bruce 2006-01-14 16:15:50 +00:00
parent 0ce6252dba
commit 0cce7ee1b9
4 changed files with 13 additions and 14 deletions

View File

@ -41,7 +41,7 @@ OBJS1 = JT65code.o nchar.o grid2deg.o packmsg.o packtext.o \
F2PYONLY = ftn_init ftn_quit audio_init spec getfile azdist0 astro0
SRCS2F90 = a2d.f90 abc441.f90 astro0.f90 audio_init.f90 azdist0.f90 \
SRCS2F90 = abc441.f90 astro0.f90 audio_init.f90 azdist0.f90 \
blanker.f90 decode1.f90 decode2.f90 decode3.f90 ftn_init.f90 \
ftn_quit.f90 get_fname.f90 getfile.f90 horizspec.f90 hscroll.f90 \
i1tor4.f90 pix2d.f90 pix2d65.f90 rfile.f90 savedata.f90 spec.f90 \
@ -66,9 +66,9 @@ SRCS2C = init_rs.c encode_rs.c decode_rs.c
OBJS2C = ${SRCS2C:.c=.o}
# ok, so far for now
# Windows @AUDIO@ will be jtaudio.c since it uses portaudio
# for *nix @AUDIO@ will also be jtaudio.c and start_portaudio.c
# for portaudio
# Windows @AUDIO@ will be a2d.f90 jtaudio.c since it uses portaudio
# for *nix @AUDIO@ will also be a2d.f90, jtaudio.c
# and start_portaudio.c for systems using portaudio
# for *nix @AUDIO@ will be start_alsa.c for alsa
# for *nix @AUDIO@ will be start_oss.c for oss
#
@ -78,10 +78,12 @@ OBJS2C = ${SRCS2C:.c=.o}
# jtaudio.c/start_threads.c mess will have to be sorted out later
# to minimise #ifdef's
# --db
# and mostly sorted
# --db
#
SRCS3C = ptt_unix.c igray.c wrapkarn.c cutil.c
SRCS3C += @AUDIO@
OBJS3C = ${SRCS3C:.c=.o}
AUDIOSRCS = @AUDIO@
all: wsjt6
JT65code: $(OBJS1)
@ -93,13 +95,13 @@ wsjt6: Audio.so #wsjt.spec
#
#
Audio.so: $(OBJS2C) $(OBJS3C) $(OBJS2F77) $(SRCS2F90)
Audio.so: $(OBJS2C) $(OBJS3C) $(OBJS2F77) $(SRCS2F90) $(AUDIOSRCS)
${F2PY} -c --quiet --opt="-O -cpp -D${CFLAGS} \
-fno-second-underscore" $(OBJS2C) $(OBJS2F77) -m Audio \
--f77exec=${G95} --f90exec=${G95} ${CPPFLAGS} ${LDFLAGS} \
only: $(F2PYONLY) \
: $(SRCS2F90) \
${SRCS3C}
${SRCS3C} ${AUDIOSRCS}
wsjt.spec: wsjt.py astro.py g.py options.py palettes.py smeter.py specjt.py
# ${PYTHON} c:\python23\installer\makespec.py --icon wsjt.ico \

View File

@ -1,8 +1,6 @@
!---------------------------------------------------- a2d
subroutine a2d(iarg)
!#if 1
# ifdef USE_PORTAUDIO
! Start the PortAudio streams for audio input and output.
integer nchin(0:20),nchout(0:20)
include 'gcom1.f90'
@ -36,6 +34,5 @@ subroutine a2d(iarg)
write(*,1006)
1006 format('Audio streams terminated normally.')
endif
#endif
return
end subroutine a2d

6
configure vendored
View File

@ -2,7 +2,7 @@
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.53 for wsjt 0.9.
#
# $Id: configure.ac 82 2006-01-10 21:35:37Z va3db $
# $Id: configure.ac 100 2006-01-14 15:47:35Z va3db $
#
# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
# Free Software Foundation, Inc.
@ -924,7 +924,7 @@ Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
$Id: configure.ac 82 2006-01-10 21:35:37Z va3db $
$Id: configure.ac 100 2006-01-14 15:47:35Z va3db $
_ACEOF
exit 0
fi
@ -5754,7 +5754,7 @@ cat >>confdefs.h <<\_ACEOF
#define USE_PORTAUDIO 1
_ACEOF
AUDIO="jtaudio.c start_portaudio.c"
AUDIO="a2d.f90 jtaudio.c start_portaudio.c"
LDFLAGS="${LDFLAGS} -lportaudio -lsamplerate"
CFLAGS="${CFLAGS} -DUSE_PORTAUDIO"

View File

@ -250,7 +250,7 @@ fi
dnl XXX
if test "$portaudio" = yes; then
AC_DEFINE(USE_PORTAUDIO, 1, [Define if you want PORTAUDIO used.])
AC_SUBST(AUDIO, "jtaudio.c start_portaudio.c")
AC_SUBST(AUDIO, "a2d.f90 jtaudio.c start_portaudio.c")
LDFLAGS="${LDFLAGS} -lportaudio -lsamplerate"
CFLAGS="${CFLAGS} -DUSE_PORTAUDIO"
CPPFLAGS="${CPPFLAGS} -DUSE_PORTAUDIO"