# HEADER: ; # TITLE: Frankenstein Cross Assemblers; # VERSION: 2.0; # SYSTEM: Unix (microport system V/AT); # FILENAME: Makefile ; # DESCRIPTION: "Reconfigurable Cross-assembler producing Intel (TM) # Hex format object records. "; # KEYWORDS: cross-assemblers, 1805, 2650, 6301, 6502, 6805, 6809, # 6811, tms7000, 8048, 8051, 8096, z8, z80; # WARNINGS: "This software is in the public domain. # Any prior copyright claims are relinquished. # # This software is distributed with no warranty whatever. # The author takes no responsibility for the consequences # of its use. # # Yacc (or Bison) required to compile." ; # AUTHORS: Mark Zenier; # COMPILERS: Microport System V/AT; # # usage # make somename TARGET=somename # make newmachine clean out machine dependent *.o # make clean clean out for release disk # # Conditional Compilation Flags # # DOSTMP use the current directory for temporary intermediate # file # NOGETOPT use the getopt.h file # USEINDEX redefine the strchr() library function to use # the older equivalent name index() # NOSTRING use internal definitions if the include # file does not exist # TARGET = frasm PRINTSPOOL = lpr # LEXERDEBUG = -DDEBUG=1 LEXERDEBUG = # for microport and xenix CFLAGS = -Ml -g YACCLEXLIB = -ly MAINNEEDS = MAINDEPENDS = # for dos cross compiled on xenix # CFLAGS = -dos -Ml # YACCLEXLIB = # MAINNEEDS = -DNOGETOPT -DDOSTMP # MAINDEPENDS = getopt.h # for v7 # CFLAGS = -DUSEINDEX -DNOSTRING # YACCLEXLIB = -ly # MAINNEEDS = -DNOGETOPT # MAINDEPENDS = getopt.h clean : rm -f *.o fraytok.h rm -f y.tab.[ch] rm -f as*.c as*.h as*.o newmachine : rm -f fraytok.h rm -f fryylex.o rm -f $(TARGET).c $(TARGET).h $(TARGET).o $(TARGET) : frasmain.o frapsub.o fryylex.o $(TARGET).o fraosub.o cc $(CFLAGS) -o $(TARGET) frasmain.o frapsub.o \ fraosub.o fryylex.o $(TARGET).o $(YACCLEXLIB) rm -f fraytok.h frasmain.o : frasmain.c frasmdat.h $(MAINDEPENDS) cc $(CFLAGS) $(MAINNEEDS) -c frasmain.c $(TARGET).c $(TARGET).h : $(TARGET).y yacc -d $(TARGET).y mv y.tab.c $(TARGET).c mv y.tab.h $(TARGET).h rm -f fraytok.h fraytok.h : $(TARGET).h cp $(TARGET).h fraytok.h $(TARGET).o : $(TARGET).c frasmdat.h fragcon.h cc $(CFLAGS) -c $(TARGET).c frapsub.o : frapsub.c fragcon.h frasmdat.h fraeuni.h fraebin.h cc $(CFLAGS) -c frapsub.c fraosub.o : fraosub.c frasmdat.h fragcon.h fraeuni.h fraebin.h cc $(CFLAGS) -c fraosub.c fryylex.o : fryylex.c frasmdat.h fraytok.h cc $(CFLAGS) $(LEXERDEBUG) -c fryylex.c