git: 713a610437d1 - main - devel/comlin: New port: Small self-contained alternative to readline and libedit

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sun, 11 Aug 2024 02:58:27 UTC
The branch main has been updated by yuri:

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

commit 713a610437d168a3224dd5f4928de9e0705e20ed
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2024-08-11 02:56:11 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2024-08-11 02:58:24 +0000

    devel/comlin: New port: Small self-contained alternative to readline and libedit
    
    PR:             280602
    Reported by:    Daniel Engberg <diizzy@FreeBSD.org>
---
 devel/Makefile                       |  1 +
 devel/comlin/Makefile                | 27 +++++++++++++++++++++++++++
 devel/comlin/distinfo                |  3 +++
 devel/comlin/files/patch-meson.build | 21 +++++++++++++++++++++
 devel/comlin/pkg-descr               | 11 +++++++++++
 5 files changed, 63 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 7641d67b405b..87d1846b8477 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -454,6 +454,7 @@
     SUBDIR += color
     SUBDIR += colorgcc
     SUBDIR += colormake
+    SUBDIR += comlin
     SUBDIR += commit-patch
     SUBDIR += commitizen
     SUBDIR += commoncpp
diff --git a/devel/comlin/Makefile b/devel/comlin/Makefile
new file mode 100644
index 000000000000..61b1fda74c26
--- /dev/null
+++ b/devel/comlin/Makefile
@@ -0,0 +1,27 @@
+PORTNAME=	comlin # fork of github.com/antirez/linenoise (port devel/linenoise)
+DISTVERSION=	g20240315
+CATEGORIES=	devel
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Small self-contained alternative to readline and libedit
+WWW=		https://github.com/drobilla/comlin
+
+LICENSE=	BSD2CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		meson
+USE_LDCONFIG=	yes
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	drobilla
+GH_TAGNAME=	4d13650
+
+MESON_ARGS=	-Ddocs=disabled
+
+PLIST_FILES=	include/comlin.h \
+		lib/libcomlin.so \
+		lib/libcomlin.so.0 \
+		lib/libcomlin.so.0.0.1 \
+		libdata/pkgconfig/comlin.pc
+
+.include <bsd.port.mk>
diff --git a/devel/comlin/distinfo b/devel/comlin/distinfo
new file mode 100644
index 000000000000..b442c2e25db6
--- /dev/null
+++ b/devel/comlin/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1723344871
+SHA256 (drobilla-comlin-g20240315-4d13650_GH0.tar.gz) = 6d570794d707db5f317ac979f83ce90f3eeeb8b3815cc0751ca91ff0557d08af
+SIZE (drobilla-comlin-g20240315-4d13650_GH0.tar.gz) = 27762
diff --git a/devel/comlin/files/patch-meson.build b/devel/comlin/files/patch-meson.build
new file mode 100644
index 000000000000..134976df3902
--- /dev/null
+++ b/devel/comlin/files/patch-meson.build
@@ -0,0 +1,21 @@
+--- meson.build.orig	2024-03-15 21:01:28 UTC
++++ meson.build
+@@ -17,8 +17,7 @@ major_version = meson.project_version().split('.')[0]
+ comlin_src_root = meson.current_source_dir()
+ comlin_build_root = meson.current_build_dir()
+ major_version = meson.project_version().split('.')[0]
+-version_suffix = '-@0@'.format(major_version)
+-versioned_name = 'comlin' + version_suffix
++versioned_name = 'comlin'
+ 
+ #######################
+ # Compilers and Flags #
+@@ -124,7 +123,7 @@ meson.override_dependency(versioned_name, comlin_dep)
+ meson.override_dependency(versioned_name, comlin_dep)
+ 
+ # Install header to a versioned include directory
+-install_headers(c_headers, subdir: versioned_name / 'comlin')
++install_headers(c_headers)
+ 
+ #########
+ # Tests #
diff --git a/devel/comlin/pkg-descr b/devel/comlin/pkg-descr
new file mode 100644
index 000000000000..d26e37a923e5
--- /dev/null
+++ b/devel/comlin/pkg-descr
@@ -0,0 +1,11 @@
+comlin is a minimal, zero-config, BSD licensed, readline replacement used
+in Redis, MongoDB, Android and many other projects.
+
+Features:
+* Single and multi line editing mode with the usual key bindings implemented.
+* History handling.
+* Completion.
+* Hints (suggestions at the right of the prompt as you type).
+* Multiplexing mode, with prompt hiding/restoring for asynchronous output.
+* About ~850 lines (comments and spaces excluded) of BSD license source code.
+* Only uses a subset of VT100 escapes (ANSI.SYS compatible).