Release coccinelle-0.2.4rc2
[bpt/coccinelle.git] / install.txt
index b9ee270..fd357c8 100644 (file)
@@ -1,17 +1,96 @@
-You must first install a recent version of 
- - OCaml (at least 3.09.2), 
+
+ ** Compilation **
+
+You must first install a recent version of
+ - OCaml (at least 3.09.2),
    see http://caml.inria.fr/download.en.html
- - the Menhir parser generator (at least 20080912),
+   At least, OCaml 3.11 is required to use the OCaml scripting
+   feature in the SmPL code.
+ - The Menhir parser generator (at least 20080912),
    see http://cristal.inria.fr/~fpottier/menhir/
    (unless you got a version of the coccinelle source with
    the SmPL parser pre-generated)
  - Python and its development files (python-dev)
    (unless you run configure with the --without-python option)
-   
 
-Then simply type 
+Then simply type
  ./configure
  make depend
  make
  make install
 
+
+
+
+
+'make' will compile the bytecode version by default.  You could use
+'make all.opt' to have the optimized version.  If you compile both,
+'make install' will take care of that and install both, spatch and
+spatch.opt.  If you use only one of them, 'make install' will install
+the one you have compiled, either spatch ou spatch.opt, under the
+front-end spatch. You could use 'make world' to compile the bytecode
+and the optimized code version.
+
+We provide the files generated by menhir in the tarball.  However,
+'make distclean' will remove them. You could either restore them from
+the tarball or install menhir.  Using 'make clean' should be safe with
+regards to these files.
+
+Note: The test target is intended for developers. In particular, you
+      should not expect that every test will pass.
+
+
+ In order to use the OCaml scripting feature in SmPL, you must compile
+Coccinelle with at least OCaml version 3.11.
+
+
+
+ ** Bash integration **
+
+ To have completion under Bash, you can execute the following command:
+
+    make install-bash
+
+ It will install the shell script 'scripts/spatch.bash_completion'
+ in /etc/bash_completion.d/spatch
+
+ You can manually copy that file elsewhere if you have a different
+ bash_completion directory.
+
+
+
+ ** Runtime dependencies **
+
+ - Basic shell commands:
+   - ls, cat, cp, mv, rm, grep, mkdir, find
+ - Developper tool: diff
+
+
+ ** Optional runtime dependencies **
+
+ - To quickly apply the semantic patches
+   - glimpse indexer
+
+ - To use OCaml scripting feature in SmPL
+   - ocaml-native-compilers or ocaml-nox
+   - ocaml-findlib
+
+ - To generate a PDF of the control flow graph with '-graphical_trace'
+   - pdftk and graphviz (with PDF support)
+
+
+
+ ** Dependencies for additional tools **
+
+    git, pushd, popd, sed, diffstat, cpp
+
+ ** Uninstall **
+
+    To uninstall Coccinelle, you should use the following command
+
+    make uninstall
+
+
+    To also remove the bash completion script, run
+
+    make uninstall-bash