sbclrc: Push all guix-extra-profiles "lib" folders to cffi:*foreign-library-directories*.

master
Pierre Neidhardt 2019-09-25 12:19:58 +02:00
parent 0a012f918a
commit 3cd0b9fcea
1 changed files with 10 additions and 5 deletions

15
.sbclrc
View File

@ -14,9 +14,16 @@
;; Some OSes package Lisp compilers in a way that ASDF is not automatically loaded.
(require "asdf")
(let ((guix-profile (format nil "~a/.guix-profile/lib/" (uiop:getenv "HOME"))))
(when (and (probe-file guix-profile)
(ignore-errors (asdf:load-system "cffi")))
(when (ignore-errors (asdf:load-system "cffi"))
;; Warning: Trailing "/" matters!
(dolist (guix-profile
`(,(when (uiop:directory-exists-p "~/.guix-profile")
(format nil "~a/.guix-profile/lib/" (uiop:getenv "HOME")))
,@(mapcar (lambda (d)
(format nil "~a~a/lib/"
(namestring d)
(first (last (pathname-directory d)))))
(uiop:subdirectories "~/.guix-extra-profiles/"))))
(push guix-profile
(symbol-value (find-symbol (string '*foreign-library-directories*)
(find-package 'cffi))))))
@ -29,8 +36,6 @@
;; (declaim (optimize (or (>= safety 2) (>= safety speed 1))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defvar *ambrevar/foo* (package-name *package*))
(defpackage ambrevar
(:use :cl))
(in-package :ambrevar)