190 lines
		
	
	
	
		
			5.8 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			190 lines
		
	
	
	
		
			5.8 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| # $Id$
 | |
| 
 | |
| #PARAMS         do not remove this line!
 | |
| 
 | |
| #MACH_DEFINE	do not remove this or the next line!
 | |
| MACH = 
 | |
| 
 | |
| SRC_DIR = $(SRC_HOME)/mach/$(MACH)/cg
 | |
| CDIR=$(SRC_HOME)/mach/proto/cg
 | |
| LIBEM = $(TARGET_HOME)/lib.bin/em_data.$(LIBSUF)
 | |
| LIBFLT = $(TARGET_HOME)/modules/lib/libflt.$(LIBSUF)
 | |
| CPP = $(UTIL_HOME)/lib.bin/cpp
 | |
| CGG = $(UTIL_HOME)/lib.bin/cgg
 | |
| 
 | |
| PREFLAGS=-I$(TARGET_HOME)/h -I$(SRC_HOME)/mach -I$(TARGET_HOME)/modules/h -I$(SRC_DIR) -I. -I$(CDIR) -DNDEBUG
 | |
| PFLAGS=
 | |
| CFLAGS=$(PREFLAGS) $(PFLAGS) $(COPTIONS)
 | |
| LDFLAGS=$(PFLAGS) $(LDOPTIONS)
 | |
| LINTFLAGS=$(PREFLAGS) $(LINTOPTIONS)
 | |
| LIBS=$(LIBEM) $(LIBFLT)
 | |
| CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
 | |
|        $(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
 | |
|        $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
 | |
|        $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
 | |
| OFILES=	codegen.$(SUF) compute.$(SUF) equiv.$(SUF) fillem.$(SUF) \
 | |
| 	gencode.$(SUF) glosym.$(SUF) main.$(SUF) move.$(SUF) nextem.$(SUF) \
 | |
| 	reg.$(SUF) regvar.$(SUF) salloc.$(SUF) state.$(SUF) subr.$(SUF) \
 | |
| 	var.$(SUF)
 | |
| 
 | |
| all:	tables.c
 | |
| 	make cg
 | |
| 
 | |
| cg: tables.o $(OFILES)
 | |
| 	$(CC) $(LDFLAGS) $(OFILES) tables.o $(LIBS) -o cg
 | |
| 
 | |
| tables.$(SUF): tables.c
 | |
| 	$(CC) -c $(PREFLAGS) tables.c
 | |
| 
 | |
| codegen.$(SUF): $(CDIR)/codegen.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/codegen.c
 | |
| compute.$(SUF): $(CDIR)/compute.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/compute.c
 | |
| equiv.$(SUF): $(CDIR)/equiv.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/equiv.c
 | |
| fillem.$(SUF): $(CDIR)/fillem.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/fillem.c
 | |
| gencode.$(SUF): $(CDIR)/gencode.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
 | |
| glosym.$(SUF): $(CDIR)/glosym.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
 | |
| main.$(SUF): $(CDIR)/main.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/main.c
 | |
| move.$(SUF): $(CDIR)/move.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/move.c
 | |
| nextem.$(SUF): $(CDIR)/nextem.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/nextem.c
 | |
| reg.$(SUF): $(CDIR)/reg.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/reg.c
 | |
| regvar.$(SUF): $(CDIR)/regvar.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/regvar.c
 | |
| salloc.$(SUF): $(CDIR)/salloc.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/salloc.c
 | |
| state.$(SUF): $(CDIR)/state.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/state.c
 | |
| subr.$(SUF): $(CDIR)/subr.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/subr.c
 | |
| var.$(SUF): $(CDIR)/var.c
 | |
| 	$(CC) -c $(CFLAGS) $(CDIR)/var.c
 | |
| 
 | |
| install: all
 | |
| 	-mkdir $(TARGET_HOME)/lib.bin/$(MACH)
 | |
| 	cp cg $(TARGET_HOME)/lib.bin/$(MACH)/cg
 | |
| 
 | |
| cmp:	 all
 | |
| 	-cmp cg $(TARGET_HOME)/lib.bin/$(MACH)/cg
 | |
| 
 | |
| tables.c: $(SRC_DIR)/table $(CGG)
 | |
| 	-mv tables.h tables.h.save
 | |
| 	$(CPP) -P -I$(SRC_DIR) $(SRC_DIR)/table | $(CGG) > debug.out
 | |
| 	-if cmp -s tables.h.save tables.h; then mv tables.h.save tables.h; else exit 0; fi
 | |
| 	-if cmp -s /dev/null tables.h; then mv tables.h.save tables.h; else exit 0; fi
 | |
| 
 | |
| lint:	tables.c
 | |
| 	$(LINT) $(LINTFLAGS) $(CFILES) tables.c
 | |
| clean:
 | |
| 	rm -f *.$(SUF) tables.c tables.h debug.out cg tables.h.save
 | |
| 
 | |
| codegen.$(SUF):	$(CDIR)/assert.h
 | |
| codegen.$(SUF):	$(CDIR)/data.h
 | |
| codegen.$(SUF):	$(CDIR)/equiv.h
 | |
| codegen.$(SUF):	$(CDIR)/extern.h
 | |
| codegen.$(SUF):	$(CDIR)/param.h
 | |
| codegen.$(SUF):	$(CDIR)/result.h
 | |
| codegen.$(SUF):	$(CDIR)/state.h
 | |
| codegen.$(SUF):	tables.h
 | |
| codegen.$(SUF):	$(CDIR)/types.h
 | |
| compute.$(SUF):	$(CDIR)/assert.h
 | |
| compute.$(SUF):	$(CDIR)/data.h
 | |
| compute.$(SUF):	$(CDIR)/extern.h
 | |
| compute.$(SUF):	$(CDIR)/glosym.h
 | |
| compute.$(SUF):	$(CDIR)/param.h
 | |
| compute.$(SUF):	$(CDIR)/result.h
 | |
| compute.$(SUF):	tables.h
 | |
| compute.$(SUF):	$(CDIR)/types.h
 | |
| equiv.$(SUF):	$(CDIR)/assert.h
 | |
| equiv.$(SUF):	$(CDIR)/data.h
 | |
| equiv.$(SUF):	$(CDIR)/equiv.h
 | |
| equiv.$(SUF):	$(CDIR)/extern.h
 | |
| equiv.$(SUF):	$(CDIR)/param.h
 | |
| equiv.$(SUF):	$(CDIR)/result.h
 | |
| equiv.$(SUF):	tables.h
 | |
| equiv.$(SUF):	$(CDIR)/types.h
 | |
| fillem.$(SUF):	$(CDIR)/assert.h
 | |
| fillem.$(SUF):	$(CDIR)/data.h
 | |
| fillem.$(SUF):	$(CDIR)/extern.h
 | |
| fillem.$(SUF):	$(SRC_DIR)/mach.c
 | |
| fillem.$(SUF):	$(SRC_DIR)/mach.h
 | |
| fillem.$(SUF):	$(CDIR)/param.h
 | |
| fillem.$(SUF):	$(CDIR)/regvar.h
 | |
| fillem.$(SUF):	$(CDIR)/result.h
 | |
| fillem.$(SUF):	tables.h
 | |
| fillem.$(SUF):	$(CDIR)/types.h
 | |
| gencode.$(SUF):	$(CDIR)/assert.h
 | |
| gencode.$(SUF):	$(CDIR)/data.h
 | |
| gencode.$(SUF):	$(CDIR)/extern.h
 | |
| gencode.$(SUF):	$(CDIR)/param.h
 | |
| gencode.$(SUF):	$(CDIR)/result.h
 | |
| gencode.$(SUF):	tables.h
 | |
| gencode.$(SUF):	$(CDIR)/types.h
 | |
| glosym.$(SUF):	$(CDIR)/glosym.h
 | |
| glosym.$(SUF):	$(CDIR)/param.h
 | |
| glosym.$(SUF):	tables.h
 | |
| glosym.$(SUF):	$(CDIR)/types.h
 | |
| main.$(SUF):		$(CDIR)/param.h
 | |
| move.$(SUF):		$(CDIR)/assert.h
 | |
| move.$(SUF):		$(CDIR)/data.h
 | |
| move.$(SUF):		$(CDIR)/extern.h
 | |
| move.$(SUF):		$(CDIR)/param.h
 | |
| move.$(SUF):		$(CDIR)/result.h
 | |
| move.$(SUF):		tables.h
 | |
| move.$(SUF):		$(CDIR)/types.h
 | |
| nextem.$(SUF):	$(CDIR)/assert.h
 | |
| nextem.$(SUF):	$(CDIR)/data.h
 | |
| nextem.$(SUF):	$(CDIR)/extern.h
 | |
| nextem.$(SUF):	$(CDIR)/param.h
 | |
| nextem.$(SUF):	$(CDIR)/result.h
 | |
| nextem.$(SUF):	tables.h
 | |
| nextem.$(SUF):	$(CDIR)/types.h
 | |
| reg.$(SUF):		$(CDIR)/assert.h
 | |
| reg.$(SUF):		$(CDIR)/data.h
 | |
| reg.$(SUF):		$(CDIR)/extern.h
 | |
| reg.$(SUF):		$(CDIR)/param.h
 | |
| reg.$(SUF):		$(CDIR)/result.h
 | |
| reg.$(SUF):		tables.h
 | |
| reg.$(SUF):		$(CDIR)/types.h
 | |
| regvar.$(SUF):	$(CDIR)/assert.h
 | |
| regvar.$(SUF):	$(CDIR)/data.h
 | |
| regvar.$(SUF):	$(CDIR)/extern.h
 | |
| regvar.$(SUF):	$(CDIR)/param.h
 | |
| regvar.$(SUF):	$(CDIR)/regvar.h
 | |
| regvar.$(SUF):	$(CDIR)/result.h
 | |
| regvar.$(SUF):	tables.h
 | |
| regvar.$(SUF):	$(CDIR)/types.h
 | |
| salloc.$(SUF):	$(CDIR)/assert.h
 | |
| salloc.$(SUF):	$(CDIR)/data.h
 | |
| salloc.$(SUF):	$(CDIR)/extern.h
 | |
| salloc.$(SUF):	$(CDIR)/param.h
 | |
| salloc.$(SUF):	$(CDIR)/result.h
 | |
| salloc.$(SUF):	tables.h
 | |
| salloc.$(SUF):	$(CDIR)/types.h
 | |
| state.$(SUF):	$(CDIR)/assert.h
 | |
| state.$(SUF):	$(CDIR)/data.h
 | |
| state.$(SUF):	$(CDIR)/extern.h
 | |
| state.$(SUF):	$(CDIR)/param.h
 | |
| state.$(SUF):	$(CDIR)/result.h
 | |
| state.$(SUF):	$(CDIR)/state.h
 | |
| state.$(SUF):	tables.h
 | |
| state.$(SUF):	$(CDIR)/types.h
 | |
| subr.$(SUF):		$(CDIR)/assert.h
 | |
| subr.$(SUF):		$(CDIR)/data.h
 | |
| subr.$(SUF):		$(CDIR)/extern.h
 | |
| subr.$(SUF):		$(CDIR)/param.h
 | |
| subr.$(SUF):		$(CDIR)/result.h
 | |
| subr.$(SUF):		tables.h
 | |
| subr.$(SUF):		$(CDIR)/types.h
 | |
| var.$(SUF):		$(CDIR)/data.h
 | |
| var.$(SUF):		$(CDIR)/param.h
 | |
| var.$(SUF):		$(CDIR)/result.h
 | |
| var.$(SUF):		tables.h
 | |
| var.$(SUF):		$(CDIR)/types.h
 |