mirror of
https://github.com/openhwgroup/cvw
synced 2025-02-03 10:15:19 +00:00
48 lines
1.5 KiB
Makefile
Executable File
48 lines
1.5 KiB
Makefile
Executable File
# Jordan Carlin, jcarlin@hmc.edu, August 2024
|
|
# Makefile to generate RISCV and IEEE varaints of Testfloat for CORE-V-Wally
|
|
# SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
|
|
|
|
# Makefile to build testfloat and softfloat executables for IEEE and RISC-V floating point variants
|
|
|
|
# Disable parallel execution because both versions of softfloat/testfloat use the same build directory
|
|
.NOTPARALLEL:
|
|
.SECONDEXPANSION:
|
|
|
|
TESTFLOATS := ieee riscv
|
|
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_EXECUTABLES := testfloat testfloat_gen testfloat_ver testsoftfloat timesoftfloat
|
|
ORIGINAL_TESTFLOAT_EXECUTABLES := $(foreach item,${TESTFLOAT_EXECUTABLES},$(patsubst %,${TESTFLOAT_BUILD_DIR}%,${item}))
|
|
|
|
.PHONY: all ieee-softfloat riscv-softfloat ${TESTFLOATS} testfloat clean
|
|
|
|
all: riscv ieee
|
|
|
|
${TESTFLOATS}: dir_$$@ $$@/testfloat_gen
|
|
|
|
.PRECIOUS: %/testfloat_gen
|
|
%/testfloat_gen:
|
|
$(MAKE) $*-softfloat
|
|
$(MAKE) testfloat
|
|
cp -r ${ORIGINAL_TESTFLOAT_EXECUTABLES} $*/
|
|
|
|
ieee-softfloat:
|
|
$(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean
|
|
$(MAKE) -C $(SOFTFLOAT_BUILD_DIR)
|
|
|
|
riscv-softfloat:
|
|
$(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean
|
|
$(MAKE) SPECIALIZE_TYPE=RISCV -C $(SOFTFLOAT_BUILD_DIR)
|
|
|
|
testfloat:
|
|
$(MAKE) -C $(TESTFLOAT_BUILD_DIR) clean
|
|
$(MAKE) -C $(TESTFLOAT_BUILD_DIR)
|
|
|
|
dir_%:
|
|
mkdir -p $*
|
|
|
|
clean:
|
|
$(MAKE) -C $(SOFTFLOAT_BUILD_DIR) clean
|
|
$(MAKE) -C $(TESTFLOAT_BUILD_DIR) clean
|
|
rm -f ieee/* riscv/*
|