# Compile:
# make test
# make test-asan

# Run:
# sudo ./test -t <test name>
# e.g. sudo ./test -t range


files = hws_test.c \
	hws_test_basic.c \
	hws_test_range.c \
	hws_test_resize.c \
	hws_test_common.c \
	hws_test_resource.c \
	hws_test_compare.c \
	hws_test_conv_func.c \
	hws_test_multi_threaded.c \
	hws_test_dest_action.c \
	hws_test_actions.c \
	hws_test_resource_aso_meter.c \
	hws_test_resource_argument.c \
	hws_test_resource_aso_counter.c \
	hws_test_metric.c \
	hws_test_add_rm_hdr.c \
	hws_test_parser.c \
	hws_test_resource_block_alloc.c \
	hws_test_inline_action.c \
	hws_test_isolated_matcher.c \
	hws_test_ct.c \
	hws_test_multi_threaded_ct.c

cur_path=$(shell pwd)
lib_path=$(cur_path)/../../../../build/lib/
lib_path64=$(cur_path)/../../../../build/lib64/
link_flags=-L$(lib_path64) -L$(lib_path) -lmlx5 -libverbs -lpthread -lc -Wl,-rpath=$(lib_path64) -Wl,-rpath=$(lib_path)
cflags = -Wall

.PHONY: test test-perf test-asan

test:
	gcc -o test $(files) -g $(link_flags) $(cflags)

test-perf:
	gcc -o test-perf $(files) -O3 $(link_flags) $(cflags)

test-asan:
	gcc -o test-asan $(files) -fsanitize=address -static-libasan -g $(link_flags) $(cflags)
