Improve handling of multitarget rule stamp files
[xapian.git] / xapian-bindings / README
blob7ca50d4c5e53245595f2ea28dc05424d14aea134
1 See INSTALL for instructions on configuring, building, and installing this
2 software.  See TODO for the to-do list.  See HACKING for information relevant
3 to anyone wanting to do development work on the bindings.
5 Supported Platforms
6 -------------------
8 Most development work has been done on Linux with GCC, but the bindings should
9 work on other Unix-like platforms and with other compilers (we've heard success
10 stories for at least Mac OS X >= 10.3, FreeBSD, NetBSD and OpenBSD).
12 The Python bindings have been successfully built on Microsoft Windows using
13 Mingw and MSVC: the PHP bindings have been successfully build on Microsoft
14 Windows using MSVC.  The other bindings may need a few build tweaks to work
15 - contact us via the mailing lists if you want to get them working.
17 Supported Languages
18 -------------------
20 Bindings for the following languages should be fully functional and ready
21 for real world use:
23 C#              Tested with Mono C# 3.0.6.0 and 4.2.1.0 recently.  Requires
24                 .NET 2 or later (because that's what SWIG supports).
26 Java            Java bindings are generated with SWIG as of Xapian 1.3.0.
27                 The current API should be regarded as experimental - we plan
28                 to review it, possibly make some changes and then declare it
29                 stable early in the 1.4.x release series.  The minimum Java
30                 version we aim to support is JDK 1.6 (Java 6).  Recently tested
31                 with OpenJDK 1.8.0_77, 1.7.0_03, and 1.6.0_38.
33 Lua             Requires Lua 5.1 or later; tested with 5.1, 5.2 and 5.3.
35 Perl            These Perl bindings are generated by SWIG, and are intended
36                 to replace the hand-written Search::Xapian XS bindings.
37                 The current API should be regarded as experimental - we plan
38                 to review it, possibly make some changes and then declare it
39                 stable early in the 1.4.x release series.  These bindings
40                 probably need Perl 5.8.3 or later.  Recently tested with
41                 5.14.2 and 5.22.1.
43 PHP 5.x         Requires PHP >= 5.5 (older versions are no longer supported by
44                 the PHP developers).
46 PHP 7.x         Requires PHP >= 7.0.
48 Python 2.x      Requires Python 2.6 or later.  If you still need support for
49                 Python 2.3, 2.4 or 2.5, use Xapian 1.2.x.
51 Python 3.x      Requires Python 3.2 or later.
53 Ruby            Requires Ruby 2.1 or later (older versions are no longer
54                 supported by the Ruby developers - if you still need support
55                 for older Ruby, Xapian 1.2.x supports Ruby 1.8 and later).
57 Tcl             Requires Tcl 8.5 or later (older versions are no longer
58                 supported by the Tcl developers, so it doesn't make sense for
59                 us to expend effort to support them).
61 Languages Supported Elsewhere
62 -----------------------------
64 Erlang          Available from:
65                 https://github.com/arcusfelis/xapian-erlang-bindings/#readme
67 Node.js         Available from:
68                 https://github.com/mtibeica/node-xapian#readme
70 If you're interest in getting other languages supported, see the "Adding
71 support for other programming languages" section in the file HACKING.