chibi-ffi uses execute instead of system when compiling to pass through the result

This commit is contained in:
Alex Shinn 2013-01-31 22:26:19 +09:00
parent 5127e30ab2
commit 2a1f916475

View file

@ -1724,12 +1724,12 @@
;; chibi-ffi to compile to (chibi process) module. ;; chibi-ffi to compile to (chibi process) module.
(let* ((so (string-append (strip-extension src) (let* ((so (string-append (strip-extension src)
*shared-object-extension*)) *shared-object-extension*))
(system (begin (eval '(import (chibi process))) (execute (begin (eval '(import (chibi process)))
(eval 'system))) (eval 'execute)))
(base-args (append (or cflags '()) (base-args (append (or cflags '())
`("-o" ,so ,dest "-lchibi-scheme"))) `("-o" ,so ,dest "-lchibi-scheme")))
(args (cond-expand (args (cond-expand
(macosx (append '("-dynamiclib" "-Oz") base-args)) (macosx (append '("-dynamiclib" "-Oz") base-args))
(else (append '("-fPIC" "-shared" "-Os") base-args)))) (else (append '("-fPIC" "-shared" "-Os") base-args))))
(cc (if *c++?* "c++" "cc"))) (cc (if *c++?* "c++" "cc")))
(apply system cc args)))))) (execute cc (cons cc args)))))))