readline: Update to 8.0 and various fixes
authorDaniel Engberg <daniel.engberg.lists@pyret.net>
Sat, 12 Jan 2019 17:07:25 +0000 (18:07 +0100)
committerJo-Philipp Wich <jo@mein.io>
Tue, 22 Jan 2019 07:49:36 +0000 (08:49 +0100)
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 <daniel.engberg.lists@pyret.net>
package/libs/readline/Makefile
package/libs/readline/patches/001-curses-link.patch [new file with mode: 0644]
package/libs/readline/patches/001-install_perm.patch [deleted file]

index 246e318..ddf0598 100644 (file)
@@ -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 (file)
index 0000000..dc18931
--- /dev/null
@@ -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 (file)
index 951ff73..0000000
+++ /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} \