r9323: * db-mysql/mysql-api.lisp: Fix int vs. long slots in foreign
authorKevin M. Rosenberg <kevin@rosenberg.net>
Wed, 12 May 2004 20:10:19 +0000 (20:10 +0000)
committerKevin M. Rosenberg <kevin@rosenberg.net>
Wed, 12 May 2004 20:10:19 +0000 (20:10 +0000)
        structures found by testing with AllegroCL 7.0b AMD64.

ChangeLog
db-mysql/mysql-api.lisp
db-mysql/mysql-loader.lisp
db-postgresql-socket/postgresql-socket-api.lisp

index 6bfdd11c7df749e08db408e5151d43855a68e78b..4a29be946ca151eb8803d78ceaa2c5a155d44b49 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,6 @@
 11 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
 11 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+       * db-mysql/mysql-api.lisp: Fix int vs. long slots in foreign
+       structures found by testing with AllegroCL 7.0b AMD64.
        * sql/objects.lisp: Initial caching support for SELECT
        * tests/test-oodml.lisp: Avoid using cache when testing select.
        * sql/kmr-mop.lisp: Explicitly check slot order and
        * sql/objects.lisp: Initial caching support for SELECT
        * tests/test-oodml.lisp: Avoid using cache when testing select.
        * sql/kmr-mop.lisp: Explicitly check slot order and
index 7170fda066b72a29f480c80e0dc04422eecb5c1f..c27a50eca26fd3fb363ddd823e58063d8947c4c5 100644 (file)
   (org_table (* :char))
   (db (* :char))
   (def (* :char))
   (org_table (* :char))
   (db (* :char))
   (def (* :char))
-  (length :unsigned-int)
-  (max-length :unsigned-int)
+  (length :unsigned-long)
+  (max-length :unsigned-long)
   (flags :unsigned-int)
   (decimals :unsigned-int)
   (type mysql-field-types))
   (flags :unsigned-int)
   (decimals :unsigned-int)
   (type mysql-field-types))
index 957c39e48e7123105a067436e3c0180635b94b35..6424e7ab56ffa5c80af2bf8951da34decc70bfcf 100644 (file)
 
 (in-package #:mysql)
 
 
 (in-package #:mysql)
 
-;;;; Modified by Kevin Rosenberg 
-;;;;  - probe potential directories to find library
-;;;;  - Changed from CMUCL functions to UFFI to
-;;;;      -- prevent library from being loaded multiple times
-;;;;      -- support Allegro CL and Lispworks
-
 (defparameter *clsql-mysql-library-path* 
   (uffi:find-foreign-library
    "mysql"
 (defparameter *clsql-mysql-library-path* 
   (uffi:find-foreign-library
    "mysql"
@@ -37,6 +31,7 @@
   (uffi:find-foreign-library
    '("libz" "zlib")
    `(,(make-pathname :directory (pathname-directory *load-truename*))
   (uffi:find-foreign-library
    '("libz" "zlib")
    `(,(make-pathname :directory (pathname-directory *load-truename*))
+     #+64bit "/usr/lib64/"
       "/usr/lib/"
       "/sw/lib/"
       "/usr/local/lib/"
       "/usr/lib/"
       "/sw/lib/"
       "/usr/local/lib/"
@@ -50,7 +45,9 @@
 
 (defparameter *mysql-library-candidate-directories*
     `(,(pathname-directory *load-pathname*)
 
 (defparameter *mysql-library-candidate-directories*
     `(,(pathname-directory *load-pathname*)
-      "/opt/mysql/lib/mysql/" "/usr/local/lib/" "/usr/lib/" "/usr/local/lib/mysql/" "/usr/lib/mysql/" "/mysql/lib/opt/" "/sw/lib/mysql/"))
+      "/opt/mysql/lib/mysql/" "/usr/local/lib/"
+      #+64bit "/usr/lib64/"
+      "/usr/lib/" "/usr/local/lib/mysql/" "/usr/lib/mysql/" "/mysql/lib/opt/" "/sw/lib/mysql/"))
 
 (defvar *mysql-library-candidate-drive-letters* '("C" "D" "E"))
 
 
 (defvar *mysql-library-candidate-drive-letters* '("C" "D" "E"))
 
index 69496c27b33369622dd9c893515a4f88f2c84334..620140ee718c0872aab75515bba8a0db4a2ad699 100644 (file)
@@ -220,13 +220,14 @@ socket interface"
   (unless *crypt-library-loaded*
     (uffi:load-foreign-library 
      (uffi:find-foreign-library "libcrypt"
   (unless *crypt-library-loaded*
     (uffi:load-foreign-library 
      (uffi:find-foreign-library "libcrypt"
-                          '("/usr/lib/" "/usr/local/lib/" "/lib/"))
+                          '(#+64bit "/usr/lib64/"
+                            "/usr/lib/" "/usr/local/lib/" "/lib/"))
      :supporting-libraries '("c"))
     (setq *crypt-library-loaded* t)))
 
 (in-package :postgresql-socket)
 
      :supporting-libraries '("c"))
     (setq *crypt-library-loaded* t)))
 
 (in-package :postgresql-socket)
 
-(uffi:def-function "crypt" 
+(uffi:def-function ("crypt" crypt)
     ((key :cstring)
      (salt :cstring))
   :returning :cstring)
     ((key :cstring)
      (salt :cstring))
   :returning :cstring)