1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyunnoarg: 3*4882a593Smuzhiyun $(MAKE) -C ../ 4*4882a593Smuzhiyun 5*4882a593SmuzhiyunTEST_GEN_PROGS := count_instructions count_stcx_fail l3_bank_test per_event_excludes 6*4882a593SmuzhiyunEXTRA_SOURCES := ../harness.c event.c lib.c ../utils.c 7*4882a593Smuzhiyun 8*4882a593Smuzhiyuntop_srcdir = ../../../../.. 9*4882a593Smuzhiyuninclude ../../lib.mk 10*4882a593Smuzhiyun 11*4882a593Smuzhiyunall: $(TEST_GEN_PROGS) ebb 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun$(TEST_GEN_PROGS): $(EXTRA_SOURCES) 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun# loop.S can only be built 64-bit 16*4882a593Smuzhiyun$(OUTPUT)/count_instructions: CFLAGS += -m64 17*4882a593Smuzhiyun$(OUTPUT)/count_instructions: loop.S count_instructions.c $(EXTRA_SOURCES) 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun$(OUTPUT)/count_stcx_fail: CFLAGS += -m64 20*4882a593Smuzhiyun$(OUTPUT)/count_stcx_fail: loop.S $(EXTRA_SOURCES) 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun$(OUTPUT)/per_event_excludes: ../utils.c 24*4882a593Smuzhiyun 25*4882a593SmuzhiyunDEFAULT_RUN_TESTS := $(RUN_TESTS) 26*4882a593Smuzhiyunoverride define RUN_TESTS 27*4882a593Smuzhiyun $(DEFAULT_RUN_TESTS) 28*4882a593Smuzhiyun TARGET=ebb; BUILD_TARGET=$$OUTPUT/$$TARGET; $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET run_tests 29*4882a593Smuzhiyunendef 30*4882a593Smuzhiyun 31*4882a593SmuzhiyunDEFAULT_EMIT_TESTS := $(EMIT_TESTS) 32*4882a593Smuzhiyunoverride define EMIT_TESTS 33*4882a593Smuzhiyun $(DEFAULT_EMIT_TESTS) 34*4882a593Smuzhiyun TARGET=ebb; BUILD_TARGET=$$OUTPUT/$$TARGET; $(MAKE) OUTPUT=$$BUILD_TARGET -s -C $$TARGET emit_tests 35*4882a593Smuzhiyunendef 36*4882a593Smuzhiyun 37*4882a593SmuzhiyunDEFAULT_INSTALL_RULE := $(INSTALL_RULE) 38*4882a593Smuzhiyunoverride define INSTALL_RULE 39*4882a593Smuzhiyun $(DEFAULT_INSTALL_RULE) 40*4882a593Smuzhiyun TARGET=ebb; BUILD_TARGET=$$OUTPUT/$$TARGET; $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET install 41*4882a593Smuzhiyunendef 42*4882a593Smuzhiyun 43*4882a593Smuzhiyunclean: 44*4882a593Smuzhiyun $(RM) $(TEST_GEN_PROGS) $(OUTPUT)/loop.o 45*4882a593Smuzhiyun TARGET=ebb; BUILD_TARGET=$$OUTPUT/$$TARGET; $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET clean 46*4882a593Smuzhiyun 47*4882a593Smuzhiyunebb: 48*4882a593Smuzhiyun TARGET=$@; BUILD_TARGET=$$OUTPUT/$$TARGET; mkdir -p $$BUILD_TARGET; $(MAKE) OUTPUT=$$BUILD_TARGET -k -C $$TARGET all 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun.PHONY: all run_tests clean ebb 51