.gitignores, make tags, sf-with-dependencies
authorMatt Birkholz <matt@birkholz.chandler.az.us>
Wed, 29 Jul 2009 18:13:19 +0000 (11:13 -0700)
committerMatt Birkholz <matt@birkholz.chandler.az.us>
Wed, 29 Jul 2009 18:13:19 +0000 (11:13 -0700)
.gitignore
doc/.gitignore [new file with mode: 0644]
src/.gitignore [new file with mode: 0644]
src/Setup.sh
src/etc/Tags.sh
src/microcode/Tags.sh [new file with mode: 0755]
src/sf/sf.pkg
src/sf/toplev.scm

index 618f511207d598d20e6459cddf4eaa0c447ecbdc..fa96363efad55286b1bf53b28b3b42a46c902b9f 100644 (file)
@@ -1,19 +1,9 @@
-/C/
-/LOG
-/html/
-/linux/
-/macosx/
-.edwin-ffi
-*.bin
-*.ext
-*.com
-*.bci
-*.pkd
-*.crf
-*.fre
+configure
+config.guess
+config.log
+config.status
+config.sub
+autom4te.cache
+Makefile
 TAGS
-*.o
-*.lo
-*.la
-*~
-#*
+!/src/TAGS
diff --git a/doc/.gitignore b/doc/.gitignore
new file mode 100644 (file)
index 0000000..a943879
--- /dev/null
@@ -0,0 +1,26 @@
+*.aux
+*.cp
+*.cps
+*.fn
+*.fns
+*.ky
+*.kys
+*.log
+*.nv
+*.nvs
+*.op
+*.ops
+*.pg
+*.toc
+*.tp
+*.vr
+*.vrs
+*.info
+*.info-*
+*.pdf
+*.ps
+/make-common
+/imail/mit-scheme-imail/
+/ref-manual/mit-scheme-ref/
+/sos/mit-scheme-sos/
+/user-manual/mit-scheme-user/
diff --git a/src/.gitignore b/src/.gitignore
new file mode 100644 (file)
index 0000000..070a133
--- /dev/null
@@ -0,0 +1,43 @@
+*.bin
+*.ext
+*.com
+*.bci
+*.crf
+*.fre
+*.pkd
+*.o
+*.so
+Clean.sh
+Setup.sh
+!/Setup.sh
+Stage.sh
+Tags.sh
+!/etc/Tags.sh
+!/microcode/Tags.sh
+/*/.edwin-ffi
+*/Makefile.in
+/compiler/compiler.cbf
+/compiler/compiler.pkg
+/compiler/compiler.sf
+/compiler/machine
+/compiler/machines/vax/dinstr1.scm
+/compiler/machines/vax/dinstr2.scm
+/compiler/machines/vax/dinstr3.scm
+/edwin/edwin.bld
+/lib
+/makefiles_created
+/microcode/Makefile.deps
+/microcode/cmpauxmd.m4
+/microcode/cmpauxmd/i386-nt.asm
+/microcode/cmpauxmd/i386-ntw.asm
+/microcode/cmpintmd-config.h
+/microcode/cmpintmd.c
+/microcode/cmpintmd.h
+/microcode/config.h
+/microcode/config.h.in
+/microcode/findprim
+/microcode/liarc-rules
+/microcode/liarc-vars
+/microcode/makegen-cc
+/microcode/scheme
+/microcode/usrdef.c
index 5479ecde4765f3bf7fc3930503c0053e8f871714..6b691eb13d0c1b91471b1a642fbc365495726b53 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $Id: Setup.sh,v 1.28 2008/01/30 20:01:40 cph Exp $
+# $Id$
 #
 # Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
 #     1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
@@ -36,7 +36,7 @@ fi
 . etc/functions.sh
 
 INSTALLED_SUBDIRS="cref edwin imail sf sos ssp star-parser xml"
-OTHER_SUBDIRS="6001 compiler runtime win32 xdoc microcode"
+OTHER_SUBDIRS="6001 compiler rcs runtime win32 xdoc microcode"
 
 # lib
 maybe_mkdir lib
index 4fddda2bb7e0491eb566417793f0e0a3ddb66cb1..670307b10a4974ac4b223f0f89faa80195b734be 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $Id: Tags.sh,v 1.7 2008/01/30 20:02:08 cph Exp $
+# $Id$
 #
 # Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
 #     1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
@@ -26,4 +26,4 @@
 # Utility to make TAGS file for an MIT/GNU Scheme build directory.
 # The working directory must be the build directory.
 
-etags *.scm
+etags *.scm *.pkg
diff --git a/src/microcode/Tags.sh b/src/microcode/Tags.sh
new file mode 100755 (executable)
index 0000000..6001287
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+#
+# Utility to make TAGS file for the MIT/GNU Scheme MICROCODE build
+# directory.  The working directory must be the build directory.
+
+make tags
index 48c6608a02ef4acd595eb21a04a12dd9811c74b9..852a9bb27e25de9761cbb43afb64b12299c45055 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: sf.pkg,v 4.22 2008/01/30 20:02:38 cph Exp $
+$Id$
 
 Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
     1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
@@ -52,6 +52,7 @@ USA.
   (files "toplev")
   (parent (scode-optimizer))
   (export ()
+         sf-with-dependencies
          sf
          sf/default-declarations
          sf/default-syntax-table
index 83624b70d99f5ec1e74b4895d525572f7182a96e..6995a72cd7583e660ce6cb57163f73649255ebb3 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: toplev.scm,v 4.33 2008/01/30 20:02:38 cph Exp $
+$Id$
 
 Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
     1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
@@ -48,6 +48,43 @@ USA.
 (define (integrate/scode scode receiver)
   (integrate/simple identity-procedure scode receiver))
 
+(define (sf-with-dependencies sources dependencies #!optional syntax-env)
+  (let ((env (if (default-object? syntax-env)
+                sf/default-syntax-table
+                syntax-env))
+       (deps (map (lambda (dep) (pathname-default-type dep "bin"))
+                  dependencies)))
+    (define (file-reasons file)
+      (append
+       (if (not (file-processed? file "scm" "bin"))
+          (list (pathname-default-type file "scm"))
+          '())
+       (let* ((bin-file (pathname-new-type file "bin"))
+             (bin-time (file-modification-time bin-file)))
+        (if (not bin-time)
+            '()
+            (list-transform-positive deps
+              (lambda (dep)
+                (let ((dep-time (file-modification-time dep)))
+                  (or (not dep-time) (< bin-time dep-time)))))))))
+    (for-each
+     (lambda (file)
+       (let ((reasons (file-reasons file)))
+        (if (not (null? reasons))
+            (begin
+              (if (eq? sf:noisy? #t)
+                  (begin
+                    (write-string ";Processing ")
+                    (write (enough-namestring file))
+                    (write-string " because of:")
+                    (for-each (lambda (reason)
+                                (write-char #\space)
+                                (write (enough-namestring reason)))
+                              reasons)))
+              (fluid-let ((sf/default-syntax-table env))
+                (sf file))))))
+     (if (pair? sources) sources (list sources)))))
+
 (define (sf input-string #!optional bin-string spec-string)
   (syntax-file input-string
               (and (not (default-object? bin-string)) bin-string)