X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=db-mysql%2Fmysql-client-info.lisp;fp=db-mysql%2Fmysql-client-info.lisp;h=5cb8d0e26a912a5b97320267e4755e7c7016f3fc;hb=23b76563b25a517ad20f29d6dc5a65c8b958a042;hp=9b201821ff249df6cba461ba8cc7cfcf79ce194e;hpb=afc88420d03b627b214473078c3adc201de2de80;p=clsql.git diff --git a/db-mysql/mysql-client-info.lisp b/db-mysql/mysql-client-info.lisp index 9b20182..5cb8d0e 100644 --- a/db-mysql/mysql-client-info.lisp +++ b/db-mysql/mysql-client-info.lisp @@ -21,22 +21,21 @@ (declaim (inline mysql-get-client-info)) +(defvar *mysql-client-info* nil) + (eval-when (:compile-toplevel :load-toplevel :execute) (uffi:def-function "mysql_get_client_info" () :module "mysql" :returning :cstring) - (let ((version (uffi:convert-from-cstring (mysql-get-client-info)))) - (cond - ((eql (schar version 0) #\3) - (pushnew :mysql-client-v3 cl:*features*)) - ((eql (schar version 0) #\4) - (pushnew :mysql-client-v4 cl:*features*)) - (t - (error "Unknown mysql client version '~A'." version))))) - -;;#-(or :mysql-client-v3 :mysql-client-v4) -;;(eval-when (:compile-toplevel :load-toplevel :execute) -;; (pushnew :mysql-client-v3 cl:*features*)) + (setf *mysql-client-info* (uffi:convert-from-cstring (mysql-get-client-info))) + + (cond + ((eql (schar *mysql-client-info* 0) #\3) + (pushnew :mysql-client-v3 cl:*features*)) + ((eql (schar *mysql-client-info* 0) #\4) + (pushnew :mysql-client-v4 cl:*features*)) + (t + (error "Unknown mysql client version '~A'." *mysql-client-info*))))