X-Git-Url: https://git.distorted.org.uk/~mdw/clg/blobdiff_plain/b57de1596b56c4896187ab13343b8b185fd1ad00..07dafdb05d2142564c1fd14265cf174cb3ab92f3:/tools/config.lisp?ds=sidebyside diff --git a/tools/config.lisp b/tools/config.lisp index 9416610..aa15f19 100644 --- a/tools/config.lisp +++ b/tools/config.lisp @@ -3,7 +3,7 @@ #+sbcl (:import-from #:sb-int #:featurep) (:export #:pkg-cflags #:pkg-libs #:pkg-exists-p #:pkg-version #:pkg-variable) - (:export #:featurep #:sbcl>=)) + (:export #:featurep #:sbcl>= #:clisp>=)) (in-package #:pkg-config) @@ -136,3 +136,21 @@ (defun sbcl>= (req-major req-minor req-micro) (declare (ignore req-major req-minor req-micro)) nil) + +#+clisp +(progn + (defun clisp-version () + (let* ((dot (position #\. (lisp-implementation-version)))) + (values + (parse-integer (lisp-implementation-version) :end dot) + (parse-integer (lisp-implementation-version) :start (1+ dot) :junk-allowed t)))) + (defun clisp>= (req-major req-minor) + (multiple-value-bind (major minor) (clisp-version) + (or + (> major req-major) + (and (= major req-major) (> minor req-minor)))))) + +#-clisp +(defun clisp>= (req-major req-minor) + (declare (ignore req-major req-minor)) + nil)