aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2023-07-16 01:13:44 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2023-07-16 01:15:20 +0000
commit54df5f83c498810f0ee0db26645304efc9c41fcb (patch)
tree7f7ece0945fe1478506ee20325755450e8683d1d
parent6da4a5be87954cbd55321091de1cc1fdbe4d9241 (diff)
devel/linenoise: New port: Small self-contained alternative to readline and libedit
devel/linenoise-ng exists, but its repository was last updated in 2017 and is archived now. devel/linenoise was last updated in 2023 and it looks like it is actively maintained.
-rw-r--r--devel/Makefile1
-rw-r--r--devel/linenoise/Makefile34
-rw-r--r--devel/linenoise/distinfo3
-rw-r--r--devel/linenoise/pkg-descr11
4 files changed, 49 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 6c0843c1c908..b8d370300ce5 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1451,6 +1451,7 @@
SUBDIR += libzookeeper
SUBDIR += libzvbi
SUBDIR += lightning
+ SUBDIR += linenoise
SUBDIR += linenoise-ng
SUBDIR += linux-c7-dbus-libs
SUBDIR += linux-c7-devtools
diff --git a/devel/linenoise/Makefile b/devel/linenoise/Makefile
new file mode 100644
index 000000000000..4d6670848bfe
--- /dev/null
+++ b/devel/linenoise/Makefile
@@ -0,0 +1,34 @@
+PORTNAME= linenoise
+DISTVERSION= 1.0-34
+DISTVERSIONSUFFIX= -g93b2db9
+CATEGORIES= devel
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Small self-contained alternative to readline and libedit
+WWW= https://github.com/antirez/linenoise
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USE_LDCONFIG= yes
+
+USE_GITHUB= yes
+GH_ACCOUNT= antirez
+
+PLIST_FILES= include/linenoise.h \
+ lib/liblinenoise.so
+
+do-build:
+ @cd ${WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} ${CC} ${CFLAGS} -shared -fPIC linenoise.c -o liblinenoise.so
+
+do-install:
+ ${INSTALL_DATA} ${WRKSRC}/linenoise.h ${STAGEDIR}${PREFIX}/include
+ ${INSTALL_LIB} ${WRKSRC}/liblinenoise.so ${STAGEDIR}${PREFIX}/lib
+
+do-test:
+ @cd ${WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} ${MAKE} && \
+ ./linenoise_example
+
+.include <bsd.port.mk>
diff --git a/devel/linenoise/distinfo b/devel/linenoise/distinfo
new file mode 100644
index 000000000000..3fda74772567
--- /dev/null
+++ b/devel/linenoise/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1689442008
+SHA256 (antirez-linenoise-1.0-34-g93b2db9_GH0.tar.gz) = cf2c6ed16585313530798294086260e3b8fe67097eb66ca39c4b8e740d128b69
+SIZE (antirez-linenoise-1.0-34-g93b2db9_GH0.tar.gz) = 21446
diff --git a/devel/linenoise/pkg-descr b/devel/linenoise/pkg-descr
new file mode 100644
index 000000000000..74d9aa59cdbe
--- /dev/null
+++ b/devel/linenoise/pkg-descr
@@ -0,0 +1,11 @@
+linenoise 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).