mirror of
https://github.com/valitydev/thrift.git
synced 2024-11-07 10:48:51 +00:00
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
|