git: 05d5afabdd81 - main - archivers/lzma: update to 26.0.0

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Sun, 15 Mar 2026 15:31:03 UTC
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=05d5afabdd81e8656edd4c0da8e2bae0ac3a3e71

commit 05d5afabdd81e8656edd4c0da8e2bae0ac3a3e71
Author:     Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2026-03-12 14:32:18 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2026-03-15 15:28:57 +0000

    archivers/lzma: update to 26.0.0
    
     - assume maintainership
     - enable assembly use
       - for x86, assemble with new port jwasm
       - I ported asmc for this purpose originally, but the assembler
         crashes on i386, while jwasm is fine (no AES needed for lzma, so
         asmc doesn't confer a benefit over jwasm in any case)
     - remove WITH_LZMA_PROB32 and WITH_LZMA_SIZE_OPT.  Reading the code,
       there seems to be confusion over what the corresponding CFLAGS are
       called between C and assembly code.
     - remove now obsolete patches
    
    Changelog: https://www.7-zip.org/sdk.html
---
 archivers/lzma/Makefile | 42 ++++++++++++++++--------------------------
 archivers/lzma/distinfo |  6 +++---
 2 files changed, 19 insertions(+), 29 deletions(-)

diff --git a/archivers/lzma/Makefile b/archivers/lzma/Makefile
index adb101b564a6..70c405543842 100644
--- a/archivers/lzma/Makefile
+++ b/archivers/lzma/Makefile
@@ -1,33 +1,27 @@
 PORTNAME=	lzma
-PORTVERSION=	19.00
+PORTVERSION=	26.00
 CATEGORIES=	archivers
 MASTER_SITES=	SF/sevenzip/LZMA%20SDK/
 DISTNAME=	lzma${PORTVERSION:S/.//g}
 
-MAINTAINER=	ports@FreeBSD.org
+MAINTAINER=	fuz@FreeBSD.org
 COMMENT=	High-ratio LZMA compressor
 WWW=		https://www.7-zip.org/sdk.html
 
 LICENSE=	PD
 LICENSE_TEXT_PD=	LZMA SDK is written and placed in the public \
-		domain by Igor PavlovAnyone. Anyone is free to copy, modify, \
+		domain by Igor Pavlov Anyone. Anyone is free to copy, modify, \
 		publish, use, compile, sell, or distribute the original LZMA \
 		SDK code, either in source code form or as a compiled binary, \
 		for any purpose, commercial or non-commercial, and by any means.
 
+BUILD_DEPENDS_amd64=	jwasm:devel/jwasm
+BUILD_DEPENDS_i386=	jwasm:devel/jwasm
+BUILD_DEPENDS=	${BUILD_DEPENDS_${ARCH}}
 USES=		7z dos2unix gmake
 
+CPE_VENDOR=	7-zip
 MAKEFILE=	makefile.gcc
-
-.ifdef (WITH_LZMA_PROB32)
-#increase the speed of decoding on some 32-bit CPUs, at the expense of doubled
-#memory usage for CLzmaDec::probs
-CFLAGS+=	-D_LZMA_PROB32
-.endif
-.ifdef (WITH_LZMA_SIZE_OPT)
-#enable some optimizations in LZMA Decoder to get smaller executable code
-CFLAGS+=	-D_LZMA_SIZE_OPT
-.endif
 CONFLICTS=	lzmautils xz
 
 NO_WRKSUBDIR=	yes
@@ -35,28 +29,24 @@ BUILD_WRKSRC=	${WRKSRC}/CPP/7zip/Bundles/LzmaCon
 
 PLIST_FILES=	bin/${PORTNAME}
 
-PORTDOCS=	7zC.txt 7zFormat.txt Methods.txt lzma-history.txt lzma.txt
+PORTDOCS=	7zC.txt 7zFormat.txt Methods.txt lzma-history.txt lzma-specification.txt lzma.txt
+MAKE_ARGS+=	${MAKE_ARGS_${ARCH}} \
+		LOCAL_FLAGS="${CFLAGS}" \
+		CFLAGS_WARN_WALL="-Wall -Wextra"
+MAKE_ARGS_aarch64=	USE_ASM=1 IS_ARM64=1
+MAKE_ARGS_amd64=	USE_ASM=1 IS_X64=1 USE_JWASM=1
+MAKE_ARGS_i386=		USE_ASM=1 IS_X86=1 USE_JWASM=1
 
 OPTIONS_DEFINE=	DOCS
 
-post-patch:
-	@${REINPLACE_CMD} -e '/bool Open(LPCTSTR fileName, DWORD creationDisposition)/,/}/d'\
-		${WRKSRC}/CPP/7zip/Common/FileStreams.h
-	@${REINPLACE_CMD} -e 's|malloc\.h|stdlib.h|g' \
-		${WRKSRC}/CPP/7zip/UI/Common/Bench.cpp \
-		${WRKSRC}/CPP/Common/MyWindows.cpp
-	@${REINPLACE_CMD} -e \
-		'/^CXX/d;s|CXX_C|CC|;s|^CFLAGS =|CFLAGS +=|;s|-o|${CFLAGS} -o|'\
-			${BUILD_WRKSRC}/${MAKEFILE}
-
 do-install:
-	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
+	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/_o/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
 
 do-install-DOCS-on:
 	@${INSTALL} -d ${STAGEDIR}${DOCSDIR}
 	(cd ${WRKSRC}/DOC/&&${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR})
 
 do-test:
-	${BUILD_WRKSRC}/${PORTNAME} b
+	${BUILD_WRKSRC}/_o/${PORTNAME} b
 
 .include <bsd.port.mk>
diff --git a/archivers/lzma/distinfo b/archivers/lzma/distinfo
index b364ccb10501..ed7a3d80360f 100644
--- a/archivers/lzma/distinfo
+++ b/archivers/lzma/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1569906483
-SHA256 (lzma1900.7z) = 00f569e624b3d9ed89cf8d40136662c4c5207eaceb92a70b1044c77f84234bad
-SIZE (lzma1900.7z) = 1082692
+TIMESTAMP = 1773323480
+SHA256 (lzma2600.7z) = 6b7d0c8ed1a67112d5337e4532ecdcb9fd2eab8b1f6bb54199f9b6a627b506cc
+SIZE (lzma2600.7z) = 1774522