>From def2b14532dfaffabd5df3620f0c29819c3cc870 Mon Sep 17 00:00:00 2001 From: Evan Hanson Date: Mon, 11 Jun 2018 07:31:41 +1200 Subject: [PATCH] Mark all extensions as static when using (linkage static) Rather than trying to locate static extensions during compilation with `chicken.load#find-static-extension', this leaves that task for csc to do at the linking step, since csc.scm already has more complete logic for locating files in `find-object-file', including a consideration of files in the current directory and whether setup-mode is enabled. Doing things this way ensures that objects from the build directory are found even before they're installed into the repository, which is necessary when compiling an egg that has dependencies from one static component to another. This finishes off #1468, for which a9fcaf7f was an incomplete fix. --- eval.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/eval.scm b/eval.scm index 24cfd127..ae70f888 100644 --- a/eval.scm +++ b/eval.scm @@ -1325,10 +1325,9 @@ (if compiling? (values `(##core#declare (uses ,id)) #f) (values `(##sys#load-library (##core#quote ,id)) #f))) - ((and compiling? static? (find-static-extension id)) => - (lambda (path) - (mark-static id) - (values `(##core#declare (uses ,id)) 'static))) + ((and compiling? static?) + (mark-static id) + (values `(##core#declare (uses ,id)) 'static)) (else (values `(chicken.load#load-extension (##core#quote ,id) -- 2.11.0