Skip to content
  1. Nov 04, 2012
  2. Mar 10, 2012
  3. Sep 11, 2011
    • Liam M. Healy's avatar
      Define structure interface to libffi · f5469081
      Liam M. Healy authored
      Generic function translate-into-foreign-memory and funtion
      convert-into-foreign-memory definitions now loaded by cffi.  System
      cffi-fsbv defined for calling functions with foreign structures by
      value using libffi.  Current state of this system is to make
      libffi-type-pointer and associate with the structure in defcstruct.
      This works on test structure
      (macroexpand '(defcstruct (complex :class complex-type) (real :double) (imag :double)))
      but nothing further is done with the libffi-type-pointer.
      
      To do: fix lookup-type so that if there is no type defined, it returns
      nil.  Do iterate-foreign-structure in advance of macro expansion in
      cstruct-libffi-hook, if any arguments lack type translation, then
      return nil.  This means that that structure can not be passed/returned
      by value.  Then load cif after cstruct.  Secondary bug fix: defsynonym
      'unsigned to something, not sure what it's supposed to be; :uint?
      f5469081
  4. Aug 22, 2010
    • Luís Oliveira's avatar
      Moving repository to git. · cc8517b5
      Luís Oliveira authored
      - Added .gitignore.
      - Adapted release.sh script to git.
      - Removed :version from cffi.asd. Release tarballs now get the release
        version inserted into the tarball's cffi.asd.
      - Update manual with git info.
      v0.10.6
      cc8517b5
  5. May 20, 2010
  6. Jan 01, 2010
  7. Jun 16, 2009
  8. Feb 01, 2009
  9. Oct 29, 2008
  10. Sep 12, 2008
  11. Aug 20, 2008
  12. Jul 29, 2008
  13. Jul 28, 2008
  14. Jun 03, 2008
  15. Dec 30, 2007
  16. Jul 19, 2007
    • Luís Oliveira's avatar
      Use trivial-features. · d1709647
      Luís Oliveira authored
      Not sure if this is a great idea yet.  In any case, CFFI-FEATURES is
      still there for backwards compatibility for the time being.
      d1709647
  17. Jun 08, 2007
    • Luís Oliveira's avatar
      Encoding support using Babel · 4f1b66c4
      Luís Oliveira authored
      - Preliminary (likely buggy) version.  Includes documentation and tests.
      - New cffi-features: big-endian and little-endian determined with CFFI
        code.
      - Needs cleaning up.
      4f1b66c4
  18. Jun 01, 2007
  19. Sep 08, 2006
  20. May 03, 2006
  21. Apr 24, 2006
  22. Apr 18, 2006
    • Luís Oliveira's avatar
      More minor changes to cffi-tests · 9a1bd8bd
      Luís Oliveira authored
      - add asdf:test-op to the cffi system
      - mark a couple more cmucl failures
      - get rid of the warning in libtest.c about comparing void* and
        function pointer
      9a1bd8bd
  23. Feb 23, 2006
    • Luís Oliveira's avatar
      SCL port, courtesy of Douglas Crosher · 3ce10a0c
      Luís Oliveira authored
      - Makefile: new test-scl target. Add SCL's fasl file extensions
        to the clean target.
      - Remove SCL TODO item.
      - New file: cffi-scl.lisp.
      - New primitive type :long-double. Since it's only supported by
        SCL, it's not worth adding a no-long-double feature just yet.
      - New tests for :long-double.
      - Add information about SCL and the new :long-double type to
        the user manual.
      3ce10a0c
  24. Feb 04, 2006
  25. Jan 07, 2006
    • Luís Oliveira's avatar
      Pushing cffi-features symbols to *features* · 9ac097e9
      Luís Oliveira authored
      - Renamed :cffi/no-foreign-funcall and :cffi/no-long-long to
        cffi-features:foreign-funcall and cffi-features:long-long respectively
        (with the opposite meanings of course).
      - Also new features (in the cffi-features package): darwin, unix, windows,
        ppc32 and x86. More could be added. The cffi-sys backends are
        responsible for pushing these features.
      9ac097e9
  26. Dec 11, 2005
    • Luís Oliveira's avatar
      Type translation refactoring · 6733be49
      Luís Oliveira authored
      - Refactoring of the type translation mechanism, now based on
        generic functions. The only user-visible changes is that you can
        now specialize the on the argument of the translator, and there's
        no type argument now (which was useless too for user-defined types).
      - Don't export define-type-spec-parser since it's useless on its own.
      - The anonymous :enum type is gone.
      - Updated manual.
      6733be49
  27. Dec 08, 2005
  28. Aug 26, 2005
    • Luís Oliveira's avatar
      Type system improvements and more. · cf0aca67
      Luís Oliveira authored
      - New tests: tests/enums.lisp (4 tests) and tests/misc-types.lisp (3 tests).
      - New file: objects.lisp, skeleton of the safe typed pointer interface. I
        also added a :boolean type here, it's looking for a better home still.
      - (early-types.lisp): type parsers, DEFINE-TYPE-SPEC-PARSER and PARSE-TYPE.
        Added abbility to have anonymous types (ie. a name is no longer required
        for FOREIGN-TYPE). Moved DEFCTYPE to types.lisp.
      - (enum.lisp): improved DEFCENUM, the values for each keyword are now
        optional, like in C. Added the anonymous type (:enum ...)
      - (types.lisp):
          - Renamed :TO-C-ARG to :TO-C-DYNAMIC.
          - Renamed FOREIGN-AREF to MEM-AREF and implemented compiler macros
            for it.
          - New exported macro: DEFINE-FOREIGN-TYPE for parameterized types.
          - Change DEFINE-TYPE-TRANSLATOR back to the previous interface,
            translators take a type argument now and we have translators
            available at runtime now too.
          - FOREIGN-TYPEDEF's now inherit their parent type's translators.
          - New :wrapper type, for anonymous typedefs with translators.
      - (strings.lisp): Renamed string to :string. Added new type, :string+ptr.
      - (utils.lisp): renamed let-if to bif.
      - (tests/callbacks.lisp): two tests were not being run for SBCL
        because I thought it triggered a bug but it's actually only one that
        triggers the bug. Fixed that.
      - Updated examples and tests to use :string instead of string.
      cf0aca67
  29. Aug 21, 2005
    • Luís Oliveira's avatar
      A couple of minor changes. · 94e36ad3
      Luís Oliveira authored
      - Move #-cffi/no-foreign-funcall from cffi-tests.asd to
        tests/funcall.lisp and have the lisps that don't support this
        push the feature in cffi-<lisp>.lisp instead of defpackage.
      - New file: utils.lisp
      - Make Allegro, CMUCL, Corman and OpenMCL use callback-symbol-name  (from cffi-utils) to safely intern callback symbol names (James)
      - Clisp: consider (pointerp NIL)
      94e36ad3
  30. Aug 06, 2005
    • Luís Oliveira's avatar
      Initial support for Corman Lisp. · 2912c647
      Luís Oliveira authored
      - A few bugs and issues left, fails 5 tests. (the tests
        won't run automatically because Corman Lisp binds
        *load-truename* to NIL, so the code in tests/bindings.lisp
        doesn't find the C test library).
      2912c647
  31. Jul 05, 2005
  32. Jul 04, 2005
  33. Jun 12, 2005
    • Stelian Ionescu's avatar
      Very preliminary Lispworks support. · 87462687
      Stelian Ionescu authored
      Very preliminary Lispworks support.
      Calling foreign functions is not implemented, and will probably require
      vendor support as a necessary primitive does not seem to be exported.
      87462687
  34. Jun 08, 2005
  35. Jun 07, 2005