1 2011-12-20 Kevin Rosenberg <kevin@rosenberg.net>
2 * src/strings.lisp: Improvments for sb-unicode from
5 2010-10-20 Kevin Rosenberg <kevin@rosenberg.net>
6 * src/{strings,i18n}.lisp: Rework foreign string
7 conversion for Lispworks so that wide-character strings
8 are produced (rather than strings of octets)
10 2010-04-20 Kevin Rosenberg <kevin@rosenberg.net>
12 * uffi.asdf: Update version so libraries using UFFI
13 can depend on verson 2.0 for new foreign encoding
15 * src/i18n.lisp: Add null-terminate to STRING-TO-OCTETS
16 * tests/i18n.lisp: Add new tests
18 2010-02-11 Kevin Rosenberg <kevin@rosenberg.net>
20 * src/strings.lisp: Standards on :encoding keyword
23 2010-02-08 Kevin Rosenberg <kevin@rosenberg.net>
25 * src/primitives.lisp: Fix for long-long patch
27 * src/i18n.lisp: Changed logic of how to deal
28 with an passed encoding value of il.
30 2010-02-08 Kevin Rosenberg <kevin@rosenberg.net>
32 * sql/primitives.lisp: Improved detection for
33 availability of long-long integer for CMU.
34 (Thanks to Stelian Ionescu)
35 * sql/i18n.lisp: Changes in how ignored variables
36 are declared (Stelian Ionescu)
38 2010-02-08 Kevin Rosenberg <kevin@rosenberg.net>
40 * sql/strings.liap: Commit patch from
41 with fixes for recent changes with i18n as well
42 as reworking how ignored variables are declared.
44 2010-02-07 Kevin Rosenberg <kevin@rosenberg.net>
46 * src/i18n.lisp: Rename function to
47 foreign-encoded-octet-count. Fix errors.
48 * tests/i18n.lisp: New file. i18n tests fine
49 on AllegroCL 8/16 bits, SBCL unicode/non-unicode,
51 * src/strings.lisp: Fix an error with decoding
54 2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
55 * src/i18n.lisp: Add new function string-to-octets
57 2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
59 * src/i18n.lisp: Add new function foreign-encoded-string-octets
61 2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
63 * src/strings.lisp: Initial support for external-formats with
66 2010-02-05 Kevin Rosenberg <kevin@rosenberg.net>
68 * src/primitives.lisp: Fix symbol name
70 2010-02-05 Kevin Rosenberg <kevin@rosenberg.net>
72 * src/i18n.lisp: New file for supporting non-ASCII foreign strings.
74 2010-01-29 Kevin Rosenberg <kevin@rosenberg.net>
76 * src/primitives.lisp: Add :long-long and :unsigned-long-long
77 for lisp implementations that support it. Push uffi:no-long-long
78 on cl:*features* for lisp implementations that don't support it.
80 2010-01-28 Kevin Rosenberg <kevin@rosenberg.net>
82 * src/{functions.lisp,objects.lisp,strings.lisp}: Support Lispworks 6
84 2007-09-17 Kevin Rosenberg <kevin@rosenberg.net>
85 * doc/Makefile, doc/html.xsl: Change output encoding from
88 2007-07-22 Kevin Rosenberg <kevin@rosenberg.net>
89 * Version 1.6.0 (SPECIFICATION CHANGE)
90 * doc/ref_func_libr.xml: Change the specification of
91 load-foreign-library to better match the actual action of the
92 function. Rather than returning NIL for failure to load library,
94 * src/libraries.lisp: Rework load-foreign-library to ensure errors
95 are signaled on failure to load library. This was the case for
96 some implementations, change the other implementations to
97 match. (Inconsistency found due to Mark Wooding's remarks)
99 2007-04-12 Kevin Rosenberg <kevin@rosenberg.net>
101 * src/functions.lisp: Patch from Ian Eslick for Lispworks 5
103 2006-10-10 Kevin Rosenberg <kevin@rosenberg.net>
105 * src/functions.lisp: Patch from Edi Weitz for Lispworks 5/Linux
107 2006-09-02 Kevin Rosenberg <kevin@rosenberg.net>
109 * src/libraries.lisp: Add cygwin support
111 2006-08-13 Kevin Rosenberg <kevin@rosenberg.net>
113 * src/{objects,strings}.lisp: Add support for Lispworks 5
114 thanks to patches from Bill Atkins
116 2006-07-04 Kevin Rosenberg <kevin@rosenberg.net>
118 * src/{objects,strings}.lisp: Apply patch from Edi Weitz
120 2006-05-17 Kevin Rosenberg <kevin@rosenberg.net>
122 * src/libraries.lisp: Revert buggy patch from Yaroslav Kavenchuk.
124 2006-05-17 Kevin Rosenberg <kevin@rosenberg.net>
126 * src/libraries.lisp: Patch from Yaroslav Kavenchuk to set
127 default drive letters on MS Windows.
129 2006-05-11 Kevin Rosenberg <kevin@rosenberg.net>
130 * Version 1.5.11: Export new macro DEF-POINTER-VAR based on patch from
131 James Bielman to support defining variables on platforms which
132 support saving objects, such as openmcl
134 2006-04-17 Kevin Rosenberg <kevin@rosenberg.net>
135 * Version 1.5.10: Commit patch from Gary King for openmcl's
138 2005-11-14 Kevin Rosenberg <kevin@rosenberg.net>
140 * src/strings.lisp: Add with-foreign-strings by James Biel
142 2005-11-14 Kevin Rosenberg <kevin@rosenberg.net>
144 * src/os.lisp: Remove getenv setter
146 2005-11-07 Kevin Rosenberg <kevin@rosenberg.net>
148 * src/os.lisp: Add support for getenv getter and setter
150 2005-09-17 Kevin Rosenberg <kevin@rosenberg.net>
152 * src/objects.lisp: prepend _ character for entry
153 point on Allegro macosx, patch by Luis Oliveira
155 2005-07-05 Kevin Rosenberg <kevin@rosenberg.net>
157 * Remove vestigial LLGPL license notices as UFFI as been
158 BSD-licensed for several years.
160 2005-06-09 Kevin Rosenberg <kevin@rosenberg.net>
162 * tests/objects.lisp: Rename from pointers.lisp.
163 Fix test CHPTR.4 as noted by Jorg Hohle
164 * src/objects.lisp: Remove default from ensure-char-integer
166 2005-06-09 Kevin Rosenberg <kevin@rosenberg.net>
168 * src/libraries.lisp: Commit patch from Edi Weitz to
169 allow plain filename library names to allow underlying
170 lisp implementation to find foreign libraries in the
171 locations known to the operating system.
172 * tests/cast.lisp: Add :module keyword as noted by Jorg Hohle.
173 * src/strings.lisp: Avoid multiple evaluation of input
174 parameters for macros as noted by Jorg Hohle.
176 2005-04-12 Kevin Rosenberg <kevin@rosenberg.net>
178 * src/strings.lisp: Fix variable name
180 2005-04-04 Kevin Rosenberg <kevin@rosenberg.net>
181 * src/strings.lisp, src/aggregates.lisp: Support change in SBCL copy
182 function [Thanks for Nathan Froyd and Zach Beane]
184 2005-04-03 Kevin Rosenberg <kevin@rosenberg.net>
185 * src/objects.lisp: Commit patch from James Bielman to add
186 def-foreign-var support for OpenMCL
188 2005-03-03 Kevin Rosenberg <kevin@rosenberg.net>
189 * src/primitives.lisp: Add support for :union types
190 [patch from Cyrus Harmon]
191 * tests/union.lisp, tests/structs.lisp: Tests for
192 union and structure types [from Cyrus Harmon]
194 2005-02-22 Kevin Rosenberg <kevin@rosenberg.net>
195 * src/primitives.lisp, src/strings.lisp: Better support
196 for sb-unicode [from Yoshinori Tahara and R. Mattes]
198 2005-01-22 Kevin Rosenberg <kevin@rosenberg.net>
199 * src/primitives.lisp: Better support SBCL-AMD64
201 2004-11-08 Kevin Rosenberg <kevin@rosenberg.net>
202 * src/strings.lisp: Better support sb-unicode
203 * tests/compress.lisp: Support sb-unicode
205 2004-10-07 Kevin Rosenberg <kevin@rosenberg.net>
206 * src/objects.lisp: Add new function:
207 convert-from-foreign-usb8
209 2004-04-15 Kevin Rosenberg <kevin@rosenberg.net>
210 * src/objects.lisp: Add new functions:
211 MAKE-POINTER and POINTER-ADDRESS
213 2004-04-13 Kevin Rosenberg <kevin@rosenberg.net>
214 * src/string.lisp: Add new FOREIGN-STRING-LENGTH
216 2003-08-15 Kevin Rosenberg <kevin@rosenberg.net>
217 * Added with-cast-pointer and def-foreign-var (patches submitted
219 * Added many new tests
221 2002-10-16 Kevin Rosenberg <kevin@rosenberg.net>
222 * Added support for SBCL and SCL
224 2002-09-29 Kevin Rosenberg <kevin@rosenberg.net>
225 * Numerous changes in openmcl support (uffi now supports
228 2002-09-19 Kevin Rosenberg <kevin@rosenberg.net>
229 - Integrate John Desoi's OpenMCL support into src-mcl
230 * examples/Makefile: add section for building on MacOS X (John Desoi)
231 * examples/test-examples: changed from mk: to asdf: package loading (KMR)
232 * examples/run-examples: changed from mk: to asdf: package loading (KMR),
233 add conditional loading if UFFI not loaded (John Desoi)
234 * examples/compress.cl: Add dylib to library types for MacOSX (John Desoi),
235 converted compressed output to hexidecimal display (KMR)
236 * examples/union.cl: Rework the tests (KMR)
237 * src-main/libraries.cl: add dylib as default library type on MacOSX (John Desoi)
238 * src-main/aggregates.cl: convert from uffi type in deref-array (John Desoi)
240 2002-09-16 Kevin Rosenberg <kevin@rosenberg.net>
241 - Restructure directories to move to a asdf definition file
244 2002-08-25 Kevin Rosenberg <kevin@rosenberg.net>
245 - Restructure directories to attempt to properly handle both
246 Common Lisp Controller and non-CLC systems
248 2002-08-17 Kevin Rosenberg <kevin@rosenberg.net>
249 - add uffi.asd for ASDF users
251 2002-08-01 Kevin Rosenberg <kevin@rosenberg.net>
252 - Restructure directories to improve Common Lisp Controller v3
255 2002-07-25 Kevin Rosenberg <kevin@rosenberg.net>
256 - Rework handling of logical pathnames.
257 - Move run-examples.cl to examples directory.
259 2002-06-28 Kevin Rosenberg <kevin@rosenberg.net>
260 - Added size-of-foreign-type function.
262 2002-06-26 Kevin Rosenberg <kevin@rosenberg.net>
263 - Fix bug in Lispworks allocate-foreign-object
264 - Added new :unsigned-byte type. Made :byte signed.
266 2002-04-27 Kevin Rosenberg <kevin@rosenberg.net>
270 2002-04-23 Kevin Rosenberg <kevin@rosenberg.net>
272 Updated to debian docbook catalog
274 2002-04-23 John DeSoi (desoi@mac.com)
278 2002-04-06 Kevin Rosenberg <kevin@rosenberg.net>
279 * src/mcl/libraries.cl:
280 Removed unnecessary function and added find-foreign-library
282 Added authorship for John DeSoi
284 Added documentation for find-foreign-library
286 Simplied logical pathnames and MCL loading
288 2002-04-04 John DeSoi (desoi@mac.com)
290 Added initial support for MCL
292 2002-04-02 Kevin Rosenberg <kevin@rosenberg.net>
294 Added test for .so libraries on CMUCL and use sys::load-object-file instead
295 of alien:load-library-file
297 Updated defaults so library is created correctly on Linux, FreeBSD, and Solaris
299 2002-04-02 Kevin Rosenberg <kevin@rosenberg.net>
300 * examples/compress.cl:
303 Added support for SPARC big-endian
305 Automated testing suite
307 2002-04-01 Kevin Rosenberg <kevin@rosenberg.net>
310 Changed default type for FreeBSD and updated Makefile for
311 FreeBSD and Solaris. Enhanced find-foreign-library to
312 take a list of types to search.
313 * examples/compress.cl:
314 Add support to use find-foreign-library
316 2002-03-31 Kevin Rosenberg <kevin@rosenberg.net>
318 Fixed bug in with-foreign-string (Thanks Harald Hanche-Olsen)
320 Create a .a library file for FreeBSD
322 Added default type and find-foreign-library functions
324 2002-03-29 Kevin Rosenberg <kevin@rosenberg.net>
326 Fixed bug in deref-pointer (Thanks John Desoi!)
328 2002-03-22 Kevin Rosenberg <kevin@rosenberg.net>
330 Changed name and implementation of def-array to more appropriate
333 Updated def-array-pointer documentation
335 Made results of def-constant equal those of cl:defconstant
337 Made type be evaluated for with-foreign-object and allocate-foreign-object
339 Increase to 0.3.0 to coincide with the release of CLSQL.
342 * Fixed problem with NULL foreign-strings with CMUCL
343 * Added c-test-fns to examples for allow more specific testing
344 of UFFI. Builds on UNIX and Win32 platforms.
345 * Added def-union function, added union.cl example
346 * Fixed error with ensure-char-[character|integer]
347 * Added 2-d array example to examples/arrays.cl
348 * Fixed documentation error on gethostname
349 * Added ensure-char-* and def-union to documentation
350 * Added double-float vector example to c-test-fns
351 * Reworked cstring on Lispworks to have LW handle string conversion
352 * First pass at with-foreign-object -- unoptimized
353 * Added gethostname2 example which uses with-foreign-object
354 * Added char-array-to-pointer function to encapsulate
355 converting a char array to a char pointer
356 * Converted with-foreign-object to use stack allocation on CMUCL and LW
357 * Added benchmark code, first file is for allocation
360 * Updated strings.cl so that foreign-strings are always unsigned.
361 Fixes a problem with strtol example.
362 * Added ensure-char-character and ensure-char-integer to handle
363 differences in implementations dereferencing of (* :char).
364 * Added section on design priorities for UFFI
365 * Added section in TODO on splitting implementation-dependent code
368 * Added size parameter to allocate-foreign-object. Creates an array
370 * Got array-2d example working with a 1-d array.
371 * Cleaned strtol example
375 * Documentation fixes (Erik Winkels)
376 * Fixed missing '.' in CMUCL type declarations (Erik Winkels)
379 * Changed deref-pointer so it always returns a character when
380 called with a :char or :unsigned-char type
381 * Removed function ensure-char as no longer needed
382 * Added missing :byte specifier to Lispworks
383 * Changed default string type in Lispworks to :unsigned-char
384 which is the native type for Lispworks foreign-strings.
385 * Reworked strtol to handle new character pointing method
388 * Fixed return value in load-foreign-library (Thanks Erik Winkels),
389 modified routine to accept pathnames as well as strings.
390 * Fix documention with :pointer-void (Again, Erik Winkels)
391 * Added missing type specifiers for CMUCL (Thanks a bunch, Erik!)
394 * Finished basic skeleton of documentation.
397 * Changed license to more liberal Lisp Lessor GNU Public License
398 * Fixed problem with uffi.system absent from in distribution
400 * Fixed compiler warnings
403 * Changed def-type to def-foreign-type
404 * Created new macro def-type to generate cl:deftype forms. Removed
405 uffi-declare and uffi-slot-type as they are no longer necessary.
408 * Modified input parameters to load-foreign-library
409 * Added to documention
410 * Changed parameter order in get-slot-value and deref-array
413 * Added to documentation
414 * Made Allegro CL array access more efficient
415 * Changed def-routine name to def-function
416 * Fixed bug in def-function for Lispworks]
417 * Fixed error in +null-c-string-pointer+ name
418 * Fixed error in (make-null-pointer) for Lispworks
419 * Reworked Lispwork c-strings to be (* :char) rather than the
420 implementation default of (* (:unsigned :char)) to be consistent
421 with CMUCL. Bumped version to 0.2.0 because of change this change.
422 * Renamed c-string to cstring to emphasize it as a basic type
423 * Modified getenv.cl example to avoid name collison with LW
424 * Modified compress.cl to setup output buffer as :unsigned*char
425 * Added test-all-examples function. All routines tested okay with
429 * Added ZIP file output with LF->CRLF translations to distribution
430 * Modified def-enum to use uffi:def-constant rather than