2011-12-20 Kevin Rosenberg * src/strings.lisp: Improvments for sb-unicode from Elias Martenson 2010-10-20 Kevin Rosenberg * src/{strings,i18n}.lisp: Rework foreign string conversion for Lispworks so that wide-character strings are produced (rather than strings of octets) 2010-04-20 Kevin Rosenberg * Version 2.0.0 * uffi.asdf: Update version so libraries using UFFI can depend on verson 2.0 for new foreign encoding conversions. * src/i18n.lisp: Add null-terminate to STRING-TO-OCTETS * tests/i18n.lisp: Add new tests 2010-02-11 Kevin Rosenberg * Version 1.8.6 * src/strings.lisp: Standards on :encoding keyword parameter 2010-02-08 Kevin Rosenberg * Version 1.8.5 * src/primitives.lisp: Fix for long-long patch (Stelian Ionescu) * src/i18n.lisp: Changed logic of how to deal with an passed encoding value of il. 2010-02-08 Kevin Rosenberg * Version 1.8.4 * sql/primitives.lisp: Improved detection for availability of long-long integer for CMU. (Thanks to Stelian Ionescu) * sql/i18n.lisp: Changes in how ignored variables are declared (Stelian Ionescu) 2010-02-08 Kevin Rosenberg * Version 1.8.3 * sql/strings.liap: Commit patch from with fixes for recent changes with i18n as well as reworking how ignored variables are declared. 2010-02-07 Kevin Rosenberg * Version 1.8.2 * src/i18n.lisp: Rename function to foreign-encoded-octet-count. Fix errors. * tests/i18n.lisp: New file. i18n tests fine on AllegroCL 8/16 bits, SBCL unicode/non-unicode, CCL, and Lispworks 6 * src/strings.lisp: Fix an error with decoding strings on CCL. 2010-02-06 Kevin Rosenberg * src/i18n.lisp: Add new function string-to-octets 2010-02-06 Kevin Rosenberg * Version 1.8.1 * src/i18n.lisp: Add new function foreign-encoded-string-octets 2010-02-06 Kevin Rosenberg * Version 1.8.0 * src/strings.lisp: Initial support for external-formats with foreign strings. 2010-02-05 Kevin Rosenberg * Version 1.7.3 * src/primitives.lisp: Fix symbol name 2010-02-05 Kevin Rosenberg * Version 1.7.2 * src/i18n.lisp: New file for supporting non-ASCII foreign strings. 2010-01-29 Kevin Rosenberg * Version 1.7.1 * src/primitives.lisp: Add :long-long and :unsigned-long-long for lisp implementations that support it. Push uffi:no-long-long on cl:*features* for lisp implementations that don't support it. 2010-01-28 Kevin Rosenberg * Version 1.7.0 * src/{functions.lisp,objects.lisp,strings.lisp}: Support Lispworks 6 2007-09-17 Kevin Rosenberg * doc/Makefile, doc/html.xsl: Change output encoding from ISO-8859-1 to UTF-8 2007-07-22 Kevin Rosenberg * Version 1.6.0 (SPECIFICATION CHANGE) * doc/ref_func_libr.xml: Change the specification of load-foreign-library to better match the actual action of the function. Rather than returning NIL for failure to load library, signal an error. * src/libraries.lisp: Rework load-foreign-library to ensure errors are signaled on failure to load library. This was the case for some implementations, change the other implementations to match. (Inconsistency found due to Mark Wooding's remarks) 2007-04-12 Kevin Rosenberg * Version 1.5.18 * src/functions.lisp: Patch from Ian Eslick for Lispworks 5 2006-10-10 Kevin Rosenberg * Version 1.5.17 * src/functions.lisp: Patch from Edi Weitz for Lispworks 5/Linux 2006-09-02 Kevin Rosenberg * Version 1.5.16 * src/libraries.lisp: Add cygwin support 2006-08-13 Kevin Rosenberg * Version 1.5.15 * src/{objects,strings}.lisp: Add support for Lispworks 5 thanks to patches from Bill Atkins 2006-07-04 Kevin Rosenberg * Version 1.5.14 * src/{objects,strings}.lisp: Apply patch from Edi Weitz 2006-05-17 Kevin Rosenberg * Version 1.5.13 * src/libraries.lisp: Revert buggy patch from Yaroslav Kavenchuk. 2006-05-17 Kevin Rosenberg * Version 1.5.12 * src/libraries.lisp: Patch from Yaroslav Kavenchuk to set default drive letters on MS Windows. 2006-05-11 Kevin Rosenberg * Version 1.5.11: Export new macro DEF-POINTER-VAR based on patch from James Bielman to support defining variables on platforms which support saving objects, such as openmcl 2006-04-17 Kevin Rosenberg * Version 1.5.10: Commit patch from Gary King for openmcl's feature list change 2005-11-14 Kevin Rosenberg * Version 1.5.7 * src/strings.lisp: Add with-foreign-strings by James Biel 2005-11-14 Kevin Rosenberg * Version 1.5.6 * src/os.lisp: Remove getenv setter 2005-11-07 Kevin Rosenberg * Version 1.5.5 * src/os.lisp: Add support for getenv getter and setter 2005-09-17 Kevin Rosenberg * Version 1.5.4 * src/objects.lisp: prepend _ character for entry point on Allegro macosx, patch by Luis Oliveira 2005-07-05 Kevin Rosenberg * Version 1.5.0 * Remove vestigial LLGPL license notices as UFFI as been BSD-licensed for several years. 2005-06-09 Kevin Rosenberg * Version 1.4.39 * tests/objects.lisp: Rename from pointers.lisp. Fix test CHPTR.4 as noted by Jorg Hohle * src/objects.lisp: Remove default from ensure-char-integer 2005-06-09 Kevin Rosenberg * Version 1.4.38 * src/libraries.lisp: Commit patch from Edi Weitz to allow plain filename library names to allow underlying lisp implementation to find foreign libraries in the locations known to the operating system. * tests/cast.lisp: Add :module keyword as noted by Jorg Hohle. * src/strings.lisp: Avoid multiple evaluation of input parameters for macros as noted by Jorg Hohle. 2005-04-12 Kevin Rosenberg * Version 1.4.37 * src/strings.lisp: Fix variable name 2005-04-04 Kevin Rosenberg * src/strings.lisp, src/aggregates.lisp: Support change in SBCL copy function [Thanks for Nathan Froyd and Zach Beane] 2005-04-03 Kevin Rosenberg * src/objects.lisp: Commit patch from James Bielman to add def-foreign-var support for OpenMCL 2005-03-03 Kevin Rosenberg * src/primitives.lisp: Add support for :union types [patch from Cyrus Harmon] * tests/union.lisp, tests/structs.lisp: Tests for union and structure types [from Cyrus Harmon] 2005-02-22 Kevin Rosenberg * src/primitives.lisp, src/strings.lisp: Better support for sb-unicode [from Yoshinori Tahara and R. Mattes] 2005-01-22 Kevin Rosenberg * src/primitives.lisp: Better support SBCL-AMD64 2004-11-08 Kevin Rosenberg * src/strings.lisp: Better support sb-unicode * tests/compress.lisp: Support sb-unicode 2004-10-07 Kevin Rosenberg * src/objects.lisp: Add new function: convert-from-foreign-usb8 2004-04-15 Kevin Rosenberg * src/objects.lisp: Add new functions: MAKE-POINTER and POINTER-ADDRESS 2004-04-13 Kevin Rosenberg * src/string.lisp: Add new FOREIGN-STRING-LENGTH 2003-08-15 Kevin Rosenberg * Added with-cast-pointer and def-foreign-var (patches submitted by Edi Weitz). * Added many new tests 2002-10-16 Kevin Rosenberg * Added support for SBCL and SCL 2002-09-29 Kevin Rosenberg * Numerous changes in openmcl support (uffi now supports clsql on openmcl) 2002-09-19 Kevin Rosenberg - Integrate John Desoi's OpenMCL support into src-mcl * examples/Makefile: add section for building on MacOS X (John Desoi) * examples/test-examples: changed from mk: to asdf: package loading (KMR) * examples/run-examples: changed from mk: to asdf: package loading (KMR), add conditional loading if UFFI not loaded (John Desoi) * examples/compress.cl: Add dylib to library types for MacOSX (John Desoi), converted compressed output to hexidecimal display (KMR) * examples/union.cl: Rework the tests (KMR) * src-main/libraries.cl: add dylib as default library type on MacOSX (John Desoi) * src-main/aggregates.cl: convert from uffi type in deref-array (John Desoi) 2002-09-16 Kevin Rosenberg - Restructure directories to move to a asdf definition file without pathnames. 2002-08-25 Kevin Rosenberg - Restructure directories to attempt to properly handle both Common Lisp Controller and non-CLC systems 2002-08-17 Kevin Rosenberg - add uffi.asd for ASDF users 2002-08-01 Kevin Rosenberg - Restructure directories to improve Common Lisp Controller v3 compatibility 2002-07-25 Kevin Rosenberg - Rework handling of logical pathnames. - Move run-examples.cl to examples directory. 2002-06-28 Kevin Rosenberg - Added size-of-foreign-type function. 2002-06-26 Kevin Rosenberg - Fix bug in Lispworks allocate-foreign-object - Added new :unsigned-byte type. Made :byte signed. 2002-04-27 Kevin Rosenberg - misc files First debian version 2002-04-23 Kevin Rosenberg - doc/* Updated to debian docbook catalog 2002-04-23 John DeSoi (desoi@mac.com) * src/mcl/* Improved MCL support 2002-04-06 Kevin Rosenberg * src/mcl/libraries.cl: Removed unnecessary function and added find-foreign-library * src/mcl/*.cl: Added authorship for John DeSoi * doc/ref.sgml: Added documentation for find-foreign-library * uffi.system: Simplied logical pathnames and MCL loading 2002-04-04 John DeSoi (desoi@mac.com) * src/mcl/*.cl Added initial support for MCL 2002-04-02 Kevin Rosenberg * src/libraries.cl: Added test for .so libraries on CMUCL and use sys::load-object-file instead of alien:load-library-file * examples/Makefile: Updated defaults so library is created correctly on Linux, FreeBSD, and Solaris 2002-04-02 Kevin Rosenberg * examples/compress.cl: Fixed missing '/' * examples/union.cl: Added support for SPARC big-endian * test-examples.cl: Automated testing suite 2002-04-01 Kevin Rosenberg * src/libraries.cl: * examples/Makefile: Changed default type for FreeBSD and updated Makefile for FreeBSD and Solaris. Enhanced find-foreign-library to take a list of types to search. * examples/compress.cl: Add support to use find-foreign-library 2002-03-31 Kevin Rosenberg * src/strings.cl: Fixed bug in with-foreign-string (Thanks Harald Hanche-Olsen) * examples/Makefile: Create a .a library file for FreeBSD * src/libraries.cl: Added default type and find-foreign-library functions 2002-03-29 Kevin Rosenberg * src/objects.cl: Fixed bug in deref-pointer (Thanks John Desoi!) 2002-03-22 Kevin Rosenberg * src/aggregates.cl: Changed name and implementation of def-array to more appropriate def-array-pointer * src/ref.sgml: Updated def-array-pointer documentation * src/primitives.cl: Made results of def-constant equal those of cl:defconstant * src/objects.cl: Made type be evaluated for with-foreign-object and allocate-foreign-object * VERSION: Increase to 0.3.0 to coincide with the release of CLSQL. 21 Mar 2002 * Fixed problem with NULL foreign-strings with CMUCL * Added c-test-fns to examples for allow more specific testing of UFFI. Builds on UNIX and Win32 platforms. * Added def-union function, added union.cl example * Fixed error with ensure-char-[character|integer] * Added 2-d array example to examples/arrays.cl * Fixed documentation error on gethostname * Added ensure-char-* and def-union to documentation * Added double-float vector example to c-test-fns * Reworked cstring on Lispworks to have LW handle string conversion * First pass at with-foreign-object -- unoptimized * Added gethostname2 example which uses with-foreign-object * Added char-array-to-pointer function to encapsulate converting a char array to a char pointer * Converted with-foreign-object to use stack allocation on CMUCL and LW * Added benchmark code, first file is for allocation 20 Mar 2002 * Updated strings.cl so that foreign-strings are always unsigned. Fixes a problem with strtol example. * Added ensure-char-character and ensure-char-integer to handle differences in implementations dereferencing of (* :char). * Added section on design priorities for UFFI * Added section in TODO on splitting implementation-dependent code 19 Mar 2002 * Added size parameter to allocate-foreign-object. Creates an array of dimensions size. * Got array-2d example working with a 1-d array. * Cleaned strtol example * Added TODO file 18 Mar 2002 * Documentation fixes (Erik Winkels) * Fixed missing '.' in CMUCL type declarations (Erik Winkels) 17 Mar 2002 * Changed deref-pointer so it always returns a character when called with a :char or :unsigned-char type * Removed function ensure-char as no longer needed * Added missing :byte specifier to Lispworks * Changed default string type in Lispworks to :unsigned-char which is the native type for Lispworks foreign-strings. * Reworked strtol to handle new character pointing method 16 Mar 2002 * Fixed return value in load-foreign-library (Thanks Erik Winkels), modified routine to accept pathnames as well as strings. * Fix documention with :pointer-void (Again, Erik Winkels) * Added missing type specifiers for CMUCL (Thanks a bunch, Erik!) 15 Mar 2002 * Finished basic skeleton of documentation. 14 Mar 2002 * Changed license to more liberal Lisp Lessor GNU Public License * Fixed problem with uffi.system absent from in distribution (Thanks John DeSoi) * Fixed compiler warnings 11 Mar 2002 * Changed def-type to def-foreign-type * Created new macro def-type to generate cl:deftype forms. Removed uffi-declare and uffi-slot-type as they are no longer necessary. 10 Mar 2002 * Modified input parameters to load-foreign-library * Added to documention * Changed parameter order in get-slot-value and deref-array 9 Mar 2002 * Added to documentation * Made Allegro CL array access more efficient * Changed def-routine name to def-function * Fixed bug in def-function for Lispworks] * Fixed error in +null-c-string-pointer+ name * Fixed error in (make-null-pointer) for Lispworks * Reworked Lispwork c-strings to be (* :char) rather than the implementation default of (* (:unsigned :char)) to be consistent with CMUCL. Bumped version to 0.2.0 because of change this change. * Renamed c-string to cstring to emphasize it as a basic type * Modified getenv.cl example to avoid name collison with LW * Modified compress.cl to setup output buffer as :unsigned*char * Added test-all-examples function. All routines tested okay with ACL, LW, and CMUCL 8 Mar 2002 * Added ZIP file output with LF->CRLF translations to distribution * Modified def-enum to use uffi:def-constant rather than cl:defconstant