Improved glib version detection
authorespen <espen>
Mon, 10 Apr 2006 17:48:41 +0000 (17:48 +0000)
committerespen <espen>
Mon, 10 Apr 2006 17:48:41 +0000 (17:48 +0000)
glib/glib.asd

index f6fd3e7..44de186 100644 (file)
 
 (pkg-exists-p "glib-2.0" :atleast-version "2.4.0")
 
-(when (string>= (pkg-version "glib-2.0") "2.6.0")
+(when (pkg-exists-p "glib-2.0" :atleast-version "2.6.0" :error nil)
   (push :glib2.6 *features*))
 
-(when (string>= (pkg-version "glib-2.0") "2.8.0")
+(when (pkg-exists-p "glib-2.0" :atleast-version "2.8.0" :error nil)
   (push :glib2.8 *features*))
 
 #+sbcl
 (progn
-  (defun sbcl-version ()
-    (let ((dot1 (position #\. (lisp-implementation-version)))
-         (dot2 (position #\. (lisp-implementation-version) :from-end t)))
-      (values 
-       (parse-integer (lisp-implementation-version) :end dot1)
-       (parse-integer (lisp-implementation-version) :start (1+ dot1) :end dot2)
-       (parse-integer (lisp-implementation-version) :start (1+ dot2)))))
-  (defun sbcl-version>= (req-major req-minor req-micro)
-    (multiple-value-bind (major minor micro) (sbcl-version)      
-      (or 
-       (> major req-major)
-       (and (= major req-major) (> minor req-minor))
-       (and (= major req-major) (= minor req-minor) (>= micro req-micro)))))
-  (when (sbcl-version>= 0 9 8)
+  (when (sbcl>= 0 9 8)
     (push :sbcl>=0.9.8 *features*))
-  (when (sbcl-version>= 0 9 10)
+  (when (sbcl>= 0 9 10)
     (push :sbcl>=0.9.10 *features*)))
 
 #+(and sbcl (not alien-callbacks))