11# Import tree-wide shared Makefile behavior and libraries
22include ../shared.mak
33
4+ .PHONY : FORCE
5+
46# Guard against environment variables
57MAN1_TXT =
68MAN5_TXT =
@@ -148,16 +150,12 @@ man5dir = $(mandir)/man5
148150man7dir = $(mandir ) /man7
149151# DESTDIR =
150152
151- GIT_DATE := $(shell git show --quiet --pretty='% as')
152-
153153ASCIIDOC = asciidoc
154154ASCIIDOC_EXTRA =
155155ASCIIDOC_HTML = xhtml11
156156ASCIIDOC_DOCBOOK = docbook
157157ASCIIDOC_CONF = -f asciidoc.conf
158- ASCIIDOC_COMMON = $(ASCIIDOC ) $(ASCIIDOC_EXTRA ) $(ASCIIDOC_CONF ) \
159- -amanmanual='Git Manual' -amansource='Git $(GIT_VERSION ) ' \
160- -arevdate='$(GIT_DATE ) '
158+ ASCIIDOC_COMMON = $(ASCIIDOC ) $(ASCIIDOC_EXTRA ) $(ASCIIDOC_CONF )
161159ASCIIDOC_DEPS = asciidoc.conf GIT-ASCIIDOCFLAGS
162160TXT_TO_HTML = $(ASCIIDOC_COMMON ) -b $(ASCIIDOC_HTML )
163161TXT_TO_XML = $(ASCIIDOC_COMMON ) -b $(ASCIIDOC_DOCBOOK )
@@ -210,6 +208,14 @@ ASCIIDOC_DEPS = asciidoctor-extensions.rb GIT-ASCIIDOCFLAGS
210208DBLATEX_COMMON =
211209XMLTO_EXTRA += --skip-validation
212210XMLTO_EXTRA += -x manpage.xsl
211+
212+ asciidoctor-extensions.rb : asciidoctor-extensions.rb.in FORCE
213+ $(QUIET_GEN ) GIT_USER_AGENT=" $( GIT_USER_AGENT) " $(SHELL_PATH ) ../GIT-VERSION-GEN " $( shell pwd) /.." $< $@ +
214+ @if cmp $@ + $@ > /dev/null 2>&1 ; then $(RM ) $@ +; else mv $@ + $@ ; fi
215+ else
216+ asciidoc.conf : asciidoc.conf.in FORCE
217+ $(QUIET_GEN ) GIT_USER_AGENT=" $( GIT_USER_AGENT) " $(SHELL_PATH ) ../GIT-VERSION-GEN " $( shell pwd) /.." $< $@ +
218+ @if cmp $@ + $@ > /dev/null 2>&1 ; then $(RM ) $@ +; else mv $@ + $@ ; fi
213219endif
214220
215221ASCIIDOC_DEPS += docinfo.html
@@ -341,6 +347,7 @@ clean:
341347 $(RM ) SubmittingPatches.txt
342348 $(RM ) $(cmds_txt ) $(mergetools_txt ) * .made
343349 $(RM ) GIT-ASCIIDOCFLAGS
350+ $(RM ) asciidoc.conf asciidoctor-extensions.rb
344351
345352docinfo.html : docinfo-html.in
346353 $(QUIET_GEN )$(RM ) $@ && cat $< > $@
@@ -364,7 +371,7 @@ manpage-cmd = $(QUIET_XMLTO)$(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
364371% .xml : % .txt $(ASCIIDOC_DEPS )
365372 $(QUIET_ASCIIDOC )$(TXT_TO_XML ) -d manpage -o $@ $<
366373
367- user-manual.xml : user-manual.txt user-manual.conf asciidoctor-extensions.rb GIT-ASCIIDOCFLAGS
374+ user-manual.xml : user-manual.txt user-manual.conf $( ASCIIDOC_DEPS )
368375 $(QUIET_ASCIIDOC )$(TXT_TO_XML ) -d book -o $@ $<
369376
370377technical/api-index.txt : technical/api-index-skel.txt \
@@ -373,7 +380,7 @@ technical/api-index.txt: technical/api-index-skel.txt \
373380
374381technical/% .html : ASCIIDOC_EXTRA += -a git-relative-html-prefix=../
375382$(patsubst % ,% .html,$(API_DOCS ) technical/api-index $(TECH_DOCS ) ) : % .html : % .txt \
376- asciidoc.conf GIT-ASCIIDOCFLAGS
383+ $( ASCIIDOC_DEPS )
377384 $(QUIET_ASCIIDOC )$(TXT_TO_HTML ) $* .txt
378385
379386SubmittingPatches.txt : SubmittingPatches
@@ -416,13 +423,13 @@ $(patsubst %.txt,%.texi,$(MAN_TXT)): %.texi : %.xml
416423howto-index.txt : howto-index.sh $(HOWTO_TXT )
417424 $(QUIET_GEN ) ' $(SHELL_PATH_SQ)' ./howto-index.sh $(sort $(HOWTO_TXT ) ) > $@
418425
419- $(patsubst % ,% .html,$(ARTICLES ) ) : % .html : % .txt
426+ $(patsubst % ,% .html,$(ARTICLES ) ) : % .html : % .txt $( ASCIIDOC_DEPS )
420427 $(QUIET_ASCIIDOC )$(TXT_TO_HTML ) $* .txt
421428
422429WEBDOC_DEST = /pub/software/scm/git/docs
423430
424431howto/% .html : ASCIIDOC_EXTRA += -a git-relative-html-prefix=../
425- $(patsubst % .txt,% .html,$(HOWTO_TXT ) ) : % .html : % .txt GIT-ASCIIDOCFLAGS
432+ $(patsubst % .txt,% .html,$(HOWTO_TXT ) ) : % .html : % .txt $( ASCIIDOC_DEPS )
426433 $(QUIET_ASCIIDOC ) \
427434 sed -e ' 1,/^$$/d' $< | \
428435 $(TXT_TO_HTML ) - > $@
0 commit comments