git: d4bdd5d393ab - main - archivers/lzsa: add new port

From: Max Brazhnikov <makc_at_FreeBSD.org>
Date: Mon, 30 Oct 2023 14:20:19 UTC
The branch main has been updated by makc:

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

commit d4bdd5d393abe37d58b0ee9c5a673e82fb48674d
Author:     Max Brazhnikov <makc@FreeBSD.org>
AuthorDate: 2023-10-30 14:18:39 +0000
Commit:     Max Brazhnikov <makc@FreeBSD.org>
CommitDate: 2023-10-30 14:18:39 +0000

    archivers/lzsa: add new port
    
    LZSA is a collection of byte-aligned compression formats that are
    engineered for very fast decompression on 8-bit systems.
    
    WWW: https://github.com/emmanuel-marty/lzsa
---
 archivers/Makefile                  |  1 +
 archivers/lzsa/Makefile             | 33 +++++++++++++++++++++++++++++++++
 archivers/lzsa/distinfo             |  3 +++
 archivers/lzsa/files/patch-Makefile | 10 ++++++++++
 archivers/lzsa/pkg-descr            |  2 ++
 5 files changed, 49 insertions(+)

diff --git a/archivers/Makefile b/archivers/Makefile
index 934ec6a3fe58..410d959e53a7 100644
--- a/archivers/Makefile
+++ b/archivers/Makefile
@@ -87,6 +87,7 @@
     SUBDIR += lzmalib
     SUBDIR += lzo2
     SUBDIR += lzop
+    SUBDIR += lzsa
     SUBDIR += makeself
     SUBDIR += mar
     SUBDIR += maxcso
diff --git a/archivers/lzsa/Makefile b/archivers/lzsa/Makefile
new file mode 100644
index 000000000000..403b36559ddc
--- /dev/null
+++ b/archivers/lzsa/Makefile
@@ -0,0 +1,33 @@
+PORTNAME=	lzsa
+DISTVERSION=	1.4.1
+CATEGORIES=	archivers emulators
+
+MAINTAINER=	makc@FreeBSD.org
+COMMENT=	LZSA compression utility
+
+WWW=		https://github.com/emmanuel-marty/lzsa
+
+LICENSE=	CC0-1.0 ZLIB
+LICENSE_COMB=	multi
+LICENSE_FILE_CC0-1.0=	${WRKSRC}/LICENSE.cc0.md
+LICENSE_FILE_ZLIB=	${WRKSRC}/LICENSE.zlib.md
+
+USES=		gmake
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	emmanuel-marty
+
+PLIST_FILES=	bin/lzsa
+PORTDOCS=	BlockFormat_LZSA1.md BlockFormat_LZSA2.md README.md \
+		StreamFormat.md pareto_graph.png
+
+OPTIONS_DEFINE=	DOCS
+
+do-install:
+	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/lzsa ${STAGEDIR}/${PREFIX}/bin
+
+do-install-DOCS-on:
+	${MKDIR} ${STAGEDIR}${DOCSDIR} && \
+	${INSTALL_DATA} ${PORTDOCS:C,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/archivers/lzsa/distinfo b/archivers/lzsa/distinfo
new file mode 100644
index 000000000000..b997f326fe0a
--- /dev/null
+++ b/archivers/lzsa/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1698576531
+SHA256 (emmanuel-marty-lzsa-1.4.1_GH0.tar.gz) = c65ca1e6a43696f4ca5edc2c98229fba1044806bd21bc2a8ce4b867dc9cfc45c
+SIZE (emmanuel-marty-lzsa-1.4.1_GH0.tar.gz) = 152571
diff --git a/archivers/lzsa/files/patch-Makefile b/archivers/lzsa/files/patch-Makefile
new file mode 100644
index 000000000000..87b6d688543d
--- /dev/null
+++ b/archivers/lzsa/files/patch-Makefile
@@ -0,0 +1,10 @@
+--- Makefile.orig	2023-02-27 17:23:00 UTC
++++ Makefile
+@@ -1,5 +1,5 @@
+-CC=clang
+-CFLAGS=-O3 -g -fomit-frame-pointer -Isrc/libdivsufsort/include -Isrc
++CC?= clang
++CFLAGS+= -Isrc/libdivsufsort/include -Isrc
+ OBJDIR=obj
+ LDFLAGS=
+ 
diff --git a/archivers/lzsa/pkg-descr b/archivers/lzsa/pkg-descr
new file mode 100644
index 000000000000..3219b670a249
--- /dev/null
+++ b/archivers/lzsa/pkg-descr
@@ -0,0 +1,2 @@
+LZSA is a collection of byte-aligned compression formats that are specifically
+engineered for very fast decompression on 8-bit systems.