# Sound Tools Makefile # builds libst.a and sox FSRC= raw.c voc.c au.c sf.c aiff.c hcom.c 8svx.c sndrtool.c wav.c \ smp.c sbdsp.c auto.c cdr.c dat.c \ g711.c g72x.c g721.c g723_24.c g723_40.c ESRC= copy.c avg.c pred.c stat.c vibro.c echo.c rate.c band.c lowp.c \ highp.c reverse.c dyn.c PSRC= sox.c SOURCES = $(PSRC) $(FSRC) $(ESRC) handlers.c libst.c misc.c getopt.c HEADERS = st.h libst.h sfheader.h patchlvl.h wav.h g72x.h TESTS = tests.sh testall.sh monkey.au monkey.voc MISC = README INSTALL TODO TIPS CHEAT sox.man sox.txt st.man \ Makefile.unx Makefile.bor Makefile.b30 Makefile.c70 \ sbprog.doc voc.info SKEL = skel.c skeleff.c VMS = descrip.mms sound2au.com sound2sun.c sound2sun.opt \ sox.opt tests.com vms.lis OS2 = MakeOS2 MakeOS2.dep OS9 = Makefile.os9 AMIGA = Makefile.ami amiga.c amiga.h FILES = $(MISC) $(HEADERS) $(SOURCES) $(VMS) $(AMIGA) $(OS2) $(OS9) \ $(SKEL) $(TESTS) FOBJ= raw.o voc.o au.o sf.o aiff.o hcom.o 8svx.o sndrtool.o wav.o \ smp.o sbdsp.o auto.o cdr.o dat.o \ g711.o g72x.o g721.o g723_24.o g723_40.o EOBJ= copy.o avg.o pred.o stat.o vibro.o echo.o rate.o band.o lowp.o \ highp.o reverse.o dyn.o SOUNDLIB = libst.a LIBOBJS = $(FOBJ) $(EOBJ) handlers.o libst.o misc.o getopt.o # # System dependency parameters # not many, we don't mess with devices # # include -DSYSV for AT&T Unix System V # SHELL = /bin/sh # You may need this. # define -DNEED_GETOPT to use the enclosed getopt() library. # To use the system getopt() and getopt.h, don't define NEED_GETOPT # define -DBLASTER to use the Sound Blaster device driver # on a 386 AT&T Unix with it installed # define -DSBLAST to use Steve Haenichen's SBLAST # driver on any BSD-derived Unix for 386/486 PC's # BSDI's BSD386, Jolitz 386BSD, or Mt Xinu's Mach-386 # define -DDOS to compile on PC # defines .snd to mean a DOS soundtool file (starts with SOUND) # define -DNeXT on a NeXT workstation # defines .snd to mean a NeXT sound format file # only knows a few real sound formats. # define -DMAC on a MacIntosh # defines .snd to mean a Mac-style headerless unsigned byte # sample, probably at 11050 hertz. You'll have to set # the speed on the command line. # My AT&T System V/386 development parameters # O=-g # optimization flags # CFLAGS = $O -DSYSV -DBLASTER -Di386 -DNEED_GETOPT # CC = cc -Dunix # CC = gcc -fpcc-struct-return -ansi -Dunix # AR = ar r # RANLIB = ar ts # AT&T System V # CFLAGS = $O -DSYSV -DNEED_GETOPT # Gcc is better, of course, if you have it # CC = gcc -ansi -Dunix -fpcc-struct-return # CC = cc -Dunix # AR = ar r # RANLIB = ar ts # IBM AIX 3.2 # CFLAGS = $O -DSYSV -DNEED_GETOPT # CC = xlc -D_ALL_SOURCE -Dunix # AR = ar r # RANLIB = ar ts # BSD-ish, salt to taste # Sun, NeXT, Vax, Ultrix uses these # CFLAGS = $O -DNEED_GETOPT # CC = gcc -ansi -Dunix # CC = cc -Dunix # AR = ar r # RANLIB = ranlib # BSD-386, Mach 386, 386BSD, use for SBLAST driver # CFLAGS = $O -I/usr/src/sys -DSBLAST-DNEED_GETOPT # CC = /usr/local/bin/gcc -ansi -Dunix # AR = ar r # RANLIB = ranlib # linux (with soundcard support -DLINUXSOUND) # CFLAGS = -O -DLINUXSOUND-DNEED_GETOPT # CC = gcc -fpcc-struct-return -Dunix -ansi # AR = ar r # RANLIB = ranlib all: sox sox: sox.o $(SOUNDLIB) $(CC) $(CFLAGS) -o sox sox.o $(SOUNDLIB) -lm $(SOUNDLIB): $(LIBOBJS) rm -f $(SOUNDLIB) $(AR) $(SOUNDLIB) $(LIBOBJS) $(RANLIB) $(SOUNDLIB) sox.o: sox.c st.h $(LIBOBJS): st.h sox.txt: sox.man st.man rm -f sox.txt nroff -man sox.man | col > sox.txt nroff -man st.man | col > st.txt clean: rm -f *.o rm -f *.raw rm -f *.sf rm -f core # Shar: -F (prefix all lines with X), # -s addr (set return addr of poster) shar: $(FILES) /usr2/tools/shar/shar -M -F -l 50 -o shar -n soundtools_v10 -s thinman@netcom.com $(FILES)