X-Git-Url: https://git.hcoop.net/bpt/coccinelle.git/blobdiff_plain/34e491640531bd81a0e2238fd599e1aafe53613e..785a3008ddade80f642257bb47d43158ac8b8311:/install.txt diff --git a/install.txt b/install.txt index b9ee270..fd357c8 100644 --- a/install.txt +++ b/install.txt @@ -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