1 2006-05-11 Kevin Rosenberg (kevin@rosenberg.net)
2 * Version 1.5.11: Export new macro DEF-POINTER-VAR based on patch from
3 James Bielman to support defining variables on platforms which
4 support saving objects, such as openmcl
6 2006-04-17 Kevin Rosenberg (kevin@rosenberg.net)
7 * Version 1.5.10: Commit patch from Gary King for openmcl's
10 2005-11-14 Kevin Rosenberg (kevin@rosenberg.net)
12 * src/strings.lisp: Add with-foreign-strings by James Biel
14 2005-11-14 Kevin Rosenberg (kevin@rosenberg.net)
16 * src/os.lisp: Remove getenv setter
18 2005-11-07 Kevin Rosenberg (kevin@rosenberg.net)
20 * src/os.lisp: Add support for getenv getter and setter
22 2005-09-17 Kevin Rosenberg (kevin@rosenberg.net)
24 * src/objects.lisp: prepend _ character for entry
25 point on Allegro macosx, patch by Luis Oliveira
27 2005-07-05 Kevin Rosenberg (kevin@rosenberg.net)
29 * Remove vestigial LLGPL license notices as UFFI as been
30 BSD-licensed for several years.
32 2005-06-09 Kevin Rosenberg (kevin@rosenberg.net)
34 * tests/objects.lisp: Rename from pointers.lisp.
35 Fix test CHPTR.4 as noted by Jorg Hohle
36 * src/objects.lisp: Remove default from ensure-char-integer
38 2005-06-09 Kevin Rosenberg (kevin@rosenberg.net)
40 * src/libraries.lisp: Commit patch from Edi Weitz to
41 allow plain filename library names to allow underlying
42 lisp implementation to find foreign libraries in the
43 locations known to the operating system.
44 * tests/cast.lisp: Add :module keyword as noted by Jorg Hohle.
45 * src/strings.lisp: Avoid multiple evaluation of input
46 parameters for macros as noted by Jorg Hohle.
48 2005-04-12 Kevin Rosenberg (kevin@rosenberg.net)
50 * src/strings.lisp: Fix variable name
52 2005-04-04 Kevin Rosenberg (kevin@rosenberg.net)
53 * src/strings.lisp, src/aggregates.lisp: Support change in SBCL copy
54 function [Thanks for Nathan Froyd and Zach Beane]
56 2005-04-03 Kevin Rosenberg (kevin@rosenberg.net)
57 * src/objects.lisp: Commit patch from James Bielman to add
58 def-foreign-var support for OpenMCL
60 2005-03-03 Kevin Rosenberg (kevin@rosenberg.net)
61 * src/primitives.lisp: Add support for :union types
62 [patch from Cyrus Harmon]
63 * tests/union.lisp, tests/structs.lisp: Tests for
64 union and structure types [from Cyrus Harmon]
66 2005-02-22 Kevin Rosenberg (kevin@rosenberg.net)
67 * src/primitives.lisp, src/strings.lisp: Better support
68 for sb-unicode [from Yoshinori Tahara and R. Mattes]
70 2005-01-22 Kevin Rosenberg (kevin@rosenberg.net)
71 * src/primitives.lisp: Better support SBCL-AMD64
73 2004-11-08 Kevin Rosenberg (kevin@rosenberg.net)
74 * src/strings.lisp: Better support sb-unicode
75 * tests/compress.lisp: Support sb-unicode
77 2004-10-07 Kevin Rosenberg (kevin@rosenberg.net)
78 * src/objects.lisp: Add new function:
79 convert-from-foreign-usb8
81 2004-04-15 Kevin Rosenberg (kevin@rosenberg.net)
82 * src/objects.lisp: Add new functions:
83 MAKE-POINTER and POINTER-ADDRESS
85 2004-04-13 Kevin Rosenberg (kevin@rosenberg.net)
86 * src/string.lisp: Add new FOREIGN-STRING-LENGTH
88 2003-08-15 Kevin Rosenberg (kevin@rosenberg.net)
89 * Added with-cast-pointer and def-foreign-var (patches submitted
91 * Added many new tests
93 2002-10-16 Kevin Rosenberg (kevin@rosenberg.net)
94 * Added support for SBCL and SCL
96 2002-09-29 Kevin Rosenberg (kevin@rosenberg.net)
97 * Numerous changes in openmcl support (uffi now supports
100 2002-09-19 Kevin Rosenberg (kevin@rosenberg.net)
101 - Integrate John Desoi's OpenMCL support into src-mcl
102 * examples/Makefile: add section for building on MacOS X (John Desoi)
103 * examples/test-examples: changed from mk: to asdf: package loading (KMR)
104 * examples/run-examples: changed from mk: to asdf: package loading (KMR),
105 add conditional loading if UFFI not loaded (John Desoi)
106 * examples/compress.cl: Add dylib to library types for MacOSX (John Desoi),
107 converted compressed output to hexidecimal display (KMR)
108 * examples/union.cl: Rework the tests (KMR)
109 * src-main/libraries.cl: add dylib as default library type on MacOSX (John Desoi)
110 * src-main/aggregates.cl: convert from uffi type in deref-array (John Desoi)
112 2002-09-16 Kevin Rosenberg (kevin@rosenberg.net)
113 - Restructure directories to move to a asdf definition file
116 2002-08-25 Kevin Rosenberg (kevin@rosenberg.net)
117 - Restructure directories to attempt to properly handle both
118 Common Lisp Controller and non-CLC systems
120 2002-08-17 Kevin Rosenberg (kevin@rosenberg.net)
122 - add uffi.asd for ASDF users
124 2002-08-01 Kevin Rosenberg (kevin@rosenberg.net)
125 - Restructure directories to improve Common Lisp Controller v3
128 2002-07-25 Kevin Rosenberg (kevin@rosenberg.net)
130 - Rework handling of logical pathnames.
131 - Move run-examples.cl to examples directory.
133 2002-06-28 Kevin Rosenberg (kevin@rosenberg.net)
135 - Added size-of-foreign-type function.
137 2002-06-26 Kevin Rosenberg (kevin@rosenberg.net)
139 - Fix bug in Lispworks allocate-foreign-object
140 - Added new :unsigned-byte type. Made :byte signed.
142 2002-04-27 Kevin Rosenberg (kevin@rosenberg.net)
146 2002-04-23 Kevin Rosenberg (kevin@rosenberg.net)
148 Updated to debian docbook catalog
150 2002-04-23 John DeSoi (desoi@mac.com)
154 2002-04-06 Kevin Rosenberg (kevin@rosenberg.net)
155 * src/mcl/libraries.cl:
156 Removed unnecessary function and added find-foreign-library
158 Added authorship for John DeSoi
160 Added documentation for find-foreign-library
162 Simplied logical pathnames and MCL loading
164 2002-04-04 John DeSoi (desoi@mac.com)
166 Added initial support for MCL
168 2002-04-02 Kevin Rosenberg (kevin@rosenberg.net)
170 Added test for .so libraries on CMUCL and use sys::load-object-file instead
171 of alien:load-library-file
173 Updated defaults so library is created correctly on Linux, FreeBSD, and Solaris
175 2002-04-02 Kevin Rosenberg (kevin@rosenberg.net)
176 * examples/compress.cl:
179 Added support for SPARC big-endian
181 Automated testing suite
183 2002-04-01 Kevin Rosenberg (kevin@rosenberg.net)
186 Changed default type for FreeBSD and updated Makefile for
187 FreeBSD and Solaris. Enhanced find-foreign-library to
188 take a list of types to search.
189 * examples/compress.cl:
190 Add support to use find-foreign-library
192 2002-03-31 Kevin Rosenberg (kevin@rosenberg.net)
194 Fixed bug in with-foreign-string (Thanks Harald Hanche-Olsen)
196 Create a .a library file for FreeBSD
198 Added default type and find-foreign-library functions
200 2002-03-29 Kevin Rosenberg (kevin@rosenberg.net)
202 Fixed bug in deref-pointer (Thanks John Desoi!)
204 2002-03-22 Kevin Rosenberg (kevin@rosenberg.net)
206 Changed name and implementation of def-array to more appropriate
209 Updated def-array-pointer documentation
211 Made results of def-constant equal those of cl:defconstant
213 Made type be evaluated for with-foreign-object and allocate-foreign-object
215 Increase to 0.3.0 to coincide with the release of CLSQL.
218 * Fixed problem with NULL foreign-strings with CMUCL
219 * Added c-test-fns to examples for allow more specific testing
220 of UFFI. Builds on UNIX and Win32 platforms.
221 * Added def-union function, added union.cl example
222 * Fixed error with ensure-char-[character|integer]
223 * Added 2-d array example to examples/arrays.cl
224 * Fixed documentation error on gethostname
225 * Added ensure-char-* and def-union to documentation
226 * Added double-float vector example to c-test-fns
227 * Reworked cstring on Lispworks to have LW handle string conversion
228 * First pass at with-foreign-object -- unoptimized
229 * Added gethostname2 example which uses with-foreign-object
230 * Added char-array-to-pointer function to encapsulate
231 converting a char array to a char pointer
232 * Converted with-foreign-object to use stack allocation on CMUCL and LW
233 * Added benchmark code, first file is for allocation
236 * Updated strings.cl so that foreign-strings are always unsigned.
237 Fixes a problem with strtol example.
238 * Added ensure-char-character and ensure-char-integer to handle
239 differences in implementations dereferencing of (* :char).
240 * Added section on design priorities for UFFI
241 * Added section in TODO on splitting implementation-dependent code
244 * Added size parameter to allocate-foreign-object. Creates an array
246 * Got array-2d example working with a 1-d array.
247 * Cleaned strtol example
251 * Documentation fixes (Erik Winkels)
252 * Fixed missing '.' in CMUCL type declarations (Erik Winkels)
255 * Changed deref-pointer so it always returns a character when
256 called with a :char or :unsigned-char type
257 * Removed function ensure-char as no longer needed
258 * Added missing :byte specifier to Lispworks
259 * Changed default string type in Lispworks to :unsigned-char
260 which is the native type for Lispworks foreign-strings.
261 * Reworked strtol to handle new character pointing method
264 * Fixed return value in load-foreign-library (Thanks Erik Winkels),
265 modified routine to accept pathnames as well as strings.
266 * Fix documention with :pointer-void (Again, Erik Winkels)
267 * Added missing type specifiers for CMUCL (Thanks a bunch, Erik!)
270 * Finished basic skeleton of documentation.
273 * Changed license to more liberal Lisp Lessor GNU Public License
274 * Fixed problem with uffi.system absent from in distribution
276 * Fixed compiler warnings
280 * Changed def-type to def-foreign-type
281 * Created new macro def-type to generate cl:deftype forms. Removed
282 uffi-declare and uffi-slot-type as they are no longer necessary.
285 * Modified input parameters to load-foreign-library
286 * Added to documention
287 * Changed parameter order in get-slot-value and deref-array
290 * Added to documentation
291 * Made Allegro CL array access more efficient
292 * Changed def-routine name to def-function
293 * Fixed bug in def-function for Lispworks]
294 * Fixed error in +null-c-string-pointer+ name
295 * Fixed error in (make-null-pointer) for Lispworks
296 * Reworked Lispwork c-strings to be (* :char) rather than the
297 implementation default of (* (:unsigned :char)) to be consistent
298 with CMUCL. Bumped version to 0.2.0 because of change this change.
299 * Renamed c-string to cstring to emphasize it as a basic type
300 * Modified getenv.cl example to avoid name collison with LW
301 * Modified compress.cl to setup output buffer as :unsigned*char
302 * Added test-all-examples function. All routines tested okay with
306 * Added ZIP file output with LF->CRLF translations to distribution
307 * Modified def-enum to use uffi:def-constant rather than