~ chicken-core (chicken-5) 76660fab14f524fce1e89dd276c5f706e74fc989


commit 76660fab14f524fce1e89dd276c5f706e74fc989
Author:     Evan Hanson <evhan@foldling.org>
AuthorDate: Mon Dec 31 23:00:21 2018 +1300
Commit:     Evan Hanson <evhan@foldling.org>
CommitDate: Mon Dec 31 23:23:40 2018 +1300

    Use consistent file extension for object files on Cygwin
    
    On Cygwin, a different file extension was used for object files in csc
    and chicken-install, resulting in missing object files and resultant
    linking failures. In csc.scm "obj" was selected, but in egg-compile.scm,
    and thus in chicken-install, we used "o" instead. This change makes them
    match by using the same `software-version' check in both places.

diff --git a/chicken-install.scm b/chicken-install.scm
index 4f6e99c5..fd18e305 100644
--- a/chicken-install.scm
+++ b/chicken-install.scm
@@ -97,11 +97,9 @@
 (define keepfiles #f)
 (define print-repository #f)
 (define cached-only #f)
-  
+
 (define platform
-  (if (eq? 'mingw32 (software-version))
-      'windows
-      'unix))
+  (if (eq? (software-version) 'mingw32) 'windows 'unix))
 
 (define current-status 
   (list ##sys#build-id default-prefix
diff --git a/csc.scm b/csc.scm
index 83d1d2c4..646aa4e2 100644
--- a/csc.scm
+++ b/csc.scm
@@ -102,7 +102,7 @@
 (define rc-compiler (quotewrap (if host-mode INSTALL_RC_COMPILER TARGET_RC_COMPILER)))
 (define linker (quotewrap (if host-mode host-cc default-cc)))
 (define c++-linker (quotewrap (if host-mode host-cxx default-cxx)))
-(define object-extension (if windows "obj" "o"))
+(define object-extension (if mingw "obj" "o"))
 (define library-extension "a")
 (define link-output-flag "-o ")
 (define executable-extension "")
diff --git a/tests/csc-tests.scm b/tests/csc-tests.scm
index 0bb8a11a..b661e723 100644
--- a/tests/csc-tests.scm
+++ b/tests/csc-tests.scm
@@ -21,7 +21,7 @@
 (csc "null.scm" "-t")
 (assert (file-exists? "null.c"))
 
-(define obj-file (if (eq? (software-type) 'windows) "null.obj" "null.o"))
+(define obj-file (if (eq? (software-version) 'mingw32) "null.obj" "null.o"))
 
 (csc "null.c" "-c")
 (assert (file-exists? obj-file))
Trap