1 2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
3 * src/i18n.lisp: Add new function foreign-encoded-string-octets
5 2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
7 * src/strings.lisp: Initial support for external-formats with
10 2010-02-05 Kevin Rosenberg <kevin@rosenberg.net>
12 * src/primitives.lisp: Fix symbol name
14 2010-02-05 Kevin Rosenberg <kevin@rosenberg.net>
16 * src/i18n.lisp: New file for supporting non-ASCII foreign strings.
18 2010-01-29 Kevin Rosenberg <kevin@rosenberg.net>
20 * src/primitives.lisp: Add :long-long and :unsigned-long-long
21 for lisp implementations that support it. Push uffi:no-long-long
22 on cl:*features* for lisp implementations that don't support it.
24 2010-01-28 Kevin Rosenberg <kevin@rosenberg.net>
26 * src/{functions.lisp,objects.lisp,strings.lisp}: Support Lispworks 6
28 2007-09-17 Kevin Rosenberg <kevin@rosenberg.net>
29 * doc/Makefile, doc/html.xsl: Change output encoding from
32 2007-07-22 Kevin Rosenberg <kevin@rosenberg.net>
33 * Version 1.6.0 (SPECIFICATION CHANGE)
34 * doc/ref_func_libr.xml: Change the specification of
35 load-foreign-library to better match the actual action of the
36 function. Rather than returning NIL for failure to load library,
38 * src/libraries.lisp: Rework load-foreign-library to ensure errors
39 are signaled on failure to load library. This was the case for
40 some implementations, change the other implementations to
41 match. (Inconsistency found due to Mark Wooding's remarks)
43 2007-04-12 Kevin Rosenberg <kevin@rosenberg.net>
45 * src/functions.lisp: Patch from Ian Eslick for Lispworks 5
47 2006-10-10 Kevin Rosenberg <kevin@rosenberg.net>
49 * src/functions.lisp: Patch from Edi Weitz for Lispworks 5/Linux
51 2006-09-02 Kevin Rosenberg <kevin@rosenberg.net>
53 * src/libraries.lisp: Add cygwin support
55 2006-08-13 Kevin Rosenberg <kevin@rosenberg.net>
57 * src/{objects,strings}.lisp: Add support for Lispworks 5
58 thanks to patches from Bill Atkins
60 2006-07-04 Kevin Rosenberg <kevin@rosenberg.net>
62 * src/{objects,strings}.lisp: Apply patch from Edi Weitz
64 2006-05-17 Kevin Rosenberg <kevin@rosenberg.net>
66 * src/libraries.lisp: Revert buggy patch from Yaroslav Kavenchuk.
68 2006-05-17 Kevin Rosenberg <kevin@rosenberg.net>
70 * src/libraries.lisp: Patch from Yaroslav Kavenchuk to set
71 default drive letters on MS Windows.
73 2006-05-11 Kevin Rosenberg <kevin@rosenberg.net>
74 * Version 1.5.11: Export new macro DEF-POINTER-VAR based on patch from
75 James Bielman to support defining variables on platforms which
76 support saving objects, such as openmcl
78 2006-04-17 Kevin Rosenberg <kevin@rosenberg.net>
79 * Version 1.5.10: Commit patch from Gary King for openmcl's
82 2005-11-14 Kevin Rosenberg <kevin@rosenberg.net>
84 * src/strings.lisp: Add with-foreign-strings by James Biel
86 2005-11-14 Kevin Rosenberg <kevin@rosenberg.net>
88 * src/os.lisp: Remove getenv setter
90 2005-11-07 Kevin Rosenberg <kevin@rosenberg.net>
92 * src/os.lisp: Add support for getenv getter and setter
94 2005-09-17 Kevin Rosenberg <kevin@rosenberg.net>
96 * src/objects.lisp: prepend _ character for entry
97 point on Allegro macosx, patch by Luis Oliveira
99 2005-07-05 Kevin Rosenberg <kevin@rosenberg.net>
101 * Remove vestigial LLGPL license notices as UFFI as been
102 BSD-licensed for several years.
104 2005-06-09 Kevin Rosenberg <kevin@rosenberg.net>
106 * tests/objects.lisp: Rename from pointers.lisp.
107 Fix test CHPTR.4 as noted by Jorg Hohle
108 * src/objects.lisp: Remove default from ensure-char-integer
110 2005-06-09 Kevin Rosenberg <kevin@rosenberg.net>
112 * src/libraries.lisp: Commit patch from Edi Weitz to
113 allow plain filename library names to allow underlying
114 lisp implementation to find foreign libraries in the
115 locations known to the operating system.
116 * tests/cast.lisp: Add :module keyword as noted by Jorg Hohle.
117 * src/strings.lisp: Avoid multiple evaluation of input
118 parameters for macros as noted by Jorg Hohle.
120 2005-04-12 Kevin Rosenberg <kevin@rosenberg.net>
122 * src/strings.lisp: Fix variable name
124 2005-04-04 Kevin Rosenberg <kevin@rosenberg.net>
125 * src/strings.lisp, src/aggregates.lisp: Support change in SBCL copy
126 function [Thanks for Nathan Froyd and Zach Beane]
128 2005-04-03 Kevin Rosenberg <kevin@rosenberg.net>
129 * src/objects.lisp: Commit patch from James Bielman to add
130 def-foreign-var support for OpenMCL
132 2005-03-03 Kevin Rosenberg <kevin@rosenberg.net>
133 * src/primitives.lisp: Add support for :union types
134 [patch from Cyrus Harmon]
135 * tests/union.lisp, tests/structs.lisp: Tests for
136 union and structure types [from Cyrus Harmon]
138 2005-02-22 Kevin Rosenberg <kevin@rosenberg.net>
139 * src/primitives.lisp, src/strings.lisp: Better support
140 for sb-unicode [from Yoshinori Tahara and R. Mattes]
142 2005-01-22 Kevin Rosenberg <kevin@rosenberg.net>
143 * src/primitives.lisp: Better support SBCL-AMD64
145 2004-11-08 Kevin Rosenberg <kevin@rosenberg.net>
146 * src/strings.lisp: Better support sb-unicode
147 * tests/compress.lisp: Support sb-unicode
149 2004-10-07 Kevin Rosenberg <kevin@rosenberg.net>
150 * src/objects.lisp: Add new function:
151 convert-from-foreign-usb8
153 2004-04-15 Kevin Rosenberg <kevin@rosenberg.net>
154 * src/objects.lisp: Add new functions:
155 MAKE-POINTER and POINTER-ADDRESS
157 2004-04-13 Kevin Rosenberg <kevin@rosenberg.net>
158 * src/string.lisp: Add new FOREIGN-STRING-LENGTH
160 2003-08-15 Kevin Rosenberg <kevin@rosenberg.net>
161 * Added with-cast-pointer and def-foreign-var (patches submitted
163 * Added many new tests
165 2002-10-16 Kevin Rosenberg <kevin@rosenberg.net>
166 * Added support for SBCL and SCL
168 2002-09-29 Kevin Rosenberg <kevin@rosenberg.net>
169 * Numerous changes in openmcl support (uffi now supports
172 2002-09-19 Kevin Rosenberg <kevin@rosenberg.net>
173 - Integrate John Desoi's OpenMCL support into src-mcl
174 * examples/Makefile: add section for building on MacOS X (John Desoi)
175 * examples/test-examples: changed from mk: to asdf: package loading (KMR)
176 * examples/run-examples: changed from mk: to asdf: package loading (KMR),
177 add conditional loading if UFFI not loaded (John Desoi)
178 * examples/compress.cl: Add dylib to library types for MacOSX (John Desoi),
179 converted compressed output to hexidecimal display (KMR)
180 * examples/union.cl: Rework the tests (KMR)
181 * src-main/libraries.cl: add dylib as default library type on MacOSX (John Desoi)
182 * src-main/aggregates.cl: convert from uffi type in deref-array (John Desoi)
184 2002-09-16 Kevin Rosenberg <kevin@rosenberg.net>
185 - Restructure directories to move to a asdf definition file
188 2002-08-25 Kevin Rosenberg <kevin@rosenberg.net>
189 - Restructure directories to attempt to properly handle both
190 Common Lisp Controller and non-CLC systems
192 2002-08-17 Kevin Rosenberg <kevin@rosenberg.net>
193 - add uffi.asd for ASDF users
195 2002-08-01 Kevin Rosenberg <kevin@rosenberg.net>
196 - Restructure directories to improve Common Lisp Controller v3
199 2002-07-25 Kevin Rosenberg <kevin@rosenberg.net>
200 - Rework handling of logical pathnames.
201 - Move run-examples.cl to examples directory.
203 2002-06-28 Kevin Rosenberg <kevin@rosenberg.net>
204 - Added size-of-foreign-type function.
206 2002-06-26 Kevin Rosenberg <kevin@rosenberg.net>
207 - Fix bug in Lispworks allocate-foreign-object
208 - Added new :unsigned-byte type. Made :byte signed.
210 2002-04-27 Kevin Rosenberg <kevin@rosenberg.net>
214 2002-04-23 Kevin Rosenberg <kevin@rosenberg.net>
216 Updated to debian docbook catalog
218 2002-04-23 John DeSoi (desoi@mac.com)
222 2002-04-06 Kevin Rosenberg <kevin@rosenberg.net>
223 * src/mcl/libraries.cl:
224 Removed unnecessary function and added find-foreign-library
226 Added authorship for John DeSoi
228 Added documentation for find-foreign-library
230 Simplied logical pathnames and MCL loading
232 2002-04-04 John DeSoi (desoi@mac.com)
234 Added initial support for MCL
236 2002-04-02 Kevin Rosenberg <kevin@rosenberg.net>
238 Added test for .so libraries on CMUCL and use sys::load-object-file instead
239 of alien:load-library-file
241 Updated defaults so library is created correctly on Linux, FreeBSD, and Solaris
243 2002-04-02 Kevin Rosenberg <kevin@rosenberg.net>
244 * examples/compress.cl:
247 Added support for SPARC big-endian
249 Automated testing suite
251 2002-04-01 Kevin Rosenberg <kevin@rosenberg.net>
254 Changed default type for FreeBSD and updated Makefile for
255 FreeBSD and Solaris. Enhanced find-foreign-library to
256 take a list of types to search.
257 * examples/compress.cl:
258 Add support to use find-foreign-library
260 2002-03-31 Kevin Rosenberg <kevin@rosenberg.net>
262 Fixed bug in with-foreign-string (Thanks Harald Hanche-Olsen)
264 Create a .a library file for FreeBSD
266 Added default type and find-foreign-library functions
268 2002-03-29 Kevin Rosenberg <kevin@rosenberg.net>
270 Fixed bug in deref-pointer (Thanks John Desoi!)
272 2002-03-22 Kevin Rosenberg <kevin@rosenberg.net>
274 Changed name and implementation of def-array to more appropriate
277 Updated def-array-pointer documentation
279 Made results of def-constant equal those of cl:defconstant
281 Made type be evaluated for with-foreign-object and allocate-foreign-object
283 Increase to 0.3.0 to coincide with the release of CLSQL.
286 * Fixed problem with NULL foreign-strings with CMUCL
287 * Added c-test-fns to examples for allow more specific testing
288 of UFFI. Builds on UNIX and Win32 platforms.
289 * Added def-union function, added union.cl example
290 * Fixed error with ensure-char-[character|integer]
291 * Added 2-d array example to examples/arrays.cl
292 * Fixed documentation error on gethostname
293 * Added ensure-char-* and def-union to documentation
294 * Added double-float vector example to c-test-fns
295 * Reworked cstring on Lispworks to have LW handle string conversion
296 * First pass at with-foreign-object -- unoptimized
297 * Added gethostname2 example which uses with-foreign-object
298 * Added char-array-to-pointer function to encapsulate
299 converting a char array to a char pointer
300 * Converted with-foreign-object to use stack allocation on CMUCL and LW
301 * Added benchmark code, first file is for allocation
304 * Updated strings.cl so that foreign-strings are always unsigned.
305 Fixes a problem with strtol example.
306 * Added ensure-char-character and ensure-char-integer to handle
307 differences in implementations dereferencing of (* :char).
308 * Added section on design priorities for UFFI
309 * Added section in TODO on splitting implementation-dependent code
312 * Added size parameter to allocate-foreign-object. Creates an array
314 * Got array-2d example working with a 1-d array.
315 * Cleaned strtol example
319 * Documentation fixes (Erik Winkels)
320 * Fixed missing '.' in CMUCL type declarations (Erik Winkels)
323 * Changed deref-pointer so it always returns a character when
324 called with a :char or :unsigned-char type
325 * Removed function ensure-char as no longer needed
326 * Added missing :byte specifier to Lispworks
327 * Changed default string type in Lispworks to :unsigned-char
328 which is the native type for Lispworks foreign-strings.
329 * Reworked strtol to handle new character pointing method
332 * Fixed return value in load-foreign-library (Thanks Erik Winkels),
333 modified routine to accept pathnames as well as strings.
334 * Fix documention with :pointer-void (Again, Erik Winkels)
335 * Added missing type specifiers for CMUCL (Thanks a bunch, Erik!)
338 * Finished basic skeleton of documentation.
341 * Changed license to more liberal Lisp Lessor GNU Public License
342 * Fixed problem with uffi.system absent from in distribution
344 * Fixed compiler warnings
347 * Changed def-type to def-foreign-type
348 * Created new macro def-type to generate cl:deftype forms. Removed
349 uffi-declare and uffi-slot-type as they are no longer necessary.
352 * Modified input parameters to load-foreign-library
353 * Added to documention
354 * Changed parameter order in get-slot-value and deref-array
357 * Added to documentation
358 * Made Allegro CL array access more efficient
359 * Changed def-routine name to def-function
360 * Fixed bug in def-function for Lispworks]
361 * Fixed error in +null-c-string-pointer+ name
362 * Fixed error in (make-null-pointer) for Lispworks
363 * Reworked Lispwork c-strings to be (* :char) rather than the
364 implementation default of (* (:unsigned :char)) to be consistent
365 with CMUCL. Bumped version to 0.2.0 because of change this change.
366 * Renamed c-string to cstring to emphasize it as a basic type
367 * Modified getenv.cl example to avoid name collison with LW
368 * Modified compress.cl to setup output buffer as :unsigned*char
369 * Added test-all-examples function. All routines tested okay with
373 * Added ZIP file output with LF->CRLF translations to distribution
374 * Modified def-enum to use uffi:def-constant rather than