# SPDX-License-Identifier: GPL-2.0-only
all: test vsock_perf
test: vsock_test vsock_diag_test vsock_uring_test
vsock_test: __KEEPMAKEFILEO__B.o __KEEPMAKEFILEO__C.o __KEEPMAKEFILEO__D.o __KEEPMAKEFILEO__E.o __KEEPMAKEFILEO__F.o __KEEPMAKEFILEO__G.o
vsock_diag_test: __KEEPMAKEFILEO__H.o __KEEPMAKEFILEO__I.o __KEEPMAKEFILEO__J.o __KEEPMAKEFILEO__BA.o
vsock_perf: __KEEPMAKEFILEO__BB.o __KEEPMAKEFILEO__BC.o

vsock_test: LDLIBS = -lpthread
vsock_uring_test: LDLIBS = -luring
vsock_uring_test: __KEEPMAKEFILEO__BD.o __KEEPMAKEFILEO__BE.o __KEEPMAKEFILEO__BF.o __KEEPMAKEFILEO__BG.o __KEEPMAKEFILEO__BH.o

CFLAGS += -g -O2 -Werror -Wall -I. -I../../include -I../../../usr/include -Wno-pointer-sign -fno-strict-overflow -fno-strict-aliasing -fno-common -MMD -U_FORTIFY_SOURCE -D_GNU_SOURCE
.PHONY: all test clean
clean:
	${RM} *.o *.d vsock_test vsock_diag_test vsock_perf vsock_uring_test
-include *.d

VSOCK_INSTALL_PATH ?=

install: all
ifdef VSOCK_INSTALL_PATH
	mkdir -p $(VSOCK_INSTALL_PATH)
	install -m 744 vsock_test $(VSOCK_INSTALL_PATH)
	install -m 744 vsock_perf $(VSOCK_INSTALL_PATH)
	install -m 744 vsock_diag_test $(VSOCK_INSTALL_PATH)
	install -m 744 vsock_uring_test $(VSOCK_INSTALL_PATH)
else
	$(error Error: set VSOCK_INSTALL_PATH to use install)
endif