Difference between revisions of "Bindings"

From D Wiki
Jump to: navigation, search
m (Fix ancient bugzilla link)
(Add the BindBC project)
 
(6 intermediate revisions by 4 users not shown)
Line 4: Line 4:
 
Projects and repositories for collecting / maintaining D bindings:
 
Projects and repositories for collecting / maintaining D bindings:
  
 +
* [https://github.com/bindbc BindBC]
 
* [https://github.com/D-Programming-Deimos Deimos]
 
* [https://github.com/D-Programming-Deimos Deimos]
 
* [http://dsource.org/projects/bindings DSource bindings project]
 
* [http://dsource.org/projects/bindings DSource bindings project]
Line 36: Line 37:
 
  | platform =
 
  | platform =
 
  | license =  
 
  | license =  
  | url = http://www.swig.org/Doc2.0/D.html
+
  | url = http://www.swig.org/Doc4.0/D.html
 
}}
 
}}
  
 
{{Project
 
{{Project
  | name = '''cwrap'''
+
  | name = '''cwrap''' (abandoned)
 
  | about = High-level wrapper generator
 
  | about = High-level wrapper generator
 
  | platform =
 
  | platform =
Line 48: Line 49:
  
 
{{Project
 
{{Project
  | name = '''htod'''
+
  | name = '''htod''' (not actively developed)
 
  | about = Migration tool to aid in converting C header files
 
  | about = Migration tool to aid in converting C header files
 
  | platform = Windows
 
  | platform = Windows
Line 66: Line 67:
  
 
== Bindings ==
 
== Bindings ==
 +
=== Web ===
 +
{{Projects
 +
| Projects =
 +
 +
{{Project
 +
| name = '''librdf/redland'''
 +
| about = Multiple language bindings for librdf (advanced RDF and SPARQL support)
 +
| platform = all
 +
| license = multiple FOSS licenses
 +
| url = https://github.com/vporton/redland-bindings
 +
}}
 +
}}
 +
 
=== Compression & Encryption ===
 
=== Compression & Encryption ===
 
{{Projects
 
{{Projects
Line 144: Line 158:
 
  | license =  
 
  | license =  
 
  | url = https://github.com/DerelictOrg
 
  | url = https://github.com/DerelictOrg
}}
 
{{Project
 
| name = '''Mediastreamer2'''
 
| about = Mediastreamer2 is a powerful and lightweighted streaming engine specialized for voice/video telephony applications.
 
| platform =
 
| license =
 
| url = https://github.com/axeoth/mediastreamer2_layer
 
 
}}
 
}}
 
{{Project
 
{{Project
Line 176: Line 183:
 
* [http://dlang.org/interfaceToC.html Interfacing to C (DLang page)]
 
* [http://dlang.org/interfaceToC.html Interfacing to C (DLang page)]
 
* [http://dlang.org/htod.html DLang htod tool]
 
* [http://dlang.org/htod.html DLang htod tool]
* [http://digitalmars.com/d/1.0/htomodule.html D1 article]
 
 
  
 
[[Category:Binding]]
 
[[Category:Binding]]

Latest revision as of 01:43, 11 May 2021

Binding is a procedure that converts header files, function prototypes, and variable declarations to from another language to D.

Projects

Projects and repositories for collecting / maintaining D bindings:

Binding generators

Projects which automate generating D bindings:

C/C++ to D

Title / InfoDescriptionLicensePlatform
Icon dpackage 48.png
A tool for converting C and Objective-C headers to D modules Boost Software License 1.0 Posix, Windows
Icon dpackage 48.png
#include C headers in D code Boost License 1.0.
Icon dpackage 48.png
Simplified Wrapper and Interface Generator
Icon dpackage 48.png
High-level wrapper generator Boost License 1.0.
Icon dpackage 48.png
Migration tool to aid in converting C header files Windows


Objective-C to D

D to C/C++

Bindings

Web

Title / InfoDescriptionLicensePlatform
Icon dpackage 48.png
Multiple language bindings for librdf (advanced RDF and SPARQL support) multiple FOSS licenses all


Compression & Encryption

Title / InfoDescriptionLicensePlatform
Icon dpackage 48.png
D version of the C headers for openssl MIT Windows/POSIX
Icon dpackage 48.png
Interface to LZMA compression library Windows/POSIX
Icon dpackage 48.png
Interface to GNUTLS library LGPL


Multimedia & Games

Title / InfoDescriptionLicensePlatform
Icon dpackage 48.png
MediaInfo supplies technical and tag information about your video or audio files. GPL/LGPL Windows
Icon dpackage 48.png
Libsndfile is a C library for reading and writing files containing sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format) through one standard library interface. It is released in source code format under the Gnu Lesser General Public License. LGPL Windows/POSIX
Icon dpackage 48.png
Allegro 4 and Allegro 5 are cross-platform, open source, game programming libraries, primarily for C and C++ developers.
Icon dpackage 48.png
DerelictOrg is a collection of D bindings to C shared (dynamic) libraries which are useful for multimedia applications, with a heavy bias toward game development-related libraries.

Bindings:

  • ALURE
  • ASSIMP
  • DevIL
  • FreeImage
  • FreeType
  • GLFW
  • Lua
  • ODE
  • OpenAL
  • OpenGL
  • PhysicsFS
  • SDL2
  • SFML2
  • Vorbis
  • libogg
  • libpq

Older versions:

Icon dpackage 48.png
AntTweakBarD is a binding to AntTweakBar which is a multi-render-engine (D3D/OpenGL) GUI tweaking library. zlib/libpng


Source code translators

  • cpp2d - C++ to D converter (included with Visual D)
  • idl2d - IDL / C++ header file to D converter

See also

External links