diff options
Diffstat (limited to 'resolvedeps.sh')
| -rw-r--r-- | resolvedeps.sh | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/resolvedeps.sh b/resolvedeps.sh new file mode 100644 index 0000000..e6363b3 --- /dev/null +++ b/resolvedeps.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +## recursively resolve verilog dependencies + +if [ "$#" -ne 1 ]; then + echo "Illegal number of parameters" + echo "Usage $0 <in>" + exit 1 +fi + +filename="$1" +filename="${filename%.*}" + +if test -f "$1"; then + echo " Resolve deps for $1" + gawk 'match($0, /`include "(.*)\.v"/, ary) {print "'"${filename}"'.json:", ary[1] ".v", ary[1] ".dep"}' "$1" > "${filename}.dep" + gawk 'match($0, /`include "(.*)"/, ary) {print ary[1];}' "$1" | while read fi; do + sh "$0" "$fi" + done +else + echo " File $1 not found" + exit 1 +fi |
