From 7d32e6c0b202ddb031eec1c4d56ef37456e7876e Mon Sep 17 00:00:00 2001 From: Tynan McAuley Date: Thu, 22 Apr 2021 15:27:05 -0700 Subject: [PATCH] make: Use 'fd' over 'find' if possible --- common.mk | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/common.mk b/common.mk index 00fdae8e..89e998bd 100644 --- a/common.mk +++ b/common.mk @@ -59,7 +59,12 @@ include $(base_dir)/tools/dromajo/dromajo.mk # Prerequisite lists ######################################################################################### # Returns a list of files in directory $1 with file extension $2. -lookup_srcs = $(shell find -L $(1)/ -name target -prune -o -iname "*.$(2)" -print 2> /dev/null) +# If available, use 'fd' to find the list of files, which is faster than 'find'. +ifeq ($(shell which fd),) + lookup_srcs = $(shell find -L $(1)/ -name target -prune -o -iname "*.$(2)" -print 2> /dev/null) +else + lookup_srcs = $(shell fd -L ".*\.$(2)" $(1)) +endif SOURCE_DIRS = $(addprefix $(base_dir)/,generators sims/firesim/sim tools/barstools/iocell fpga/fpga-shells fpga/src) SCALA_SOURCES = $(call lookup_srcs,$(SOURCE_DIRS),scala)