man slirp (Commandes) - C code generator for the S-Lang scripting language
NAME
slirp - C code generator for the S-Lang scripting language
SYNOPSIS
slirp [ OPTIONS ... ] headerfile [ headerfile ... ]
DESCRIPTION
SLIRP is the (SL)ang (I)nterface (P)ackage, a code generator aimed primarily at simplifying the process of creating modules for the S-Lang scripting language.
SLIRP can dramatically reduce the time and effort required to make C, C++, or FORTRAN code callable directly from the S-Lang interpreter, and will even generate Makefiles to automate the build process.
SLIRP may also be used to generate pure C bindings for C++ code, or empty (stub) implementations for the interface(s) specified by its input header files. The code generated in these cases has no dependencies upon S-Lang whatsoever.
OPTIONS
- -cfront
- Generate standalone C wrappers (.cc and .h files), instead of S-Lang bindings, for C++ interface
- -const_strings
- Treat 'char*' return values as 'const char*'
- -g
- Emit debugging output
- -fprefix <pref>
- Emit code only for functions which begin with an exact match to <pref>, instead of default regexp
- -h -help --help
- This message
- -I <dir>
- Add <dir> to search path for headers during code generation; will also be reflected in -make output
- -L <dir>
- Add <dir> to search path at link time; for -make
- -l <lib>
- Add <lib> to library list at link time; for -make
- -ldflags <flags>
- Use when -L or -l are inappropriate; for -make
- -m <name>
- Override default module name with <name>
- -make
- Generate a best-effort Makefile for compiling module (-make is also implied by -L, -l, and -ldflags)
- -mapnames <R> <S>
- Synonym for -rename (deprecated)
- -noinit
- Do not generate an initialization fragment
- -nopop
- Avoid explicit pop of func arguments, if possible (also turns off generation of Usage: statements)
- -noautotype
- Disable mapping of unknown types to opaque ptr types
- -otree
- Print hierarchical listing of all opaque types defined by the current invocation, then exit
- Print interface for code which would be generated, but don't actually generate any code
- -rc <file>
- Load customizations from <file>, rather than from first of ./slirprc or $SLIRPRC
- -refscalars
- Support passing scalars as array/ref arguments (default: on for FORTRAN bindings, off for C/C++)
- -rename <R> <S>
- Map C functions with prefixes matching the S-Lang regexp R to S-Lang functions beginning with string S (set S=NULL to map regexp prefix to empty string)
- -stdout
- Emit code to stdout, instead of files
- -stubs
- Generate stub (empty) implementations for input header files, allowing the module interface to be exercised without linking in the underlying library or any of its dependencies
- -tmapout <file>
- Save a copy of the active typemap table to <file>
- -tmapin <file>
- evalfile() additional typemaps from <file>
- --version
- Output version information
- -v
- Show verbose loading messages
AUTHOR
The author of SLIRP is Michael S. Noble <mnoble@space.mit.edu>. Rafael Laboissiere <rafael@debian.org> created the SLIRP package for Debian.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 any later version published by the Free Software Foundation.
On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL
SEE ALSO
On Debian systems the reference manual for SLIRP can be found at /usr/share/doc/slang-slirp/manual.txt.gz. It is also available in PDF, HTML, and text forms on the SLIRP website.