diff --git a/Makefile.in b/Makefile.in index 51d335a0..5eabdc9e 100644 --- a/Makefile.in +++ b/Makefile.in @@ -162,22 +162,21 @@ report-binutils: report-binutils-@default_target@ report-gdb: report-gdb-@default_target@ .PHONY: build-sim -build-sim: ifeq ($(SIM),qemu) SIM_PATH:=$(srcdir)/scripts/wrapper/qemu SIM_PREPARE:=PATH="$(SIM_PATH):$(INSTALL_DIR)/bin:$(PATH)" RISC_V_SYSROOT="$(SYSROOT)" -build-sim: stamps/build-qemu +SIM_STAMP:= stamps/build-qemu else ifeq ($(SIM),spike) # Using spike simulator. SIM_PATH:=$(srcdir)/scripts/wrapper/spike SIM_PREPARE:=PATH="$(SIM_PATH):$(INSTALL_DIR)/bin:$(PATH)" PK_PATH="$(INSTALL_DIR)/$(NEWLIB_TUPLE)/bin/" -build-sim: stamps/build-spike +SIM_STAMP:= stamps/build-spike ifneq (,$(findstring rv32,$(NEWLIB_MULTILIB_NAMES))) -build-sim: stamps/build-pk32 +SIM_STAMP:= stamps/build-pk32 endif ifneq (,$(findstring rv64,$(NEWLIB_MULTILIB_NAMES))) -build-sim: stamps/build-pk64 +SIM_STAMP:= stamps/build-pk64 endif else ifeq ($(SIM),gdb) @@ -190,6 +189,8 @@ endif endif endif +build-sim: $(SIM_STAMP) + stamps/check-write-permission: mkdir -p $(INSTALL_DIR)/.test || \ (echo "Sorry, you don't have permission to write to" \ @@ -793,17 +794,17 @@ stamps/build-dejagnu: $(srcdir)/riscv-dejagnu mkdir -p $(dir $@) date > $@ -stamps/check-gcc-newlib: stamps/build-gcc-newlib-stage2 build-sim stamps/build-dejagnu +stamps/check-gcc-newlib: stamps/build-gcc-newlib-stage2 $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-gcc-newlib-stage2 check-gcc "RUNTESTFLAGS=--target_board='$(NEWLIB_TARGET_BOARDS)'" mkdir -p $(dir $@) date > $@ -stamps/check-gcc-newlib-nano: stamps/build-gcc-newlib-stage2 build-sim stamps/build-dejagnu +stamps/check-gcc-newlib-nano: stamps/build-gcc-newlib-stage2 $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-gcc-newlib-stage2 check-gcc "RUNTESTFLAGS=--target_board='$(NEWLIB_NANO_TARGET_BOARDS)'" mkdir -p $(dir $@) date > $@ -stamps/check-gcc-linux: stamps/build-gcc-linux-stage2 build-sim stamps/build-dejagnu +stamps/check-gcc-linux: stamps/build-gcc-linux-stage2 $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-gcc-linux-stage2 check-gcc "RUNTESTFLAGS=--target_board='$(GLIBC_TARGET_BOARDS)'" mkdir -p $(dir $@) date > $@ @@ -814,7 +815,7 @@ check-dhrystone-newlib-nano: $(patsubst %,stamps/check-dhrystone-newlib-nano-%,$ stamps/check-dhrystone-newlib-%: \ stamps/build-gcc-newlib-stage2 \ - build-sim \ + $(SIM_STAMP) \ $(wildcard $(srcdir)/test/benchmarks/dhrystone/*) $(eval $@_ARCH := $(word 4,$(subst -, ,$@))) $(eval $@_ABI := $(word 5,$(subst -, ,$@))) @@ -823,7 +824,7 @@ stamps/check-dhrystone-newlib-%: \ stamps/check-dhrystone-newlib-nano-%: \ stamps/build-gcc-newlib-stage2 \ - build-sim \ + $(SIM_STAMP) \ $(wildcard $(srcdir)/test/benchmarks/dhrystone/*) $(eval $@_ARCH := $(word 5,$(subst -, ,$@))) $(eval $@_ABI := $(word 6,$(subst -, ,$@))) @@ -835,34 +836,34 @@ check-dhrystone-linux: $(patsubst %,stamps/check-dhrystone-linux-%,$(GLIBC_MULTI stamps/check-dhrystone-linux-%: \ stamps/build-gcc-linux-stage2 \ - build-sim \ + $(SIM_STAMP) \ $(wildcard $(srcdir)/test/benchmarks/dhrystone/*) $(eval $@_ARCH := $(word 4,$(subst -, ,$@))) $(eval $@_ABI := $(word 5,$(subst -, ,$@))) $(eval $@_XLEN := $(patsubst rv32%,32,$(patsubst rv64%,64,$($@_ARCH)))) $(SIM_PREPARE) $(srcdir)/test/benchmarks/dhrystone/check -march=$($@_ARCH) -mabi=$($@_ABI) -cc=riscv$(XLEN)-unknown-elf-gcc -objdump=riscv$(XLEN)-unknown-elf-objdump -sim=riscv$($@_XLEN)-unknown-elf-run -out=$@ $(filter %.c,$^) || true -stamps/check-binutils-newlib: stamps/build-gcc-newlib-stage2 build-sim stamps/build-dejagnu +stamps/check-binutils-newlib: stamps/build-gcc-newlib-stage2 $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-binutils-newlib check-binutils check-gas check-ld -k "RUNTESTFLAGS=--target_board='$(NEWLIB_TARGET_BOARDS)'" || true date > $@ -stamps/check-binutils-newlib-nano: stamps/build-gcc-newlib-stage2 build-sim stamps/build-dejagnu +stamps/check-binutils-newlib-nano: stamps/build-gcc-newlib-stage2 $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-binutils-newlib check-binutils check-gas check-ld -k "RUNTESTFLAGS=--target_board='$(NEWLIB_NANO_TARGET_BOARDS)'" || true date > $@ -stamps/check-binutils-linux: stamps/build-gcc-linux-stage2 build-sim stamps/build-dejagnu +stamps/check-binutils-linux: stamps/build-gcc-linux-stage2 $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-binutils-linux check-binutils check-gas check-ld -k "RUNTESTFLAGS=--target_board='$(GLIBC_TARGET_BOARDS)'" || true date > $@ -stamps/check-gdb-newlib: stamps/build-gcc-newlib-stage2 stamps/build-gdb-newlib build-sim stamps/build-dejagnu +stamps/check-gdb-newlib: stamps/build-gcc-newlib-stage2 stamps/build-gdb-newlib $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-gdb-newlib check-gdb -k "RUNTESTFLAGS=--target_board='$(NEWLIB_TARGET_BOARDS)'" || true date > $@ -stamps/check-gdb-newlib-nano: stamps/build-gcc-newlib-stage2 stamps/build-gdb-newlib build-sim stamps/build-dejagnu +stamps/check-gdb-newlib-nano: stamps/build-gcc-newlib-stage2 stamps/build-gdb-newlib $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-gdb-newlib check-gdb -k "RUNTESTFLAGS=--target_board='$(NEWLIB_NANO_TARGET_BOARDS)'" || true date > $@ -stamps/check-gdb-linux: stamps/build-gcc-linux-stage2 stamps/build-gdb-linux build-sim stamps/build-dejagnu +stamps/check-gdb-linux: stamps/build-gcc-linux-stage2 stamps/build-gdb-linux $(SIM_STAMP) stamps/build-dejagnu $(SIM_PREPARE) $(MAKE) -C build-gdb-linux check-gdb -k "RUNTESTFLAGS=--target_board='$(GLIBC_TARGET_BOARDS)'" || true date > $@