[native libraries atsmyles@earthlink.net**20090930022259 Created functionality to allow libraries to be compiled with native parts. This is useful for combining an ffi to an outside library to a r6rs library so that when the library is loaded the ffi part is also loaded. ] hunk ./primitives.scm 126 - (define (library-filename library) (path-strip-directory (path-strip-extension (library->filename (cadr library))))) + (define (path-file path) (path-strip-directory (path-strip-extension path))) + (define (library-filename library) (path-file (library->filename (cadr library)))) hunk ./primitives.scm 140 - (apply compile-file-to-c file output: tmp-dir options)) files)) + (apply compile-file-to-c (path-expand file) output: tmp-dir options)) files)) hunk ./primitives.scm 145 - (let ((file (string-append (library-filename library) "_.scm")) + (let ((file (string-append (library-filename library) ".scm")) hunk ./primitives.scm 152 + (compile-files-to-c native-files) hunk ./primitives.scm 154 - (let ((c-files (append native-files (list (compile-library-to-c library-form)))) + (let ((c-files (append (map path-file native-files) (list (compile-library-to-c library-form)))) hunk ./primitives.scm 156 - (compile-files-to-c native-files) hunk ./primitives.scm 177 - (for-each delete-file (directory-files tmp-dir)))) + (if (not (get-option keep-files: #f options)) (for-each delete-file (directory-files tmp-dir))))) hunk ./primitives.scm 179 - (delete-directory tmp-dir) + (if (not (get-option keep-files: #f options)) (delete-directory tmp-dir))