Re: [PATCH] doc: remove support for rst2man
authorJani Nikula <jani@nikula.org>
Sun, 18 Jan 2015 19:44:42 +0000 (21:44 +0200)
committerW. Trevor King <wking@tremily.us>
Sat, 20 Aug 2016 21:47:35 +0000 (14:47 -0700)
d4/7e3b768ac6f42a6e12e7775b4ae94b5cedf064 [new file with mode: 0644]

diff --git a/d4/7e3b768ac6f42a6e12e7775b4ae94b5cedf064 b/d4/7e3b768ac6f42a6e12e7775b4ae94b5cedf064
new file mode 100644 (file)
index 0000000..d7133b5
--- /dev/null
@@ -0,0 +1,615 @@
+Return-Path: <jani@nikula.org>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+       by olra.theworths.org (Postfix) with ESMTP id CB9CA431FB6\r
+       for <notmuch@notmuchmail.org>; Sun, 18 Jan 2015 11:44:48 -0800 (PST)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: 1.739\r
+X-Spam-Level: *\r
+X-Spam-Status: No, score=1.739 tagged_above=-999 required=5\r
+       tests=[DNS_FROM_AHBL_RHSBL=2.438, HTML_MESSAGE=0.001,\r
+       RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+       by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+       with ESMTP id Oi5jKMAruayZ for <notmuch@notmuchmail.org>;\r
+       Sun, 18 Jan 2015 11:44:45 -0800 (PST)\r
+Received: from mail-lb0-f182.google.com (mail-lb0-f182.google.com\r
+       [209.85.217.182]) (using TLSv1 with cipher RC4-SHA (128/128 bits))\r
+       (No client certificate requested)\r
+       by olra.theworths.org (Postfix) with ESMTPS id 486A2431FAF\r
+       for <notmuch@notmuchmail.org>; Sun, 18 Jan 2015 11:44:45 -0800 (PST)\r
+Received: by mail-lb0-f182.google.com with SMTP id u10so24968968lbd.13\r
+       for <notmuch@notmuchmail.org>; Sun, 18 Jan 2015 11:44:42 -0800 (PST)\r
+X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;\r
+       d=1e100.net; s=20130820;\r
+       h=x-gm-message-state:mime-version:in-reply-to:references:date\r
+       :message-id:subject:from:to:cc:content-type;\r
+       bh=kNPFNURgMPqn3UFKH1gt0E7cm6sDrl2mBGmWYXelfik=;\r
+       b=IDONrnndH8mnzuWuHvg6+HaOKIvz2umXle6NpnepSkYEznHSODS8tOlXmoSfvopCsO\r
+       gmMC7qKGP/ET4Epg99FJK0NKepsWME8i9J0pJ7CkzLlytccpK195V+HD5v4sDJMzkXI1\r
+       4OgRH2cF77xvl7RcNkgPGZbyiCx4WUdKYJo8eIdtUJ8+eGHHNOLZDW+sD70NnIRDd/Y+\r
+       FNiDkK9jtT2eHShXjlj5mSKqeaI6d1TOgrpAZ5cX/4wur6eNPRt0Ic4wGRnO9EpNSqIT\r
+       7tTtCqAAS89dSON4TrRVgzj47juafI/nFFxGspdAt2qiFG5+Mc6EjwoSsEBv9JJWC+1s\r
+       w0Yg==\r
+X-Gm-Message-State:\r
+ ALoCoQlBOxQNZfV5h791Faadf7dseXUs0ppP5lwNWsrm6uMIvHlG0zTXQrnJBu9Sx63s75TBYX0v\r
+MIME-Version: 1.0\r
+X-Received: by 10.112.119.167 with SMTP id kv7mr26201348lbb.62.1421610282610; \r
+       Sun, 18 Jan 2015 11:44:42 -0800 (PST)\r
+Received: by 10.25.160.143 with HTTP; Sun, 18 Jan 2015 11:44:42 -0800 (PST)\r
+Received: by 10.25.160.143 with HTTP; Sun, 18 Jan 2015 11:44:42 -0800 (PST)\r
+In-Reply-To: <1421600110-19988-1-git-send-email-david@tethera.net>\r
+References: <87k312x4i2.fsf@maritornes.cs.unb.ca>\r
+       <1421600110-19988-1-git-send-email-david@tethera.net>\r
+Date: Sun, 18 Jan 2015 21:44:42 +0200\r
+Message-ID:\r
+ <CAB+hUn_Uxj2Ozsw8ymLxMk0RZ6g9kYjM+GLzcX6zrQt4rhMMOQ@mail.gmail.com>\r
+Subject: Re: [PATCH] doc: remove support for rst2man\r
+From: Jani Nikula <jani@nikula.org>\r
+To: David Bremner <david@tethera.net>\r
+Content-Type: multipart/alternative; boundary=047d7b874450e78936050cf26f93\r
+Cc: Notmuch Mail <notmuch@notmuchmail.org>\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+       <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Sun, 18 Jan 2015 19:44:48 -0000\r
+\r
+--047d7b874450e78936050cf26f93\r
+Content-Type: text/plain; charset=UTF-8\r
+\r
+On Jan 18, 2015 6:56 PM, "David Bremner" <david@tethera.net> wrote:\r
+>\r
+> It was becoming increasingly complicated to support rst2man, and there\r
+> were apparently not many people that relied on it.\r
+> ---\r
+>\r
+> Now's your chance to tell us how useful rst2man support is to you.\r
+>\r
+>  INSTALL            |  7 ++----\r
+>  NEWS               |  6 +++++\r
+>  configure          | 20 +++--------------\r
+>  doc/INSTALL        | 13 -----------\r
+>  doc/Makefile.local |  7 ++----\r
+>  doc/prerst2man.py  | 64\r
+------------------------------------------------------\r
+>  6 files changed, 13 insertions(+), 104 deletions(-)\r
+>  delete mode 100644 doc/prerst2man.py\r
+>\r
+> diff --git a/INSTALL b/INSTALL\r
+> index b543c50..eaccd93 100644\r
+> --- a/INSTALL\r
+> +++ b/INSTALL\r
+> @@ -75,14 +75,11 @@ Talloc, and zlib which are each described below:\r
+>  Building Documentation\r
+>  ----------------------\r
+>\r
+> -By default the documentation for notmuch is built using sphinx.\r
+> +To build the documentation for notmuch you need at least version 1.0\r
+> +of sphinx (Jul. 2010).\r
+>\r
+>  Sphinx is available from www.sphinx-doc.org.\r
+>\r
+> -If you prefer, you can build the man pages using rst2man, from the\r
+> -python docutils package. See doc/INSTALL for details.\r
+> -\r
+> -\r
+>  Installing Dependencies from Packages\r
+>  -------------------------------------\r
+>\r
+> diff --git a/NEWS b/NEWS\r
+> index abb5ad7..53e06aa 100644\r
+> --- a/NEWS\r
+> +++ b/NEWS\r
+> @@ -1,5 +1,11 @@\r
+>  Notmuch 0.20 (UNRELEASED)\r
+>\r
+> +Documentation\r
+> +-------------\r
+> +\r
+> +Support for using rst2man in place of sphinx to build the\r
+> +docmumentation has been removed.\r
+\r
+-mu\r
+\r
+Otherwise lgtm.\r
+\r
+Jani.\r
+\r
+> +\r
+>  Contrib\r
+>  -------\r
+>\r
+> diff --git a/configure b/configure\r
+> index 137acea..a6b49ae 100755\r
+> --- a/configure\r
+> +++ b/configure\r
+> @@ -447,19 +447,9 @@ printf "Checking if sphinx is available and supports\r
+nroff output... "\r
+>  if hash sphinx-build > /dev/null 2>&1 && ${python} -m\r
+sphinx.writers.manpage > /dev/null 2>&1 ; then\r
+>      printf "Yes.\n"\r
+>      have_sphinx=1\r
+> -    have_rst2man=0\r
+>  else\r
+> -    printf "No (falling back to rst2man).\n"\r
+> +    printf "No (so will not install man pages).\n"\r
+>      have_sphinx=0\r
+> -\r
+> -    printf "Checking if rst2man is available... "\r
+> -    if rst2man -V > /dev/null 2>&1; then\r
+> -       printf "Yes.\n"\r
+> -       have_rst2man=1\r
+> -    else\r
+> -       printf "No (so will not install man pages).\n"\r
+> -       have_rst2man=0\r
+> -    fi\r
+>  fi\r
+>\r
+>  libdir_in_ldconfig=0\r
+> @@ -848,9 +838,6 @@ HAVE_EMACS = ${have_emacs}\r
+>  # Whether there's a sphinx-build binary available for building\r
+documentation\r
+>  HAVE_SPHINX=${have_sphinx}\r
+>\r
+> -# Whether there's a rst2man binary available for building documentation\r
+> -HAVE_RST2MAN=${have_rst2man}\r
+> -\r
+>  # Whether there's a doxygen binary available for building api\r
+documentation\r
+>  HAVE_DOXYGEN=${have_doxygen}\r
+>\r
+> @@ -978,9 +965,8 @@ cat > sh.config <<EOF\r
+>  # Whether the Xapian version in use supports compaction\r
+>  NOTMUCH_HAVE_XAPIAN_COMPACT=${have_xapian_compact}\r
+>\r
+> -# Whether there's either sphinx or rst2man available for building\r
+> -# documentation\r
+> -NOTMUCH_HAVE_MAN=$((have_sphinx || have_rst2man))\r
+> +# do we have man pages?\r
+> +NOTMUCH_HAVE_MAN=$((have_sphinx))\r
+>\r
+>  # Name of python interpreter\r
+>  NOTMUCH_PYTHON=${python}\r
+> diff --git a/doc/INSTALL b/doc/INSTALL\r
+> index e37c2b9..0585476 100644\r
+> --- a/doc/INSTALL\r
+> +++ b/doc/INSTALL\r
+> @@ -1,9 +1,6 @@\r
+>  This file contains some more detailed information about building and\r
+>  installing the documentation.\r
+>\r
+> -Building with sphinx.\r
+> ----------------------\r
+> -\r
+>  - You need sphinx at least version 1.0.\r
+>\r
+>  - You can build build and install man pages with 'make install-man'\r
+> @@ -12,13 +9,3 @@ Building with sphinx.\r
+>    (currently only the man pages) with\r
+>\r
+>       'make install-{man|info|html|pdf}'\r
+> -\r
+> -Building the man pages\r
+> -----------------------\r
+> -\r
+> -- You can build the man pages with rst2man (from python-docutils) with\r
+> -  'make rst2man'.\r
+> -\r
+> -- Currently there is no support to automagically install the resulting\r
+> -  nroff files, but it should work to modify the target install-man\r
+> -  in doc/Makefile.local.\r
+> diff --git a/doc/Makefile.local b/doc/Makefile.local\r
+> index e7d0bac..0bdf2e1 100644\r
+> --- a/doc/Makefile.local\r
+> +++ b/doc/Makefile.local\r
+> @@ -7,7 +7,6 @@ SPHINXOPTS    := -q\r
+>  SPHINXBUILD   = sphinx-build\r
+>  DOCBUILDDIR      := $(dir)/_build\r
+>\r
+> -prerst2man := python $(srcdir)/$(dir)/prerst2man.py\r
+>  mkdocdeps := python $(srcdir)/$(dir)/mkdocdeps.py\r
+>\r
+>  # Internal variables.\r
+> @@ -50,8 +49,6 @@ ifeq ($(HAVE_SPHINX),1)\r
+>             mkdir -p $(DOCBUILDDIR)/man/man$${section}; \\r
+>             mv $(DOCBUILDDIR)/man/*.$${section}\r
+$(DOCBUILDDIR)/man/man$${section}; \\r
+>         done\r
+> -else ifeq ($(HAVE_RST2MAN),1)\r
+> -       $(prerst2man) $(srcdir)/doc $(DOCBUILDDIR)/man\r
+>  else\r
+>         @echo "Fatal: build dependency fail."\r
+>         @false\r
+> @@ -79,10 +76,10 @@ endif\r
+>\r
+>  # Do not try to build or install man pages if a man page converter is\r
+>  # not available.\r
+> -ifeq ($(HAVE_SPHINX)$(HAVE_RST2MAN),00)\r
+> +ifeq ($(HAVE_SPHINX),0)\r
+>  build-man:\r
+>  install-man:\r
+> -       @echo "No sphinx or rst2man, will not install man pages."\r
+> +       @echo "No sphinx, will not install man pages."\r
+>  else\r
+>  build-man: ${MAN_GZIP_FILES}\r
+>  install-man: ${MAN_GZIP_FILES}\r
+> diff --git a/doc/prerst2man.py b/doc/prerst2man.py\r
+> deleted file mode 100644\r
+> index 968722a..0000000\r
+> --- a/doc/prerst2man.py\r
+> +++ /dev/null\r
+> @@ -1,64 +0,0 @@\r
+> -from sys import argv\r
+> -from datetime import date\r
+> -from os.path import dirname, isdir\r
+> -from os import makedirs, system\r
+> -import re\r
+> -\r
+> -sourcedir = argv[1]\r
+> -outdir = argv[2]\r
+> -\r
+> -if not isdir(outdir):\r
+> -    makedirs(outdir, 0o755)\r
+> -\r
+> -with open(sourcedir + "/conf.py") as cf:\r
+> -    exec(cf.read())\r
+> -\r
+> -\r
+> -def header(file, startdocname, command, description, authors, section):\r
+> -    file.write("""\r
+> -{0:s}\r
+> -{1:s}\r
+> -{2:s}\r
+> -\r
+> -:Date:   {3:s}\r
+> -:Version: {4:s}\r
+> -:Manual section: {5:d}\r
+> -:Manual group: {6:s}\r
+> -\r
+> -""".format(\r
+> -'-' * len(description),\r
+> -description,\r
+> -'-' * len(description),\r
+> -date.today().isoformat(), release, section, project))\r
+> -\r
+> -blankre = re.compile("^\s*$")\r
+> -for page in man_pages:\r
+> -    outdirname = outdir + '/' + dirname(page[0])\r
+> -    if not isdir(outdirname):\r
+> -        makedirs(outdirname, 0o755)\r
+> -    filename = outdir + '/' + page[0] + '.rst'\r
+> -    outfile = open(filename, 'w')\r
+> -    infile = open(sourcedir + '/' + page[0] + '.rst', 'r')\r
+> -\r
+> -    # this is a crude hack. We look for the first blank line, and\r
+> -    # insert the rst2man header there.\r
+> -    #\r
+> -    # XXX consider really parsing input\r
+> -\r
+> -    count = 0\r
+> -    lines = infile.readlines()\r
+> -    for line in lines:\r
+> -        outfile.write(line)\r
+> -        if (blankre.match(line)):\r
+> -            break\r
+> -        count = count + 1\r
+> -\r
+> -    del lines[0:count + 1]\r
+> -\r
+> -    header(outfile, *page)\r
+> -\r
+> -    outfile.write("".join(lines))\r
+> -    outfile.close()\r
+> -\r
+> -    system('set -x; rst2man {0} {1}/{2}.{3}'\r
+> -           .format(filename, outdir, page[0], page[4]))\r
+> --\r
+> 2.1.4\r
+>\r
+> _______________________________________________\r
+> notmuch mailing list\r
+> notmuch@notmuchmail.org\r
+> http://notmuchmail.org/mailman/listinfo/notmuch\r
+\r
+--047d7b874450e78936050cf26f93\r
+Content-Type: text/html; charset=UTF-8\r
+Content-Transfer-Encoding: quoted-printable\r
+\r
+<p dir=3D"ltr"><br>\r
+On Jan 18, 2015 6:56 PM, &quot;David Bremner&quot; &lt;<a href=3D"mailto:da=\r
+vid@tethera.net">david@tethera.net</a>&gt; wrote:<br>\r
+&gt;<br>\r
+&gt; It was becoming increasingly complicated to support rst2man, and there=\r
+<br>\r
+&gt; were apparently not many people that relied on it.<br>\r
+&gt; ---<br>\r
+&gt;<br>\r
+&gt; Now&#39;s your chance to tell us how useful rst2man support is to you.=\r
+<br>\r
+&gt;<br>\r
+&gt; =C2=A0INSTALL=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 7 ++---=\r
+-<br>\r
+&gt; =C2=A0NEWS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=\r
+=A0 6 +++++<br>\r
+&gt; =C2=A0configure=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 20 +++------------=\r
+--<br>\r
+&gt; =C2=A0doc/INSTALL=C2=A0 =C2=A0 =C2=A0 =C2=A0 | 13 -----------<br>\r
+&gt; =C2=A0doc/Makefile.local |=C2=A0 7 ++----<br>\r
+&gt; =C2=A0doc/prerst2man.py=C2=A0 | 64 -----------------------------------=\r
+-------------------<br>\r
+&gt; =C2=A06 files changed, 13 insertions(+), 104 deletions(-)<br>\r
+&gt; =C2=A0delete mode 100644 doc/prerst2man.py<br>\r
+&gt;<br>\r
+&gt; diff --git a/INSTALL b/INSTALL<br>\r
+&gt; index b543c50..eaccd93 100644<br>\r
+&gt; --- a/INSTALL<br>\r
+&gt; +++ b/INSTALL<br>\r
+&gt; @@ -75,14 +75,11 @@ Talloc, and zlib which are each described below:<b=\r
+r>\r
+&gt; =C2=A0Building Documentation<br>\r
+&gt; =C2=A0----------------------<br>\r
+&gt;<br>\r
+&gt; -By default the documentation for notmuch is built using sphinx.<br>\r
+&gt; +To build the documentation for notmuch you need at least version 1.0<=\r
+br>\r
+&gt; +of sphinx (Jul. 2010).<br>\r
+&gt;<br>\r
+&gt; =C2=A0Sphinx is available from <a href=3D"http://www.sphinx-doc.org">w=\r
+ww.sphinx-doc.org</a>.<br>\r
+&gt;<br>\r
+&gt; -If you prefer, you can build the man pages using rst2man, from the<br=\r
+>\r
+&gt; -python docutils package. See doc/INSTALL for details.<br>\r
+&gt; -<br>\r
+&gt; -<br>\r
+&gt; =C2=A0Installing Dependencies from Packages<br>\r
+&gt; =C2=A0-------------------------------------<br>\r
+&gt;<br>\r
+&gt; diff --git a/NEWS b/NEWS<br>\r
+&gt; index abb5ad7..53e06aa 100644<br>\r
+&gt; --- a/NEWS<br>\r
+&gt; +++ b/NEWS<br>\r
+&gt; @@ -1,5 +1,11 @@<br>\r
+&gt; =C2=A0Notmuch 0.20 (UNRELEASED)<br>\r
+&gt;<br>\r
+&gt; +Documentation<br>\r
+&gt; +-------------<br>\r
+&gt; +<br>\r
+&gt; +Support for using rst2man in place of sphinx to build the<br>\r
+&gt; +docmumentation has been removed.</p>\r
+<p dir=3D"ltr">-mu</p>\r
+<p dir=3D"ltr">Otherwise lgtm.</p>\r
+<p dir=3D"ltr">Jani.<br></p>\r
+<p dir=3D"ltr">&gt; +<br>\r
+&gt; =C2=A0Contrib<br>\r
+&gt; =C2=A0-------<br>\r
+&gt;<br>\r
+&gt; diff --git a/configure b/configure<br>\r
+&gt; index 137acea..a6b49ae 100755<br>\r
+&gt; --- a/configure<br>\r
+&gt; +++ b/configure<br>\r
+&gt; @@ -447,19 +447,9 @@ printf &quot;Checking if sphinx is available and =\r
+supports nroff output... &quot;<br>\r
+&gt; =C2=A0if hash sphinx-build &gt; /dev/null 2&gt;&amp;1 &amp;&amp; ${pyt=\r
+hon} -m sphinx.writers.manpage &gt; /dev/null 2&gt;&amp;1 ; then<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0printf &quot;Yes.\n&quot;<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0have_sphinx=3D1<br>\r
+&gt; -=C2=A0 =C2=A0 have_rst2man=3D0<br>\r
+&gt; =C2=A0else<br>\r
+&gt; -=C2=A0 =C2=A0 printf &quot;No (falling back to rst2man).\n&quot;<br>\r
+&gt; +=C2=A0 =C2=A0 printf &quot;No (so will not install man pages).\n&quot=\r
+;<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0have_sphinx=3D0<br>\r
+&gt; -<br>\r
+&gt; -=C2=A0 =C2=A0 printf &quot;Checking if rst2man is available... &quot;=\r
+<br>\r
+&gt; -=C2=A0 =C2=A0 if rst2man -V &gt; /dev/null 2&gt;&amp;1; then<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0printf &quot;Yes.\n&quot;<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0have_rst2man=3D1<br>\r
+&gt; -=C2=A0 =C2=A0 else<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0printf &quot;No (so will not install man p=\r
+ages).\n&quot;<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0have_rst2man=3D0<br>\r
+&gt; -=C2=A0 =C2=A0 fi<br>\r
+&gt; =C2=A0fi<br>\r
+&gt;<br>\r
+&gt; =C2=A0libdir_in_ldconfig=3D0<br>\r
+&gt; @@ -848,9 +838,6 @@ HAVE_EMACS =3D ${have_emacs}<br>\r
+&gt; =C2=A0# Whether there&#39;s a sphinx-build binary available for buildi=\r
+ng documentation<br>\r
+&gt; =C2=A0HAVE_SPHINX=3D${have_sphinx}<br>\r
+&gt;<br>\r
+&gt; -# Whether there&#39;s a rst2man binary available for building documen=\r
+tation<br>\r
+&gt; -HAVE_RST2MAN=3D${have_rst2man}<br>\r
+&gt; -<br>\r
+&gt; =C2=A0# Whether there&#39;s a doxygen binary available for building ap=\r
+i documentation<br>\r
+&gt; =C2=A0HAVE_DOXYGEN=3D${have_doxygen}<br>\r
+&gt;<br>\r
+&gt; @@ -978,9 +965,8 @@ cat &gt; sh.config &lt;&lt;EOF<br>\r
+&gt; =C2=A0# Whether the Xapian version in use supports compaction<br>\r
+&gt; =C2=A0NOTMUCH_HAVE_XAPIAN_COMPACT=3D${have_xapian_compact}<br>\r
+&gt;<br>\r
+&gt; -# Whether there&#39;s either sphinx or rst2man available for building=\r
+<br>\r
+&gt; -# documentation<br>\r
+&gt; -NOTMUCH_HAVE_MAN=3D$((have_sphinx || have_rst2man))<br>\r
+&gt; +# do we have man pages?<br>\r
+&gt; +NOTMUCH_HAVE_MAN=3D$((have_sphinx))<br>\r
+&gt;<br>\r
+&gt; =C2=A0# Name of python interpreter<br>\r
+&gt; =C2=A0NOTMUCH_PYTHON=3D${python}<br>\r
+&gt; diff --git a/doc/INSTALL b/doc/INSTALL<br>\r
+&gt; index e37c2b9..0585476 100644<br>\r
+&gt; --- a/doc/INSTALL<br>\r
+&gt; +++ b/doc/INSTALL<br>\r
+&gt; @@ -1,9 +1,6 @@<br>\r
+&gt; =C2=A0This file contains some more detailed information about building=\r
+ and<br>\r
+&gt; =C2=A0installing the documentation.<br>\r
+&gt;<br>\r
+&gt; -Building with sphinx.<br>\r
+&gt; ----------------------<br>\r
+&gt; -<br>\r
+&gt; =C2=A0- You need sphinx at least version 1.0.<br>\r
+&gt;<br>\r
+&gt; =C2=A0- You can build build and install man pages with &#39;make insta=\r
+ll-man&#39;<br>\r
+&gt; @@ -12,13 +9,3 @@ Building with sphinx.<br>\r
+&gt; =C2=A0 =C2=A0(currently only the man pages) with<br>\r
+&gt;<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0 &#39;make install-{man|info|html|pdf}&#39;<br>\r
+&gt; -<br>\r
+&gt; -Building the man pages<br>\r
+&gt; -----------------------<br>\r
+&gt; -<br>\r
+&gt; -- You can build the man pages with rst2man (from python-docutils) wit=\r
+h<br>\r
+&gt; -=C2=A0 &#39;make rst2man&#39;.<br>\r
+&gt; -<br>\r
+&gt; -- Currently there is no support to automagically install the resultin=\r
+g<br>\r
+&gt; -=C2=A0 nroff files, but it should work to modify the target install-m=\r
+an<br>\r
+&gt; -=C2=A0 in doc/Makefile.local.<br>\r
+&gt; diff --git a/doc/Makefile.local b/doc/Makefile.local<br>\r
+&gt; index e7d0bac..0bdf2e1 100644<br>\r
+&gt; --- a/doc/Makefile.local<br>\r
+&gt; +++ b/doc/Makefile.local<br>\r
+&gt; @@ -7,7 +7,6 @@ SPHINXOPTS=C2=A0 =C2=A0 :=3D -q<br>\r
+&gt; =C2=A0SPHINXBUILD=C2=A0 =C2=A0=3D sphinx-build<br>\r
+&gt; =C2=A0DOCBUILDDIR=C2=A0 =C2=A0 =C2=A0 :=3D $(dir)/_build<br>\r
+&gt;<br>\r
+&gt; -prerst2man :=3D python $(srcdir)/$(dir)/prerst2man.py<br>\r
+&gt; =C2=A0mkdocdeps :=3D python $(srcdir)/$(dir)/mkdocdeps.py<br>\r
+&gt;<br>\r
+&gt; =C2=A0# Internal variables.<br>\r
+&gt; @@ -50,8 +49,6 @@ ifeq ($(HAVE_SPHINX),1)<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 mkdir -p $(DOCBUILDDIR)/man/=\r
+man$${section}; \<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 mv $(DOCBUILDDIR)/man/*.$${s=\r
+ection} $(DOCBUILDDIR)/man/man$${section}; \<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0 =C2=A0 done<br>\r
+&gt; -else ifeq ($(HAVE_RST2MAN),1)<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0$(prerst2man) $(srcdir)/doc $(DOCBUILDDIR)=\r
+/man<br>\r
+&gt; =C2=A0else<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0 =C2=A0 @echo &quot;Fatal: build dependency fail.&=\r
+quot;<br>\r
+&gt; =C2=A0 =C2=A0 =C2=A0 =C2=A0 @false<br>\r
+&gt; @@ -79,10 +76,10 @@ endif<br>\r
+&gt;<br>\r
+&gt; =C2=A0# Do not try to build or install man pages if a man page convert=\r
+er is<br>\r
+&gt; =C2=A0# not available.<br>\r
+&gt; -ifeq ($(HAVE_SPHINX)$(HAVE_RST2MAN),00)<br>\r
+&gt; +ifeq ($(HAVE_SPHINX),0)<br>\r
+&gt; =C2=A0build-man:<br>\r
+&gt; =C2=A0install-man:<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0@echo &quot;No sphinx or rst2man, will not=\r
+ install man pages.&quot;<br>\r
+&gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0@echo &quot;No sphinx, will not install ma=\r
+n pages.&quot;<br>\r
+&gt; =C2=A0else<br>\r
+&gt; =C2=A0build-man: ${MAN_GZIP_FILES}<br>\r
+&gt; =C2=A0install-man: ${MAN_GZIP_FILES}<br>\r
+&gt; diff --git a/doc/prerst2man.py b/doc/prerst2man.py<br>\r
+&gt; deleted file mode 100644<br>\r
+&gt; index 968722a..0000000<br>\r
+&gt; --- a/doc/prerst2man.py<br>\r
+&gt; +++ /dev/null<br>\r
+&gt; @@ -1,64 +0,0 @@<br>\r
+&gt; -from sys import argv<br>\r
+&gt; -from datetime import date<br>\r
+&gt; -from os.path import dirname, isdir<br>\r
+&gt; -from os import makedirs, system<br>\r
+&gt; -import re<br>\r
+&gt; -<br>\r
+&gt; -sourcedir =3D argv[1]<br>\r
+&gt; -outdir =3D argv[2]<br>\r
+&gt; -<br>\r
+&gt; -if not isdir(outdir):<br>\r
+&gt; -=C2=A0 =C2=A0 makedirs(outdir, 0o755)<br>\r
+&gt; -<br>\r
+&gt; -with open(sourcedir + &quot;/conf.py&quot;) as cf:<br>\r
+&gt; -=C2=A0 =C2=A0 exec(cf.read())<br>\r
+&gt; -<br>\r
+&gt; -<br>\r
+&gt; -def header(file, startdocname, command, description, authors, section=\r
+):<br>\r
+&gt; -=C2=A0 =C2=A0 file.write(&quot;&quot;&quot;<br>\r
+&gt; -{0:s}<br>\r
+&gt; -{1:s}<br>\r
+&gt; -{2:s}<br>\r
+&gt; -<br>\r
+&gt; -:Date:=C2=A0 =C2=A0{3:s}<br>\r
+&gt; -:Version: {4:s}<br>\r
+&gt; -:Manual section: {5:d}<br>\r
+&gt; -:Manual group: {6:s}<br>\r
+&gt; -<br>\r
+&gt; -&quot;&quot;&quot;.format(<br>\r
+&gt; -&#39;-&#39; * len(description),<br>\r
+&gt; -description,<br>\r
+&gt; -&#39;-&#39; * len(description),<br>\r
+&gt; -date.today().isoformat(), release, section, project))<br>\r
+&gt; -<br>\r
+&gt; -blankre =3D re.compile(&quot;^\s*$&quot;)<br>\r
+&gt; -for page in man_pages:<br>\r
+&gt; -=C2=A0 =C2=A0 outdirname =3D outdir + &#39;/&#39; + dirname(page[0])<=\r
+br>\r
+&gt; -=C2=A0 =C2=A0 if not isdir(outdirname):<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 makedirs(outdirname, 0o755)<br>\r
+&gt; -=C2=A0 =C2=A0 filename =3D outdir + &#39;/&#39; + page[0] + &#39;.rst=\r
+&#39;<br>\r
+&gt; -=C2=A0 =C2=A0 outfile =3D open(filename, &#39;w&#39;)<br>\r
+&gt; -=C2=A0 =C2=A0 infile =3D open(sourcedir + &#39;/&#39; + page[0] + &#3=\r
+9;.rst&#39;, &#39;r&#39;)<br>\r
+&gt; -<br>\r
+&gt; -=C2=A0 =C2=A0 # this is a crude hack. We look for the first blank lin=\r
+e, and<br>\r
+&gt; -=C2=A0 =C2=A0 # insert the rst2man header there.<br>\r
+&gt; -=C2=A0 =C2=A0 #<br>\r
+&gt; -=C2=A0 =C2=A0 # XXX consider really parsing input<br>\r
+&gt; -<br>\r
+&gt; -=C2=A0 =C2=A0 count =3D 0<br>\r
+&gt; -=C2=A0 =C2=A0 lines =3D infile.readlines()<br>\r
+&gt; -=C2=A0 =C2=A0 for line in lines:<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 outfile.write(line)<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 if (blankre.match(line)):<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 count =3D count + 1<br>\r
+&gt; -<br>\r
+&gt; -=C2=A0 =C2=A0 del lines[0:count + 1]<br>\r
+&gt; -<br>\r
+&gt; -=C2=A0 =C2=A0 header(outfile, *page)<br>\r
+&gt; -<br>\r
+&gt; -=C2=A0 =C2=A0 outfile.write(&quot;&quot;.join(lines))<br>\r
+&gt; -=C2=A0 =C2=A0 outfile.close()<br>\r
+&gt; -<br>\r
+&gt; -=C2=A0 =C2=A0 system(&#39;set -x; rst2man {0} {1}/{2}.{3}&#39;<br>\r
+&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0.format(filename, outdir, pa=\r
+ge[0], page[4]))<br>\r
+&gt; --<br>\r
+&gt; 2.1.4<br>\r
+&gt;<br>\r
+&gt; _______________________________________________<br>\r
+&gt; notmuch mailing list<br>\r
+&gt; <a href=3D"mailto:notmuch@notmuchmail.org">notmuch@notmuchmail.org</a>=\r
+<br>\r
+&gt; <a href=3D"http://notmuchmail.org/mailman/listinfo/notmuch">http://not=\r
+muchmail.org/mailman/listinfo/notmuch</a><br>\r
+</p>\r
+\r
+--047d7b874450e78936050cf26f93--\r