In /usr/bin/gccmakedep line 14: LN="ln" ^-- SC2034: LN appears unused. Verify use (or export if used externally). In /usr/bin/gccmakedep line 19: trap "${RM} ${TMP}*; exit 1" 1 2 15 ^---^ SC2064: Use single quotes, otherwise this expands now rather than when signalled. ^----^ SC2064: Use single quotes, otherwise this expands now rather than when signalled. In /usr/bin/gccmakedep line 20: trap "${RM} ${TMP}*; exit 0" 1 2 13 ^---^ SC2064: Use single quotes, otherwise this expands now rather than when signalled. ^----^ SC2064: Use single quotes, otherwise this expands now rather than when signalled. ^-- SC2172: Trapping signals by number is not well defined. Prefer signal names. In /usr/bin/gccmakedep line 30: if [ "$endmarker"x != x -a "$endmarker" = "$1" ]; then ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. In /usr/bin/gccmakedep line 36: qarg=`echo "$1" | sed "s/'/'\\\\\\\\''/g"` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: qarg=$(echo "$1" | sed "s/'/'\\\\\\\\''/g") In /usr/bin/gccmakedep line 62: makefile="`cat ${TMP}arg`" ^-------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: makefile="$(cat ${TMP}arg)" In /usr/bin/gccmakedep line 67: endmarker=`echo $1 | sed 's/^\-\-//'` ^-------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: endmarker=$(echo "$1" | sed 's/^\-\-//') For more information: https://www.shellcheck.net/wiki/SC2034 -- LN appears unused. Verify use (or... https://www.shellcheck.net/wiki/SC2064 -- Use single quotes, otherwise this... https://www.shellcheck.net/wiki/SC2166 -- Prefer [ p ] && [ q ] as [ p -a q...