#$Id: Makefile,v 1.7 1998/05/06 21:41:30 eds Exp $ #$Log: Makefile,v $ # Revision 1.7 1998/05/06 21:41:30 eds # FCD version. # # Revision 1.6 1997/11/10 22:47:51 eds # Added new encoder/decoder source files. # # Revision 1.5 1997/10/03 15:09:16 eds # Added 'saol_sfsynth.c' module to makefile. # # Revision 1.4 1997/09/19 18:00:30 eds # Added saol_spatial.o # #CC = cc #YACC = yacc # Set this flag if you have the full MPEG ISO source distribution # and want SBF support. MAKE_SBF = #MAKE_SBF = -D_SASBF #MAKE_AC = -D_AC MAKE_AC = # Set this flag if you want profiling #PROFILE = -D_PROFILE PROFILE = # Use these for debug mode on Linux #YACC = bison --debug --verbose -d YACC = yacc LEX = flex -d CXX = g++ CC = gcc CFLAGS = -c -g -O0 -DYYDEBUG=1 C2FLAGS = $(CFLAGS) C++FLAGS = $(CFLAGS) -DCPP_MEMORY LDFLAGS = -lm # Use these for optimize on Alpha #CFLAGS = -c -migrate -O5 -D_FASTMATH -tune host -fptm n -taso_short -unroll 16 -fast -om $(MAKE_SBF) $(MAKE_AC) #C2FLAGS = $(CFLAGS) -D__BYTE_COHERENT #C++FLAGS = $(CFLAGS) -D__BYTE_COHERENT -DCPP_MEMORY #CXX = cxx -x cxx # Use these for debug mode on Alpha #CXX = /mas/system/gcc/2.8.1/alpha-dec-osf4.0/bin/g++ #CC = /mas/system/gcc/2.8.1/alpha-dec-osf4.0/bin/gcc #CFLAGS = -c -g -O0 $(MAKE_SBF) $(MAKE_AC) #C2FLAGS = $(CFLAGS) -D__BYTE_COHERENT #C++FLAGS = $(CFLAGS) -DCPP_MEMORY -D__BYTE_COHERENT # Use these two for debug mode on SGI #SGIMODE = -mips3 -n32 #CFLAGS = -g $(SGIMODE) -INLINE:NO $(MAKE_SBF) -c -O0 #C2FLAGS = $(CFLAGS) $(SGIMODE) -D__BYTE_INCOHERENT #CXX = CC -c #C++FLAGS = -g -c $(SGIMODE) -ptused -D__BYTE_INCOHERENT -DCPP_MEMORY $(MAKE_SBF) -INLINE:NO #LDFLAGS = -lm $(SGIMODE) -lmalloc_cv # Use these for optimize on SGI #CFLAGS = -O3 -c $(SGIMODE) $(MAKE_SBF) #C2FLAGS = -O3 -c $(SGIMODE) $(MAKE_SBF) #C++FLAGS = -c $(CFLAGS) -D__BYTE_INCOHERENT -DCPP_MEMORY #CXX = CC # # Use this on Alpha or for standard mallocs on SGI #LDFLAGS = $(SGIMODE) -lm # Use this one for fast mallocs on SGI # LDFLAGS = -lm $(SGIMODE) -lmalloc # Use these for Linux (might not be quite right, but definitely don't # want __BYTE_INCOHERENT set) #CFLAGS = -O #C2FLAGS = -O #C++FLAGS = -O -DCPP_MEMORY .SUFFIXES: .cpp CPP = $(CXX) PUBLIC_SOURCE = IEEE80.c fft.c saol.h bifs_nodes.h saol_sched.h \ IEEE80.h fft.h saol_co_imp.c saol_score.c bifs_types.h ac.h \ aifif.c genutils.h saol_co_imp.h saol_sbsynth.c \ aifif.h saol.yy.c saol_core_opcodes.c saol_spatial.c \ audio.h saol_interp.c saol_syntax.c saol_sequence.c \ bitstream.cpp saol_interp.h saol_tables.c \ bitstream.h port.h saol_midi.c saol_macro.c saol_templates.c \ byteswap.c sa_bitstream.h saol_main.cpp saol_tok_table.cpp \ byteswap.h sa_decode.cpp saol_parser.c saol_tok_table.h \ dpweaiff.h sa_encode.cpp saol_rates.c saol.tab.c \ dpwelib.h sa_encode.yy.c saol_sched.c saol.tab.h Makefile \ saol.lex saol.yacc sa_encoder.lex saolc.dsp README \ fx_picola.c fx_picola.h unistd.h values.h saolc.pdf saol_prec.h \ saencode.dsp EMU_SOURCE = sf_param_trans.c sf_param_trans.h sf_synth.c \ sf_wave_def.h sf_wave_equ.h sfe_datatype.h sfe_emuerrs.h \ sfe_sfenum.h clist.cpp instr.cpp loadicol.cpp clist.h dls.h \ dlsparse.h dls_wrapper.cpp dls_wrapper.h sfe_enab.h sfe_sfdata.h \ dls2.h saolcsbf.dsp SFEINC = dls_wrapper.h sfe_datatype.h sfe_emuerrs.h sfe_sfdata.h \ sfe_sfenum.h clist.h dls.h dlsparse.h sfe_enab.h SBFOBJ = sf_param_trans.o sf_synth.o \ clist.o instr.o loadicol.o dls_wrapper.o OBJS = saol_macro.o saol_parser.o saol_syntax.o saol_templates.o \ saol_core_opcodes.o saol_midi.o saol_tok_table.o bitstream.o \ saol_co_imp.o saol_rates.o saol_tables.o saol_interp.o \ saol_sched.o saol.tab.o aifif.o fft.o IEEE80.o byteswap.o saol_score.o \ saol_spatial.o saol_sbsynth.o sa_decode.o saol_sequence.o \ fx_picola.o AC_OBJS = ac.o decoders.o ba.o bifs_init.o all: saolc saenc # If you don't have the full MPEG ISO distribution, use these instead: saolc: saolc_no_sbf cp saolc_no_sbf saolc # Use this only with the full MPEG ISO distribution #saolc: saolc_sbf # cp saolc_sbf saolc saolc_no_sbf: $(OBJS) saol_main.o Makefile $(CXX) $(OBJS) saol_main.o -o saolc_no_sbf $(LDFLAGS) saolc_sbf: $(OBJS) $(SBFOBJ) saol_main.o Makefile $(CXX) $(OBJS) $(SBFOBJ) $(SFOBJ) saol_main.o -o saolc_sbf $(LDFLAGS) saol_midi_for_enc.o: saol.h saol_sched.h saol_midi.c $(CC) $(C2FLAGS) -D_SAENC saol_midi.c -c -o saol_midi_for_enc.o saenc: sa_encode.o sa_encode.yy.o saol_tok_table.o bitstream.o aifif.o saol_score.o \ byteswap.o IEEE80.o saol_midi_for_enc.o $(CXX) sa_encode.o sa_encode.yy.o saol_tok_table.o bitstream.o aifif.o \ saol_score.o byteswap.o IEEE80.o saol_midi_for_enc.o -o saenc $(LDFLAGS) public : $(PUBLIC_SOURCE) tar -cvLf saol_public.tar $(PUBLIC_SOURCE) gzip saol_public.tar mpeg : $(PUBLIC_SOURCE) $(EMU_SOURCE) tar -cvLf saol_mpeg.tar $(PUBLIC_SOURCE) $(EMU_SOURCE) gzip saol_mpeg.tar .c.o: $(CC) $(CFLAGS) $(PROFILE) $< .cpp.o: $(CPP) $(C++FLAGS) $(PROFILE) $< aifif.o: aifif.c aifif.h fft.o: fft.c fft.h mmeaudio.o: mmeaudio.c audio.h $(CC) $(CFLAGS) mmeaudio.c -DDEC saol.tab.h: saol.tab.c saol_score.o: saol_sched.h saol_score.c IEEE80.o: IEEE80.c IEEE80.h byteswap.o: byteswap.c byteswap.h saol_spatial.o: saol_spatial.c saol_interp.h saol_sched.h saol.h saol_sequence.o: saol.h saol_sequence.c saol_sbsynth.o: saol_sbsynth.c saol_macro.o: saol.h saol_macro.c saol.tab.h saol_midi.o: saol.h saol_sched.h saol_midi.c $(CC) $(C2FLAGS) saol_midi.c -c saol_sched.o: saol_interp.h saol_sched.h saol_sched.c saol.tab.h saol_main.o: saol.h saol_main.cpp saol.tab.h $(CXX) $(CFLAGS) $(PROFILE) saol_main.cpp saol_main_no_main.o: saol.h saol_main.cpp saol.tab.h $(CXX) $(CFLAGS) -D_NO_MAIN saol_main.cpp -o saol_main_no_main.o saol_tables.o: saol_interp.h saol_tables.c saol_interp.o: saol_interp.h saol_sched.h saol.h saol_interp.c saol.tab.h saol_rates.o: saol.tab.h saol.h saol_rates.c saol_syntax.o: saol.tab.h saol.h saol_syntax.c saol_templates.o: saol.h saol_templates.c saol_parser.o: saol_parser.c saol.tab.h saol.h saol_core_opcodes.o: saol.h saol_co_imp.h saol.tab.h saol_co_imp.o: saol.h saol_co_imp.h saol.tab.h fx_picola.o: fx_picola.c fx_picola.h saol.tab.o: saol.tab.c cc $(C2FLAGS) saol.tab.c saol.tab.c: saol.yacc saol.yy.c saol.h $(YACC) -vdtl saol.yacc mv y.tab.c saol.tab.c mv y.tab.h saol.tab.h saol.yy.c: saol.lex $(LEX) -t saol.lex > saol.yy.c sf_param_trans.o: sf_wave_def.h sf_wave_equ.h sf_param_trans.h \ saol.tab.h sf_param_trans.c sfe_sfreader.o: sfe_sfreader.cpp $(SFEINC) Makefile sfe_sflookup.o: sfe_sfreader.cpp $(SFEINC) Makefile sfe_sfnav.o: sfe_sfnav.cpp $(SFEINC) Makefile sfe_win_mem.o: sfe_win_mem.cpp $(SFEINC) Makefile sfe_omega.o: sfe_omega.cpp $(SFEINC) Makefile sfe_riff.o: sfe_riff.cpp $(SFEINC) Makefile sfe_sfdetect.o: sfe_sfdetect.cpp $(SFEINC) Makefile sfe_enab.o: sfe_enab.cpp $(SFEINC) Makefile sfe_hydra.o: sfe_hydra.cpp $(SFEINC) Makefile clist.o: clist.cpp $(SFEINC) Makefile loadicol.o: clist.cpp $(SFEINC) Makefile # At this point, sa_bitstream.h has many direct edits # # sa_bitstream.h: sa_bitstream.fl # flavorc -l sa_bitstream.fl sa_decoder: sa_decode.o saol_tok_table.o bitstream.o aifif.o byteswap.o IEEE80.o $(CXX) sa_decode.o saol_tok_table.o bitstream.o aifif.o byteswap.o \ IEEE80.o -o sa_decoder -lm sa_encode.yy.c: sa_encoder.lex $(LEX) -t sa_encoder.lex > sa_encode.yy.c sa_encode.yy.o: sa_encode.yy.c $(CC) $(CFLAGS) sa_encode.yy.c bitstream.o: bitstream.cpp bitstream.h $(CXX) $(CFLAGS) bitstream.cpp sa_encode.o: sa_encode.cpp sa_bitstream.h $(CXX) $(C++FLAGS) sa_encode.cpp sa_decode.o: sa_decode.cpp sa_bitstream.h $(CXX) $(C++FLAGS) sa_decode.cpp saol_tok_table.o: saol_tok_table.cpp saol_tok_table.h $(CXX) $(CFLAGS) saol_tok_table.cpp #### Audio compositor stuff ac_no_sbf: $(AC_OBJS) saol_main_no_main.o $(OBJS) $(CXX) $(OBJS) $(AC_OBJS) saol_main_no_main.o -o ac_no_sbf $(LDFLAGS) ac_sbf: $(AC_OBJS) saol_main_no_main.o $(OBJS) $(SBFOBJ) $(CXX) $(OBJS) $(AC_OBJS) $(SFOBJ) $(SBFOBJ) saol_main_no_main.o -o ac_sbf $(LDFLAGS) ac: ac_no_sbf mv ac_no_sbf ac ac.o: ac.h ac.c bifs.h bifs_nodes.h bifs_fields.h $(CC) $(CFLAGS) ac.c ba.o: ba.c bifs.h bifs_fields.h $(CC) $(CFLAGS) ba.c bifs_init.o: bifs_init.c bifs_fields.h bifs_nums.h $(CC) $(CFLAGS) bifs_init.c ac.tab.h: ac.tab.c ac.tab.c: ac.yacc ac.yy.c ac.h $(YACC) -vdtl ac.yacc mv y.tab.c ac.tab.c mv y.tab.h ac.tab.h ac.tab.o: ac.tab.c $(CC) $(CFLAGS) ac.tab.c ac.yy.c: ac.lex $(LEX) -t ac.lex > ac.yy.c decoders.o: decoders.c ac.h saol.h bifs_nodes.h $(CC) $(C2FLAGS) decoders.c clean: rm -f *.o saolc saolc_sbf saenc sa_decoder ac *.tab.* *.yy.*