BSD Ports

devel/fungw 1.2.2 MidnightBSD

C Function gateway for different programming languages

System
MidnightBSD
Repository
mports
Maintainer
[email protected]
License
lgpl2.1+
Categories
devel

Description

Fungw is a tiny, portable library written in C (C89) that manages dynamic function calls across different programming languages. For this, fungw provides:

  • a simplistic scalar data type abstraction, supporting the most common types
  • semi-automatic conversion between data types
  • contexts that can host objects; objects can host named functions
  • a set of optional language bindings to the most popular scripting languages

The main use of fungw is to provide the host application a framework where dynamic parts of the code (e.g. plugins) can register their calls, allowing app-plugin, plugin-app, and plugin-plugin calls.

The second main use is doing all this in a language-agnostic way: any part of the code can be implemented in any of the numerous supported scripting languages (such as awk or lua). The caller of a function doesn't need to know what language the function is implemented in.

The main property of fungw is simplicity. The only API between objects is the plain old function call mechanism.

In the other systems

The newest version among them is 1.2.2, as upstream numbers it.

SystemPortVersionVulnerabilitiesStatusMaintainerLast update
MidnightBSDdevel/fungw1.2.2 newestno data-[email protected]-
FreeBSDdevel/fungw1.2.2 newestnone known-[email protected]-
DragonFlydevel/fungw1.2.1_2none known-[email protected]-
HardenedBSDdevel/fungw1.2.2 newestno data-[email protected]-
GhostBSDdevel/fungw1.2.2 newestno data-[email protected]-

Install

Binary package:

mport install fungw

From mports:

cd /usr/mports/devel/fungw && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	fungw>0:devel/fungw
LIB_DEPENDS=	libfungw.so:devel/fungw

Dependency graph

Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.

Dependencies

As this port's Makefile names them.

Library 1

Build dependencies 1
Run dependencies 1
Required by 2

Configuration

Options name: devel_fungw

OptionDefaultDescription
DOCSoff
DUKTAPEonJavascript support through Duktape
LUAon
PERLon
PYTHON3on
TCLon
USES
gmake tar:bz2
Service scripts
none

Files

pkg-plist 85
  • include/libfungw/fungw.h
  • include/libfungw/fungw_conv.h
  • include/libfungw/scconfig_hooks.h
  • include/libfungwbind/c/fungw_c.h
  • lib/libfungw.so
  • lib/libfungw.so.1
  • lib/libfungw.so.1.2
  • lib/libfungw.so.1.2.2
  • lib/libfungw_c.a
  • lib/libfungw_c.so
  • lib/libfungw_c.so.1
  • lib/libfungw_c.so.1.2
  • lib/libfungw_c.so.1.2.2
  • lib/libfungw_cli.a
  • lib/libfungw_cli.so.1
  • lib/libfungw_cli.so.1.2
  • lib/libfungw_cli.so.1.2.2
  • lib/libfungw_duktape.a
  • lib/libfungw_duktape.so.1
  • lib/libfungw_duktape.so.1.2
  • lib/libfungw_duktape.so.1.2.2
  • lib/libfungw_fawk.a
  • lib/libfungw_fawk.so.1
  • lib/libfungw_fawk.so.1.2
  • lib/libfungw_fawk.so.1.2.2
  • lib/libfungw_lua.a
  • lib/libfungw_lua.so.1
  • lib/libfungw_lua.so.1.2
  • lib/libfungw_lua.so.1.2.2
  • lib/libfungw_perl.a
  • lib/libfungw_perl.so.1
  • lib/libfungw_perl.so.1.2
  • lib/libfungw_perl.so.1.2.2
  • lib/libfungw_python3.a
  • lib/libfungw_python3.so.1
  • lib/libfungw_python3.so.1.2
  • lib/libfungw_python3.so.1.2.2
  • lib/libfungw_tcl.a
  • lib/libfungw_tcl.so.1
  • lib/libfungw_tcl.so.1.2
  • lib/libfungw_tcl.so.1.2.2
  • lib/puplug/fungw_c.a
  • lib/puplug/fungw_c.mak
  • lib/puplug/fungw_c.pup
  • lib/puplug/fungw_c.so
  • lib/puplug/fungw_cli.a
  • lib/puplug/fungw_cli.mak
  • lib/puplug/fungw_cli.pup
  • lib/puplug/fungw_cli.so
  • lib/puplug/fungw_duktape.a
  • lib/puplug/fungw_duktape.mak
  • lib/puplug/fungw_duktape.pup
  • lib/puplug/fungw_duktape.so
  • lib/puplug/fungw_fawk.a
  • lib/puplug/fungw_fawk.mak
  • lib/puplug/fungw_fawk.pup
  • lib/puplug/fungw_fawk.so
  • lib/puplug/fungw_lua.a
  • lib/puplug/fungw_lua.mak
  • lib/puplug/fungw_lua.pup
  • lib/puplug/fungw_lua.so
  • lib/puplug/fungw_perl.a
  • lib/puplug/fungw_perl.mak
  • lib/puplug/fungw_perl.pup
  • lib/puplug/fungw_perl.so
  • lib/puplug/fungw_python3.a
  • lib/puplug/fungw_python3.mak
  • lib/puplug/fungw_python3.pup
  • lib/puplug/fungw_python3.so
  • lib/puplug/fungw_tcl.a
  • lib/puplug/fungw_tcl.mak
  • lib/puplug/fungw_tcl.pup
  • lib/puplug/fungw_tcl.so
  • share/doc/fungw/TODO
  • share/doc/fungw/custom_types.txt
  • share/doc/fungw/index.html
  • share/doc/fungw/lang.html
  • share/doc/fungw/lang_estutter.html
  • share/doc/fungw/lang_funlisp.html
  • share/doc/fungw/lang_howto_support.html
  • share/doc/fungw/lang_lua.html
  • share/doc/fungw/lang_perl.html
  • share/doc/fungw/lang_python.html
  • share/doc/fungw/lang_sh.html
  • share/doc/fungw/model.html
distinfo 1
FileSizeSHA256
fungw-1.2.2.tar.bz2339839c7bdfa65c1dc3f7448eeb8bb0c32e85b3579f4006373e40c92bc65199117a1c0
Master sites 1
  • http://www.repo.hu/projects/fungw/releases/