From be6d2cec73b52bf9c1a06fa4a12e1cf591bfd65d Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sat, 19 May 2018 16:03:16 +0200 Subject: Update manual with new version module capabilities (manifest install rule) --- doc/manual.cli | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) (limited to 'doc/manual.cli') diff --git a/doc/manual.cli b/doc/manual.cli index ec44342..ecfb0ef 100644 --- a/doc/manual.cli +++ b/doc/manual.cli @@ -571,23 +571,17 @@ commit. Besides extracting the version information and making it available as individual components, the \c{version} module also provide rules for -automatically generating the \c{version} (or \c{Version}/\c{VERSION}) file -that is customarily found in the root of a project as well as the version +installing the manifest file as well as automatically generating version headers (or other similar version-based files). -The \c{version} file rule matches a \c{doc} target that contains the -\c{version} substring in its name (comparison is case-insensitive) and that -depends on the project's \c{manifest} file. To utilize this rule you would -normally have something along these lines to your project's root \c{buildfile}: +By default the project's \c{manifest} file is installed as documentation, just +like other \c{doc{}} targets (thus replacing the \c{version} file customarily +shipped in the project root directory). The manifest installation rule in the +\c{version} module in addition patches the installed manifest file with the +actual snapshot number and id, just like during the preparation of +distributions. -\ -./: ... doc{version} - -doc{version}: file{manifest} # Generated by the version module. -doc{version}: dist = true # Include into the distribution. -\ - -The \c{version} header rule pre-processes a template file (which means it can +The version header rule pre-processes a template file (which means it can be used to generate any kinds of files, not just C/C++ headers). It matches a \c{file}-based target that has a corresponding \c{in} prerequisite and also depends on the project's \c{manifest} file. As an example, let's assume we @@ -727,7 +721,7 @@ any \c{2.X.Y} version should work provided \c{X >= 3}. And this how we can specify it in the manifest: \ -depends: libprint [2.3.0 3.0.0-) +depends: libprint ^2.3.0 \ Let's say we are now working on \c{libhello} \c{2.0.0} and would like to start -- cgit v1.1