From 1f66845b35b4e59e4fb232085f0738913527d0d6 Mon Sep 17 00:00:00 2001 From: Sebastien Mirolo Date: Wed, 24 Jul 2013 12:52:24 -0700 Subject: [PATCH] feature: add autoconf --- benchmarks/.gitignore => .gitignore | 1 + Makefile.in | 18 +++++++++++++++++ README.md | 15 +++++++++++++++ benchmarks/Makefile | 2 +- configure.ac | 8 ++++++++ isa/Makefile | 30 ++++++++++++++++------------- 6 files changed, 60 insertions(+), 14 deletions(-) rename benchmarks/.gitignore => .gitignore (92%) create mode 100644 Makefile.in create mode 100644 README.md create mode 100644 configure.ac diff --git a/benchmarks/.gitignore b/.gitignore similarity index 92% rename from benchmarks/.gitignore rename to .gitignore index 131616e..c4bf09f 100644 --- a/benchmarks/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +*~ *.riscv *.host *.o diff --git a/Makefile.in b/Makefile.in new file mode 100644 index 0000000..f81b394 --- /dev/null +++ b/Makefile.in @@ -0,0 +1,18 @@ +prefix := @prefix@ +abs_top_src_dir := @abs_top_srcdir@ +instbasedir := $(DESTDIR)$(prefix) +bmarkdir := $(abs_top_src_dir)/benchmarks +isa_src_dir := $(abs_top_src_dir)/isa + +all: benchmarks isa + +install: all + install -p -m 644 *.hex $(instbasedir)/share/riscv-tests + +benchmarks: + $(MAKE) -f $(bmarkdir)/Makefile bmarkdir=$(bmarkdir) + +isa: + $(MAKE) -f $(isa_src_dir)/Makefile isa_src_dir=$(isa_src_dir) + +.PHONY: benchmarks isa diff --git a/README.md b/README.md new file mode 100644 index 0000000..8bd5fcf --- /dev/null +++ b/README.md @@ -0,0 +1,15 @@ +About +===== + +Unit tests for RISCV processors + +Building from repository +======================== + + $ git clone https://github.com/ucb-bar/riscv-tests + $ cd riscv-tests + $ autoconf + $ ./configure --prefix=/usr/local + $ make + $ make install + diff --git a/benchmarks/Makefile b/benchmarks/Makefile index cc8e881..220a033 100644 --- a/benchmarks/Makefile +++ b/benchmarks/Makefile @@ -61,7 +61,7 @@ RISCV_SIM = spike VPATH += $(addprefix $(bmarkdir)/, $(bmarks)) VPATH += $(bmarkdir)/common -incs += -I. -I./common $(addprefix -I$(bmarkdir)/, $(bmarks)) +incs += -I$(bmarkdir)/common $(addprefix -I$(bmarkdir)/, $(bmarks)) objs := include $(patsubst %, $(bmarkdir)/%/bmark.mk, $(bmarks)) diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..da4ff02 --- /dev/null +++ b/configure.ac @@ -0,0 +1,8 @@ +AC_INIT(riscv-tests, 1.0) + +cross_compiling=yes +AC_PROG_CC([riscv-gcc]) + +AC_OUTPUT( + Makefile +) diff --git a/isa/Makefile b/isa/Makefile index 3abb3b1..e2c6f32 100644 --- a/isa/Makefile +++ b/isa/Makefile @@ -2,12 +2,14 @@ # Makefile for riscv-tests/isa #----------------------------------------------------------------------- -include rv64ui/Makefrag -include rv64uf/Makefrag -include rv64uv/Makefrag -include rv64si/Makefrag -include rv64sv/Makefrag -include rv32ui/Makefrag +isa_src_dir := . + +include $(isa_src_dir)/rv64ui/Makefrag +include $(isa_src_dir)/rv64uf/Makefrag +include $(isa_src_dir)/rv64uv/Makefrag +include $(isa_src_dir)/rv64si/Makefrag +include $(isa_src_dir)/rv64sv/Makefrag +include $(isa_src_dir)/rv32ui/Makefrag default: all @@ -20,6 +22,8 @@ RISCV_GCC_OPTS = -nostdlib -nostartfiles RISCV_OBJDUMP = riscv-objdump --disassemble-all --section=.text --section=.data --section=.bss RISCV_SIM = spike +vpath %.S $(isa_src_dir) + #------------------------------------------------------------ # Build assembly tests @@ -35,31 +39,31 @@ RISCV_SIM = spike define compile_template $$($(1)_p_tests): $(1)-p-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I../env/p -I./macros/scalar -T../env/p/link.ld $$< -o $$@ + $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I$(isa_src_dir)/../env/p -I$(isa_src_dir)/macros/scalar -T$(isa_src_dir)/../env/p/link.ld $$< -o $$@ tests += $$($(1)_p_tests) $$($(1)_pt_tests): $(1)-pt-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I../env/pt -I./macros/scalar -T../env/p/link.ld $$< -o $$@ + $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I$(isa_src_dir)/../env/pt -I$(isa_src_dir)/macros/scalar -T$(isa_src_dir)/../env/p/link.ld $$< -o $$@ tests += $$($(1)_pt_tests) $$($(1)_pm_tests): $(1)-pm-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I../env/pm -I./macros/scalar -T../env/pm/link.ld $$< -o $$@ + $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I$(isa_src_dir)/../env/pm -I$(isa_src_dir)/macros/scalar -T$(isa_src_dir)/../env/pm/link.ld $$< -o $$@ tests += $$($(1)_pm_tests) $$($(1)_v_tests): $(1)-v-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -std=gnu99 -O2 -I../env/v -I./macros/scalar -T../env/v/link.ld ../env/v/entry.S ../env/v/vm.c $$< -lc -o $$@ + $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -std=gnu99 -O2 -I$(isa_src_dir)/../env/v -I$(isa_src_dir)/macros/scalar -T$(isa_src_dir)/../env/v/link.ld $(isa_src_dir)/../env/v/entry.S $(isa_src_dir)/../env/v/vm.c $$< -lc -o $$@ tests += $$($(1)_v_tests) $$($(1)_p_vec_tests): $(1)-p-vec-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I../env/p -I./macros/vector -T../env/p/link.ld $$< -o $$@ + $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I$(isa_src_dir)/../env/p -I$(isa_src_dir)/macros/vector -T$(isa_src_dir)/../env/p/link.ld $$< -o $$@ tests += $$($(1)_p_vec_tests) $$($(1)_pt_vec_tests): $(1)-pt-vec-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I../env/pt -I./macros/vector -T../env/pt/link.ld $$< -o $$@ + $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I$(isa_src_dir)/../env/pt -I$(isa_src_dir)/macros/vector -T$(isa_src_dir)/../env/pt/link.ld $$< -o $$@ tests += $$($(1)_pt_vec_tests) $$($(1)_v_vec_tests): $(1)-v-vec-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -std=gnu99 -O2 -I../env/v -I./macros/vector -T../env/v/link.ld ../env/v/entry.S ../env/v/vm.c $$< -lc -o $$@ + $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -std=gnu99 -O2 -I$(isa_src_dir)/../env/v -I$(isa_src_dir)/macros/vector -T$(isa_src_dir)/../env/v/link.ld $(isa_src_dir)/../env/v/entry.S $(isa_src_dir)/../env/v/vm.c $$< -lc -o $$@ tests += $$($(1)_v_vec_tests) endef -- 2.30.2