git: 99d0f41c6015 - main - sysutils/jdupes: Update to 1.27.3

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Sun, 10 Sep 2023 16:13:38 UTC
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=99d0f41c60158d38b4f67fdc8d0ceca96e65ef23

commit 99d0f41c60158d38b4f67fdc8d0ceca96e65ef23
Author:     Thomas Hurst <tom@hur.st>
AuthorDate: 2023-08-28 15:39:21 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2023-09-10 16:12:59 +0000

    sysutils/jdupes: Update to 1.27.3
    
    Some notable user-facing changes:
    
    * Text-based hash database with -y/--hash-db
    * -e/--error-on-dupe flag to terminate immediately if any dupe is found
    * -C/--chunk-size now uses KiB instead of bytes (BREAKING CHANGE)
    
    Many thanks to the author for upstream changes made to help simplify the
    port.
    
    Additionally this removes the workaround for a strip(1) issue with
    LOW_MEMORY builds I can no longer reproduce (bin/269568).
    
    Changelog: https://github.com/jbruchon/jdupes/releases/tag/v1.27.3
    
    PR:             273403
---
 sysutils/jdupes/Makefile             | 23 +++++++----------------
 sysutils/jdupes/distinfo             |  6 +++---
 sysutils/jdupes/files/patch-Makefile | 34 ----------------------------------
 sysutils/jdupes/pkg-message          |  7 +++++++
 4 files changed, 17 insertions(+), 53 deletions(-)

diff --git a/sysutils/jdupes/Makefile b/sysutils/jdupes/Makefile
index 1dfe50737abe..ebb0aed66e32 100644
--- a/sysutils/jdupes/Makefile
+++ b/sysutils/jdupes/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	jdupes
 DISTVERSIONPREFIX=	v
-DISTVERSION=	1.21.3
+DISTVERSION=	1.27.3
 CATEGORIES=	sysutils
 
 MAINTAINER=	tom@hur.st
@@ -8,16 +8,18 @@ COMMENT=	Powerful duplicate file finder and an enhanced fork of 'fdupes'
 WWW=		https://github.com/jbruchon/jdupes
 
 LICENSE=	MIT
-LICENSE_FILE=	${WRKSRC}/LICENSE
+LICENSE_FILE=	${WRKSRC}/LICENSE.txt
 
-LIB_DEPENDS=	libxxhash.so:devel/xxhash
+LIB_DEPENDS=	libjodycode.so:devel/libjodycode \
+		libxxhash.so:devel/xxhash
 
 USES=		gmake localbase:ldflags
 
 USE_GITHUB=	yes
 GH_ACCOUNT=	jbruchon
 
-LDFLAGS+=	-lxxhash
+MAKE_FLAGS=	EXTERNAL_HASH_LIB=1
+LDFLAGS+=	-ljodycode -lxxhash
 
 PLIST_FILES=	bin/jdupes \
 		man/man1/jdupes.1.gz
@@ -26,19 +28,8 @@ OPTIONS_DEFINE=		LOW_MEMORY
 LOW_MEMORY_DESC=	Minimally-featured build for embedded systems
 LOW_MEMORY_MAKE_ENV=	LOW_MEMORY=1
 
-.include <bsd.port.options.mk>
-
-# ELF Tool Chain's strip breaks binary so use LLVM's for now
-# To avoid hardcoded stripping use INSTALL_KLD instead of _BIN
-.if ${PORT_OPTIONS:MLOW_MEMORY} && !defined(WITH_DEBUG)
-STRIP_CMD=	/usr/bin/llvm-strip
-.endif
-
 do-install:
-	${INSTALL_KLD} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
+	${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
 	${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.1 ${STAGEDIR}${MANPREFIX}/man/man1
 
-post-install:
-	${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/jdupes
-
 .include <bsd.port.mk>
diff --git a/sysutils/jdupes/distinfo b/sysutils/jdupes/distinfo
index e3a0627c7c10..d9d8129555b1 100644
--- a/sysutils/jdupes/distinfo
+++ b/sysutils/jdupes/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1675962603
-SHA256 (jbruchon-jdupes-v1.21.3_GH0.tar.gz) = 8992d0ff1fe135c685063ce3c9d69d54f1f19f1b32845e84441f888218063cc0
-SIZE (jbruchon-jdupes-v1.21.3_GH0.tar.gz) = 155979
+TIMESTAMP = 1693232321
+SHA256 (jbruchon-jdupes-v1.27.3_GH0.tar.gz) = 6e8352f61b3920a2b5626c7122c3b80b4fdcc5cdd3f1c0c3424530425a77d846
+SIZE (jbruchon-jdupes-v1.27.3_GH0.tar.gz) = 174831
diff --git a/sysutils/jdupes/files/patch-Makefile b/sysutils/jdupes/files/patch-Makefile
deleted file mode 100644
index 2f4a4f9181d1..000000000000
--- a/sysutils/jdupes/files/patch-Makefile
+++ /dev/null
@@ -1,34 +0,0 @@
---- Makefile.orig	2023-02-09 14:46:39 UTC
-+++ Makefile
-@@ -54,7 +54,7 @@ MKDIR   = mkdir -p
- CC ?= gcc
- COMPILER_OPTIONS = -Wall -Wwrite-strings -Wcast-align -Wstrict-aliasing -Wstrict-prototypes -Wpointer-arith -Wundef
- COMPILER_OPTIONS += -Wshadow -Wfloat-equal -Waggregate-return -Wcast-qual -Wswitch-default -Wswitch-enum -Wconversion -Wunreachable-code -Wformat=2
--COMPILER_OPTIONS += -std=gnu99 -O2 -g -D_FILE_OFFSET_BITS=64 -fstrict-aliasing -pipe
-+COMPILER_OPTIONS += -std=gnu99 -D_FILE_OFFSET_BITS=64 -fstrict-aliasing -pipe
- COMPILER_OPTIONS += -DSMA_MAX_FREE=11 -DNO_ATIME
- 
- #####################################################################
-@@ -62,10 +62,10 @@ COMPILER_OPTIONS += -DSMA_MAX_FREE=11 -DNO_ATIME
- #####################################################################
- 
- # Don't use unsupported compiler options on gcc 3/4 (OS X 10.5.8 Xcode)
--GCCVERSION = $(shell expr `LC_ALL=C gcc -v 2>&1 | grep 'gcc version ' | cut -d\  -f3 | cut -d. -f1` \>= 5)
--ifeq "$(GCCVERSION)" "1"
-+#GCCVERSION = $(shell expr `LC_ALL=C gcc -v 2>&1 | grep 'gcc version ' | cut -d\  -f3 | cut -d. -f1` \>= 5)
-+#ifeq "$(GCCVERSION)" "1"
- 	COMPILER_OPTIONS += -Wextra -Wstrict-overflow=5 -Winit-self
--endif
-+#endif
- 
- # Are we running on a Windows OS?
- ifeq ($(OS), Windows_NT)
-@@ -182,7 +182,7 @@ INSTALL_DATA    = $(INSTALL) -m 0644
- OBJS += jdupes.o jody_paths.o jody_sort.o jody_win_unicode.o jody_strtoepoch.o string_malloc.o oom.o
- OBJS += jody_cacheinfo.o
- OBJS += act_deletefiles.o act_linkfiles.o act_printmatches.o act_summarize.o act_printjson.o
--OBJS += xxhash.o jody_hash.o
-+OBJS += jody_hash.o
- OBJS += $(ADDITIONAL_OBJECTS)
- 
- all: $(PROGRAM_NAME)
diff --git a/sysutils/jdupes/pkg-message b/sysutils/jdupes/pkg-message
index 56b07c7dafc9..0ea4e9cb4aa0 100644
--- a/sysutils/jdupes/pkg-message
+++ b/sysutils/jdupes/pkg-message
@@ -6,4 +6,11 @@ WARNING: jdupes -X/--extfilter size filtering is now INCLUSIVE instead
 of EXCLUSIVE.  Please see "jdupes -X help" for details.
 EOM
 }
+{ type: upgrade
+  maximum_version: "1.25.3"
+  message: <<EOM
+WARNING: jdupes -C/--chunk-size now uses KiB instead of bytes.
+Please update any scripts using this flag.
+EOM
+}
 ]