summaryrefslogtreecommitdiff
path: root/doc/stdlib/make-library-files
diff options
context:
space:
mode:
authorGravatar Samuel Mimram <smimram@debian.org>2006-04-28 14:59:16 +0000
committerGravatar Samuel Mimram <smimram@debian.org>2006-04-28 14:59:16 +0000
commit3ef7797ef6fc605dfafb32523261fe1b023aeecb (patch)
treead89c6bb57ceee608fcba2bb3435b74e0f57919e /doc/stdlib/make-library-files
parent018ee3b0c2be79eb81b1f65c3f3fa142d24129c8 (diff)
Imported Upstream version 8.0pl3+8.1alphaupstream/8.0pl3+8.1alpha
Diffstat (limited to 'doc/stdlib/make-library-files')
-rwxr-xr-xdoc/stdlib/make-library-files36
1 files changed, 36 insertions, 0 deletions
diff --git a/doc/stdlib/make-library-files b/doc/stdlib/make-library-files
new file mode 100755
index 00000000..91e3cc3f
--- /dev/null
+++ b/doc/stdlib/make-library-files
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+# Needs COQTOP and GALLINA set
+
+# On garde la liste de tous les *.v avec dates dans library.files.ls
+# Si elle a change depuis la derniere fois ou library.files n'existe pas
+# on fabrique des .g (si besoin) et la liste library.files dans
+# l'ordre de ls -tr des *.vo
+# Ce dernier trie les fichiers dans l'ordre inverse de leur date de création
+# En supposant que make fait son boulot, ca fait un tri topologique du
+# graphe des dépendances
+
+LIBDIRS="Arith NArith ZArith Reals Logic Bool Lists IntMap Relations Sets Sorting Wellfounded Setoids"
+
+rm -f library.files.ls.tmp
+(cd $COQTOP/theories; find $LIBDIR -name "*.v" -ls) > library.files.ls.tmp
+if ! test -e library.files || ! cmp library.files.ls library.files.ls.tmp; then
+ mv -f library.files.ls.tmp library.files.ls
+ rm -f library.files; touch library.files
+ ABSOLUTE=`pwd`/library.files
+ cd $COQTOP/theories
+ echo $LIBDIRS
+ for rep in $LIBDIRS ; do
+ (cd $rep
+ echo $rep/intro.tex >> $ABSOLUTE
+ VOFILES=`ls -tr *.vo`
+ for file in $VOFILES ; do
+ VF=`basename $file \.vo`
+ if [ \( ! -e $VF.g \) -o \( $VF.v -nt $VF.g \) ] ; then
+ $GALLINA $VF.v
+ fi
+ echo $rep/$VF.g >> $ABSOLUTE
+ done
+ )
+ done
+fi