From 166b335e6eeabcbcd0a3f817e210a5166dcdb202 Mon Sep 17 00:00:00 2001 From: Daniel Engberg Date: Sat, 12 Jan 2019 18:07:25 +0100 Subject: [PATCH] readline: Update to 8.0 and various fixes Update (lib)readline to 8.0 Remove autoreconf Remove blankspace at the end of the lines in description Remove --enable-shared and --enable-static as they're enabled by default Remove TARGET_CPPFLAGS Simplify install sections Install readline.pc (pkgconfig) Add patch for linking (lib)ncurses Source: https://git.buildroot.net/buildroot/plain/package/readline/0000-curses-link.patch Signed-off-by: Daniel Engberg --- package/libs/readline/Makefile | 35 ++++++++----------- .../readline/patches/001-curses-link.patch | 16 +++++++++ .../readline/patches/001-install_perm.patch | 11 ------ 3 files changed, 30 insertions(+), 32 deletions(-) create mode 100644 package/libs/readline/patches/001-curses-link.patch delete mode 100644 package/libs/readline/patches/001-install_perm.patch diff --git a/package/libs/readline/Makefile b/package/libs/readline/Makefile index 246e3187500..ddf05986a56 100644 --- a/package/libs/readline/Makefile +++ b/package/libs/readline/Makefile @@ -8,19 +8,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=readline -PKG_VERSION:=7.0 +PKG_VERSION:=8.0 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/readline -PKG_HASH:=750d437185286f40a369e1e4f4764eda932b9459b5ec9a731628393dd3d32334 +PKG_HASH:=e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461 PKG_LICENSE:=GPL-3.0 PKG_LICENSE_FILES:=COPYING PKG_CPE_ID:=cpe:/a:gnu:readline PKG_BUILD_PARALLEL:=1 -PKG_FIXUP:=autoreconf PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk @@ -30,45 +29,39 @@ define Package/libreadline SECTION:=libs CATEGORY:=Libraries TITLE:=Command lines edition library + DEPENDS:=+libncursesw URL:=http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html - ABI_VERSION:=7 + ABI_VERSION:=8 endef define Package/libreadline/description - The Readline library provides a set of functions for use by applications - that allow users to edit command lines as they are typed in. Both Emacs - and vi editing modes are available. The Readline library includes - additional functions to maintain a list of previously-entered command - lines, to recall and perhaps reedit those lines, and perform csh-like + The Readline library provides a set of functions for use by applications + that allow users to edit command lines as they are typed in. Both Emacs + and vi editing modes are available. The Readline library includes + additional functions to maintain a list of previously-entered command + lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands. endef -# prevent "autoreconf" from removing "aclocal.m4" -PKG_REMOVE_FILES:= - -CONFIGURE_ARGS += \ - --enable-shared \ - --enable-static \ - --with-curses \ +CONFIGURE_ARGS += --with-curses --disable-install-examples CONFIGURE_VARS += \ bash_cv_wcwidth_broken=no \ bash_cv_func_sigsetjmp=yes \ -TARGET_CPPFLAGS:=-I. -I.. $(TARGET_CPPFLAGS) - TARGET_CFLAGS += $(FPIC) define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(CP) $(PKG_INSTALL_DIR)/usr/include/readline $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{history,readline}.{a,so,so.7,so.7.0} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{history,readline}.{a,so*} $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/readline.pc $(1)/usr/lib/pkgconfig/ endef define Package/libreadline/install $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{history,readline}.{so,so.7,so.7.0} $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{history,readline}.so.* $(1)/usr/lib/ endef $(eval $(call HostBuild)) diff --git a/package/libs/readline/patches/001-curses-link.patch b/package/libs/readline/patches/001-curses-link.patch new file mode 100644 index 00000000000..dc189315174 --- /dev/null +++ b/package/libs/readline/patches/001-curses-link.patch @@ -0,0 +1,16 @@ +link readline directly to ncurses since it needs symbols from it + +upstream readline does this on purpose (no direct linking), but +it doesn't make much sense in a Linux world + +--- a/support/shobj-conf ++++ b/support/shobj-conf +@@ -42,7 +42,7 @@ SHOBJ_XLDFLAGS= + SHOBJ_LIBS= + + SHLIB_XLDFLAGS= +-SHLIB_LIBS= ++SHLIB_LIBS=-lncurses + + SHLIB_DOT='.' + SHLIB_LIBPREF='lib' diff --git a/package/libs/readline/patches/001-install_perm.patch b/package/libs/readline/patches/001-install_perm.patch deleted file mode 100644 index 951ff73e5ba..00000000000 --- a/package/libs/readline/patches/001-install_perm.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/support/shlib-install -+++ b/support/shlib-install -@@ -73,7 +73,7 @@ fi - case "$host_os" in - hpux*|darwin*|macosx*|linux*|solaris2*) - if [ -z "$uninstall" ]; then -- chmod 555 ${INSTALLDIR}/${LIBNAME} -+ chmod +x ${INSTALLDIR}/${LIBNAME} - fi ;; - cygwin*|mingw*) - IMPLIBNAME=`echo ${LIBNAME} \