forked from MoarVM/dyncall
-
Notifications
You must be signed in to change notification settings - Fork 0
mirror of http://dyncall.org/svn/dyncall/trunk/dyncall/
License
tomyan/dyncall
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
dyncall - A Generic Dynamic FFI package ======================================= The dyncall software distribution comprises a low-level toolkit for the implementation of Foreign Function Interfaces. It comprises abstractions to the Application Binary Interface of a number of hard- and software platforms. The software package comprises three C libraries, namely: - Library dyncall for making function calls, - Library dyncallback or writing generic callback handlers, and - Library dynload for loading code. The dyncall library provides a portable interface for calling C functions from within dynamic execution environments, such as interpreters or application servers. The dyncallback library allows to implement a callback handler in C for handling arbitrary C callbacks from within dynamic execution environments. The dynload library provides a thin abstraction layer for loading of code and also allows to enumerate the contents of shared librarys or DLLs. Typical applications for dyncall are FFI (foreign function interface) packages for scripting languages to connect with the C/C++ world. The binary footprint of the whole package is approx. 20 kb. Building the library -------------------- Prequisites: - C compiler such as gcc,clang,sunpro or msvc. - Assembler such as gas (GNU/apple), fbe or masm. Supported Architectures and ABIs: --------------------------------- - x86 32/64-bit (cdecl, fastcall, stdcall, C++ this calls, Syscalls) - ARM AArch32 (ARM/Thumb mode, v4t-v7, oabi/eabi, soft/hardfloat ABIs) - MIPS 32/64-bit (o32, n64, eabi) - PowerPC 32-bit (Mac OS X, System V) - Sparc 32/64-bit (v7/8 and v9) Supported Operating Systems: ---------------------------- - Android - *BSD - Haiku - iOS - Linux - Mac OS X - Microsoft Windows - Minix - Nintendo DS Homebrew - Plan9 / 9front - Playstation Portable Homebrew - ReactOS - Solaris Building the library -------------------- Using `homebrewed' configure shell script and GNU/BSD/Sun make system. $ ./configure $ make $ make install Testing: $ make tests $ make run-tests Out-of-source building: ---------------------- $ cd <build_dir> $ <src_dir>/configure --prefix=<install_dir> $ make $ sudo make install Building using CMake -------------------- $ cmake $ make $ sudo make install Please refer to http://www.dyncall.org, dyncall(3), the dyncall manual and platform-specific READMEs under doc/ for more information.
About
mirror of http://dyncall.org/svn/dyncall/trunk/dyncall/
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published