From 681b1d40003e8ae3f1c1bb7cc68d0194f5aa8a8a Mon Sep 17 00:00:00 2001 From: David Ostrovsky Date: Sun, 3 Mar 2013 22:42:38 +0100 Subject: [PATCH] Documentation: generate manual pages for core ssh commands Extend the documentation tool chain to produce manual pages for core ssh commands. To generate manual pages: cd /Documentation/man make Test it locally with: man -l gerrit-review or deploy it system wide: Copy *.1 to /usr/local/share/man/man1 and test it with man gerrit-review Change-Id: I2f2801e55e8a626f60df2abe985f2e4da88b30a7 --- Documentation/man/.gitignore | 1 + Documentation/man/Makefile | 62 +++++++++++++++++++++++++++++++ ReleaseNotes/ReleaseNotes-2.6.txt | 1 + 3 files changed, 64 insertions(+) create mode 100644 Documentation/man/.gitignore create mode 100644 Documentation/man/Makefile diff --git a/Documentation/man/.gitignore b/Documentation/man/.gitignore new file mode 100644 index 0000000000..7993a55b67 --- /dev/null +++ b/Documentation/man/.gitignore @@ -0,0 +1 @@ +gerrit* diff --git a/Documentation/man/Makefile b/Documentation/man/Makefile new file mode 100644 index 0000000000..589d6bfbff --- /dev/null +++ b/Documentation/man/Makefile @@ -0,0 +1,62 @@ +# Copyright (C) 2013 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +A2X ?= a2x + +all: man + +clean: + @rm -f gerrit-* + +CMD_CORE_SSH_CMD := \ +cmd-ban-commit.txt \ +cmd-create-account.txt \ +cmd-create-group.txt \ +cmd-create-project.txt \ +cmd-flush-caches.txt \ +cmd-gsql.txt \ +cmd-ls-groups.txt \ +cmd-ls-projects.txt \ +cmd-ls-user-refs.txt \ +cmd-query.txt \ +cmd-rename-group.txt \ +cmd-review.txt \ +cmd-set-account.txt \ +cmd-set-project-parent.txt \ +cmd-set-project.txt \ +cmd-set-reviewers.txt \ +cmd-show-caches.txt \ +cmd-show-connections.txt \ +cmd-show-queue.txt \ +cmd-stream-events.txt \ +cmd-test-submit-rule.txt \ +cmd-version.txt + +GERRIT_CORE_SSH_CMD := $(patsubst cmd-%,gerrit-%,$(CMD_CORE_SSH_CMD)) +DOC_MAN := $(patsubst %.txt,%.1,$(GERRIT_CORE_SSH_CMD)) + +man: $(GERRIT_CORE_SSH_CMD) $(DOC_MAN) + +$(GERRIT_CORE_SSH_CMD) : gerrit-%.txt : ../cmd-%.txt + @cp $< $@ + +$(DOC_MAN) : %.1 : %.txt + @echo "creating man page for $@ ..." + @rm -f $@ + @$(eval TITLE := $(join $(basename $<),\(1\))) + @$(eval SEPERATOR := $(shell echo $(TITLE) | sed 's/./=/g')) + @sed -i -re '1s/^.*$//$(TITLE)/' $< + @sed -i -re '2s/^=.*/$(SEPERATOR)/' $< + @sed -i -re '6s/^gerrit\s+(\w)/gerrit-\1/' $< + @$(A2X) --doctype manpage --format manpage $< diff --git a/ReleaseNotes/ReleaseNotes-2.6.txt b/ReleaseNotes/ReleaseNotes-2.6.txt index 64b25dff4c..e2c9c458ec 100644 --- a/ReleaseNotes/ReleaseNotes-2.6.txt +++ b/ReleaseNotes/ReleaseNotes-2.6.txt @@ -150,6 +150,7 @@ User Documentation Corrected references to `refs/changes` in the access control documentation. * Various minor grammatical and formatting corrections. +* Manual pages can be optionally created/installed for core gerrit ssh commands. Developer And Maintainer Documentation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~