COMPOSER_VER = $(if $(findstring 2018, $(MKLROOT)),2018,2017)
export COMPOSER_VER

all: knc

knc:
	$(MAKE) -C gemm
	$(MAKE) -C shoc
	$(MAKE) -C stream
	$(MAKE) -C micp
	$(MAKE) -C doc

knlsb:
	$(MAKE) -C gemm knlsb
	$(MAKE) -C stream knlsb
	$(MAKE) -C micp knlsb
	$(MAKE) -C doc all
	$(MAKE) -C deepbench intel

knllb:
	$(MAKE) -C gemm knllb
	$(MAKE) -C shoc knllb
	$(MAKE) -C stream knllb
	$(MAKE) -C micp knllb
	$(MAKE) -C doc all

test:
	$(MAKE) -C ut micp_ut

clean:
	$(MAKE) -C gemm clean
	$(MAKE) -C shoc clean
	$(MAKE) -C stream clean
	$(MAKE) -C micp clean
	$(MAKE) -C doc clean
	$(MAKE) -C deepbench clean


ifeq ($(proj_target), knlsb)
install: install-knlsb
else
install: install-knc
endif

install-knc:
	$(MAKE) -C gemm install-knc
	$(MAKE) -C shoc install-knc
	$(MAKE) -C stream install-knc
	$(MAKE) -C micp install-knc
	$(MAKE) -C doc install
	$(MAKE) -C data install-knc

install-knlsb:
	$(MAKE) -C gemm install-knlsb
	$(MAKE) -C stream install-knlsb
	$(MAKE) -C micp install-knlsb
	$(MAKE) -C doc install
	$(MAKE) -C data install-knlsb
	$(MAKE) -C deepbench install

install-knllb:
	$(MAKE) -C gemm install-knllb
	$(MAKE) -C shoc install-knllb
	$(MAKE) -C stream install-knllb
	$(MAKE) -C micp install-knllb
	$(MAKE) -C doc install
	$(MAKE) -C data install-knllb

.PHONY: all knc knllb knlsb gemm shoc stream micp doc clean install install-knc install-knllb install-knlsb test

