X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=interfaces%2Fclsql-uffi%2Fclsql-uffi-loader.cl;fp=interfaces%2Fclsql-uffi%2Fclsql-uffi-loader.cl;h=ea886ef61214f8dd5f4bb5c5662fc599a076a568;hb=f1930020ce73039b8627af801722c28afff5d31d;hp=0000000000000000000000000000000000000000;hpb=35a6150bba27d78ccc452aa1c0fc0701def46be2;p=clsql.git diff --git a/interfaces/clsql-uffi/clsql-uffi-loader.cl b/interfaces/clsql-uffi/clsql-uffi-loader.cl new file mode 100644 index 0000000..ea886ef --- /dev/null +++ b/interfaces/clsql-uffi/clsql-uffi-loader.cl @@ -0,0 +1,46 @@ +;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*- +;;;; ************************************************************************* +;;;; FILE IDENTIFICATION +;;;; +;;;; Name: clsql-uffi-loader.sql +;;;; Purpose: library loader using CLSQL UFFI helper library +;;;; Programmers: Kevin M. Rosenberg +;;;; Date Started: Mar 2002 +;;;; +;;;; $Id: clsql-uffi-loader.cl,v 1.1 2002/03/27 08:09:25 kevin Exp $ +;;;; +;;;; This file, part of CLSQL, is Copyright (c) 2002 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) + +(defvar *clsql-uffi-library-filename* + (translate-logical-pathname + #+(or linux unix) "CLSQL:interfaces;clsql-uffi;clsql-uffi.so" + #+(or mswindows win32) "CLSQL:interfaces;clsql-uffi;clsql-uffi.dll" + )) + +(defvar *clsql-uffi-supporting-libraries* '("c") + "Used only by CMU. List of library flags needed to be passed to ld to +load the MySQL client library succesfully. If this differs at your site, +set to the right path before compiling or loading the system.") + +(defvar *uffi-library-loaded* nil + "T if foreign library was able to be loaded successfully") + +(defun load-uffi-foreign-library () + (when (uffi:load-foreign-library *clsql-uffi-library-filename* + :module "clsql-uffi" + :supporting-libraries + *clsql-uffi-supporting-libraries*) + (setq *uffi-library-loaded* t))) + +(load-uffi-foreign-library) + + +