git: 36fcf661ba23 - main - devel/blame: update to 1.3.1-20221108

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Mon, 29 May 2023 23:26:01 UTC
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=36fcf661ba23c96004395f6ee52cf2e6133b31f0

commit 36fcf661ba23c96004395f6ee52cf2e6133b31f0
Author:     Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2023-05-25 16:52:21 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2023-05-29 23:24:06 +0000

    devel/blame: update to 1.3.1-20221108
    
    Fix build on armv7 by importing a gnulib patch.
    Take maintainership.
    
    Changelog: https://invisible-island.net/rcs-blame/ChangeLog.html
    
    Approved by:    jhein@symmetricom.com (maintainer)
    PR:             271643
---
 devel/blame/Makefile                 | 15 +++----
 devel/blame/distinfo                 |  5 ++-
 devel/blame/files/patch-Makefile.in  | 17 ++++++++
 devel/blame/files/patch-lib_mktime.c | 77 ++++++++++++++++++++++++++++++++++++
 4 files changed, 105 insertions(+), 9 deletions(-)

diff --git a/devel/blame/Makefile b/devel/blame/Makefile
index cc7e4178fe2f..ef6c6dfba12f 100644
--- a/devel/blame/Makefile
+++ b/devel/blame/Makefile
@@ -1,18 +1,19 @@
 PORTNAME=	blame
-PORTVERSION=	1.3.1
+DISTVERSION=	1.3.1-20221108
 CATEGORIES=	devel
-MASTER_SITES=	ftp://ftp.invisible-island.net/rcs-blame/
+MASTER_SITES=	https://invisible-island.net/archives/rcs-blame/
 
-MAINTAINER=	jhein@symmetricom.com
+MAINTAINER=	fuz@FreeBSD.org
 COMMENT=	Display last modification for each line in an RCS file
 WWW=		https://invisible-island.net/rcs-blame/
 
-USE_CSTD=	gnu89
+LICENSE=	GPLv2
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+USES=		tar:tgz
 GNU_CONFIGURE=	yes
+TEST_TARGET=	check
 PLIST_FILES=	bin/blame \
 		man/man1/blame.1.gz
 
-# Fix build with clang11
-CFLAGS+=	-fcommon
-
 .include <bsd.port.mk>
diff --git a/devel/blame/distinfo b/devel/blame/distinfo
index 5b12ae93ff86..9e4d05968daf 100644
--- a/devel/blame/distinfo
+++ b/devel/blame/distinfo
@@ -1,2 +1,3 @@
-SHA256 (blame-1.3.1.tar.gz) = 1943b145c0d69d1b3390e9417b76822af0b1bbe53cdaddf76e8497f2e79d58ca
-SIZE (blame-1.3.1.tar.gz) = 483406
+TIMESTAMP = 1685013421
+SHA256 (blame-1.3.1-20221108.tgz) = ef8e3ec762550d997b2a0f4b8b518fe4d5e2ea3840d743d6c85d4980048e8413
+SIZE (blame-1.3.1-20221108.tgz) = 455636
diff --git a/devel/blame/files/patch-Makefile.in b/devel/blame/files/patch-Makefile.in
new file mode 100644
index 000000000000..68fb52914d7d
--- /dev/null
+++ b/devel/blame/files/patch-Makefile.in
@@ -0,0 +1,17 @@
+--- Makefile.in.orig	2023-05-25 11:18:07 UTC
++++ Makefile.in
+@@ -14,10 +14,10 @@ clean \
+ distclean \
+ install \
+ uninstall ::
+-	cd doc && $(MAKE) $@
+-	cd lib && $(MAKE) $@
+-	cd src && $(MAKE) $@
+-	cd tests && $(MAKE) $@
++	$(MAKE) -C doc $@
++	$(MAKE) -C lib $@
++	$(MAKE) -C src $@
++	$(MAKE) -C tests $@
+ 
+ distclean ::
+ 	-rm -f blame.spec
diff --git a/devel/blame/files/patch-lib_mktime.c b/devel/blame/files/patch-lib_mktime.c
new file mode 100644
index 000000000000..48c7148461eb
--- /dev/null
+++ b/devel/blame/files/patch-lib_mktime.c
@@ -0,0 +1,77 @@
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Fri, 28 Jan 2011 21:02:31 -0800
+Subject: [PATCH] mktime: avoid problems on NetBSD 5 / i386
+
+* lib/mktime.c (long_int): New type.  This works around a problem
+on NetBSD 5 / i386, where 'long int' and 'int' are both 32 bits
+but time_t is 64 bits, and where I expect the existing code is
+wrong in some cases.
+(leapyear, ydhms_diff, guess_time_tm, __mktime_internal): Use it.
+(ydhms_diff): Bring back the compile-time check for wide-enough
+year and yday.
+
+--- lib/mktime.c.orig	2006-11-18 10:07:43 UTC
++++ lib/mktime.c
+@@ -115,9 +115,15 @@ verify (twos_complement_arithmetic, TYPE_TWOS_COMPLEME
+ #define TM_YEAR_BASE 1900
+ verify (base_year_is_a_multiple_of_100, TM_YEAR_BASE % 100 == 0);
+ 
++#if INT_MAX <= LONG_MAX / 2
++typedef long int long_int;
++#else
++typedef long long int long_int;
++#endif
++
+ /* Return 1 if YEAR + TM_YEAR_BASE is a leap year.  */
+ static inline int
+-leapyear (long int year)
++leapyear (long_int year)
+ {
+   /* Don't add YEAR to TM_YEAR_BASE, as that might overflow.
+      Also, work even if YEAR is negative.  */
+@@ -163,12 +169,12 @@ const unsigned short int __mon_yday[2][13] =
+    detect overflow.  */
+ 
+ static inline time_t
+-ydhms_diff (long int year1, long int yday1, int hour1, int min1, int sec1,
++ydhms_diff (long_int year1, long_int yday1, int hour1, int min1, int sec1,
+ 	    int year0, int yday0, int hour0, int min0, int sec0)
+ {
+   verify (C99_integer_division, -1 / 2 == 0);
+   verify (long_int_year_and_yday_are_wide_enough,
+-	  INT_MAX <= LONG_MAX / 2 || TIME_T_MAX <= UINT_MAX);
++          INT_MAX == INT_MAX * (long_int) 2 / 2);
+ 
+   /* Compute intervening leap days correctly even if year is negative.
+      Take care to avoid integer overflow here.  */
+@@ -199,7 +205,7 @@ ydhms_diff (long int year1, long int yday1, int hour1,
+    If overflow occurs, yield the minimal or maximal value, except do not
+    yield a value equal to *T.  */
+ static time_t
+-guess_time_tm (long int year, long int yday, int hour, int min, int sec,
++guess_time_tm (long_int year, long_int yday, int hour, int min, int sec,
+ 	       const time_t *t, const struct tm *tp)
+ {
+   if (tp)
+@@ -301,8 +307,8 @@ __mktime_internal (struct tm *tp,
+   int mon_remainder = mon % 12;
+   int negative_mon_remainder = mon_remainder < 0;
+   int mon_years = mon / 12 - negative_mon_remainder;
+-  long int lyear_requested = year_requested;
+-  long int year = lyear_requested + mon_years;
++  long_int lyear_requested = year_requested;
++  long_int year = lyear_requested + mon_years;
+ 
+   /* The other values need not be in range:
+      the remaining code handles minor overflows correctly,
+@@ -314,8 +320,8 @@ __mktime_internal (struct tm *tp,
+   int mon_yday = ((__mon_yday[leapyear (year)]
+ 		   [mon_remainder + 12 * negative_mon_remainder])
+ 		  - 1);
+-  long int lmday = mday;
+-  long int yday = mon_yday + lmday;
++  long_int lmday = mday;
++  long_int yday = mon_yday + lmday;
+ 
+   time_t guessed_offset = *offset;
+