svn commit: r354767 - in head/sysutils/e2fsprogs: . files

Matthias Andree mandree at FreeBSD.org
Thu May 22 04:46:39 UTC 2014


Author: mandree
Date: Thu May 22 04:46:37 2014
New Revision: 354767
URL: http://svnweb.freebsd.org/changeset/ports/354767
QAT: https://qat.redports.org/buildarchive/r354767/

Log:
  Update to new upstream release 1.42.10, with one post-release fix.
  
  Changelog: http://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.42.10

Added:
  head/sysutils/e2fsprogs/files/patch-350897   (contents, props changed)
Modified:
  head/sysutils/e2fsprogs/Makefile
  head/sysutils/e2fsprogs/distinfo

Modified: head/sysutils/e2fsprogs/Makefile
==============================================================================
--- head/sysutils/e2fsprogs/Makefile	Thu May 22 03:52:04 2014	(r354766)
+++ head/sysutils/e2fsprogs/Makefile	Thu May 22 04:46:37 2014	(r354767)
@@ -2,7 +2,7 @@
 # $FreeBSD$
 
 PORTNAME=	e2fsprogs
-PORTVERSION=	1.42.9
+PORTVERSION=	1.42.10
 PORTREVISION?=	0
 CATEGORIES?=	sysutils
 MASTER_SITES=	KERNEL_ORG/linux/kernel/people/tytso/${PORTNAME}/v${PORTVERSION}
@@ -13,12 +13,12 @@ COMMENT?=	Utilities & library to manipul
 LICENSE=	GPLv2
 
 PATCH_STRIP=	-p1
-USES=		gmake pkgconfig
+USES=		gmake pkgconfig tar:xz
 USE_CSTD=	gnu99
 USE_LDCONFIG=	yes
-USE_XZ=		yes
 GNU_CONFIGURE=	yes
 CONFIGURE_ARGS+=--disable-fsck --disable-e2initrd-helper \
+		--enable-quota \
 		--with-root-prefix='${PREFIX}'
 CPPFLAGS+=	-I${WRKSRC}/lib -I${LOCALBASE}/include # -D_EXT2_USE_C_VERSIONS
 MAKE_ARGS+=	LDFLAGS='${LDFLAGS} -L${LOCALBASE}/lib'
@@ -76,7 +76,7 @@ post-patch::
 # disable f_mmp_garbage, fails on FreeBSD, and the resize*big_expand tests,
 # which are too unwieldy to run automatically (need too much free space).
 # f_extent_oobounds fails in Tinderbox and is fine outside, reason unclear.
-.for i in f_mmp_garbage f_extent_oobounds r_64bit_big_expand r_bigalloc_big_expand r_ext4_big_expand m_bigjournal
+.for i in f_mmp_garbage m_bigjournal r_64bit_big_expand r_bigalloc_big_expand r_ext4_big_expand
 	@${MV} ${WRKSRC}/tests/${i} ${WRKSRC}/tests/disabled_test-${i}
 .endfor
 

Modified: head/sysutils/e2fsprogs/distinfo
==============================================================================
--- head/sysutils/e2fsprogs/distinfo	Thu May 22 03:52:04 2014	(r354766)
+++ head/sysutils/e2fsprogs/distinfo	Thu May 22 04:46:37 2014	(r354767)
@@ -1,2 +1,2 @@
-SHA256 (e2fsprogs-1.42.9.tar.xz) = b63e95f71209c3d8b07e320a4c602eedb9eaf5b1f565807ad92f519299cd8868
-SIZE (e2fsprogs-1.42.9.tar.xz) = 4656468
+SHA256 (e2fsprogs-1.42.10.tar.xz) = 1f3324e80b042e8b9c2791c5b5de57afa205989b170e5800764ea60cb3961599
+SIZE (e2fsprogs-1.42.10.tar.xz) = 4676804

Added: head/sysutils/e2fsprogs/files/patch-350897
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/e2fsprogs/files/patch-350897	Thu May 22 04:46:37 2014	(r354767)
@@ -0,0 +1,68 @@
+http://patchwork.ozlabs.org/patch/350897/
+debugfs: fix string_to_time for MacOS strptime()
+
+The strptime() function does not update fields in struct tm that are
+not specified in the input format.  The glibc implementation sets the
+tm_yday field (%j) when any of the year (%Y), month (%m), or day (%d)
+fields are changed, but the MacOS strptime() does not set tm_yday in
+this case.  This caused string_to_time() to calculate the wrong Unix
+epoch on MacOS. If tm_yday is unset, compute it in string_to_time().
+
+Signed-off-by: Andreas Dilger <adilger at dilger.ca>
+---
+ debugfs/util.c                    | 14 ++++++++++++++
+ tests/f_dup_resize/script         |  2 +-
+ tests/f_uninit_last_uninit/script |  2 +-
+ 3 files changed, 16 insertions(+), 2 deletions(-)
+
+diff --git a/debugfs/util.c b/debugfs/util.c
+index 9ddfe0b..20c6c61 100644
+--- a/debugfs/util.c
++++ b/debugfs/util.c
+@@ -245,6 +245,20 @@ time_t string_to_time(const char *arg)
+ 		ts.tm_mday = 0;
+ #endif
+ 	ts.tm_isdst = -1;
++	/* strptime() may only update the specified fields, which does not
++	 * necessarily include ts.tm_yday (%j).  Calculate this if unset:
++	 *
++	 * Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
++	 * 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31
++	 *
++	 * Start with 31 days per month.  Even months have only 30 days, but
++	 * reverse in August, subtract one day for those months. February has
++	 * only 28 days, not 30, subtract two days. Add day of month, minus
++	 * one, since day is not finished yet.  Leap years handled afterward. */
++	if (ts.tm_yday == 0)
++		ts.tm_yday = (ts.tm_mon * 31) -
++			((ts.tm_mon - (ts.tm_mon > 7)) / 2) -
++			2 * (ts.tm_mon > 1) + ts.tm_mday - 1;
+ 	ret = ts.tm_sec + ts.tm_min*60 + ts.tm_hour*3600 + ts.tm_yday*86400 +
+ 		(ts.tm_year-70)*31536000 + ((ts.tm_year-69)/4)*86400 -
+ 		((ts.tm_year-1)/100)*86400 + ((ts.tm_year+299)/400)*86400;
+diff --git a/tests/f_dup_resize/script b/tests/f_dup_resize/script
+index 659c92e..19fa120 100644
+--- a/tests/f_dup_resize/script
++++ b/tests/f_dup_resize/script
+@@ -12,7 +12,7 @@ freeb 4 4
+ freeb 8195 4
+ write $TEST_DATA debugfs
+ set_current_time 20050411000000
+-set_inode_field debugfs mtime 2005041100000000
++set_inode_field debugfs mtime 20050411000000
+ q
+ EOF
+ 
+diff --git a/tests/f_uninit_last_uninit/script b/tests/f_uninit_last_uninit/script
+index 2fe4f3a..376c978 100644
+--- a/tests/f_uninit_last_uninit/script
++++ b/tests/f_uninit_last_uninit/script
+@@ -5,7 +5,7 @@ SKIP_GUNZIP="true"
+ touch $TMPFILE
+ $MKE2FS -N 32 -F -o Linux -O uninit_bg -b 1024 $TMPFILE 10000 > /dev/null 2>&1 
+ $DEBUGFS -w $TMPFILE << EOF > /dev/null 2>&1
+-set_current_time 200704102100
++set_current_time 20070410210000
+ set_super_value lastcheck 0
+ set_super_value hash_seed null
+ set_super_value mkfs_time 0


More information about the svn-ports-all mailing list