PROJ_HOME          := $(shell pwd)
SYSTEMC_HOME       := /path/to/systemc
OCPIP_TLSC_HOME    := ../../../install
OCPIP_ADAPTER_HOME := ../../include/tl1_tl2
BOOST_INCDIR       := /path/to/boost/headers

CCFLAGS := -Wall -Wno-deprecated -g -DSYSTEMC21V1
LDFLAGS :=
LD      := $(CXX)

%.o : %.cpp
	$(CXX) $(CCFLAGS) -I. -I$(SYSTEMC_HOME)/include -I$(OCPIP_TLSC_HOME)/include \
        -I$(BOOST_INCDIR) \
	-I$(OCPIP_TLSC_HOME)/examples/supplementary/ocp_tl2_beh \
	-I$(OCPIP_TLSC_HOME)/examples/supplementary/ocp_stl \
	-I$(OCPIP_ADAPTER_HOME) -c -o$@ $<

default: test_tl1_tl2_master test_tl1_tl2_slave

test_tl1_tl2_master: top_tl1_tl2_master_adapter.o ocp_tl1_master.o \
ocp_tl2_slave.o master_adapter_instance.o
	$(LD) $(LDFLAGS) -o $@ $^ -L $(SYSTEMC_HOME)/lib -lsystemc -lm

test_tl1_tl2_slave: top_tl1_tl2_slave_adapter.o tl2_beh_master.o \
ocp_tl1_slave_sync.o slave_adapter_instance.o
	$(LD) $(LDFLAGS) -o $@ $^ -L $(SYSTEMC_HOME)/lib \
	-L$(OCPIP_TLSC_HOME)/examples/supplementary/ocp_stl \
	-lsystemc -locpstl -lm
clean:
	rm -f test* *.o
