diff --git a/.gitignore b/.gitignore index 9c73c6e1..ab21150e 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ project/metals.sbt project/project/ .ivy2 .sbt +classpath-cache/ diff --git a/sims/vcs/Makefile b/sims/vcs/Makefile index fc0a9fdb..8517fc1d 100644 --- a/sims/vcs/Makefile +++ b/sims/vcs/Makefile @@ -93,7 +93,7 @@ $(output_dir)/%.fsdb: $(output_dir)/% $(sim_debug) ######################################################################################### .PHONY: clean clean-sim clean-sim-debug clean: - rm -rf $(gen_dir) $(sim_prefix)-* ucli.key + rm -rf $(CLASSPATH_CACHE) $(gen_dir) $(sim_prefix)-* ucli.key clean-sim: rm -rf $(model_dir) $(build_dir)/vc_hdrs.h $(sim) $(sim).daidir ucli.key diff --git a/sims/verilator/Makefile b/sims/verilator/Makefile index 11b80331..dca1e414 100644 --- a/sims/verilator/Makefile +++ b/sims/verilator/Makefile @@ -226,7 +226,7 @@ $(output_dir)/%.vpd: $(output_dir)/% $(sim_debug) ######################################################################################### .PHONY: clean clean-sim clean-sim-debug clean: - rm -rf $(gen_dir) $(sim_prefix)-* + rm -rf $(CLASSPATH_CACHE) $(gen_dir) $(sim_prefix)-* clean-sim: rm -rf $(model_dir) $(sim) diff --git a/sims/xcelium/Makefile b/sims/xcelium/Makefile index 12b31087..41acdeec 100644 --- a/sims/xcelium/Makefile +++ b/sims/xcelium/Makefile @@ -131,7 +131,7 @@ $(output_dir)/%.vcd: $(output_dir)/% $(sim_debug) ######################################################################################### .PHONY: clean clean-sim clean-sim-debug clean: - rm -rf $(gen_dir) $(sim_prefix)-* + rm -rf $(CLASSPATH_CACHE) $(gen_dir) $(sim_prefix)-* clean-sim: rm -rf $(model_dir) $(sim) $(sim_workdir) $(sim_run_tcl) ucli.key bpad_*.err sigusrdump.out dramsim*.log diff --git a/variables.mk b/variables.mk index 35c947fc..86d26a72 100644 --- a/variables.mk +++ b/variables.mk @@ -146,8 +146,9 @@ ifeq ($(GENERATOR_PACKAGE),hwacha) endif # classpaths -CHIPYARD_CLASSPATH ?= $(gen_dir)/chipyard.jar -TAPEOUT_CLASSPATH ?= $(gen_dir)/tapeout.jar +CLASSPATH_CACHE ?= $(base_dir)/classpath-cache +CHIPYARD_CLASSPATH ?= $(CLASSPATH_CACHE)/chipyard.jar +TAPEOUT_CLASSPATH ?= $(CLASSPATH_CACHE)/tapeout.jar # if *_CLASSPATH is a true java classpath, it can be colon-delimited list of paths (on *nix) CHIPYARD_CLASSPATH_TARGETS ?= $(subst :, ,$(CHIPYARD_CLASSPATH)) TAPEOUT_CLASSPATH_TARGETS ?= $(subst :, ,$(TAPEOUT_CLASSPATH)) diff --git a/vlsi/Makefile b/vlsi/Makefile index 8ca74d31..b3901fe6 100644 --- a/vlsi/Makefile +++ b/vlsi/Makefile @@ -171,4 +171,4 @@ $(OBJ_DIR)/hammer.d: $(HAMMER_D_DEPS) ######################################################################################### .PHONY: clean clean: - rm -rf $(VLSI_OBJ_DIR) hammer-vlsi*.log __pycache__ output.json $(GENERATED_CONFS) $(gen_dir) $(SIM_CONF) $(SIM_DEBUG_CONF) $(SIM_TIMING_CONF) $(POWER_CONF) + rm -rf $(VLSI_OBJ_DIR) hammer-vlsi*.log __pycache__ output.json $(GENERATED_CONFS) $(CLASSPATH_CACHE) $(gen_dir) $(SIM_CONF) $(SIM_DEBUG_CONF) $(SIM_TIMING_CONF) $(POWER_CONF)