13 Commits

Author SHA1 Message Date
Joachim Nilsson
119db55bf2 Bump version for v1.15.3 bug fix release
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-09-07 01:26:31 +02:00
Joachim Nilsson
2542f21ff1 Add support for building .deb packages
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-09-07 01:25:47 +02:00
Joachim Nilsson
36663d6acf Run distcheck in release target, verifies distribution files
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-09-07 01:25:25 +02:00
Joachim Nilsson
866f25ce10 Update ChangeLog(s) for v1.15.3 bug fix release
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-09-07 01:25:01 +02:00
Joachim Nilsson
01f684ea19 debian/changelog: Add missing releases
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-09-07 01:24:38 +02:00
Joachim Nilsson
dd0c1dc2a4 debian/: Simplify rules file, greatly, add multi-arch support
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-09-07 01:22:46 +02:00
Joachim Nilsson
30e33b74fb Remove old compat symlinks, keep new Markdown versions
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-09-07 01:22:31 +02:00
Joachim Nilsson
b8c6a5b1e2 configure: Refactor other enable/disable checks like --enable-termcap
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-03-30 00:36:21 +02:00
Joachim Nilsson
ee70c8339c Followup to #7: Check also for terminfo, requested by @rofl0r
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-03-30 00:35:13 +02:00
Joachim Nilsson
16c96eda10 Fix #7: Fix configure --enable-termcap
Improper handling of AC_ARG_ENABLE() causes the configure script to
always enable CONFIG_USE_TERMCAP.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-03-29 22:06:56 +02:00
Joachim Nilsson
0d76f006b5 TODO: Ideas for how to use editline in an event loop
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-03-02 23:36:40 +01:00
Joachim Nilsson
4d93e85af7 debian/.gitignore: New file, ignore built files
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-01-21 19:37:13 +01:00
Joachim Nilsson
387a8b31ba .gitignore: Update, add *.pc file
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2017-01-21 19:36:44 +01:00
16 changed files with 130 additions and 94 deletions

1
.gitignore vendored
View File

@@ -2,6 +2,7 @@
*/.libs/ */.libs/
*.lo *.lo
*.o *.o
*.pc
.deps .deps
Makefile Makefile
Makefile.in Makefile.in

View File

@@ -1 +0,0 @@
ChangeLog.md

View File

@@ -4,6 +4,21 @@ Change Log
All notable changes to the project are documented in this file. All notable changes to the project are documented in this file.
[1.15.3][] - 2017-09-07
-----------------------
Bug fix release.
### Changes
- Refactor all enable/disable configure options, same problem as in #7
### Fixes
- Fix #7: `--enable-termcap` configure option does not work, wrongly
enables termcap by default.
Also, check for termino as well, when `--enable-termcap` is selected.
[1.15.2][] - 2016-06-06 [1.15.2][] - 2016-06-06
----------------------- -----------------------

View File

View File

@@ -1,9 +1,13 @@
pkgconfigdir = $(libdir)/pkgconfig pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libeditline.pc pkgconfig_DATA = libeditline.pc
doc_DATA = README LICENSE CHANGELOG doc_DATA = README.md LICENSE
EXTRA_DIST = LICENSE CHANGELOG INSTALL EXTRA_DIST = README.md LICENSE ChangeLog.md INSTALL.md
SUBDIRS = src include man examples SUBDIRS = src include man examples
## Generate .deb package
package build-deb:
@dpkg-buildpackage -uc -us -B
## Generate MD5 checksum file ## Generate MD5 checksum file
MD5 = md5sum MD5 = md5sum
md5-dist: md5-dist:
@@ -30,7 +34,7 @@ release-hook:
fi fi
## Target to run when building a release ## Target to run when building a release
release: dist release-hook md5-dist release: distcheck release-hook md5-dist
@for file in $(DIST_ARCHIVES); do \ @for file in $(DIST_ARCHIVES); do \
printf "$$file \tDistribution tarball\n"; \ printf "$$file \tDistribution tarball\n"; \
printf "$$file.md5\t"; cat $$file.md5 | cut -f1 -d' '; \ printf "$$file.md5\t"; cat $$file.md5 | cut -f1 -d' '; \

1
README
View File

@@ -1 +0,0 @@
README.md

1
TODO
View File

@@ -1 +0,0 @@
TODO.md

21
TODO.md
View File

@@ -2,12 +2,29 @@ TODO
==== ====
Issues in need of work. Mostly compatibility with GNU readline, BSD Issues in need of work. Mostly compatibility with GNU readline, BSD
[libedit], and usability improvements. [libedit][], and usability improvements.
Remember, the general idea is to keep this library editline small with Remember, the general idea is to keep this library editline small with
no external dependencies, except a C library. no external dependencies, except a C library.
Add support for running in an event loop
----------------------------------------
To be able to use libeditline from within an event loop like [libuEv][]
there are few things to do:
- Refactor `editinput()` and `readline()`. Break out the active code
used for set up and teardown, and the character input logic
- Add bare necessities for external callbacks so that an event loop
that monitors `el_infd` has something to call on events
- GNU Readline has its [alternate interface][gnu] which we should
probably implement
Example usecase of the GNU alternate interface can be found here:
http://www.mcld.co.uk/blog/blog.php?274
Verify custom completion handlers Verify custom completion handlers
--------------------------------- ---------------------------------
@@ -46,4 +63,6 @@ Other minor TODO's
http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
[gnu]: http://www.delorie.com/gnu/docs/readline/rlman_41.html#IDX288
[libuEv]: https://github.com/troglobit/libuev/
[libedit]: http://www.thrysoee.dk/editline/ [libedit]: http://www.thrysoee.dk/editline/

View File

@@ -1,4 +1,4 @@
AC_INIT(editline, 1.15.2, https://github.com/troglobit/editline/issues) AC_INIT(editline, 1.15.3, https://github.com/troglobit/editline/issues)
AM_INIT_AUTOMAKE([1.11 foreign no-dist-gzip dist-xz]) AM_INIT_AUTOMAKE([1.11 foreign no-dist-gzip dist-xz])
AM_SILENT_RULES([yes]) AM_SILENT_RULES([yes])
@@ -35,41 +35,62 @@ AC_PROG_GCC_TRADITIONAL
AC_FUNC_STAT AC_FUNC_STAT
AC_CHECK_FUNCS([strchr strdup strrchr tcgetattr perror]) AC_CHECK_FUNCS([strchr strdup strrchr tcgetattr perror])
#
# Available features
#
AC_ARG_ENABLE(unique-history, AC_ARG_ENABLE(unique-history,
[AS_HELP_STRING([--disable-unique-history], [AS_HELP_STRING([--disable-unique-history],
[Disable uniqify of scrollback. Default: duplicate entries are ignored. Use this to save dupes.])], [Disable uniqify of scrollback. Default: duplicate entries are ignored. Use this to save dupes.])])
, AC_DEFINE(CONFIG_UNIQUE_HISTORY, 1, [Define to skip duplicate lines in the scrollback history.]))
AC_ARG_ENABLE(default-complete, AC_ARG_ENABLE(default-complete,
[AS_HELP_STRING([--disable-default-complete], [Disable default (filename) completion handler.])], [AS_HELP_STRING([--disable-default-complete], [Disable default (filename) completion handler.])])
, AC_DEFINE(CONFIG_DEFAULT_COMPLETE, 1, [Define to enable the default completion handler.]))
AC_ARG_ENABLE(arrow-keys, AC_ARG_ENABLE(arrow-keys,
[AS_HELP_STRING([--disable-arrow-keys], [Disable ANSI arrow keys.])], [AS_HELP_STRING([--disable-arrow-keys], [Disable ANSI arrow keys.])])
, AC_DEFINE(CONFIG_ANSI_ARROWS, 1, [Define to include ANSI arrow keys support.]))
AC_ARG_ENABLE(eof, AC_ARG_ENABLE(eof,
[AS_HELP_STRING([--disable-eof], [Disable default EOF (Ctrl-D) behavior.])], [AS_HELP_STRING([--disable-eof], [Disable default EOF (Ctrl-D) behavior.])])
, AC_DEFINE([CONFIG_EOF], 1, [Define to enable EOF (Ctrl-C) key.]))
AC_ARG_ENABLE(sigint, AC_ARG_ENABLE(sigint,
[AS_HELP_STRING([--disable-sigint], [Disable default SIGINT (Ctrl-C) behavior.])], [AS_HELP_STRING([--disable-sigint], [Disable default SIGINT (Ctrl-C) behavior.])])
, AC_DEFINE([CONFIG_SIGINT], 1, [Define to enable SIGINT (Ctrl-C) key.]))
AC_ARG_ENABLE(sigstop, AC_ARG_ENABLE(sigstop,
[AS_HELP_STRING([--enable-sigstop], [Enable SIGSTOP (Ctrl-Z) behavior.])], [AS_HELP_STRING([--enable-sigstop], [Enable SIGSTOP (Ctrl-Z) behavior.])])
AC_DEFINE([CONFIG_SIGSTOP], 1, [Define to enable SIGSTOP (Ctrl-Z) key.]))
AC_ARG_ENABLE(terminal-bell, AC_ARG_ENABLE(terminal-bell,
[AS_HELP_STRING([--enable-terminal-bell], [Enable terminal bell on completion.])], [AS_HELP_STRING([--enable-terminal-bell], [Enable terminal bell on completion.])])
AC_DEFINE([CONFIG_TERMINAL_BELL], 1, [Define to enable terminal bell on completion.]))
AC_ARG_ENABLE(termcap, AC_ARG_ENABLE(termcap,
[AS_HELP_STRING([--enable-termcap], [Use termcap library to query terminal size.])], AS_HELP_STRING([--enable-termcap], [Use termcap library to query terminal size.]))
AC_DEFINE([CONFIG_USE_TERMCAP], 1, [Define to use the termcap library for terminal size.]))
#
# Check what features have been enabled
#
AS_IF([test "x$enable_unique_history" != "xno"],
AC_DEFINE(CONFIG_UNIQUE_HISTORY, 1, [Define to skip duplicate lines in the scrollback history.]))
AS_IF([test "x$enable_default_complete" != "xno"],
AC_DEFINE(CONFIG_DEFAULT_COMPLETE, 1, [Define to enable the default completion handler.]))
AS_IF([test "x$enable_terminal_bell" != "xno"],
AC_DEFINE(CONFIG_ANSI_ARROWS, 1, [Define to include ANSI arrow keys support.]))
AS_IF([test "x$enable_terminal_bell" != "xno"],
AC_DEFINE(CONFIG_EOF, 1, [Define to enable EOF (Ctrl-C) key.]))
AS_IF([test "x$enable_sigint" != "xno"],
AC_DEFINE(CONFIG_SIGINT, 1, [Define to enable SIGINT (Ctrl-C) key.]))
AS_IF([test "x$enable_sigstop" = "xyes"],
AC_DEFINE(CONFIG_SIGSTOP, 1, [Define to enable SIGSTOP (Ctrl-Z) key.]))
AS_IF([test "x$enable_terminal_bell" = "xyes"],
AC_DEFINE(CONFIG_TERMINAL_BELL, 1, [Define to enable terminal bell on completion.]))
# Check for a termcap compatible library if enabled # Check for a termcap compatible library if enabled
AS_IF([test "$enable_termcap" != no], AS_IF([test "x$enable_termcap" = "xyes"],
AC_DEFINE(CONFIG_USE_TERMCAP, 1, [Define to use the termcap library for terminal size.])
AC_CHECK_LIB(terminfo, tgetent, , [
AC_CHECK_LIB(termcap, tgetent, , [ AC_CHECK_LIB(termcap, tgetent, , [
AC_CHECK_LIB(tinfo, tgetent, , [ AC_CHECK_LIB(tinfo, tgetent, , [
AC_CHECK_LIB(curses, tgetent, , [ AC_CHECK_LIB(curses, tgetent, , [
@@ -77,6 +98,8 @@ AS_IF([test "$enable_termcap" != no],
AC_MSG_ERROR([Cannot find a termcap capable library, try installing Ncurses.])]) AC_MSG_ERROR([Cannot find a termcap capable library, try installing Ncurses.])])
]) ])
]) ])
])
])) ]))
# Generate all files
AC_OUTPUT AC_OUTPUT

5
debian/.gitignore vendored Normal file
View File

@@ -0,0 +1,5 @@
*.log
*.debhelper
*.substvars
files
tmp/*

24
debian/changelog vendored
View File

@@ -1,3 +1,27 @@
editline (1.15.3-1) unstable; urgency=medium
* New upstream bug fix release, v1.15.3
-- Joachim Nilsson <troglobit@gmail.com> Thu, 07 Sep 2017 01:24:19 +0200
editline (1.15.2-1) unstable; urgency=medium
* New upstream bug fix release, v1.15.2
-- Joachim Nilsson <troglobit@gmail.com> Wed, 06 Jun 2016 20:04:35 +0200
editline (1.15.1-1) unstable; urgency=medium
* New upstream bug fix release, v1.15.1
-- Joachim Nilsson <troglobit@gmail.com> Wed, 16 Nov 2015 21:17:17 +0200
editline (1.15.0-1) unstable; urgency=medium
* New upstream release, v1.15.0
-- Joachim Nilsson <troglobit@gmail.com> Wed, 10 Sep 2015 13:26:03 +0200
editline (1.14.2-1) unstable; urgency=low editline (1.14.2-1) unstable; urgency=low
* Minor bugfix release: * Minor bugfix release:

2
debian/compat vendored
View File

@@ -1 +1 @@
5 9

2
debian/docs vendored
View File

@@ -1 +1 @@
README README.md

View File

@@ -1,4 +1,3 @@
usr/include usr/include/*.h
usr/lib/libeditline*.*a usr/lib/*/libeditline*.*a
usr/lib/libeditline*.so usr/share/man/man3/*
usr/share/man/man3

View File

@@ -1 +1 @@
usr/lib/libeditline*.so.* usr/lib/*/libeditline*.so*

55
debian/rules vendored
View File

@@ -1,59 +1,8 @@
#!/usr/bin/make -f #!/usr/bin/make -f
# debian/rules for libeditline
# GNU copyright 1997 to 1999 by Joey Hess.
# Uncomment this to turn on verbose mode. # Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1 #export DH_VERBOSE=1
# shared library versions, option 1 %:
version=0.0.0 dh $@ --with autoreconf
major=0
configure: configure-stamp
configure-stamp:
dh_testdir
dh_auto_configure
touch configure-stamp
build: build-stamp
build-stamp:
dh_testdir
dh_auto_configure
dh_auto_build
touch $@
clean:
dh_testdir
dh_auto_clean
dh_clean
@rm -f build-stamp configure-stamp
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
dh_auto_install
binary-indep: install
# build libeditline${major} package by moving files from editline-dev
binary-arch: install
dh_testdir
dh_testroot
dh_auto_install
dh_install --sourcedir=debian/tmp
dh_installdocs
dh_installchangelogs
dh_strip
dh_compress
dh_fixperms
dh_makeshlibs
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install