mirror of
https://github.com/valitydev/thrift.git
synced 2024-11-07 10:48:51 +00:00
b28160b9c3
Client: OCaml Patch: Spiros Eliopoulos <seliopou@gmail.com> This closes #1193
77 lines
2.0 KiB
Plaintext
77 lines
2.0 KiB
Plaintext
Thrift OCaml Development
|
|
========================
|
|
|
|
Prerequisites
|
|
-------------
|
|
|
|
In order to build this library, you must have the following installed:
|
|
|
|
* The OCaml compiler, preferably >4.00
|
|
* The Oasis build tool
|
|
|
|
In addition you may want to install OPAM, which will allow you to setup an
|
|
OCaml development environment that's isolated from your system installation,
|
|
much like virutalenv for Python or the myriad systems available for Ruby. If
|
|
you have OPAM installed, then installing Oasis is as simple as running:
|
|
|
|
$ opam install oasis
|
|
|
|
Building
|
|
--------
|
|
|
|
Once all the prerequisites have been installed, run the following commands:
|
|
|
|
$ oasis setup
|
|
$ ./configure
|
|
$ make
|
|
|
|
The `oasis setup` command will generate the configure script and Makefile,
|
|
along with other files that opam will use to create an installable library.
|
|
The cofigure script will ensure that all build dependencies are installed, and
|
|
make will actually build the library.
|
|
|
|
To remove files that the compiler geneates, run:
|
|
|
|
$ make clean
|
|
|
|
To remove those files _as well as_ files that the setup and configure process
|
|
generates, run:
|
|
|
|
$ rm `cat .gitignore`
|
|
|
|
Installing
|
|
----------
|
|
|
|
If you're using opam, simply run the following command:
|
|
|
|
$ make install
|
|
|
|
While development, you may want to install your latest build on the system to
|
|
test against other libraries or programs. To do this, use:
|
|
|
|
$ make reinstall
|
|
|
|
Distribution
|
|
------------
|
|
|
|
The de facto preferred method for distributing OCaml libraries is through the
|
|
OPAM package repository. To publish the latest package, issue a pull request
|
|
against the following github repository:
|
|
|
|
https://github.com/ocaml/opam-repository
|
|
|
|
The pull requestion should add the following directory structure and files:
|
|
|
|
package
|
|
|__thrift
|
|
|__thrift.<VERSION>
|
|
|__ descr
|
|
|__ opam
|
|
|__ url
|
|
|
|
Templates for the following files can be found in the opam/ subdirectory of
|
|
this library's root, with XXX(...) indicating fields that need to be filled
|
|
out. You can find further documentation here:
|
|
|
|
http://opam.ocaml.org/doc/Packaging.html
|