On Mon, Apr 27, 2020 at 09:26:03AM +0200, Christoph Hellwig wrote: > libreadline has been relicensed to GPLv3 and thus incompatible to > xfsprogs many years ago, and all the distros have dropped or are > in the stages of dropping the last GPLv2 version. As the BSD > licensed libeditline provides the same functionality there is no > need to keep the obsolete libreadline support around. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> Seems reasonable, but did you notice that xfs_io segfaults if you build with libedit and feed stdin garbage/EOF? :) Anyway this is a straightforward removal, so: Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> --D > --- > configure.ac | 7 ------- > db/Makefile | 5 ----- > db/input.c | 26 ++------------------------ > growfs/Makefile | 3 --- > include/builddefs.in | 2 -- > io/Makefile | 4 ---- > libxcmd/Makefile | 5 ----- > libxcmd/input.c | 18 ++---------------- > quota/Makefile | 5 ----- > spaceman/Makefile | 4 ---- > 10 files changed, 4 insertions(+), 75 deletions(-) > > diff --git a/configure.ac b/configure.ac > index c609ff6a..0d1ca43e 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -42,13 +42,6 @@ AC_ARG_ENABLE(blkid, > enable_blkid=yes) > AC_SUBST(enable_blkid) > > -AC_ARG_ENABLE(readline, > -[ --enable-readline=[yes/no] Enable readline command editing [default=no]], > - test $enable_readline = yes && libreadline="-lreadline", > - enable_readline=no) > -AC_SUBST(libreadline) > -AC_SUBST(enable_readline) > - > AC_ARG_ENABLE(editline, > [ --enable-editline=[yes/no] Enable editline command editing [default=no]], > test $enable_editline = yes && libeditline="-ledit", > diff --git a/db/Makefile b/db/Makefile > index ed9f56c2..9bd9bf51 100644 > --- a/db/Makefile > +++ b/db/Makefile > @@ -21,11 +21,6 @@ LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) > LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) $(LIBFROG) > LLDFLAGS += -static-libtool-libs > > -ifeq ($(ENABLE_READLINE),yes) > -LLDLIBS += $(LIBREADLINE) $(LIBTERMCAP) > -CFLAGS += -DENABLE_READLINE > -endif > - > ifeq ($(ENABLE_EDITLINE),yes) > LLDLIBS += $(LIBEDITLINE) $(LIBTERMCAP) > CFLAGS += -DENABLE_EDITLINE > diff --git a/db/input.c b/db/input.c > index 4d6c7376..553025bc 100644 > --- a/db/input.c > +++ b/db/input.c > @@ -13,10 +13,7 @@ > #include "malloc.h" > #include "init.h" > > -#if defined(ENABLE_READLINE) > -# include <readline/history.h> > -# include <readline/readline.h> > -#elif defined(ENABLE_EDITLINE) > +#ifdef ENABLE_EDITLINE > # include <histedit.h> > #endif > > @@ -211,26 +208,7 @@ fetchline_internal(void) > return rval; > } > > -#ifdef ENABLE_READLINE > -char * > -fetchline(void) > -{ > - char *line; > - > - if (inputstacksize == 1) { > - line = readline(get_prompt()); > - if (!line) > - dbprintf("\n"); > - else if (line && *line) { > - add_history(line); > - logprintf("%s", line); > - } > - } else { > - line = fetchline_internal(); > - } > - return line; > -} > -#elif defined(ENABLE_EDITLINE) > +#ifdef ENABLE_EDITLINE > static char *el_get_prompt(EditLine *e) { return get_prompt(); } > char * > fetchline(void) > diff --git a/growfs/Makefile b/growfs/Makefile > index 4104cc0d..a107d348 100644 > --- a/growfs/Makefile > +++ b/growfs/Makefile > @@ -10,9 +10,6 @@ LTCOMMAND = xfs_growfs > CFILES = xfs_growfs.c > > LLDLIBS = $(LIBXFS) $(LIBXCMD) $(LIBFROG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) > -ifeq ($(ENABLE_READLINE),yes) > -LLDLIBS += $(LIBREADLINE) $(LIBTERMCAP) > -endif > > ifeq ($(ENABLE_EDITLINE),yes) > LLDLIBS += $(LIBEDITLINE) $(LIBTERMCAP) > diff --git a/include/builddefs.in b/include/builddefs.in > index 6ed9d295..30b2727a 100644 > --- a/include/builddefs.in > +++ b/include/builddefs.in > @@ -25,7 +25,6 @@ LIBUUID = @libuuid@ > LIBPTHREAD = @libpthread@ > LIBTERMCAP = @libtermcap@ > LIBEDITLINE = @libeditline@ > -LIBREADLINE = @libreadline@ > LIBBLKID = @libblkid@ > LIBDEVMAPPER = @libdevmapper@ > LIBXFS = $(TOPDIR)/libxfs/libxfs.la > @@ -82,7 +81,6 @@ RPM_VERSION = @rpm_version@ > ENABLE_SHARED = @enable_shared@ > ENABLE_GETTEXT = @enable_gettext@ > ENABLE_EDITLINE = @enable_editline@ > -ENABLE_READLINE = @enable_readline@ > ENABLE_BLKID = @enable_blkid@ > ENABLE_SCRUB = @enable_scrub@ > > diff --git a/io/Makefile b/io/Makefile > index 1112605e..71741926 100644 > --- a/io/Makefile > +++ b/io/Makefile > @@ -68,10 +68,6 @@ ifeq ($(HAVE_SYNCFS),yes) > LCFLAGS += -DHAVE_SYNCFS > endif > > -ifeq ($(ENABLE_READLINE),yes) > -LLDLIBS += $(LIBREADLINE) $(LIBTERMCAP) > -endif > - > ifeq ($(ENABLE_EDITLINE),yes) > LLDLIBS += $(LIBEDITLINE) $(LIBTERMCAP) > endif > diff --git a/libxcmd/Makefile b/libxcmd/Makefile > index f9bc1c5c..70e54308 100644 > --- a/libxcmd/Makefile > +++ b/libxcmd/Makefile > @@ -14,11 +14,6 @@ LTLDFLAGS += -static > > CFILES = command.c input.c help.c quit.c > > -ifeq ($(ENABLE_READLINE),yes) > -LCFLAGS += -DENABLE_READLINE > -LTLIBS += $(LIBREADLINE) $(LIBTERMCAP) > -endif > - > ifeq ($(ENABLE_EDITLINE),yes) > LCFLAGS += -DENABLE_EDITLINE > LTLIBS += $(LIBEDITLINE) $(LIBTERMCAP) > diff --git a/libxcmd/input.c b/libxcmd/input.c > index 137856e3..203110df 100644 > --- a/libxcmd/input.c > +++ b/libxcmd/input.c > @@ -9,10 +9,7 @@ > #include <ctype.h> > #include <stdbool.h> > > -#if defined(ENABLE_READLINE) > -# include <readline/history.h> > -# include <readline/readline.h> > -#elif defined(ENABLE_EDITLINE) > +#ifdef ENABLE_EDITLINE > # include <histedit.h> > #endif > > @@ -28,18 +25,7 @@ get_prompt(void) > return prompt; > } > > -#if defined(ENABLE_READLINE) > -char * > -fetchline(void) > -{ > - char *line; > - > - line = readline(get_prompt()); > - if (line && *line) > - add_history(line); > - return line; > -} > -#elif defined(ENABLE_EDITLINE) > +#ifdef ENABLE_EDITLINE > static char *el_get_prompt(EditLine *e) { return get_prompt(); } > char * > fetchline(void) > diff --git a/quota/Makefile b/quota/Makefile > index 384f023a..da5a1489 100644 > --- a/quota/Makefile > +++ b/quota/Makefile > @@ -14,11 +14,6 @@ LLDLIBS = $(LIBXCMD) $(LIBFROG) > LTDEPENDENCIES = $(LIBXCMD) $(LIBFROG) > LLDFLAGS = -static > > -ifeq ($(ENABLE_READLINE),yes) > -LLDLIBS += $(LIBREADLINE) $(LIBTERMCAP) > -CFLAGS += -DENABLE_READLINE > -endif > - > ifeq ($(ENABLE_EDITLINE),yes) > LLDLIBS += $(LIBEDITLINE) $(LIBTERMCAP) > CFLAGS += -DENABLE_EDITLINE > diff --git a/spaceman/Makefile b/spaceman/Makefile > index d01aa74a..2a366918 100644 > --- a/spaceman/Makefile > +++ b/spaceman/Makefile > @@ -14,10 +14,6 @@ LLDLIBS = $(LIBXCMD) $(LIBFROG) > LTDEPENDENCIES = $(LIBXCMD) $(LIBFROG) > LLDFLAGS = -static > > -ifeq ($(ENABLE_READLINE),yes) > -LLDLIBS += $(LIBREADLINE) $(LIBTERMCAP) > -endif > - > ifeq ($(ENABLE_EDITLINE),yes) > LLDLIBS += $(LIBEDITLINE) $(LIBTERMCAP) > endif > -- > 2.26.1 >