diff --git a/DEVELOPERS b/DEVELOPERS index 2d3d2cdda8..c18ae46054 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2122,6 +2122,9 @@ F: board/technologic/ts4900/ F: configs/ts4900_defconfig F: package/ts4900-fpga/ +N: Matt Silva +F: package/rlwrap/ + N: Mauro Condarelli F: package/mc/ F: package/python-autobahn/ diff --git a/package/Config.in b/package/Config.in index 7fc383da83..97f590e2b7 100644 --- a/package/Config.in +++ b/package/Config.in @@ -2690,6 +2690,7 @@ comment "Utilities" source "package/pinentry/Config.in" source "package/qprint/Config.in" source "package/ranger/Config.in" + source "package/rlwrap/Config.in" source "package/rtty/Config.in" source "package/screen/Config.in" source "package/screenfetch/Config.in" diff --git a/package/rlwrap/Config.in b/package/rlwrap/Config.in new file mode 100644 index 0000000000..0cb3e33fa7 --- /dev/null +++ b/package/rlwrap/Config.in @@ -0,0 +1,42 @@ +config BR2_PACKAGE_RLWRAP + bool "rlwrap" + select BR2_PACKAGE_READLINE + help + rlwrap is a 'readline wrapper', a small utility that uses the + GNU Readline library to allow the editing of keyboard input + for any command. + + https://github.com/hanslub42/rlwrap + +if BR2_PACKAGE_RLWRAP + +config BR2_PACKAGE_RLWRAP_SPY_ON_READLINE + bool "spy on readline" + default y + help + If we want to keep the display tidy when re-sizing the + terminal window or printing multi-line prompts, we have to + know whether or not readline is in horizontal-scroll-mode + (i.e. wheter long lines are scrolled or wrapped). At present, + this involves a look at a private readline variable - if you + feel guilty about that, disable this option + +config BR2_PACKAGE_RLWRAP_HOMEGROWN_REDISPLAY + bool "homegrown redisplay" + help + Some people report double echoing of user input. Enabling this + option will cure the problem - though the display will then + flicker over slow connections (cf. BUGS) + +config BR2_PACKAGE_RLWRAP_MULTIBYTE_AWARE + bool "multibyte awareness" + default y + depends on BR2_USE_WCHAR + help + Prevent rlwrap from seeing multibyte characters as multiple + characters + +comment "rlwrap multibyte awareness needs a toolchain w/ wchar" + depends on !BR2_USE_WCHAR + +endif diff --git a/package/rlwrap/rlwrap.hash b/package/rlwrap/rlwrap.hash new file mode 100644 index 0000000000..b7005e860e --- /dev/null +++ b/package/rlwrap/rlwrap.hash @@ -0,0 +1,6 @@ +# from https://github.com/hanslub42/rlwrap/releases/tag/0.46.1 +sha256 2711986a1248f6ac59e2aecf5586205835970040d300a42b4bf8014397e73e37 rlwrap-0.46.1.tar.gz + +# license files, locally calculated +sha256 656d25fab58016ac6ac11bb126709e4f860ea063d11795232eb55987172f78ff AUTHORS +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/rlwrap/rlwrap.mk b/package/rlwrap/rlwrap.mk new file mode 100644 index 0000000000..e3973e841b --- /dev/null +++ b/package/rlwrap/rlwrap.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# rlwrap +# +################################################################################ + +RLWRAP_VERSION = 0.46.1 +RLWRAP_SITE = https://github.com/hanslub42/rlwrap/releases/download/$(RLWRAP_VERSION) +RLWRAP_LICENSE = GPL-2.0+ +RLWRAP_LICENSE_FILES = AUTHORS COPYING + +RLWRAP_DEPENDENCIES = readline + +ifeq ($(BR2_PACKAGE_RLWRAP_SPY_ON_READLINE),y) +RLWRAP_CONF_OPTS += --enable-spy-on-readline +else +RLWRAP_CONF_OPTS += --disable-spy-on-readline +endif + +ifeq ($(BR2_PACKAGE_RLWRAP_HOMEGROWN_REDISPLAY),y) +RLWRAP_CONF_OPTS += --enable-homegrown-redisplay +else +RLWRAP_CONF_OPTS += --disable-homegrown-redisplay +endif + +ifeq ($(BR2_PACKAGE_RLWRAP_MULTIBYTE_AWARE),y) +RLWRAP_CONF_OPTS += --enable-multibyte-aware +else +RLWRAP_CONF_OPTS += --disable-multibyte-aware +endif + +define RLWRAP_REMOVE_FILTERS + $(RM) -rf $(TARGET_DIR)/usr/share/rlwrap/filters +endef +RLWRAP_POST_INSTALL_TARGET_HOOKS += RLWRAP_REMOVE_FILTERS + +$(eval $(autotools-package))