More testfloat Makefile refactoring and fix using the wrong softfloat

This commit is contained in:
Jordan Carlin 2024-09-19 15:34:16 -07:00
parent 90cf61401e
commit aa1a86c70e
No known key found for this signature in database

View File

@ -6,24 +6,25 @@
# Disable parallel execution because both versions of softfloat/testfloat use the same build directory # Disable parallel execution because both versions of softfloat/testfloat use the same build directory
.NOTPARALLEL: .NOTPARALLEL:
.SECONDEXPANSION:
TESTFLOATS := ieee-testfloat riscv-testfloat TESTFLOATS := ieee riscv
SOFTFLOAT_BUILD_DIR := ${WALLY}/addins/berkeley-softfloat-3/build/Linux-x86_64-GCC SOFTFLOAT_BUILD_DIR := ${WALLY}/addins/berkeley-softfloat-3/build/Linux-x86_64-GCC/
TESTFLOAT_BUILD_DIR := ${WALLY}/addins/berkeley-testfloat-3/build/Linux-x86_64-GCC TESTFLOAT_BUILD_DIR := ${WALLY}/addins/berkeley-testfloat-3/build/Linux-x86_64-GCC/
TESTFLOAT_EXECUTABLES := ${TESTFLOAT_BUILD_DIR}/testfloat ${TESTFLOAT_BUILD_DIR}/testfloat_gen \ TESTFLOAT_EXECUTABLES := testfloat testfloat_gen testfloat_ver testsoftfloat timesoftfloat
${TESTFLOAT_BUILD_DIR}/testfloat_ver ${TESTFLOAT_BUILD_DIR}/testsoftfloat \ ORIGINAL_TESTFLOAT_EXECUTABLES := $(foreach item,${TESTFLOAT_EXECUTABLES},$(patsubst %,${TESTFLOAT_BUILD_DIR}%,${item}))
${TESTFLOAT_BUILD_DIR}/timesoftfloat
.PHONY: all ieee-softfloat riscv-softfloat clean .PHONY: all ieee-softfloat riscv-softfloat ${TESTFLOATS} testfloat clean
all: $(TESTFLOATS) all: riscv ieee
%-testfloat: ${TESTFLOATS}: dir_$$@ $$@/testfloat_gen
$(MAKE) -C $(TESTFLOAT_BUILD_DIR) clean
.PRECIOUS: %/testfloat_gen
%/testfloat_gen:
$(MAKE) $*-softfloat $(MAKE) $*-softfloat
$(MAKE) -C ${TESTFLOAT_BUILD_DIR} $(MAKE) testfloat
mkdir -p $* cp -r ${ORIGINAL_TESTFLOAT_EXECUTABLES} $*/
cp -r ${TESTFLOAT_EXECUTABLES} $*/
ieee-softfloat: ieee-softfloat:
$(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean $(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean
@ -33,6 +34,13 @@ riscv-softfloat:
$(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean $(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean
$(MAKE) SPECIALIZE_TYPE=RISCV -C $(SOFTFLOAT_BUILD_DIR) $(MAKE) SPECIALIZE_TYPE=RISCV -C $(SOFTFLOAT_BUILD_DIR)
testfloat:
$(MAKE) -C $(TESTFLOAT_BUILD_DIR) clean
$(MAKE) -C $(TESTFLOAT_BUILD_DIR)
dir_%:
mkdir -p $*
clean: clean:
$(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean $(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean
$(MAKE) -C $(TESTFLOAT_BUILD_DIR) clean $(MAKE) -C $(TESTFLOAT_BUILD_DIR) clean