stage1_2/Makefile
author mario
Tue, 23 Oct 2007 10:33:09 +0200
changeset 68 b0a43002dcac
parent 40 873a5b60a7ea
child 159 1e4eb0d48385
permissions -rwxr-xr-x
Adding basic error checking.
# include the system specific Makefile
include ../Makefile.$(shell uname)



default:	all

.PHONY: iec.flex

all: iec.flex.o iec.y.o stage1_2.o



clean:
	-rm -f *.o Makefile.depend
	-rm -f iec.flex.c iec.y.cc iec.y.hh iec.y.output
	-rm -f iec.noerrorcheck.y
	-rm -f test_flex


CFLAGS += -I. -I../* -I../../absyntax



test_flex: iec.flex.c iec.y.hh
	$(CXX) -o test_flex.o -c iec.flex.c -DTEST_MAIN $(CFLAGS)
	$(CXX) -o test_flex test_flex.o
#	$(CXX) -o test_flex test_flex.o ../util/symtable.o -DTEST_MAIN





iec.flex.c: iec.flex
	flex -oiec.flex.c iec.flex

iec.flex.o: iec.y.hh iec.flex.c
	$(CXX) -c iec.flex.c -D DEFAULT_LIBDIR='"$(IECLIBDIR)"' $(CFLAGS)

iec.y.hh iec.y.cc: iec.y
	bison -d -v -o iec.y.cc iec.y

iec.y.o: iec.y.cc iec.y.hh
	$(CXX) -c iec.y.cc $(CFLAGS)


noerrorcheck: iec.y
	sed '/ERROR_CHECK_BEGIN/,/ERROR_CHECK_END/ d' iec.y > iec.noerrorcheck.y
	flex -oiec.flex.c iec.flex
	$(CXX) -c iec.flex.c -D DEFAULT_LIBDIR='"$(IECLIBDIR)"' $(CFLAGS)
	bison -d -v -o iec.y.cc iec.noerrorcheck.y
	$(CXX) -c iec.y.cc $(CFLAGS)




#how to make things from other directories if they are missing
../% /%:
	$(MAKE) -C $(@D) $(@F)


Makefile.depend depend:
	$(CXX) -MM -MG -I. *.cc \
	  | perl -pe 's/:/ Makefile.depend:/' > Makefile.depend

include Makefile.depend