#!/bin/sh
cat >gnulib.dot <<EOF
digraph gnulib {
EOF

for module in `./gnulib-tool --list`; do
  dotfile=`basename $module`.dot
  echo digraph $module "{" | cat >$dotfile
  for dependency in `./gnulib-tool --extract-dependencies $module`; do
    echo "\"$module\" -> \"$dependency\"" | cat >>$dotfile
  done
  echo "}" | cat >>$dotfile

  # it don't like empty graphs...
  if [ `wc -l $dotfile | cut -d ' ' -f1` -gt 2 ]; then
     cat $dotfile | sed s/digraph\ /subgraph\ / | cat >>gnulib.dot
  fi

done

cat >>gnulib.dot <<EOF
}
EOF

for module in `./gnulib-tool --list`; do
  dotfile=fullgraph-`basename $module`.dot
  echo digraph $module "{" | cat >$dotfile
  grep \"$module\" gnulib.dot | cat >>$dotfile
  echo "}" | cat >>$dotfile
done
