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 <gerrit>/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
This commit is contained in:
David Ostrovsky 2013-03-03 22:42:38 +01:00
parent 1c830c11e7
commit 681b1d4000
3 changed files with 64 additions and 0 deletions

1
Documentation/man/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
gerrit*

View File

@ -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 $<

View File

@ -150,6 +150,7 @@ User Documentation
Corrected references to `refs/changes` in the access control documentation. Corrected references to `refs/changes` in the access control documentation.
* Various minor grammatical and formatting corrections. * Various minor grammatical and formatting corrections.
* Manual pages can be optionally created/installed for core gerrit ssh commands.
Developer And Maintainer Documentation Developer And Maintainer Documentation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~