#!/bin/sh ## recursively resolve verilog dependencies if [ "$#" -ne 1 ]; then echo "Illegal number of parameters" echo "Usage $0 " 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