CC=g++
CXX=g++
CLDIR?=/apps/opencl/2.0/usr

ifeq ($(TARGET),mali)
EXTRA_FLAGS=-mfloat-abi=hard
EXTRA_LIBS=-lmali
else
EXTRA_FLAGS=
EXTRA_LIBS=
endif

.SUFFIXES:

main: build/myocyte

build/%.o: src/%.c
	$(CC) $(EXTRA_FLAGS) -I ../common/include -I $(CLDIR)/include -I src -c -o $@ $<

build/emi.o: ../common/src/emi.cpp
	$(CXX) $(EXTRA_FLAGS) -I ../common/include -I $(CLDIR)/include -I src -c -o $@ $<

build/%.o: src/%.cpp
	$(CXX) $(EXTRA_FLAGS) -I ../common/include -I $(CLDIR)/include -I src -c -o $@ $<

build/myocyte: build/emi.o build/main.o build/kernel_gpu_opencl_wrapper.o build/file.o build/num.o build/opencl.o build/timer.o
	$(CXX) $(EXTRA_FLAGS) -o $@ $(EXTRA_LIBS) -L$(CLDIR)/lib -L$(CLDIR)/lib64 $^ -lOpenCL

.PHONY: clean
clean:
	rm -f build/*.o build/pathfinder
