Makefile: add quick-install-doc for installing pre-built manpages

This adds and uses the install-doc-quick.sh file to
Documentation/, which is usable for people who track either the
'html' or 'man' heads in Junio's repository (prefixed with
'origin/' if cloned locally).  You may override this by
specifying DOC_REF in the make environment or in config.mak.

GZ may also be set in the environment (or config.mak) if you
wish to gzip the documentation after installing it.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Eric Wong 2006-12-23 08:26:09 -08:00 committed by Junio C Hamano
parent 6be935115b
commit 6538d1ef31
3 changed files with 37 additions and 0 deletions

View File

@ -32,6 +32,7 @@ man7dir=$(mandir)/man7
# DESTDIR=

INSTALL?=install
DOC_REF = origin/man

-include ../config.mak.autogen

@ -112,3 +113,6 @@ $(patsubst %.txt,%.html,$(wildcard howto/*.txt)): %.html : %.txt

install-webdoc : html
sh ./install-webdoc.sh $(WEBDOC_DEST)

quick-install:
sh ./install-doc-quick.sh $(DOC_REF) $(mandir)

View File

@ -0,0 +1,31 @@
#!/bin/sh
# This requires a branch named in $head
# (usually 'man' or 'html', provided by the git.git repository)
set -e
head="$1"
mandir="$2"
SUBDIRECTORY_OK=t
USAGE='<refname> <target directory>'
. git-sh-setup
export GIT_DIR

test -z "$mandir" && usage
if ! git-rev-parse --verify "$head^0" >/dev/null; then
echo >&2 "head: $head does not exist in the current repository"
usage
fi

GIT_INDEX_FILE=`pwd`/.quick-doc.index
export GIT_INDEX_FILE
rm -f "$GIT_INDEX_FILE"
git-read-tree $head
git-checkout-index -a -f --prefix="$mandir"/

if test -n "$GZ"; then
cd "$mandir"
for i in `git-ls-tree -r --name-only $head`
do
gzip < $i > $i.gz && rm $i
done
fi
rm -f "$GIT_INDEX_FILE"

View File

@ -824,6 +824,8 @@ install: all
install-doc:
$(MAKE) -C Documentation install

quick-install-doc:
$(MAKE) -C Documentation quick-install