]> git.proxmox.com Git - ceph.git/blame - ceph/src/jaegertracing/thrift/lib/ocaml/DEVELOPMENT
buildsys: switch source download to quincy
[ceph.git] / ceph / src / jaegertracing / thrift / lib / ocaml / DEVELOPMENT
CommitLineData
f67539c2
TL
1Thrift OCaml Development
2========================
3
4Prerequisites
5-------------
6
7In order to build this library, you must have the following installed:
8
9 * The OCaml compiler, preferably >4.00
10 * The Oasis build tool
11
12In addition you may want to install OPAM, which will allow you to setup an
13OCaml development environment that's isolated from your system installation,
14much like virutalenv for Python or the myriad systems available for Ruby. If
15you have OPAM installed, then installing Oasis is as simple as running:
16
17 $ opam install oasis
18
19Building
20--------
21
22Once all the prerequisites have been installed, run the following commands:
23
24 $ oasis setup
25 $ ./configure
26 $ make
27
28The `oasis setup` command will generate the configure script and Makefile,
29along with other files that opam will use to create an installable library.
30The cofigure script will ensure that all build dependencies are installed, and
31make will actually build the library.
32
33To remove files that the compiler geneates, run:
34
35 $ make clean
36
37To remove those files _as well as_ files that the setup and configure process
38generates, run:
39
40 $ rm `cat .gitignore`
41
42Installing
43----------
44
45If you're using opam, simply run the following command:
46
47 $ make install
48
49While development, you may want to install your latest build on the system to
50test against other libraries or programs. To do this, use:
51
52 $ make reinstall
53
54Distribution
55------------
56
57The de facto preferred method for distributing OCaml libraries is through the
58OPAM package repository. To publish the latest package, issue a pull request
59against the following github repository:
60
61 https://github.com/ocaml/opam-repository
62
63The pull requestion should add the following directory structure and files:
64
65 package
66 |__thrift
67 |__thrift.<VERSION>
68 |__ descr
69 |__ opam
70 |__ url
71
72Templates for the following files can be found in the opam/ subdirectory of
73this library's root, with XXX(...) indicating fields that need to be filled
74out. You can find further documentation here:
75
76 http://opam.ocaml.org/doc/Packaging.html