CFLAGS =	-O4
LDLAGS =	-s

POBJS =		echoplex lintoulaw mix speed ulawtolin volume vox
FOBJS =		pitch
SOBJS =		dial listen play record tones

OBJS = $(POBJS) $(FOBJS) $(SOBJS)

all:		$(OBJS)

install:	$(OBJS)
		@echo Installing programs in /usr/local/bin
		@mv $(OBJS) /usr/local/bin

$(POBJS):	libst.h libst.o
	$(CC) $(CFLAGS) $(LDFLAGS) $@.c libst.o -o $@
	strip $@

$(FOBJS):	libst.h libst.o libfft.h libfft.o
	$(CC) $(CFLAGS) $(LDFLAGS) $@.c libst.o libfft.o -lm -o $@
	strip $@

$(SOBJS):	libst.h libst.o libsst.h libsst.o
	$(CC) $(CFLAGS) $(LDFLAGS) $@.c libst.o libsst.o -o $@
	strip $@

echoplex:	echoplex.c
lintoulaw:	lintoulaw.c
mix:		mix.c
speed:		speed.c
ulawtolin:	ulawtolin.c
volume:		volume.c
vox:		vox.c
pitch:		pitch.c
dial:		dial.c
listen:		listen.c
play:		play.c
record:		record.c
tones:		tones.c


libst.o:	libst.c libst.h
	$(CC) $(CFLAGS) -c libst.c

libfft.o:	libfft.c libfft.h
	$(CC) $(CFLAGS) -c libfft.c

libsst.o:	libsst.c libsst.h
	$(CC) $(CFLAGS) -c libsst.c


clean:
	rm -f $(OBJS) *.o

shar:		sst.shar
sst.shar:	sst.shar1 sst.shar2
sst.shar1:	README Makefile libst.h libst.c libsst.h libsst.c libfft.h \
		libfft.c echoplex.c echoplex.1 lintoulaw.c lintoulaw.1 mix.c \
		mix.1 pitch.c pitch.1
	shar README Makefile libst.h libst.c libsst.h libsst.c libfft.h libfft.c echoplex.c echoplex.1 lintoulaw.c lintoulaw.1 mix.c mix.1 pitch.c pitch.1 > $@
sst.shar2:	speed.c speed.1 ulawtolin.c ulawtolin.1 volume.c volume.1 \
		vox.c vox.1 dial.c dial.1 listen.c listen.1 play.c play.1 \
		record.c record.1 tones.c tones.1
	shar speed.c speed.1 ulawtolin.c ulawtolin.1 volume.c volume.1 vox.c vox.1 dial.c dial.1 listen.c listen.1 play.c play.1 record.c record.1 tones.c tones.1 > $@
