#!/bin/sh DISTCFG=build/distcfg.mk [ -s "$DISTCFG" ] || exit 1 VARIABLES= echo "graph { rankdir=LR;" echo " { node [height=.1,width=.3,fontname=Helvetica,fontsize=10];" feat_vars() { FEATURE= while read first second rest; do case "$first" in \#[A-Z]*) continue;; # overridden feature \#) # feature mark case "$second" in profile/*) FEATURE=;; *) FEATURE="$second";; esac ;; *) case "$second" in =|+=|?=) case "$first" in DISTCFG_MK|SUBPROFILES|FEATURES|IMAGE*|MKIMAGE_*) continue;; *) VAR="$first" VARIABLES="$VARIABLES; $VAR" ;; esac ;; *) continue;; esac ;; esac [ -n "$FEATURE" -a -n "$VAR" ] || continue echo " \"$FEATURE\" -- \"$VAR\";" done < "$DISTCFG" echo " { node [shape=box]$VARIABLES; }" } feat_vars | LC_COLLATE=C sort -ru echo " }" echo "}"