]> granicus.if.org Git - neomutt/commitdiff
Simplify generation of man date
authorPietro Cerutti <gahr@gahr.ch>
Fri, 30 Mar 2018 12:57:06 +0000 (12:57 +0000)
committerRichard Russon <rich@flatcap.org>
Wed, 25 Apr 2018 02:04:33 +0000 (03:04 +0100)
Makefile.autosetup
auto.def
doc/Makefile.autosetup
doc/neomutt.man
doc/neomuttrc.man.head

index c47a1be65284ed0c4482c365052dc00bcbfddca8..d4d966b237eb0b151a1b35fdc9d8b420e5454664 100644 (file)
@@ -3,6 +3,7 @@
 
 PACKAGE=       @PACKAGE@
 PACKAGE_VERSION=@PACKAGE_VERSION@
+PACKAGE_DATE=  @PACKAGE_DATE@
 
 # Build-time compiler and flags. These are used for building executables that
 # are only used at build-time, e.g., doc/makedoc. These are different from CC /
@@ -56,10 +57,6 @@ VPATH=               $(SRCDIR)
 
 ALL_FILES!=    (cd $(SRCDIR) && git ls-files 2>/dev/null) || true
 
-# timestamps
-TS_MAN_CONF=   @TS_MAN_CONF@
-TS_MAN_MAIN=   @TS_MAN_MAIN@
-
 ###############################################################################
 # neomutt
 NEOMUTT=       neomutt$(EXEEXT)
index 998e7b96e2c279ba78ebb11edd66a3b99e9b99f1..381164fe0264f6ffbd575e352849634d93ea02a5 100644 (file)
--- a/auto.def
+++ b/auto.def
@@ -177,24 +177,6 @@ if {1} {
   proc yesno val {
     expr {$val ? "yes" : "no"}
   }
-
-  # Recent author timestamp of file(s) as UTC, use PACKAGE_VERSION as fallback
-  proc get-author-date {format args} {
-    set oldpwd [pwd]
-    cd $::autosetup(srcdir)
-
-    if {$args eq "" || [catch {
-        set fd [open "|git log -1 --format=%at master -- $args" r]
-        gets $fd epoch
-        close $fd}] || $epoch eq ""
-    } {
-      set epoch [clock scan \
-                   [get-define PACKAGE_VERSION] -format {%Y%m%d} -timezone :UTC]
-    }
-    cd $oldpwd
-
-    return [clock format $epoch -format $format -timezone :UTC]
-  }
 }
 ###############################################################################
 
@@ -938,8 +920,8 @@ foreach dir $subdirs {
 ###############################################################################
 # Provide timestamps (UTC) based on most recent author date or PACKAGE_VERSION
 # doc/neomuttrc.man, doc/neomutt.1
-define TS_MAN_CONF [get-author-date "%Y-%m-%d" init.h doc/neomuttrc.man.head doc/neomuttrc.man.tail]
-define TS_MAN_MAIN [get-author-date "%Y-%m-%d" doc/neomutt.man]
+define PACKAGE_DATE \
+  [regsub {(....)(..)(..)} [get-define PACKAGE_VERSION] {\1-\2-\3}]
 
 ###############################################################################
 # Generate Makefile and config.h
@@ -951,7 +933,6 @@ make-config-header config.h -auto $auto_rep -bare $bare_rep -str $str_rep
 # Generate doc/neomutt.1
 define bindir [get-define BINDIR]
 define docdir [get-define PKGDOCDIR]
-make-template doc/neomutt.man doc/neomutt.1
 
 ###############################################################################
 # Generate .clang_complete
index 0229b3179c8bbef1bb0548cde36cee668c53eef7..45372f33e4c37f00ddc07ada3a72ebe7889c54c1 100644 (file)
@@ -40,7 +40,8 @@ all-doc:      $(CHUNKED_DOCFILES) \
                doc/manual.html \
                doc/manual.txt \
                doc/neomuttrc \
-               doc/neomuttrc.man
+               doc/neomutt.1 \
+               doc/neomuttrc.5 \
 
 doc/manual.html:       doc/manual.xml \
                        $(SRCDIR)/doc/html.xsl \
@@ -63,16 +64,21 @@ doc/index.html: $(SRCDIR)/doc/chunk.xsl \
                doc/manual.xml
        xsltproc --nonet -o doc/ $(SRCDIR)/doc/chunk.xsl doc/manual.xml > /dev/null 2>&1
 
-doc/neomuttrc.man:     doc/makedoc$(EXEEXT) \
+doc/neomuttrc.5:       doc/makedoc$(EXEEXT) \
                $(SRCDIR)/init.h \
                $(SRCDIR)/doc/neomuttrc.man.head \
                $(SRCDIR)/doc/neomuttrc.man.tail
-       ( sed -e "/^\.TH/s/@TS_MAN_CONF@/$(TS_MAN_CONF)/" \
+       ( sed -e "/^\.TH/s/@MAN_DATE@/$(PACKAGE_DATE)/" \
            $(SRCDIR)/doc/neomuttrc.man.head && \
            $(MAKEDOC_CPP) $(SRCDIR)/init.h | doc/makedoc$(EXEEXT) -m | \
            cat - $(SRCDIR)/doc/neomuttrc.man.tail \
        ) > $@
 
+doc/neomutt.1:
+       ( sed -e "/^\.TH/s/@MAN_DATE@/$(PACKAGE_DATE)/" \
+           $(SRCDIR)/doc/neomutt.man \
+       ) > $@
+
 doc/manual.xml:        doc/makedoc$(EXEEXT) $(SRCDIR)/init.h $(SRCDIR)/opcodes.h \
                $(SRCDIR)/doc/manual.xml.head $(SRCDIR)/functions.h \
                $(SRCDIR)/doc/manual.xml.tail $(SRCDIR)/doc/gen-map-doc
@@ -89,7 +95,7 @@ install-doc: all-doc
        $(MKDIR_P) $(DESTDIR)$(mandir)/man5
        $(MKDIR_P) $(DESTDIR)$(sysconfdir)
        $(INSTALL) -m 644 doc/neomutt.1 $(DESTDIR)$(mandir)/man1/neomutt.1
-       $(INSTALL) -m 644 doc/neomuttrc.man $(DESTDIR)$(mandir)/man5/neomuttrc.5
+       $(INSTALL) -m 644 doc/neomuttrc.5 $(DESTDIR)$(mandir)/man5/neomuttrc.5
        $(INSTALL) -m 644 $(SRCDIR)/doc/smime_keys.1 $(DESTDIR)$(mandir)/man1/smime_keys_$(PACKAGE).1
        $(INSTALL) -m 644 $(SRCDIR)/doc/pgpewrap.1 $(DESTDIR)$(mandir)/man1/pgpewrap_$(PACKAGE).1
        $(INSTALL) -m 644 $(SRCDIR)/doc/pgpring.1 $(DESTDIR)$(mandir)/man1/pgpring_$(PACKAGE).1
@@ -123,7 +129,7 @@ uninstall-doc:
        $(RM) $(DESTDIR)$(docdir)/mime.types
 
 clean-doc:
-       $(RM) doc/*.html doc/neomuttrc.man \
+       $(RM) doc/*.html doc/neomuttrc.5 doc/neomutt.1 \
            doc/makedoc$(EXEEXT) doc/makedoc.o \
            doc/makedoc.Po doc/manual.txt doc/manual.xml \
            doc/neomuttrc
index 8c9adcb0325840ce98d018148e292c4161f1b2cb..743a41297585efb2ed3d81e94943e260ae027d86 100644 (file)
@@ -17,7 +17,7 @@
 .\"     along with this program; if not, write to the Free Software
 .\"     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 .\"
-.TH neomutt 1 "@TS_MAN_MAIN@" Unix "User Manuals"
+.TH neomutt 1 "@MAN_DATE@" Unix "User Manuals"
 .SH NAME
 neomutt \- The NeoMutt Mail User Agent
 .SH SYNTAX
index 7ee37769d3c43eefde61f62a8997aa0ec0fa5ac8..74901d6f4b22b03d0daf2d4d27cc29fe2642e168 100644 (file)
@@ -26,7 +26,7 @@
 .ft
 .fi
 ..
-.TH neomuttrc 5 "@TS_MAN_CONF@" Unix "User Manuals"
+.TH neomuttrc 5 "@MAN_DATE@" Unix "User Manuals"
 .SH NAME
 neomuttrc \- Configuration file for the NeoMutt Mail User Agent
 .SH DESCRIPTION