aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Clausecker <fuz@FreeBSD.org>2023-05-25 16:52:21 +0000
committerRobert Clausecker <fuz@FreeBSD.org>2023-05-29 23:24:06 +0000
commit36fcf661ba23c96004395f6ee52cf2e6133b31f0 (patch)
treeddab40752b5f0cf85b4bd14e68955c3b39712c76
parent41234ceb6e1fa23aa50b5b680bf1e9d7333c8bcb (diff)
downloadports-36fcf661ba23c96004395f6ee52cf2e6133b31f0.tar.gz
ports-36fcf661ba23c96004395f6ee52cf2e6133b31f0.zip
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
-rw-r--r--devel/blame/Makefile15
-rw-r--r--devel/blame/distinfo5
-rw-r--r--devel/blame/files/patch-Makefile.in17
-rw-r--r--devel/blame/files/patch-lib_mktime.c77
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;
+