CVSROOT:        /cvs
Module name:    ports
Changes by:     sema...@cvs.openbsd.org 2024/01/16 02:19:18

Log message:
    Import devel/c2ffi 16.0.0.0
    
    ok tb@
    
    Description:
    This is a tool for extracting definitions from C, C++, and Objective C
    headers for use with foreign function call interfaces.
    
    There are generally two steps to using `c2ffi`:
    
    - Generate output for a particular header or file, gathering macro
    definitions (with the `-M <file>.c` parameter)
    
    - Generate output for macro definitions by running `c2ffi` again on
    the *generated* file (without `-M`)
    
    Currently JSON is the default output.  This is in a rather wordy
    hierarchical format, with each object having a "tag" field which
    describes it.  All objects are contained in an array.  This should
    make it fairly easy (or at least far easier than parsing C yourself)
    to transform into language-specific bindings.
    
    The following language bindings exist for `c2ffi`:
    
    - [cl-autowrap](https://github.com/rpav/cl-autowrap/): Create bindings
    in Common Lisp from a `.h` with `c2ffi` using a simple `(c-include 
"file.h")`
    
    - [c2ffi-ruby](https://github.com/rpav/c2ffi-ruby): Uses the JSON
    from c2ffi to produce a nicely-formatted Ruby file for ruby-ffi.
    
    Status:
    
    Vendor Tag: semarie
    Release Tags:       semarie_20240116
    
    N ports/devel/c2ffi/Makefile
    N ports/devel/c2ffi/distinfo
    N ports/devel/c2ffi/pkg/DESCR
    N ports/devel/c2ffi/pkg/PLIST
    N ports/devel/c2ffi/patches/patch-CMake_setup_post_project_cmake
    N ports/devel/c2ffi/patches/patch-CMakeLists_txt
    
    No conflicts created by this import

Reply via email to