1# The default target of this Makefile is...
   2all::
   3-include ../../config.mak.autogen
   5-include ../../config.mak
   6prefix ?= /usr/local
   8gitexecdir ?= $(prefix)/libexec/git-core
   9mandir ?= $(prefix)/share/man
  10man1dir ?= $(mandir)/man1
  11htmldir ?= $(prefix)/share/doc/git-doc
  12../../GIT-VERSION-FILE: FORCE
  14        $(MAKE) -C ../../ GIT-VERSION-FILE
  15-include ../../GIT-VERSION-FILE
  17# this should be set to a 'standard' bsd-type install program
  19INSTALL  ?= install
  20RM       ?= rm -f
  21ASCIIDOC         = asciidoc
  23ASCIIDOC_CONF    = -f ../../Documentation/asciidoc.conf
  24ASCIIDOC_HTML    = xhtml11
  25ASCIIDOC_DOCBOOK = docbook
  26ASCIIDOC_EXTRA   =
  27XMLTO            = xmlto
  28ifdef USE_ASCIIDOCTOR
  30ASCIIDOC         = asciidoctor
  31ASCIIDOC_CONF    =
  32ASCIIDOC_HTML    = xhtml5
  33ASCIIDOC_DOCBOOK = docbook45
  34ASCIIDOC_EXTRA  += -I../../Documentation -rasciidoctor-extensions
  35ASCIIDOC_EXTRA  += -alitdd='&\#x2d;&\#x2d;'
  36endif
  37ifndef SHELL_PATH
  39        SHELL_PATH = /bin/sh
  40endif
  41SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
  42MANPAGE_XSL   = ../../Documentation/manpage-normal.xsl
  44GIT_SUBTREE_SH := git-subtree.sh
  46GIT_SUBTREE    := git-subtree
  47GIT_SUBTREE_DOC := git-subtree.1
  49GIT_SUBTREE_XML := git-subtree.xml
  50GIT_SUBTREE_TXT := git-subtree.txt
  51GIT_SUBTREE_HTML := git-subtree.html
  52GIT_SUBTREE_TEST := ../../git-subtree
  53all:: $(GIT_SUBTREE)
  55$(GIT_SUBTREE): $(GIT_SUBTREE_SH)
  57        sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' $< >$@
  58        chmod +x $@
  59doc: $(GIT_SUBTREE_DOC) $(GIT_SUBTREE_HTML)
  61man: $(GIT_SUBTREE_DOC)
  63html: $(GIT_SUBTREE_HTML)
  65install: $(GIT_SUBTREE)
  67        $(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir)
  68        $(INSTALL) -m 755 $(GIT_SUBTREE) $(DESTDIR)$(gitexecdir)
  69install-doc: install-man install-html
  71install-man: $(GIT_SUBTREE_DOC)
  73        $(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
  74        $(INSTALL) -m 644 $^ $(DESTDIR)$(man1dir)
  75install-html: $(GIT_SUBTREE_HTML)
  77        $(INSTALL) -d -m 755 $(DESTDIR)$(htmldir)
  78        $(INSTALL) -m 644 $^ $(DESTDIR)$(htmldir)
  79$(GIT_SUBTREE_DOC): $(GIT_SUBTREE_XML)
  81        $(XMLTO) -m $(MANPAGE_XSL) man $^
  82$(GIT_SUBTREE_XML): $(GIT_SUBTREE_TXT)
  84        $(ASCIIDOC) -b $(ASCIIDOC_DOCBOOK) -d manpage $(ASCIIDOC_CONF) \
  85                -agit_version=$(GIT_VERSION) $(ASCIIDOC_EXTRA) $^
  86$(GIT_SUBTREE_HTML): $(GIT_SUBTREE_TXT)
  88        $(ASCIIDOC) -b $(ASCIIDOC_HTML) -d manpage $(ASCIIDOC_CONF) \
  89                -agit_version=$(GIT_VERSION) $(ASCIIDOC_EXTRA) $^
  90$(GIT_SUBTREE_TEST): $(GIT_SUBTREE)
  92        cp $< $@
  93test: $(GIT_SUBTREE_TEST)
  95        $(MAKE) -C t/ test
  96clean:
  98        $(RM) $(GIT_SUBTREE)
  99        $(RM) *.xml *.html *.1
 100.PHONY: FORCE