;;;; Programmer: Kevin M. Rosenberg
;;;; Date Started: Feb 2002
;;;;
-;;;; $Id$
-;;;;
-;;;; This file, part of UFFI, is Copyright (c) 2002-2005 by Kevin M. Rosenberg
+;;;; This file, part of UFFI, is Copyright (c) 2002-2010 by Kevin M. Rosenberg
;;;;
;;;; *************************************************************************
(defun default-foreign-library-type ()
"Returns string naming default library type for platform"
- #+(or win32 cygwin mswindows) "dll"
+ #+(or win32 win64 cygwin mswindows windows) "dll"
#+(or macosx darwin ccl-5.0) "dylib"
- #-(or win32 cygwin mswindows macosx darwin ccl-5.0) "so"
+ #-(or win32 win64 cygwin mswindows windows macosx darwin ccl-5.0) "so"
)
(defun foreign-library-types ()
"Returns list of string naming possible library types for platform, sorted by preference"
- #+(or win32 mswindows) '("dll" "lib")
+ #+(or win32 win64 windows mswindows) '("dll" "lib")
#+(or macosx darwin ccl-5.0) '("dylib" "bundle")
- #-(or win32 mswindows macosx darwin ccl-5.0) '("so" "a" "o")
+ #-(or win32 win64 windows mswindows macosx darwin ccl-5.0) '("so" "a" "o")
)
(defun find-foreign-library (names directories &key types drive-letters)
(setq names (list names)))
(unless (listp directories)
(setq directories (list directories)))
- #+(or win32 mswindows)
+ #+(or win32 win64 windows mswindows)
(unless (listp drive-letters)
(setq drive-letters (list drive-letters)))
- #-(or win32 mswindows)
+ #-(or win32 win64 windows mswindows)
(setq drive-letters '(nil))
(dolist (drive-letter drive-letters)
(dolist (name names)
(setq filename (namestring (if (null (pathname-directory filename))
filename
;; lispworks treats as UNC, so use truename
- #+(and lispworks win32) (truename filename)
- #-(and lispworks win32) filename))))
+ #+(and lispworks mswindows) (truename filename)
+ #-(and lispworks mswindows) filename))))
(if (and (not force-load)
(find filename *loaded-libraries* :test #'string-equal))