Add m target for matcha fpga tests Change-Id: I028a5106ac6c28fa617c2332f9a01f919457e727
diff --git a/platforms/nexus/matcha_hw.mk b/platforms/nexus/matcha_hw.mk index 8b5cd09..e1dd7cb 100644 --- a/platforms/nexus/matcha_hw.mk +++ b/platforms/nexus/matcha_hw.mk
@@ -12,11 +12,12 @@ # See the License for the specific language governing permissions and # limitations under the License. -MATCHA_SRC_DIR := $(ROOTDIR)/hw/matcha -MATCHA_OUT_DIR := $(OUT)/matcha/hw -MATCHA_VERILATOR_TB := $(MATCHA_OUT_DIR)/sim-verilator/Vchip_sim_tb -MATCHA_TESTLOG_DIR := $(MATCHA_OUT_DIR)/test-log -MATCHA_FPGA_BINARY_DIR := $(MATCHA_OUT_DIR)/fpga_tests +MATCHA_SRC_DIR := $(ROOTDIR)/hw/matcha +MATCHA_OUT_DIR := $(OUT)/matcha/hw +MATCHA_VERILATOR_TB := $(MATCHA_OUT_DIR)/sim-verilator/Vchip_sim_tb +MATCHA_TESTLOG_DIR := $(MATCHA_OUT_DIR)/test-log +MATCHA_FPGA_BINARY_DIR := $(MATCHA_OUT_DIR)/fpga_tests +MATCHA_FPGA_MATCHA_BINARY_DIR := $(MATCHA_FPGA_BINARY_DIR)/matcha MATCHA_FPGA_KELVIN_BINARY_DIR := $(MATCHA_FPGA_BINARY_DIR)/kelvin $(MATCHA_OUT_DIR): @@ -76,6 +77,24 @@ bazel build --define DISABLE_VERILATOR_BUILD=true --build_tag_filters="-kelvin_fpga" \ //sw/device/... +$(MATCHA_FPGA_MATCHA_BINARY_DIR): + mkdir -p $(MATCHA_FPGA_MATCHA_BINARY_DIR) + +## Build test binaries that run on FPGA +matcha_fpga_tests: | $(MATCHA_FPGA_MATCHA_BINARY_DIR) + cd $(MATCHA_SRC_DIR) && \ + bazel query //sw/device/tests/... \ + | grep 'fpga_nexus' \ + | egrep '_bin$$' \ + | grep -v '/smc:' \ + | grep -v 'kelvin' \ + | grep -v 'example_test_from_rom_rom_prog_fpga_nexus_bin' \ + | xargs bazel build + cd $(MATCHA_SRC_DIR) && \ + find 'bazel-out/' \ + -type f \ + \( -wholename "*ST-*/*fpga_nexus.elf" -o -wholename "*ST-*/*fpga_nexus.bin" \) \ + -exec cp -f '{}' "$(MATCHA_FPGA_MATCHA_BINARY_DIR)" \; $(MATCHA_FPGA_KELVIN_BINARY_DIR): mkdir -p "$(MATCHA_FPGA_KELVIN_BINARY_DIR)"