X-Git-Url: https://git.distorted.org.uk/~mdw/clg/blobdiff_plain/56a1f31a54ac8a540c32d9a0dca0b3764cc09666..248f4dd729b616814194bcca3bb9f2ab04f0ea0d:/glib/glib.asd diff --git a/glib/glib.asd b/glib/glib.asd index 99910c9..5c18f0b 100644 --- a/glib/glib.asd +++ b/glib/glib.asd @@ -23,10 +23,28 @@ (when (string>= (pkg-version "glib-2.0") "2.6.0") (push :glib2.6 *features*)) +(when (string>= (pkg-version "glib-2.0") "2.8.0") + (push :glib2.8 *features*)) + +#+sbcl +(when (string>= (lisp-implementation-version) "0.9.8") + (push :sbcl>=0.9.8 *features*)) + +#+(and sbcl (not alien-callbacks)) +(eval-when (:compile-toplevel :load-toplevel :execute) + (unless (find-symbol "DEFINE-ALIEN-FUNCTION" "SB-ALIEN") + (error "You need to upgrade SBCL to a version with native C callback support or see the README file about how to add third party callbacks to your current SBCL version."))) + +#+(and sbcl alien-callbacks) +(eval-when (:compile-toplevel :load-toplevel :execute) + (when (find-symbol "DEFINE-ALIEN-FUNCTION" "SB-ALIEN") + (error "Third party C callback code detected in a SBCL image with native callback support. As clg now uses native callbacks when available, you need to use a \"clean\" core file."))) + + (defsystem glib :depends-on (clg-tools) :components ((:file "defpackage") - #+(and cmu (not clg-pcl))(:file "pcl") + #+(and cmu (not non-broken-pcl) (not cmu19b))(:file "pcl") ;; For preloading to work in glib 2.6, the library needs to ;; be configured and build with '--disable-visibility' (:unix-dso "preload" @@ -47,7 +65,7 @@ (:file "utils" :depends-on ("defpackage")) (:file "ffi" :depends-on ("utils")) (:file "glib" :depends-on ("ffi" "libglib-2.0")) - (:file "proxy" :depends-on (#+(and cmu (not clg-pcl))"pcl" "glib")) + (:file "proxy" :depends-on (#+(and cmu (not non-broken-pcl) (not cmu19b))"pcl" "glib")) (:file "gtype" :depends-on ("proxy" "alien" "libgobject-2.0")) (:file "gboxed" :depends-on ("gtype")) (:file "genums" :depends-on ("gtype"))