X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=uffi%2Fclsql-uffi-loader.lisp;h=8b9efb7207601f7c490d0898d73e7dba28125945;hb=2b89a1b56dfb8c1cdfaae36b2d4ff7382cff8b40;hp=c5783298c9a4bb33988681cd23f2fa47f469ba76;hpb=7d50938ba2db52a713498e49aa1679deae6f0b6b;p=clsql.git diff --git a/uffi/clsql-uffi-loader.lisp b/uffi/clsql-uffi-loader.lisp index c578329..8b9efb7 100644 --- a/uffi/clsql-uffi-loader.lisp +++ b/uffi/clsql-uffi-loader.lisp @@ -2,30 +2,28 @@ ;;;; ************************************************************************* ;;;; FILE IDENTIFICATION ;;;; -;;;; Name: clsql-uffi-loader.sql -;;;; Purpose: library loader using CLSQL UFFI helper library -;;;; Programmers: Kevin M. Rosenberg -;;;; Date Started: Mar 2002 +;;;; Name: clsql-uffi-loader.sql +;;;; Purpose: Library loader using CLSQL UFFI helper library +;;;; Author: Kevin M. Rosenberg +;;;; Created: Mar 2002 ;;;; -;;;; $Id: clsql-uffi-loader.lisp,v 1.1 2002/09/30 10:19:24 kevin Exp $ +;;;; $Id$ ;;;; -;;;; This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg +;;;; This file, part of CLSQL, is Copyright (c) 2002-2004 by Kevin M. Rosenberg ;;;; ;;;; CLSQL users are granted the rights to distribute and use this software ;;;; as governed by the terms of the Lisp Lesser GNU Public License ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL. ;;;; ************************************************************************* -(declaim (optimize (debug 3) (speed 3) (safety 1) (compilation-speed 0))) -(in-package :clsql-uffi) +(in-package #:clsql-uffi) (defvar *clsql-uffi-library-filename* (uffi:find-foreign-library - "clsql-uffi" - `("/usr/lib/clsql/" - "/opt/lisp/clsql/uffi/" - "/home/kevin/debian/src/clsql/uffi/") - :drive-letters '("C" "D" "E" "F" "G"))) + '(#+(or 64bit x86-64) "uffi64" "uffi") + `(,clsql-uffi-system::*library-file-dir* + "/usr/lib/clsql/") + :drive-letters '("C"))) (defvar *clsql-uffi-supporting-libraries* '("c") "Used only by CMU. List of library flags needed to be passed to ld to @@ -36,14 +34,15 @@ set to the right path before compiling or loading the system.") "T if foreign library was able to be loaded successfully") (defun load-uffi-foreign-library () + (unless (probe-file *clsql-uffi-library-filename*) + (error "Unable to find uffi.so")) + (if (uffi:load-foreign-library *clsql-uffi-library-filename* :module "clsql-uffi" :supporting-libraries *clsql-uffi-supporting-libraries*) (setq *uffi-library-loaded* t) - (warn "Unable to load helper library ~A" *clsql-uffi-library-filename*))) + (error "Unable to load helper library ~A" *clsql-uffi-library-filename*))) (load-uffi-foreign-library) - -