.PHONY: all  i0_hb27_2i.rule i1_polar_clip.rule i2_classify.rule clean

ifeq ($(XILINX_VITIS_AIETOOLS),)
XILINX_VITIS_AIETOOLS:=${XILINX_VITIS}/aietools
endif
ifeq ($(CARDANO_AIE_ARCH_MODEL_DIR),)
CARDANO_AIE_ARCH_MODEL_DIR := ${XILINX_VITIS_AIETOOLS}/data/versal_prod/lib
endif
XCHESSCC := xchesscc

INCLUDE_PATH := -I ../../.. -I ${XILINX_VITIS_AIETOOLS}/include -I /home/amd/training/system_simulation/lab/sys_project/aie_component -I /home/amd/training/system_simulation/lab/sys_project/aie_component/AIE/kernels -I /home/amd/training/system_simulation/lab/sys_project/aie_component/AIE -I ${CARDANO_AIE_ARCH_MODEL_DIR}/runtime_cxx/libcxx-lite/include -I ${CARDANO_AIE_ARCH_MODEL_DIR}/runtime_cxx/libs/libcxx-16/include-lite -I ${CARDANO_AIE_ARCH_MODEL_DIR}/runtime/include

all:  i0_hb27_2i.rule i1_polar_clip.rule i2_classify.rule

i0_hb27_2i.rule:
	${XCHESSCC} +f +s -p me -P ${CARDANO_AIE_ARCH_MODEL_DIR} +Wllvm,-O2,-fno-jump-tables,-fno-discard-value-names,-Xclang,-chess-only-info-critical-passes,-g -D_LIBCPP_LIMITS_H -D_LIBCPP_STDIO_H -D_LIBCPP_STDINT_H -D__AIENGINE__ -D__AIE_ARCH__=10 -D__LOCK_FENCE_MODE__=0 -DAIE_OPTION_SCALAR_FLOAT_ON_VECTOR  -I /home/amd/training/system_simulation/lab/sys_project/aie_component/AIE/kernels/interpolators ${INCLUDE_PATH} /home/amd/training/system_simulation/lab/sys_project/aie_component/AIE/kernels/interpolators/hb27_2i.cc -o i0_hb27_2i.ll

i1_polar_clip.rule:
	${XCHESSCC} +f +s -p me -P ${CARDANO_AIE_ARCH_MODEL_DIR} +Wllvm,-O2,-fno-jump-tables,-fno-discard-value-names,-Xclang,-chess-only-info-critical-passes,-g -D_LIBCPP_LIMITS_H -D_LIBCPP_STDIO_H -D_LIBCPP_STDINT_H -D__AIENGINE__ -D__AIE_ARCH__=10 -D__LOCK_FENCE_MODE__=0 -DAIE_OPTION_SCALAR_FLOAT_ON_VECTOR ${INCLUDE_PATH} /home/amd/training/system_simulation/lab/sys_project/aie_component/AIE/kernels/polar_clip.cpp -o i1_polar_clip.ll

i2_classify.rule:
	${XCHESSCC} +f +s -p me -P ${CARDANO_AIE_ARCH_MODEL_DIR} +Wllvm,-O2,-fno-jump-tables,-fno-discard-value-names,-Xclang,-chess-only-info-critical-passes,-g -D_LIBCPP_LIMITS_H -D_LIBCPP_STDIO_H -D_LIBCPP_STDINT_H -D__AIENGINE__ -D__AIE_ARCH__=10 -D__LOCK_FENCE_MODE__=0 -DAIE_OPTION_SCALAR_FLOAT_ON_VECTOR  -I /home/amd/training/system_simulation/lab/sys_project/aie_component/AIE/kernels/classifiers ${INCLUDE_PATH} /home/amd/training/system_simulation/lab/sys_project/aie_component/AIE/kernels/classifiers/classify.cc -o i2_classify.ll

clean:
	rm -rf  i0_hb27_2i.ll i1_polar_clip.ll i2_classify.ll