Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/doc/xidepend')
-rwxr-xr-xwinsup/doc/xidepend34
1 files changed, 34 insertions, 0 deletions
diff --git a/winsup/doc/xidepend b/winsup/doc/xidepend
new file mode 100755
index 000000000..2a1fc831d
--- /dev/null
+++ b/winsup/doc/xidepend
@@ -0,0 +1,34 @@
+#!/bin/sh
+if [ "$1" = "-r" ]
+then
+ # We're being called recursively by another xidepend instance, so
+ # suppress outputs that only happen at the top level.
+ shift
+ subproc=1
+else
+ subproc=0
+fi
+
+for f in "$@"
+do
+ if fgrep -q 'xi:include' "$f"
+ then
+ # This file uses XIncludes. Let's chase its deps recursively.
+ base=`basename "$f" .xml`
+ if [ $subproc -eq 0 ] ; then echo -n "$base/$base.html:" ; fi
+
+ deps=`grep 'xi:include.*href' "$f" | cut -f2 -d\" | tr '\n' ' '`
+ echo -n " $deps"
+ for d in $deps
+ do
+ # Call ourselves recursively to continue to collect deps.
+ # The -r flag tells our subprocess that it is merely
+ # contributing to a dependency line in progress.
+ $0 -r $d
+ done
+
+ # If we're at the top recursion level, we have nothing else to
+ # add to this dependency line other than the newline.
+ if [ $subproc -eq 0 ] ; then echo ; fi
+ fi
+done