Check that .so and .o files exists before installing them

This commit is contained in:
retropikzel 2025-06-28 09:57:33 +03:00
parent 48ca9f9a5f
commit 5b6b5c6324

View file

@ -1919,13 +1919,16 @@
(so-path (string-append (path-strip-extension library-file) ".so")) (so-path (string-append (path-strip-extension library-file) ".so"))
(dest-so-path (make-path install-dir so-path)) (dest-so-path (make-path install-dir so-path))
(o-path (string-append (path-strip-extension library-file) ".o")) (o-path (string-append (path-strip-extension library-file) ".o"))
(dest-o-path (make-path install-dir o-path))) (dest-o-path (make-path install-dir o-path))
(installed-files (default-installer impl cfg library dir)))
(install-directory cfg (path-directory dest-so-path)) (install-directory cfg (path-directory dest-so-path))
(install-file cfg (make-path dir so-path) dest-so-path) (when (file-exists? so-path)
(install-file cfg (make-path dir o-path) dest-o-path) (install-file cfg (make-path dir so-path) dest-so-path)
(cons dest-o-path (set! installed-files (cons so-path installed-files)))
(cons dest-so-path (when (file-exists? o-path)
(default-installer impl cfg library dir))))) (install-file cfg (make-path dir o-path) dest-o-path)
(set! installed-files (cons o-path installed-files)))
installed-files))
(define (guile-installer impl cfg library dir) (define (guile-installer impl cfg library dir)
(let* ((source-scm-file (get-library-file cfg library)) (let* ((source-scm-file (get-library-file cfg library))