From 5167dd2f16c3973f6d92acd3f1d4d84fad26ee83 Mon Sep 17 00:00:00 2001 From: Jeremie Dimino Date: Tue, 30 May 2017 12:27:20 +0100 Subject: [PATCH] Document the ( as ) syntax --- doc/jbuild.rst | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/doc/jbuild.rst b/doc/jbuild.rst index 216f4155..4117a1ac 100644 --- a/doc/jbuild.rst +++ b/doc/jbuild.rst @@ -431,8 +431,9 @@ install The ``install`` stanza is what lets you describe what Jbuilder should install, either when running ``jbuilder install`` or through opam. -Libraries don't need an ``install`` stanza to be installed, just a -``public_name`` field. Everything else needs an ``install`` stanza. +Libraries and executables don't need an ``install`` stanza to be +installed, just a ``public_name`` field. Everything else needs an +``install`` stanza. The syntax is as follows: @@ -460,7 +461,20 @@ manual. The following sections are available: - ``man`` - ``misc`` -== is the list of files to install. +```` is the list of files to install. Each element in the list +must be either a literal filename or a S-expression of the form: + +.. code:: scheme + + ( as ) + +where ```` describe how the file will be installed. For +instance, to install a file ``mylib.el`` as +``emacs/site-lisp/mylib.el`` in the ``share_root`` section: + + (install + ((section share_root) + (files ((mylib.el as emacs/site-lisp/mylib.el))))) ```` are: