From abe8575c0be3ca5bbfc6eeb9648b0a36c6957b9d Mon Sep 17 00:00:00 2001
From: Chris Hanson <org/chris-hanson/cph>
Date: Tue, 31 Oct 1995 23:26:48 +0000
Subject: [PATCH] Save the operating-system-specific loading files under
 separate names, so that multiple operating systems may be supported from the
 same build-directory.

---
 v7/src/edwin/edwin.sf | 28 +++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)

diff --git a/v7/src/edwin/edwin.sf b/v7/src/edwin/edwin.sf
index a1973dc1d..1be21a0b6 100644
--- a/v7/src/edwin/edwin.sf
+++ b/v7/src/edwin/edwin.sf
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;	$Id: edwin.sf,v 1.12 1995/01/06 18:38:08 cph Exp $
+;;;	$Id: edwin.sf,v 1.13 1995/10/31 23:26:48 cph Exp $
 ;;;
 ;;;	Copyright (c) 1991-95 Massachusetts Institute of Technology
 ;;;
@@ -91,14 +91,24 @@
 
 (load "decls")
 
-(in-package (->environment '(CROSS-REFERENCE))
-  ((generate/common
-    (lambda (pathname pmodel)
-      (write-cref-unusual pathname pmodel)
-      (write-globals pathname pmodel)
-      (write-constructor pathname pmodel)))
-   "edwin"))
-(sf "edwin.con")
+(let ((generate
+       (in-package (->environment '(CROSS-REFERENCE))
+	 (generate/common
+	  (lambda (pathname pmodel)
+	    (write-cref-unusual pathname pmodel)
+	    (write-globals pathname pmodel)
+	    (write-constructor pathname pmodel)))))
+      (name
+       (case microcode-id/operating-system
+	 ((DOS) "edwindos")
+	 ((NT) "edwinw32")
+	 ((OS2) "edwinos2")
+	 ((UNIX) "edwinunx")
+	 (else "edwin"))))
+  (if (not (string=? name "edwin"))
+      (copy-file "edwin.pkg" (pathname-new-type name "pkg")))
+  (generate name)
+  (sf (pathname-new-type name "con")))
 (if (not (file-processed? "edwin" "ldr" "bld"))
     (sf "edwin.ldr"))
 (if (and (file-exists? "edwin.avd")
-- 
2.25.1