summaryrefslogtreecommitdiffstats
path: root/Link.scm
diff options
context:
space:
mode:
authorDavid N. Welton <davidw@efn.org>1998-12-11 20:21:49 -0800
committerBryan Newbold <bnewbold@robocracy.org>2017-02-20 00:05:25 -0800
commita47af30d2f0e96afcd1f14b1984575c359faa3d6 (patch)
tree2ed08ce2d757f917de7c3c7c04fd7e309f454c83 /Link.scm
parentf64b2806c1d66a1341bb8b1491f384169ab1d65f (diff)
parentdb04688faa20f3576257c0fe41752ec435beab9a (diff)
downloadscm-a47af30d2f0e96afcd1f14b1984575c359faa3d6.tar.gz
scm-a47af30d2f0e96afcd1f14b1984575c359faa3d6.zip
Import Debian changes 5c3-5debian/5c3-5
scm (5c3-5) frozen unstable; urgency=low * debian/rules chmod +x's bld.scm. Fixes #30521. scm (5c3-4) frozen unstable; urgency=low * Made bld.scm executable. Fixes #29578. scm (5c3-3) frozen unstable; urgency=low * -nw * Fixes #16762. * Fixes #18163. * Fixes #18164. * Fixes #23743. * Fixes #24098. * Fixes #24099. * Fixes #24547. scm (5c3-2) frozen unstable; urgency=low * Re-uploading for slink freeze. scm (5c3-1) unstable; urgency=low * New upstream version.
Diffstat (limited to 'Link.scm')
-rw-r--r--Link.scm13
1 files changed, 9 insertions, 4 deletions
diff --git a/Link.scm b/Link.scm
index a141e54..a60fd02 100644
--- a/Link.scm
+++ b/Link.scm
@@ -68,18 +68,18 @@
(define (compile-file file . args)
(apply hobbit file args)
- (require 'build)
+ (load (in-vicinity (implementation-vicinity) "build"))
(build-from-whole-argv
(list "build" "-tdll"
(string-append "--compiler-options=-I" (implementation-vicinity))
"-c"
- (string-append (descmify file) ".c")
- ;; or (replace-suffix file (scheme-file-suffix) ".c")
+ (begin (require 'glob)
+ (replace-suffix file (scheme-file-suffix) ".c"))
"-hsystem"
)))
(define (link-named-scm name . modules)
- (require 'build)
+ (load (in-vicinity (implementation-vicinity) "build"))
(let* ((iv (implementation-vicinity))
(oss (string-append scm:object-suffix " "))
(command
@@ -107,6 +107,7 @@
(define link:able-suffix
(cond ((provided? 'shl) ".sl")
((provided? 'sun-dl) ".so")
+ ((provided? 'mac-dl) ".shlb")
(else ".o")))
(define link:link
(lambda (file . libs)
@@ -136,6 +137,10 @@
(set! *load-pathname* file)
(set! linkobj (assoc name link:modules))
(cond (linkobj (dyn:unlink (cdr linkobj))))
+ (if (and (provided? 'sun-dl)
+ (> 3 (string-length file))
+ (not (eqv? (string-ref file 0) '#\/)))
+ (set! file (string-append "./" file)))
(set! linkobj (dyn:link file))
(for-each (lambda (lib)
(cond ((dyn:link lib))