projects/cffi/cffi.git
4 years agoupdate cffi.asd for version 0.10.0 v0.10.0
Luis Oliveira [Tue, 29 Jul 2008 14:02:33 +0000] 
update cffi.asd for version 0.10.0

4 years agoAdd Installation chapter to the manual.
Luis Oliveira [Tue, 29 Jul 2008 13:16:41 +0000] 
Add Installation chapter to the manual.

4 years agoDeprecate cffi-features.
Luis Oliveira [Tue, 29 Jul 2008 12:42:01 +0000] 
Deprecate cffi-features.

- Keep it around for backwards compatibility.
- Don't use it from CFFI itself or the test suite.
- Update the manual.

4 years agoUse :import-from for alexandria symbols.
Luis Oliveira [Tue, 29 Jul 2008 12:17:54 +0000] 
Use :import-from for alexandria symbols.

4 years agoNew and improved release script.
Luis Oliveira [Tue, 29 Jul 2008 02:33:39 +0000] 
New and improved release script.

4 years agodoc/Makefile: have upload-docs target build the manual first
Luis Oliveira [Tue, 29 Jul 2008 02:32:40 +0000] 
doc/Makefile: have upload-docs target build the manual first

4 years agocffi-tests: mark a few expected failures for ECL
Luis Oliveira [Tue, 29 Jul 2008 02:15:53 +0000] 
cffi-tests: mark a few expected failures for ECL

4 years agoECL: handle FILE-ERRORs in %LOAD-FOREIGN-LIBRARY
Luis Oliveira [Tue, 29 Jul 2008 02:14:09 +0000] 
ECL: handle FILE-ERRORs in %LOAD-FOREIGN-LIBRARY

4 years agoECL: support long long on x86-64 by treating it as long.
Luis Oliveira [Tue, 29 Jul 2008 02:12:20 +0000] 
ECL: support long long on x86-64 by treating it as long.

4 years agocffi-tests: mark expected failures for allegro.
Luis Oliveira [Tue, 29 Jul 2008 00:41:54 +0000] 
cffi-tests: mark expected failures for allegro.

4 years agocffi-tests: mark defcfun.noop as expected for CCL
Luis Oliveira [Tue, 29 Jul 2008 00:37:48 +0000] 
cffi-tests: mark defcfun.noop as expected for CCL

4 years agocffi-tests: use Babel's #\ syntax
Luis Oliveira [Tue, 29 Jul 2008 00:30:26 +0000] 
cffi-tests: use Babel's #\ syntax

4 years agocffi-tests: mark some expected failures for lispworks
Luis Oliveira [Tue, 29 Jul 2008 00:29:59 +0000] 
cffi-tests: mark some expected failures for lispworks

4 years agoFix alignment information for emulated long long types.
Luis Oliveira [Tue, 29 Jul 2008 00:29:27 +0000] 
Fix alignment information for emulated long long types.

4 years agoUse BABEL:UNICODE-STRING instead of STRING in a few places.
Luis Oliveira [Tue, 29 Jul 2008 00:28:34 +0000] 
Use BABEL:UNICODE-STRING instead of STRING in a few places.

4 years agocffi-tests: test stdcall only on win32
Luis Oliveira [Mon, 28 Jul 2008 22:48:03 +0000] 
cffi-tests: test stdcall only on win32

4 years agoExpect STRING.ENCODING.UTF-16.BASIC and STRING.ENCODINGS.ALL.BASIC failures
Luis Oliveira [Mon, 28 Jul 2008 22:42:10 +0000] 
Expect STRING.ENCODING.UTF-16.BASIC and STRING.ENCODINGS.ALL.BASIC failures

4 years agoSmall fixes and simplifications to the TEST-OPs
Luis Oliveira [Mon, 28 Jul 2008 15:31:46 +0000] 
Small fixes and simplifications to the TEST-OPs

4 years agoCMUCL: fix NATIVE-NAMESTRING
Luis Oliveira [Mon, 28 Jul 2008 15:29:40 +0000] 
CMUCL: fix NATIVE-NAMESTRING

- NAMESTRING didn't expand search lists.  Actually read the
  documentation for UNIX-NAMESTRING this time and figured out why it
  appeared to be misbehaving in the past.

4 years agoExpand body only once for uffi:with-cstring.
Stephen Compall [Wed, 23 Jul 2008 04:47:29 +0000] 
Expand body only once for uffi:with-cstring.

4 years agotests/Makefile: deal with BSD systems properly
Luis Oliveira [Mon, 16 Jun 2008 00:06:10 +0000] 
tests/Makefile: deal with BSD systems properly

Suggestion and initial patch courtesy of Josh Elsasser.

4 years agoUpdate make-shareable-byte-vector for LW 5.1
Luis Oliveira [Tue, 10 Jun 2008 20:19:20 +0000] 
Update make-shareable-byte-vector for LW 5.1

Patch courtesy of Chun Tian.

4 years agoEliminate all references to cffi-utils package.
Stelian Ionescu [Thu, 5 Jun 2008 06:50:42 +0000] 
Eliminate all references to cffi-utils package.

4 years agofix groveller by adding symbolicate to alexandria
attila.lendvai [Wed, 4 Jun 2008 21:17:29 +0000] 
fix groveller by adding symbolicate to alexandria

4 years agocffi-sbcl: needs when-let as well.
Luis Oliveira [Wed, 4 Jun 2008 03:45:03 +0000] 
cffi-sbcl: needs when-let as well.

4 years agoMakefile: rename acl to alisp
Luis Oliveira [Tue, 3 Jun 2008 22:30:08 +0000] 
Makefile: rename acl to alisp

4 years agoRemove cffi-utils
Luis Oliveira [Tue, 3 Jun 2008 22:28:41 +0000] 
Remove cffi-utils

5 years agoFix emulation of [UNSIGNED-]LONG-LONG.
Stelian Ionescu [Fri, 9 May 2008 14:35:16 +0000] 
Fix emulation of [UNSIGNED-]LONG-LONG.

4 years agocffi-openmcl: fix name conflict
Luis Oliveira [Mon, 2 Jun 2008 20:08:04 +0000] 
cffi-openmcl: fix name conflict

- Import just alexandria:once-only instead of the whole package.

Reported by Marko Manninen.

4 years agocffi-manual: @section CMUCL -> @subheading
Luis Oliveira [Mon, 2 Jun 2008 20:07:07 +0000] 
cffi-manual: @section CMUCL -> @subheading

4 years agoUpdate manual
Luis Oliveira [Sun, 1 Jun 2008 05:17:32 +0000] 
Update manual

- Fix @result{} in the HTML output.
- Revamp the "Implementation support" chapter.
- Fix misc documentation rot.
- Delete empty sections.
- Document the emulation of long-long types.
- Remove UTF-8 characters since texinfo has not entered
  the 21st century yet.
- Finish the documentation for the new encoding support.

4 years agominor change to foreign-string-to-lisp
Luis Oliveira [Sun, 1 Jun 2008 04:56:24 +0000] 
minor change to foreign-string-to-lisp

Make max-chars default to (1- array-total-size-limit).

5 years agoadded support for :cc-flags for grovel-file to specify additional flags to the compil...
attila.lendvai [Sat, 17 May 2008 19:02:31 +0000] 
added support for :cc-flags for grovel-file to specify additional flags to the compiler (like -I /foo/bar)

4 years agoMinor fixes to cffi-manual.texinfo
Luis Oliveira [Sat, 31 May 2008 16:37:24 +0000] 
Minor fixes to cffi-manual.texinfo

Restores buildability. Courtesy of Rupert Swarbrick.

4 years agoFix conflict in cffi-openmcl.lisp
Luis Oliveira [Sat, 31 May 2008 14:16:47 +0000] 
Fix conflict in cffi-openmcl.lisp

5 years agoAdd dependency on ALEXANDRIA, remove redundant code from CFFI-UTILS package.
Stelian Ionescu [Sun, 30 Dec 2007 23:39:20 +0000] 
Add dependency on ALEXANDRIA, remove redundant code from CFFI-UTILS package.

5 years agoAdd groveler directive for inline C code, as for the wrapper.
Stelian Ionescu [Sat, 5 Apr 2008 23:18:46 +0000] 
Add groveler directive for inline C code, as for the wrapper.

5 years agoGroveler: small fix for ECL.
Stelian Ionescu [Fri, 8 Feb 2008 22:40:19 +0000] 
Groveler: small fix for ECL.

5 years agocffi-lispworks: add long-long support on 64-bit platforms
Luis Oliveira [Mon, 7 Apr 2008 10:54:14 +0000] 
cffi-lispworks: add long-long support on 64-bit platforms

Initial patch and testing courtesy of Tian Chun.

5 years agoMark DEFCFUN.VARARGS.DOCSTRING as an expected failure on CLISP
Luis Oliveira [Sat, 5 Apr 2008 20:58:12 +0000] 
Mark DEFCFUN.VARARGS.DOCSTRING as an expected failure on CLISP

5 years agouffi-compat: fix bitrot in CONVERT-FROM-FOREIGN-STRING
Luis Oliveira [Sun, 16 Mar 2008 13:26:03 +0000] 
uffi-compat: fix bitrot in CONVERT-FROM-FOREIGN-STRING

Reported by Christophe Rhodes. Passes all of uffi-tests again.

5 years agoSimplify :[u]intptr definitons.
Luis Oliveira [Mon, 25 Feb 2008 23:13:21 +0000] 
Simplify :[u]intptr definitons.

- This patch makes CMUCL happier.

5 years agoMake sure that the groveller can handle nested PROGN forms.
Stelian Ionescu [Fri, 21 Dec 2007 20:41:27 +0000] 
Make sure that the groveller can handle nested PROGN forms.

5 years agoUnicode string update
Luis Oliveira [Mon, 10 Dec 2007 10:20:01 +0000] 
Unicode string update

- Remove outdated comments.
- Use BABEL:SIMPLE-UNICODE-STRING type.
- Document *DEFAULT-FOREIGN-ENCODINGS*.
- Add :FREE-FROM-FOREIGN and :FREE-TO-FOREIGN boolean
  parameters to the :STRING type.

5 years agoFix WITH-FOREIGN-POINTER-AS-STRING usage in examples. (again)
Luis Oliveira [Sat, 8 Dec 2007 22:28:04 +0000] 
Fix WITH-FOREIGN-POINTER-AS-STRING usage in examples. (again)

5 years agoFix WITH-FOREIGN-POINTER-AS-STRING usage in examples.
Luis Oliveira [Sat, 8 Dec 2007 22:25:10 +0000] 
Fix WITH-FOREIGN-POINTER-AS-STRING usage in examples.

5 years agogrovel: fix Lispworks's %INVOKE
Luis Oliveira [Thu, 23 Aug 2007 03:27:14 +0000] 
grovel: fix Lispworks's %INVOKE

5 years agoFix strings.lisp
Luis Oliveira [Mon, 13 Aug 2007 23:04:54 +0000] 
Fix strings.lisp

- Work around apparent SBCL bug.
- Handle :RE endianness in BGET and BSET.

5 years agoUpdate tests to reflect changes in WITH-FOREIGN-POINTER-AS-STRING
Luis Oliveira [Mon, 13 Aug 2007 23:04:27 +0000] 
Update tests to reflect changes in WITH-FOREIGN-POINTER-AS-STRING

5 years agoAdd missing :after qualifier in DEFINE-C-STRUCT-WRAPPER.
Luis Oliveira [Mon, 13 Aug 2007 20:16:39 +0000] 
Add missing :after qualifier in DEFINE-C-STRUCT-WRAPPER.

5 years agoDon't use aggresive compilation declarations in BABEL-ENCODINGS:I-C-M.
Luis Oliveira [Mon, 13 Aug 2007 19:49:57 +0000] 
Don't use aggresive compilation declarations in BABEL-ENCODINGS:I-C-M.

5 years agoFix WITH-FOREIGN-POINTER-AS-STRING return values
Luis Oliveira [Mon, 6 Aug 2007 01:43:05 +0000] 
Fix WITH-FOREIGN-POINTER-AS-STRING return values

- Don't return second value of FOREIGN-STRING-TO-LISP.

5 years agogrovel: fix defwrapper handling of types in #'cffi-type
Luis Oliveira [Mon, 6 Aug 2007 01:40:01 +0000] 
grovel: fix defwrapper handling of types in #'cffi-type

5 years agogrovel: fix handling of alternatives in constantenum
Luis Oliveira [Fri, 3 Aug 2007 20:26:07 +0000] 
grovel: fix handling of alternatives in constantenum

5 years agogrovel: fix invoke on clisp/win32
Luis Oliveira [Fri, 3 Aug 2007 20:25:45 +0000] 
grovel: fix invoke on clisp/win32

5 years agogrovel: ugh, fix wording in form-kind comment
Luis Oliveira [Wed, 1 Aug 2007 14:56:18 +0000] 
grovel: ugh, fix wording in form-kind comment

5 years agoFix use of PROGN form by the groveller.
Stelian Ionescu [Wed, 1 Aug 2007 14:46:56 +0000] 
Fix use of PROGN form by the groveller.

5 years agogrovel: fix FORM-KIND
Luis Oliveira [Wed, 1 Aug 2007 14:34:32 +0000] 
grovel: fix FORM-KIND

5 years agoAdd new types :intptr and :uintptr
Luis Oliveira [Mon, 30 Jul 2007 23:11:11 +0000] 
Add new types :intptr and :uintptr

5 years agogrovel: update comment regarding cstruct-and-class
Luis Oliveira [Mon, 30 Jul 2007 20:53:30 +0000] 
grovel: update comment regarding cstruct-and-class

5 years agogrovel: fix symbol names in in-package forms
Luis Oliveira [Mon, 30 Jul 2007 04:09:42 +0000] 
grovel: fix symbol names in in-package forms

5 years agoNew macro: DEFINE-C-STRUCT-WRAPPER
Luis Oliveira [Mon, 30 Jul 2007 02:23:29 +0000] 
New macro: DEFINE-C-STRUCT-WRAPPER

With tests STRUCT-WRAPPER.[12]

5 years agogrovel: fix conflict and indentation
Luis Oliveira [Sun, 29 Jul 2007 19:57:47 +0000] 
grovel: fix conflict and indentation

5 years agoCleaned up compiler invokation by the groveller.
Stelian Ionescu [Sun, 29 Jul 2007 19:36:33 +0000] 
Cleaned up compiler invokation by the groveller.

5 years agogrovel: fix invoke-cc's conditional library arguments
Luis Oliveira [Sun, 29 Jul 2007 04:48:12 +0000] 
grovel: fix invoke-cc's conditional library arguments

5 years agogrovel: constantenum: signal warnings properly
Luis Oliveira [Sun, 29 Jul 2007 01:22:00 +0000] 
grovel: constantenum: signal warnings properly

5 years agoAdjustments for using cffi-grovel on windows.
Luis Oliveira [Sun, 29 Jul 2007 01:21:13 +0000] 
Adjustments for using cffi-grovel on windows.

5 years agogrovel: use :[u]int64 without worries
Luis Oliveira [Thu, 26 Jul 2007 19:52:50 +0000] 
grovel: use :[u]int64 without worries

No need to check for cffi-features:no-long-long now that we have
emulated long long type.

5 years agocffi-grovel: x86-64 compat changes
Luis Oliveira [Thu, 26 Jul 2007 18:36:45 +0000] 
cffi-grovel: x86-64 compat changes

- use :long instead of :int to try and determine word size.
- use -fPIC for 64-bit shared libraries.

5 years agoMinor change to src/types.lisp
Luis Oliveira [Fri, 20 Jul 2007 02:02:27 +0000] 
Minor change to src/types.lisp

5 years agoRemove outdated TODO items
Luis Oliveira [Fri, 20 Jul 2007 02:02:08 +0000] 
Remove outdated TODO items

5 years agoNew feature: emulated long-long types
Luis Oliveira [Thu, 19 Jul 2007 18:25:57 +0000] 
New feature: emulated long-long types

(initial suggestion and patch courtesy of Stelian Ionescu)

- Update test suite to reflect this.
- Tested on Allegro and Lispworks. Should work for ECL as well.

5 years agoUse trivial-features.
Luis Oliveira [Thu, 19 Jul 2007 18:20:16 +0000] 
Use trivial-features.

Not sure if this is a great idea yet.  In any case, CFFI-FEATURES is
still there for backwards compatibility for the time being.

5 years agoFOREIGN-STRING-TO-LISP: return number of octets read
Luis Oliveira [Tue, 17 Jul 2007 03:31:10 +0000] 
FOREIGN-STRING-TO-LISP: return number of octets read

- Update test suite to reflect this change.

5 years agoUpdate strings.lisp to match Babel's accessor changes.
Luis Oliveira [Tue, 17 Jul 2007 03:16:27 +0000] 
Update strings.lisp to match Babel's accessor changes.

5 years agoBug fixes
Luis Oliveira [Tue, 17 Jul 2007 03:11:51 +0000] 
Bug fixes

- Fix :LICENSE -> :LICENCE in cffi-grovel.asd
- grovel.lisp fixes:
    * fix OpenMCL's INVOKE
    * have INVOKE call NATIVE-NAMESTRING
    * add IGNORABLE declaration to DEFINE-GROVEL-SYNTAX
- CMUCL's EXT:UNIX-NAMESTRING is buggy, don't use it.
- strings.lisp: pass missing max-octets argument to OCTET-COUNTER
  in FOREIGN-STRING-ALLOC.

5 years agoRemove outdated comments re test string.short-write.1
Luis Oliveira [Mon, 9 Jul 2007 19:02:22 +0000] 
Remove outdated comments re test string.short-write.1

5 years agoFix "endianness" typo
Luis Oliveira [Sun, 8 Jul 2007 03:50:10 +0000] 
Fix "endianness" typo

5 years agoForeign string changes
Luis Oliveira [Sun, 8 Jul 2007 03:45:38 +0000] 
Foreign string changes

- LISP-STRING-TO-FOREIGN takes new arguments START, END and OFFSET.  Also,
  instead of bailing out when STRING needs more octets than BUFSIZE, it
  fills in as much as possible.
- test STRING.SHORT-WRITE.1 now passes.
- FOREIGN-STRING-TO-LISP takes new argument MAX-CHARS.

5 years agowith-foreign-pointer-as-string: take additional arguments
Luis Oliveira [Fri, 6 Jul 2007 13:00:18 +0000] 
with-foreign-pointer-as-string: take additional arguments

Changed to match the new WITH-FOREIGN-STRING syntax.  Document later.

5 years agocffi-grovel: defwrapper: handle foreign/lisp names
Luis Oliveira [Fri, 6 Jul 2007 00:38:36 +0000] 
cffi-grovel: defwrapper: handle foreign/lisp names

5 years agoDon't autoexport grovel definitions.
Luis Oliveira [Fri, 6 Jul 2007 00:36:42 +0000] 
Don't autoexport grovel definitions.

5 years agocffi-grovel: slightly better handling of packages
Luis Oliveira [Fri, 29 Jun 2007 20:51:15 +0000] 
cffi-grovel: slightly better handling of packages

- in-package now has a read time effect on *package* which will determine
  to which package various symbols (such as type names) will belong to.

5 years agocffi-manual: small change to the grovel example
Luis Oliveira [Fri, 29 Jun 2007 20:50:05 +0000] 
cffi-manual: small change to the grovel example

5 years agoWITH-FOREIGN-STRING changes
Luis Oliveira [Fri, 29 Jun 2007 20:42:56 +0000] 
WITH-FOREIGN-STRING changes

- WITH-FOREIGN-STRING's new syntax:
    with-foreign-string (binding &rest args) &body
      binding  :

5 years agoUse the foreign-pointer type in strings.lisp
Luis Oliveira [Thu, 28 Jun 2007 15:40:56 +0000] 
Use the foreign-pointer type in strings.lisp

5 years agoAdded remove-from-plist into cffi-utils, copied from alexandria
attila.lendvai [Mon, 25 Jun 2007 14:59:23 +0000] 
Added remove-from-plist into cffi-utils, copied from alexandria

5 years agoAdded :byte-size-variable keyword arg to with-foreign-string
attila.lendvai [Mon, 25 Jun 2007 14:58:36 +0000] 
Added :byte-size-variable keyword arg to with-foreign-string

5 years agoadd :null-teminated-p keyword param to foreign-string-alloc
tomi.borbely [Mon, 25 Jun 2007 14:46:37 +0000] 
add :null-teminated-p keyword param to foreign-string-alloc

5 years agoEncoding support using Babel
Luis Oliveira [Fri, 8 Jun 2007 02:26:12 +0000] 
Encoding support using Babel

- Preliminary (likely buggy) version.  Includes documentation and tests.
- New cffi-features: big-endian and little-endian determined with CFFI
  code.
- Needs cleaning up.

5 years agomanual: Use @deffn instead of @itemize for grovel forms.
Luis Oliveira [Mon, 18 Jun 2007 08:20:56 +0000] 
manual: Use @deffn instead of @itemize for grovel forms.

5 years agoIntegrate cffi-grovel
Luis Oliveira [Sun, 17 Jun 2007 23:19:23 +0000] 
Integrate cffi-grovel

Added a groveller based on Dan Knap's and Matthew Backes's cffi-grovel
and Stelian Ionescu's fork iolib-grovel.  cffi-grovel is inspired by
SBCL's groveller.  This is a preliminary version.

Includes a new wrapper generator syntax to simplify the writing of
C glue libraries among other minor features.

- Updated TODO items related to grovelling.
- Integrated documentation into the CFFI manual.
- src/libraries: use ".so" as the default library suffix.

5 years agocffi-tests: Lispworks needs to have libm.so loaded
Luis Oliveira [Mon, 7 Apr 2008 11:11:46 +0000] 
cffi-tests: Lispworks needs to have libm.so loaded

5 years agoDefine FOREIGN-LIBRARY class before it's used...
Luis Oliveira [Sun, 6 Apr 2008 23:36:31 +0000] 
Define FOREIGN-LIBRARY class before it's used...

5 years agoImplemented simple compiler-macro for FOREIGN-ALLOC
Luis Oliveira [Sun, 6 Apr 2008 23:33:31 +0000] 
Implemented simple compiler-macro for FOREIGN-ALLOC

5 years agoSmall optimization in PARSE-TYPE
Luis Oliveira [Sun, 6 Apr 2008 23:28:52 +0000] 
Small optimization in PARSE-TYPE

Don't need to check for cycles (which starts off by consing up
a hash table) when not dealing with foreign-typedefs. Initial
patch courtesy of Greg Pfeil.

5 years agoFix bitrot in cffi-ecl.lisp
Luis Oliveira [Sun, 6 Apr 2008 23:25:33 +0000] 
Fix bitrot in cffi-ecl.lisp

5 years agoClozure CL chokes on the CALLBACKS.BFF.* tests, disabled them
Luis Oliveira [Sun, 6 Apr 2008 22:13:10 +0000] 
Clozure CL chokes on the CALLBACKS.BFF.* tests, disabled them

5 years agocffi-clisp: add support for the upcoming 2.45 version
Luis Oliveira [Sat, 5 Apr 2008 20:54:12 +0000] 
cffi-clisp: add support for the upcoming 2.45 version

CLISP 2.45 introduces a couple of backwards-incompatible changes
to some of the unexported FFI functions we use.

5 years agocffi-tests: restore support for 32-bit lisps running on x86-64
Luis Oliveira [Sat, 5 Apr 2008 16:28:58 +0000] 
cffi-tests: restore support for 32-bit lisps running on x86-64