include ../env.mk EXE_SCASS = system_systemcass.x EXE_SC = system_systemc.x EXE = ${EXE_SCASS} ${EXE_SC} OBJECTS = $(EXE:.x=.o) LINKS = $(OBJECTS:.o=.cpp) .SECONDARY: main : $(EXE) test : ${EXE} ./system_systemcass.x --a --t --k; \ (tail -n +3 module_graph.dot | diff module_graph_cass_reference.dot -) || eval ${failcom} ./system_systemcass.x --m --t --k; \ (tail -n +3 port_graph.dot | diff port_graph_reference.dot -) || eval ${failcom} ; \ (tail -n +3 signal_graph.dot | diff signal_graph_reference.dot -) || eval ${failcom} ; \ (tail -n +3 process_order.dot | diff process_order_mouchard_reference.dot -) || eval ${failcom} ./system_systemcass.x --p --t --k; \ (tail -n +3 port_graph.dot | diff port_graph_reference.dot -) || eval ${failcom} ; \ (tail -n +3 signal_graph.dot | diff signal_graph_reference.dot -) || eval ${failcom} ; \ (tail -n +3 process_order.dot | diff process_order_buchmann_reference.dot -) || eval ${failcom} @echo Test OK. %.png : %.dot dot -Tpng -o $*.png $*.dot %_systemc.x : %_systemc.o $(SYSTEMC_LIB) $(CXX) -o $@ $*_systemc.o $(LFLAGS_SYSTEMC) 2>&1 | $(CPPFILT) %_systemcass.x : %_systemcass.o $(SYSTEMCASS_LIB) $(CXX) -o $@ $*_systemcass.o $(LFLAGS_SYSTEMCASS) 2>&1 | $(CPPFILT) -include Makefile.deps %_systemc.cpp : %.cpp ln -s $*.cpp $*_systemc.cpp %_systemcass.cpp : %.cpp ln -s $*.cpp $*_systemcass.cpp %_systemc.o : %_systemc.cpp $(CXX) $(CFLAGS_SYSTEMC) -MM $*_systemc.cpp >> Makefile.deps $(CXX) $(CFLAGS_SYSTEMC) -c $*_systemc.cpp -o $*_systemc.o %_systemcass.o : %_systemcass.cpp $(CXX) $(CFLAGS_SYSTEMCASS) -MM $*_systemcass.cpp >> Makefile.deps $(CXX) $(CFLAGS_SYSTEMCASS) -c $*_systemcass.cpp -o $*_systemcass.o clean : -echo > Makefile.deps -rm -f *.o gmon.out -rm -f signal_order.txt module_order.dot signal_graph.dot port_graph.dot -rm -f module_graph.dot process_order.dot -rm -f $(EXE) $(OBJECTS) -for i in $(LINKS) ; do unlink $$i ; done 2> /dev/null -rm -f core* -rm -rf generated_by_systemcass -rm -rf tracesystem_systemcass.x.vcd tracesystem_systemc.x.vcd