Disable Common Lisp / CLISP target language
Clean up to disable target languages that have been neglected/not functional. Target language be fully deleted in SWIG 4.1 unless a new maintainer brings it up to an acceptable status (experimental or supported). Issue #1447
This commit is contained in:
parent
df51dc8e8f
commit
cb4bd26422
11 changed files with 10 additions and 284 deletions
4
ANNOUNCE
4
ANNOUNCE
|
|
@ -11,8 +11,8 @@ SWIG is a software development tool that reads C/C++ header files and
|
||||||
generates the wrapper code needed to make C and C++ code accessible
|
generates the wrapper code needed to make C and C++ code accessible
|
||||||
from other programming languages including Perl, Python, Tcl, Ruby,
|
from other programming languages including Perl, Python, Tcl, Ruby,
|
||||||
PHP, C#, Go, Java, Javascript, Lua, Scheme (Guile, MzScheme, CHICKEN),
|
PHP, C#, Go, Java, Javascript, Lua, Scheme (Guile, MzScheme, CHICKEN),
|
||||||
D, Ocaml, Octave, R, Scilab, Common Lisp (CLISP,
|
D, Ocaml, Octave, R, Scilab, Common Lisp (Allegro CL, CFFI).
|
||||||
Allegro CL, CFFI). SWIG can also export its parse tree in
|
SWIG can also export its parse tree in
|
||||||
the form of XML. Major applications of SWIG
|
the form of XML. Major applications of SWIG
|
||||||
include generation of scripting language extension modules, rapid
|
include generation of scripting language extension modules, rapid
|
||||||
prototyping, testing, and user interface development for large
|
prototyping, testing, and user interface development for large
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,10 @@ the issue number to the end of the URL: https://github.com/swig/swig/issues/
|
||||||
Version 4.0.0 (in progress)
|
Version 4.0.0 (in progress)
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
|
2019-02-04: wsfulton
|
||||||
|
[CLISP] #1447 GNU Common Lisp has been disabled as a target language in SWIG as part of a
|
||||||
|
clean up to remove target languages that have been neglected/not functional.
|
||||||
|
|
||||||
2019-02-04: wsfulton
|
2019-02-04: wsfulton
|
||||||
[S-EXP] #1447 Common Lisp S-Exp has been disabled as a target language in SWIG as part of a
|
[S-EXP] #1447 Common Lisp S-Exp has been disabled as a target language in SWIG as part of a
|
||||||
clean up to remove target languages that have been neglected/not functional.
|
clean up to remove target languages that have been neglected/not functional.
|
||||||
|
|
|
||||||
|
|
@ -19,10 +19,8 @@
|
||||||
<li><a href="#Lisp_nn6">Generating CFFI bindings for C++ code</a>
|
<li><a href="#Lisp_nn6">Generating CFFI bindings for C++ code</a>
|
||||||
<li><a href="#Lisp_nn7">Inserting user code into generated files</a>
|
<li><a href="#Lisp_nn7">Inserting user code into generated files</a>
|
||||||
</ul>
|
</ul>
|
||||||
<li><a href="#Lisp_nn8">CLISP</a>
|
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#Lisp_nn9">Additional Commandline Options </a>
|
<li><a href="#Lisp_nn9">Additional Commandline Options </a>
|
||||||
<li><a href="#Lisp_nn10">Details on CLISP bindings</a>
|
|
||||||
</ul>
|
</ul>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -38,8 +36,7 @@
|
||||||
There are more than 9 different implementations of common lisp which
|
There are more than 9 different implementations of common lisp which
|
||||||
are available, all have different foreign function
|
are available, all have different foreign function
|
||||||
interfaces. SWIG currently supports only the Allegro Common
|
interfaces. SWIG currently supports only the Allegro Common
|
||||||
Lisp, Common Foreign Function Interface(CFFI), CLisp
|
Lisp, Common Foreign Function Interface(CFFI).
|
||||||
foreign function interfaces.
|
|
||||||
</p>
|
</p>
|
||||||
<H2><a name="Lisp_nn2">29.1 Allegro Common Lisp</a></H2>
|
<H2><a name="Lisp_nn2">29.1 Allegro Common Lisp</a></H2>
|
||||||
|
|
||||||
|
|
@ -80,15 +77,6 @@ swig -cffi -module <i>module-name</i> <i>file-name</i>
|
||||||
<H3><a name="Lisp_nn4">29.2.1 Additional Commandline Options </a></H3>
|
<H3><a name="Lisp_nn4">29.2.1 Additional Commandline Options </a></H3>
|
||||||
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The following table list the additional commandline options available for the CLISP module. They can also be seen by using:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div class="code"><pre>
|
|
||||||
swig -cffi -help
|
|
||||||
</pre></div>
|
|
||||||
<br/>
|
|
||||||
|
|
||||||
<table summary="CFFI specific options">
|
<table summary="CFFI specific options">
|
||||||
<tr>
|
<tr>
|
||||||
<th> CFFI specific options</th>
|
<th> CFFI specific options</th>
|
||||||
|
|
@ -621,192 +609,5 @@ Note that the block <tt>%{ ... %}</tt> is effectively a shortcut for
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
<H2><a name="Lisp_nn8">29.3 CLISP</a></H2>
|
|
||||||
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<a href="http://clisp.cons.org">CLISP</a> is a feature-loaded
|
|
||||||
implementation of common lisp which is portable across most of the
|
|
||||||
operating system environments and hardware. CLISP includes an
|
|
||||||
interpreter, a compiler, a debugger, CLOS, MOP, a foreign
|
|
||||||
language interface, i18n, regular expressions, a socket
|
|
||||||
interface, and more. An X11 interface is available through CLX,
|
|
||||||
Garnet and CLUE/CLIO. Command line editing is provided by
|
|
||||||
readline. CLISP runs Maxima, ACL2 and many other Common Lisp
|
|
||||||
packages.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
To run the clisp module of SWIG requires very little effort, you
|
|
||||||
just need to execute:
|
|
||||||
</p>
|
|
||||||
<div class="code"><pre>
|
|
||||||
swig -clisp -module <i>module-name</i> <i>file-name</i>
|
|
||||||
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Because of the high level nature of the CLISP FFI, the bindings
|
|
||||||
generated by SWIG may not be absolutely correct, and you may need
|
|
||||||
to modify them. The good thing is that you don't need to complex
|
|
||||||
interface file for the CLISP module. The CLISP module tries to
|
|
||||||
produce code which is both human readable and easily modifiable.
|
|
||||||
</p>
|
|
||||||
<H3><a name="Lisp_nn9">29.3.1 Additional Commandline Options </a></H3>
|
|
||||||
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The following table list the additional commandline options available for the CLISP module. They can also be seen by using:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div class="code"><pre>
|
|
||||||
swig -clisp -help
|
|
||||||
</pre></div>
|
|
||||||
<br/>
|
|
||||||
<table summary="CLISP specific options">
|
|
||||||
<tr>
|
|
||||||
<th>CLISP specific options</th>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td>-extern-all</td>
|
|
||||||
<td>If this option is given then clisp definitions for all the functions<br/>
|
|
||||||
and global variables will be created otherwise only definitions for<br/>
|
|
||||||
externed functions and variables are created.
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td>-generate-typedef</td>
|
|
||||||
<td>If this option is given then def-c-type will be used to generate<br/>
|
|
||||||
shortcuts according to the typedefs in the input.
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<H3><a name="Lisp_nn10">29.3.2 Details on CLISP bindings</a></H3>
|
|
||||||
|
|
||||||
|
|
||||||
<p>
|
|
||||||
As mentioned earlier the CLISP bindings generated by SWIG may need
|
|
||||||
some modifications. The clisp module creates a lisp file with
|
|
||||||
the same name as the module name. This
|
|
||||||
lisp file contains a 'defpackage' declaration, with the
|
|
||||||
package name same as the module name. This package uses the
|
|
||||||
'common-lisp' and 'ffi' packages. Also, package exports all
|
|
||||||
the functions, structures and variables for which an ffi
|
|
||||||
binding was generated.<br/>
|
|
||||||
After generating the defpackage statement, the clisp module also
|
|
||||||
sets the default language.
|
|
||||||
|
|
||||||
<div class="targetlang"><pre>
|
|
||||||
(defpackage :test
|
|
||||||
(:use :common-lisp :ffi)
|
|
||||||
(:export
|
|
||||||
:make-bar
|
|
||||||
:bar-x
|
|
||||||
:bar-y
|
|
||||||
:bar-a
|
|
||||||
:bar-b
|
|
||||||
:bar-z
|
|
||||||
:bar-n
|
|
||||||
:pointer_func
|
|
||||||
:func123
|
|
||||||
:make-cfunr
|
|
||||||
:lispsort_double
|
|
||||||
:test123))
|
|
||||||
|
|
||||||
(in-package :test)
|
|
||||||
|
|
||||||
(default-foreign-language :stdc)
|
|
||||||
</pre></div>
|
|
||||||
<p>
|
|
||||||
The ffi wrappers for functions and variables are generated as shown
|
|
||||||
below. When functions have arguments of type "double * array",
|
|
||||||
SWIG doesn't knows whether it is an 'out' argument or it is
|
|
||||||
an array which will be passed, so SWIG plays it safe by
|
|
||||||
declaring it as an '(array (ffi:c-ptr DOUBLE-FLOAT))'. For
|
|
||||||
arguments of type "int **z[100]" where SWIG has more
|
|
||||||
information, i.e., it knows that 'z' is an array of pointers to
|
|
||||||
pointers of integers, SWIG defines it to be '(z (ffi:c-ptr
|
|
||||||
(ffi:c-array (ffi:c-ptr (ffi:c-ptr ffi:int)) 100)))'
|
|
||||||
</p>
|
|
||||||
<div class="code"><pre>
|
|
||||||
extern "C" {
|
|
||||||
int pointer_func(void (*ClosureFun)( void* _fun, void* _data, void* _evt ), int y);
|
|
||||||
|
|
||||||
int func123(div_t * x, int **z[100], int y[][1000][10]);
|
|
||||||
|
|
||||||
void lispsort_double (int n, double * array);
|
|
||||||
|
|
||||||
void test123(float x , double y);
|
|
||||||
|
|
||||||
}
|
|
||||||
</pre></div>
|
|
||||||
<div class="targetlang"><pre>
|
|
||||||
(ffi:def-call-out pointer_func
|
|
||||||
(:name "pointer_func")
|
|
||||||
(:arguments (ClosureFun (ffi:c-function (:arguments (arg0 (ffi:c-pointer NIL))
|
|
||||||
(arg1 (ffi:c-pointer NIL))
|
|
||||||
(arg2 (ffi:c-pointer NIL)))
|
|
||||||
(:return-type NIL)))
|
|
||||||
(y ffi:int))
|
|
||||||
(:return-type ffi:int)
|
|
||||||
(:library +library-name+))
|
|
||||||
|
|
||||||
(ffi:def-call-out func123
|
|
||||||
(:name "func123")
|
|
||||||
(:arguments (x (ffi:c-pointer div_t))
|
|
||||||
(z (ffi:c-ptr (ffi:c-array (ffi:c-ptr (ffi:c-ptr ffi:int)) 100)))
|
|
||||||
(y (ffi:c-ptr (ffi:c-ptr (ffi:c-array ffi:int (1000 10))))))
|
|
||||||
(:return-type ffi:int)
|
|
||||||
(:library +library-name+))
|
|
||||||
|
|
||||||
|
|
||||||
(ffi:def-call-out lispsort_double
|
|
||||||
(:name "lispsort_double")
|
|
||||||
(:arguments (n ffi:int)
|
|
||||||
(array (ffi:c-ptr DOUBLE-FLOAT)))
|
|
||||||
(:return-type NIL)
|
|
||||||
(:library +library-name+))
|
|
||||||
|
|
||||||
(ffi:def-call-out test123
|
|
||||||
(:name "test")
|
|
||||||
(:arguments (x SINGLE-FLOAT)
|
|
||||||
(y DOUBLE-FLOAT))
|
|
||||||
(:return-type NIL)
|
|
||||||
(:library +library-name+))
|
|
||||||
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The module also handles strutcures and #define constants as shown
|
|
||||||
below. SWIG automatically adds the constructors and accessors
|
|
||||||
created for the struct to the list of symbols exported by the
|
|
||||||
package.
|
|
||||||
</p>
|
|
||||||
<div class="code"><pre>
|
|
||||||
struct bar {
|
|
||||||
short x, y;
|
|
||||||
char a, b;
|
|
||||||
int *z[1000];
|
|
||||||
struct bar * n;
|
|
||||||
};
|
|
||||||
|
|
||||||
#define max 1000
|
|
||||||
</pre></div>
|
|
||||||
<div class="targetlang"><pre>
|
|
||||||
(ffi:def-c-struct bar
|
|
||||||
(x :type ffi:short)
|
|
||||||
(y :type ffi:short)
|
|
||||||
(a :type character)
|
|
||||||
(b :type character)
|
|
||||||
(z :type (ffi:c-array (ffi:c-ptr ffi:int) 1000))
|
|
||||||
(n :type (ffi:c-pointer bar)))
|
|
||||||
|
|
||||||
(defconstant max 1000)
|
|
||||||
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
||||||
|
|
@ -112,7 +112,6 @@ SWIG_VERSION Hexadecimal (binary-coded decimal) number contai
|
||||||
SWIGALLEGROCL Defined when using Allegro CL
|
SWIGALLEGROCL Defined when using Allegro CL
|
||||||
SWIGCFFI Defined when using CFFI
|
SWIGCFFI Defined when using CFFI
|
||||||
SWIGCHICKEN Defined when using CHICKEN
|
SWIGCHICKEN Defined when using CHICKEN
|
||||||
SWIGCLISP Defined when using CLISP
|
|
||||||
SWIGCSHARP Defined when using C#
|
SWIGCSHARP Defined when using C#
|
||||||
SWIGGUILE Defined when using Guile
|
SWIGGUILE Defined when using Guile
|
||||||
SWIGJAVA Defined when using Java
|
SWIGJAVA Defined when using Java
|
||||||
|
|
|
||||||
|
|
@ -120,7 +120,6 @@ for example, <tt>swig -ruby -help</tt> for Ruby.
|
||||||
Supported Target Language Options
|
Supported Target Language Options
|
||||||
-allegrocl - Generate ALLEGROCL wrappers
|
-allegrocl - Generate ALLEGROCL wrappers
|
||||||
-chicken - Generate CHICKEN wrappers
|
-chicken - Generate CHICKEN wrappers
|
||||||
-clisp - Generate CLISP wrappers
|
|
||||||
-cffi - Generate CFFI wrappers
|
-cffi - Generate CFFI wrappers
|
||||||
-csharp - Generate C# wrappers
|
-csharp - Generate C# wrappers
|
||||||
-d - Generate D wrappers
|
-d - Generate D wrappers
|
||||||
|
|
|
||||||
|
|
@ -1391,42 +1391,6 @@ allegrocl_clean:
|
||||||
rm -f core @EXTRA_CLEAN@
|
rm -f core @EXTRA_CLEAN@
|
||||||
rm -f *.@OBJEXT@ *@SO@
|
rm -f *.@OBJEXT@ *@SO@
|
||||||
|
|
||||||
##################################################################
|
|
||||||
##### CLISP ######
|
|
||||||
##################################################################
|
|
||||||
|
|
||||||
CLISP = @CLISPBIN@
|
|
||||||
CLISP_SCRIPT=$(RUNME).lisp
|
|
||||||
|
|
||||||
clisp: $(SRCDIR_SRCS)
|
|
||||||
$(SWIG) -clisp $(SWIGOPT) -o $(ISRCS) $(INTERFACEPATH)
|
|
||||||
|
|
||||||
clisp_cpp: $(SRCDIR_SRCS)
|
|
||||||
$(SWIG) -c++ -clisp $(SWIGOPT) -o $(ICXXSRCS) $(INTERFACEPATH)
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------
|
|
||||||
# Run CLISP example
|
|
||||||
# -----------------------------------------------------------------
|
|
||||||
|
|
||||||
clisp_run:
|
|
||||||
$(RUNTOOL) $(CLISP) -batch -s $(CLISP_SCRIPT) $(RUNPIPE)
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------
|
|
||||||
# Version display
|
|
||||||
# -----------------------------------------------------------------
|
|
||||||
|
|
||||||
clisp_version:
|
|
||||||
$(CLISP) --version | head -n 1
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------
|
|
||||||
# Cleaning the CLISP examples
|
|
||||||
# -----------------------------------------------------------------
|
|
||||||
|
|
||||||
clisp_clean:
|
|
||||||
rm -f *_wrap* *~ .~*
|
|
||||||
rm -f core @EXTRA_CLEAN@
|
|
||||||
rm -f *.@OBJEXT@ *@SO@
|
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
##### CFFI ######
|
##### CFFI ######
|
||||||
##################################################################
|
##################################################################
|
||||||
|
|
|
||||||
10
Makefile.in
10
Makefile.in
|
|
@ -73,7 +73,6 @@ skip-chicken = test -n "@SKIP_CHICKEN@"
|
||||||
skip-csharp = test -n "@SKIP_CSHARP@"
|
skip-csharp = test -n "@SKIP_CSHARP@"
|
||||||
skip-lua = test -n "@SKIP_LUA@"
|
skip-lua = test -n "@SKIP_LUA@"
|
||||||
skip-allegrocl = test -n "@SKIP_ALLEGROCL@"
|
skip-allegrocl = test -n "@SKIP_ALLEGROCL@"
|
||||||
skip-clisp = test -n "@SKIP_CLISP@"
|
|
||||||
skip-cffi = test -n "@SKIP_CFFI@"
|
skip-cffi = test -n "@SKIP_CFFI@"
|
||||||
skip-r = test -n "@SKIP_R@"
|
skip-r = test -n "@SKIP_R@"
|
||||||
skip-scilab = test -n "@SKIP_SCILAB@"
|
skip-scilab = test -n "@SKIP_SCILAB@"
|
||||||
|
|
@ -117,7 +116,6 @@ check-aliveness:
|
||||||
@$(skip-chicken) || ./$(TARGET) -chicken -help
|
@$(skip-chicken) || ./$(TARGET) -chicken -help
|
||||||
@$(skip-csharp) || ./$(TARGET) -csharp -help
|
@$(skip-csharp) || ./$(TARGET) -csharp -help
|
||||||
@$(skip-allegrocl)|| ./$(TARGET) -allegrocl -help
|
@$(skip-allegrocl)|| ./$(TARGET) -allegrocl -help
|
||||||
@$(skip-clisp) || ./$(TARGET) -clisp -help
|
|
||||||
@$(skip-cffi) || ./$(TARGET) -cffi -help
|
@$(skip-cffi) || ./$(TARGET) -cffi -help
|
||||||
@$(skip-lua) || ./$(TARGET) -lua -help
|
@$(skip-lua) || ./$(TARGET) -lua -help
|
||||||
@$(skip-r) || ./$(TARGET) -r -help
|
@$(skip-r) || ./$(TARGET) -r -help
|
||||||
|
|
@ -147,7 +145,6 @@ check-versions: \
|
||||||
check-csharp-version \
|
check-csharp-version \
|
||||||
check-lua-version \
|
check-lua-version \
|
||||||
check-allegrocl-version \
|
check-allegrocl-version \
|
||||||
check-clisp-version \
|
|
||||||
check-cffi-version \
|
check-cffi-version \
|
||||||
check-r-version \
|
check-r-version \
|
||||||
check-scilab-version \
|
check-scilab-version \
|
||||||
|
|
@ -184,7 +181,6 @@ check-examples: \
|
||||||
check-csharp-examples \
|
check-csharp-examples \
|
||||||
check-lua-examples \
|
check-lua-examples \
|
||||||
check-allegrocl-examples \
|
check-allegrocl-examples \
|
||||||
check-clisp-examples \
|
|
||||||
check-cffi-examples \
|
check-cffi-examples \
|
||||||
check-r-examples \
|
check-r-examples \
|
||||||
check-scilab-examples \
|
check-scilab-examples \
|
||||||
|
|
@ -207,7 +203,6 @@ chicken_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/chicken/check.list)
|
||||||
csharp_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/csharp/check.list)
|
csharp_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/csharp/check.list)
|
||||||
lua_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/lua/check.list)
|
lua_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/lua/check.list)
|
||||||
allegrocl_examples :=
|
allegrocl_examples :=
|
||||||
clisp_examples :=
|
|
||||||
cffi_examples :=
|
cffi_examples :=
|
||||||
r_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/r/check.list)
|
r_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/r/check.list)
|
||||||
scilab_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/scilab/check.list)
|
scilab_examples :=$(shell sed '/^\#/d' $(srcdir)/Examples/scilab/check.list)
|
||||||
|
|
@ -251,7 +246,6 @@ check-test-suite: \
|
||||||
check-csharp-test-suite \
|
check-csharp-test-suite \
|
||||||
check-lua-test-suite \
|
check-lua-test-suite \
|
||||||
check-allegrocl-test-suite \
|
check-allegrocl-test-suite \
|
||||||
check-clisp-test-suite \
|
|
||||||
check-cffi-test-suite \
|
check-cffi-test-suite \
|
||||||
check-chicken-test-suite \
|
check-chicken-test-suite \
|
||||||
check-r-test-suite \
|
check-r-test-suite \
|
||||||
|
|
@ -302,7 +296,6 @@ all-test-suite: \
|
||||||
all-csharp-test-suite \
|
all-csharp-test-suite \
|
||||||
all-lua-test-suite \
|
all-lua-test-suite \
|
||||||
all-allegrocl-test-suite \
|
all-allegrocl-test-suite \
|
||||||
all-clisp-test-suite \
|
|
||||||
all-cffi-test-suite \
|
all-cffi-test-suite \
|
||||||
all-chicken-test-suite \
|
all-chicken-test-suite \
|
||||||
all-r-test-suite \
|
all-r-test-suite \
|
||||||
|
|
@ -329,7 +322,6 @@ broken-test-suite: \
|
||||||
broken-csharp-test-suite \
|
broken-csharp-test-suite \
|
||||||
broken-lua-test-suite \
|
broken-lua-test-suite \
|
||||||
broken-allegrocl-test-suite \
|
broken-allegrocl-test-suite \
|
||||||
broken-clisp-test-suite \
|
|
||||||
broken-cffi-test-suite \
|
broken-cffi-test-suite \
|
||||||
broken-chicken-test-suite \
|
broken-chicken-test-suite \
|
||||||
broken-r-test-suite \
|
broken-r-test-suite \
|
||||||
|
|
@ -468,7 +460,7 @@ install-main:
|
||||||
@$(INSTALL_PROGRAM) $(TARGET) $(DESTDIR)$(BIN_DIR)/`echo $(TARGET_NOEXE) | sed '$(transform)'`@EXEEXT@
|
@$(INSTALL_PROGRAM) $(TARGET) $(DESTDIR)$(BIN_DIR)/`echo $(TARGET_NOEXE) | sed '$(transform)'`@EXEEXT@
|
||||||
|
|
||||||
lib-languages = typemaps tcl perl5 python guile java mzscheme ruby php ocaml octave \
|
lib-languages = typemaps tcl perl5 python guile java mzscheme ruby php ocaml octave \
|
||||||
chicken csharp allegrocl clisp lua cffi r go d javascript javascript/jsc \
|
chicken csharp allegrocl lua cffi r go d javascript javascript/jsc \
|
||||||
javascript/v8 scilab xml
|
javascript/v8 scilab xml
|
||||||
|
|
||||||
lib-modules = std
|
lib-modules = std
|
||||||
|
|
|
||||||
2
README
2
README
|
|
@ -5,7 +5,7 @@ Version: 4.0.0 (in progress)
|
||||||
Tagline: SWIG is a compiler that integrates C and C++ with languages
|
Tagline: SWIG is a compiler that integrates C and C++ with languages
|
||||||
including Perl, Python, Tcl, Ruby, PHP, Java, C#, D, Go, Lua,
|
including Perl, Python, Tcl, Ruby, PHP, Java, C#, D, Go, Lua,
|
||||||
Octave, R, Scheme (Guile, MzScheme/Racket, CHICKEN), Scilab,
|
Octave, R, Scheme (Guile, MzScheme/Racket, CHICKEN), Scilab,
|
||||||
Ocaml, Common Lisp (CLISP, Allegro CL, CFFI).
|
Ocaml, Common Lisp (Allegro CL, CFFI).
|
||||||
SWIG can also export its parse tree into XML.
|
SWIG can also export its parse tree into XML.
|
||||||
|
|
||||||
SWIG reads annotated C/C++ header files and creates wrapper code (glue
|
SWIG reads annotated C/C++ header files and creates wrapper code (glue
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,6 @@ eswig_SOURCES = CParse/cscanner.c \
|
||||||
Modules/browser.cxx \
|
Modules/browser.cxx \
|
||||||
Modules/cffi.cxx \
|
Modules/cffi.cxx \
|
||||||
Modules/chicken.cxx \
|
Modules/chicken.cxx \
|
||||||
Modules/clisp.cxx \
|
|
||||||
Modules/contract.cxx \
|
Modules/contract.cxx \
|
||||||
Modules/csharp.cxx \
|
Modules/csharp.cxx \
|
||||||
Modules/d.cxx \
|
Modules/d.cxx \
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,6 @@ extern "C" {
|
||||||
Language *swig_allegrocl(void);
|
Language *swig_allegrocl(void);
|
||||||
Language *swig_cffi(void);
|
Language *swig_cffi(void);
|
||||||
Language *swig_chicken(void);
|
Language *swig_chicken(void);
|
||||||
Language *swig_clisp(void);
|
|
||||||
Language *swig_csharp(void);
|
Language *swig_csharp(void);
|
||||||
Language *swig_d(void);
|
Language *swig_d(void);
|
||||||
Language *swig_go(void);
|
Language *swig_go(void);
|
||||||
|
|
@ -59,7 +58,7 @@ extern "C" {
|
||||||
static TargetLanguageModule modules[] = {
|
static TargetLanguageModule modules[] = {
|
||||||
{"-allegrocl", swig_allegrocl, "ALLEGROCL", Supported},
|
{"-allegrocl", swig_allegrocl, "ALLEGROCL", Supported},
|
||||||
{"-chicken", swig_chicken, "CHICKEN", Supported},
|
{"-chicken", swig_chicken, "CHICKEN", Supported},
|
||||||
{"-clisp", swig_clisp, "CLISP", Supported},
|
{"-clisp", NULL, "CLISP", Disabled},
|
||||||
{"-cffi", swig_cffi, "CFFI", Supported},
|
{"-cffi", swig_cffi, "CFFI", Supported},
|
||||||
{"-csharp", swig_csharp, "C#", Supported},
|
{"-csharp", swig_csharp, "C#", Supported},
|
||||||
{"-d", swig_d, "D", Supported},
|
{"-d", swig_d, "D", Supported},
|
||||||
|
|
|
||||||
31
configure.ac
31
configure.ac
|
|
@ -2457,29 +2457,6 @@ fi
|
||||||
|
|
||||||
AC_SUBST(ALLEGROCLBIN)
|
AC_SUBST(ALLEGROCLBIN)
|
||||||
|
|
||||||
#----------------------------------------------------------------
|
|
||||||
# Look for GNU CLISP
|
|
||||||
#----------------------------------------------------------------
|
|
||||||
|
|
||||||
CLISPBIN=
|
|
||||||
|
|
||||||
AC_ARG_WITH(clisp, AS_HELP_STRING([--without-clisp], [Disable CLISP])
|
|
||||||
AS_HELP_STRING([--with-clisp=path], [Set location of CLISP executable (clisp)]),[ CLISPBIN="$withval"], [CLISPBIN="$alllang_default"])
|
|
||||||
|
|
||||||
# First, check for "--without-clisp" or "--with-clisp=no".
|
|
||||||
if test x"${CLISPBIN}" = xno; then
|
|
||||||
AC_MSG_NOTICE([Disabling CLISP])
|
|
||||||
CLISPBIN=
|
|
||||||
else
|
|
||||||
|
|
||||||
# can we find clisp?
|
|
||||||
if test "x$CLISPBIN" = xyes; then
|
|
||||||
AC_PATH_PROG(CLISPBIN, clisp)
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
AC_SUBST(CLISPBIN)
|
|
||||||
|
|
||||||
#----------------------------------------------------------------
|
#----------------------------------------------------------------
|
||||||
# Look for GNU R
|
# Look for GNU R
|
||||||
#----------------------------------------------------------------
|
#----------------------------------------------------------------
|
||||||
|
|
@ -2828,12 +2805,6 @@ if test -z "$ALLEGROCLBIN" ; then
|
||||||
fi
|
fi
|
||||||
AC_SUBST(SKIP_ALLEGROCL)
|
AC_SUBST(SKIP_ALLEGROCL)
|
||||||
|
|
||||||
SKIP_CLISP=
|
|
||||||
if test -z "$CLISPBIN" ; then
|
|
||||||
SKIP_CLISP="1"
|
|
||||||
fi
|
|
||||||
AC_SUBST(SKIP_CLISP)
|
|
||||||
|
|
||||||
SKIP_R=
|
SKIP_R=
|
||||||
if test -z "$RBIN" ; then
|
if test -z "$RBIN" ; then
|
||||||
SKIP_R="1"
|
SKIP_R="1"
|
||||||
|
|
@ -2970,7 +2941,6 @@ AC_CONFIG_FILES([
|
||||||
Examples/test-suite/tcl/Makefile
|
Examples/test-suite/tcl/Makefile
|
||||||
Examples/test-suite/lua/Makefile
|
Examples/test-suite/lua/Makefile
|
||||||
Examples/test-suite/allegrocl/Makefile
|
Examples/test-suite/allegrocl/Makefile
|
||||||
Examples/test-suite/clisp/Makefile
|
|
||||||
Examples/test-suite/cffi/Makefile
|
Examples/test-suite/cffi/Makefile
|
||||||
Examples/test-suite/r/Makefile
|
Examples/test-suite/r/Makefile
|
||||||
Examples/test-suite/go/Makefile
|
Examples/test-suite/go/Makefile
|
||||||
|
|
@ -3022,7 +2992,6 @@ langs=""
|
||||||
test -n "$SKIP_ALLEGROCL" || langs="${langs}allegrocl "
|
test -n "$SKIP_ALLEGROCL" || langs="${langs}allegrocl "
|
||||||
test -n "$SKIP_CFFI" || langs="${langs}cffi "
|
test -n "$SKIP_CFFI" || langs="${langs}cffi "
|
||||||
test -n "$SKIP_CHICKEN" || langs="${langs}chicken "
|
test -n "$SKIP_CHICKEN" || langs="${langs}chicken "
|
||||||
test -n "$SKIP_CLISP" || langs="${langs}clisp "
|
|
||||||
test -n "$SKIP_CSHARP" || langs="${langs}csharp "
|
test -n "$SKIP_CSHARP" || langs="${langs}csharp "
|
||||||
test -n "$SKIP_D" || langs="${langs}d "
|
test -n "$SKIP_D" || langs="${langs}d "
|
||||||
test -n "$SKIP_GO" || langs="${langs}go "
|
test -n "$SKIP_GO" || langs="${langs}go "
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue