aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-01-31 12:48:40 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-01-31 12:48:40 +0200
commit1ab83e42e24dcc8f6e7f0abb6d76bb5c06a8f189 (patch)
tree31ece483b9241b5b7f3f8e651d0bacd55c1bb753
parent68d62d528df5bd17711ed18660fe943cb944e951 (diff)
Add support for man page generation/install/dist
-rw-r--r--buildfile2
-rw-r--r--doc/.gitignore2
-rw-r--r--doc/buildfile19
-rwxr-xr-xdoc/cli.sh57
l---------doc/common.css1
l---------doc/man-epilogue.11
l---------doc/man-epilogue.xhtml1
l---------doc/man-prologue.11
l---------doc/man-prologue.xhtml1
l---------doc/man.css1
l---------doc/pre-box.css1
-rw-r--r--load/.gitignore4
-rw-r--r--load/buildfile8
-rw-r--r--load/load.cli (renamed from load/options.cli)4
-rw-r--r--load/load.cxx2
-rw-r--r--migrate/.gitignore4
-rw-r--r--migrate/buildfile8
-rw-r--r--migrate/migrate.cli (renamed from migrate/options.cli)4
-rw-r--r--migrate/migrate.cxx2
19 files changed, 104 insertions, 19 deletions
diff --git a/buildfile b/buildfile
index 976b0ed..b070099 100644
--- a/buildfile
+++ b/buildfile
@@ -2,7 +2,7 @@
# copyright : Copyright (c) 2014-2016 Code Synthesis Ltd
# license : MIT; see accompanying LICENSE file
-d = brep/ etc/ load/ migrate/ tests/ www/
+d = brep/ etc/ load/ migrate/ tests/ www/ doc/
./: $d doc{INSTALL INSTALL-DEV LICENSE version} file{manifest}
include $d
diff --git a/doc/.gitignore b/doc/.gitignore
new file mode 100644
index 0000000..c27d2ca
--- /dev/null
+++ b/doc/.gitignore
@@ -0,0 +1,2 @@
+brep*.xhtml
+brep*.1
diff --git a/doc/buildfile b/doc/buildfile
new file mode 100644
index 0000000..bd3440f
--- /dev/null
+++ b/doc/buildfile
@@ -0,0 +1,19 @@
+# file : doc/buildfile
+# copyright : Copyright (c) 2014-2016 Code Synthesis Ltd
+# license : MIT; see accompanying LICENSE file
+
+cmds = \
+brep-load \
+brep-migrate
+
+define css: file
+css{*}: extension = css
+
+define xhtml: doc
+xhtml{*}: extension = xhtml
+
+./: {man1 xhtml}{$cmds} \
+ css{common pre-box man} \
+ file{man-prologue.1 man-epilogue.1 \
+ man-prologue.xhtml man-epilogue.xhtml \
+ cli.sh}
diff --git a/doc/cli.sh b/doc/cli.sh
new file mode 100755
index 0000000..11aa660
--- /dev/null
+++ b/doc/cli.sh
@@ -0,0 +1,57 @@
+#! /usr/bin/env bash
+
+version="0.2.0"
+date="January 2016"
+
+trap 'exit 1' ERR
+set -o errtrace # Trap in functions.
+
+function info () { echo "$*" 1>&2; }
+function error () { info "$*"; exit 1; }
+
+while [ $# -gt 0 ]; do
+ case $1 in
+ --clean)
+ rm -f brep*.xhtml brep*.1
+ exit 0
+ ;;
+ *)
+ error "unexpected $1"
+ ;;
+ esac
+done
+
+function compile ()
+{
+ local n=$1; shift
+
+ # Use a bash array to handle empty arguments.
+ #
+ local o=()
+ while [ $# -gt 0 ]; do
+ o=("${o[@]}" "$1")
+ shift
+ done
+
+ cli -I .. -v project="brep" -v version="$version" -v date="$date" \
+--include-base-last "${o[@]}" --generate-html --html-prologue-file \
+man-prologue.xhtml --html-epilogue-file man-epilogue.xhtml --html-suffix \
+.xhtml ../$n.cli
+
+ cli -I .. -v project="brep" -v version="$version" -v date="$date" \
+--include-base-last "${o[@]}" --generate-man --man-prologue-file \
+man-prologue.1 --man-epilogue-file man-epilogue.1 --man-suffix .1 \
+../$n.cli
+}
+
+o="--output-prefix brep-"
+
+# A few special cases.
+#
+#compile "brep" $o --output-prefix ""
+
+pages="load/load migrate/migrate"
+
+for p in $pages; do
+ compile $p $o
+done
diff --git a/doc/common.css b/doc/common.css
new file mode 120000
index 0000000..3ddf6fc
--- /dev/null
+++ b/doc/common.css
@@ -0,0 +1 @@
+style/common.css \ No newline at end of file
diff --git a/doc/man-epilogue.1 b/doc/man-epilogue.1
new file mode 120000
index 0000000..878a9ae
--- /dev/null
+++ b/doc/man-epilogue.1
@@ -0,0 +1 @@
+style/man-epilogue.1 \ No newline at end of file
diff --git a/doc/man-epilogue.xhtml b/doc/man-epilogue.xhtml
new file mode 120000
index 0000000..6c1722a
--- /dev/null
+++ b/doc/man-epilogue.xhtml
@@ -0,0 +1 @@
+style/man-epilogue.xhtml \ No newline at end of file
diff --git a/doc/man-prologue.1 b/doc/man-prologue.1
new file mode 120000
index 0000000..08b5b4b
--- /dev/null
+++ b/doc/man-prologue.1
@@ -0,0 +1 @@
+style/man-prologue.1 \ No newline at end of file
diff --git a/doc/man-prologue.xhtml b/doc/man-prologue.xhtml
new file mode 120000
index 0000000..34997e3
--- /dev/null
+++ b/doc/man-prologue.xhtml
@@ -0,0 +1 @@
+style/man-prologue.xhtml \ No newline at end of file
diff --git a/doc/man.css b/doc/man.css
new file mode 120000
index 0000000..e0c4308
--- /dev/null
+++ b/doc/man.css
@@ -0,0 +1 @@
+style/man.css \ No newline at end of file
diff --git a/doc/pre-box.css b/doc/pre-box.css
new file mode 120000
index 0000000..b9ec76c
--- /dev/null
+++ b/doc/pre-box.css
@@ -0,0 +1 @@
+style/pre-box.css \ No newline at end of file
diff --git a/load/.gitignore b/load/.gitignore
index 2f464c5..49afbe2 100644
--- a/load/.gitignore
+++ b/load/.gitignore
@@ -1,3 +1,3 @@
-options
-options.?xx
+*-options
+*-options.?xx
brep-load
diff --git a/load/buildfile b/load/buildfile
index c3a324f..6b72dae 100644
--- a/load/buildfile
+++ b/load/buildfile
@@ -9,12 +9,12 @@ import libs += libodb%lib{odb}
include ../brep/
-exe{brep-load}: \
-{ cxx}{ load } \
-{hxx ixx cxx}{ options } \
+exe{brep-load}: \
+{ cxx}{ load } \
+{hxx ixx cxx}{ load-options } \
../brep/lib{brep} $libs
cli.options += -I $src_root --include-with-brackets --include-prefix load \
--guard-prefix LOAD
-{hxx ixx cxx}{options}: cli{options}
+{hxx ixx cxx}{load-options}: cli{load}
diff --git a/load/options.cli b/load/load.cli
index df91606..751d1bd 100644
--- a/load/options.cli
+++ b/load/load.cli
@@ -1,4 +1,4 @@
-// file : load/options.cli
+// file : load/load.cli
// copyright : Copyright (c) 2014-2016 Code Synthesis Ltd
// license : MIT; see accompanying LICENSE file
@@ -7,7 +7,7 @@ include <cstdint>; // uint16_t
"\section=1"
"\name=brep-load"
-"\summary=load repositories into database"
+"\summary=load build2 repositories into database"
{
"<options> <file>",
diff --git a/load/load.cxx b/load/load.cxx
index e2a318c..993de7e 100644
--- a/load/load.cxx
+++ b/load/load.cxx
@@ -28,7 +28,7 @@
#include <brep/package-odb>
#include <brep/database-lock>
-#include <load/options>
+#include <load/load-options>
using namespace std;
using namespace odb::core;
diff --git a/migrate/.gitignore b/migrate/.gitignore
index 580958d..7323078 100644
--- a/migrate/.gitignore
+++ b/migrate/.gitignore
@@ -1,3 +1,3 @@
-options
-options.?xx
+*-options
+*-options.?xx
brep-migrate
diff --git a/migrate/buildfile b/migrate/buildfile
index c42de5a..cd0b9c8 100644
--- a/migrate/buildfile
+++ b/migrate/buildfile
@@ -7,12 +7,12 @@ import libs += libodb%lib{odb}
include ../brep/
-exe{brep-migrate}: \
-{ cxx}{ migrate } \
-{hxx ixx cxx}{ options } \
+exe{brep-migrate}: \
+{ cxx}{ migrate } \
+{hxx ixx cxx}{ migrate-options } \
../brep/lib{brep} $libs
cli.options += -I $src_root --include-with-brackets --include-prefix migrate \
--guard-prefix MIGRATE
-{hxx ixx cxx}{options}: cli{options}
+{hxx ixx cxx}{migrate-options}: cli{migrate}
diff --git a/migrate/options.cli b/migrate/migrate.cli
index e36155c..35d082f 100644
--- a/migrate/options.cli
+++ b/migrate/migrate.cli
@@ -1,4 +1,4 @@
-// file : migrate/options.cli
+// file : migrate/migrate.cli
// copyright : Copyright (c) 2014-2016 Code Synthesis Ltd
// license : MIT; see accompanying LICENSE file
@@ -7,7 +7,7 @@ include <cstdint>; // uint16_t
"\section=1"
"\name=brep-migrate"
-"\summary=create/drop/migrate brep database"
+"\summary=create/drop/migrate build2 repository database"
{
"<options>",
diff --git a/migrate/migrate.cxx b/migrate/migrate.cxx
index aa71b67..405770f 100644
--- a/migrate/migrate.cxx
+++ b/migrate/migrate.cxx
@@ -23,7 +23,7 @@
#include <brep/database-lock>
-#include <migrate/options>
+#include <migrate/migrate-options>
using namespace std;
using namespace odb::core;