public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-libs/readline/files/, sys-libs/readline/
@ 2016-08-11 13:28 Mike Frysinger
  0 siblings, 0 replies; 7+ messages in thread
From: Mike Frysinger @ 2016-08-11 13:28 UTC (permalink / raw
  To: gentoo-commits

commit:     ce243d53596e2b4f98f527bf35753e280b350fc4
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 11 10:28:06 2016 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Thu Aug 11 12:58:42 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ce243d53

sys-libs/readline: version bump to 7.0_beta2

 sys-libs/readline/Manifest                         |  2 +-
 sys-libs/readline/files/readline-7.0-headers.patch | 24 ++++++++++++++++++++++
 ...ne-7.0_rc1.ebuild => readline-7.0_beta2.ebuild} |  8 ++------
 3 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index 44e64fb..d52b1ac 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -2,7 +2,7 @@ DIST readline-4.3.tar.gz 961662 SHA256 eeaf6f050b9f515b0636e5b4f2c153f9ef78e9061
 DIST readline-5.2.tar.gz 2037705 SHA256 12e88d96aee2cd1192500356f0535540db499282ca7f76339fb4228c31249f45 SHA512 74318b32c56e888716bda2507228ecc374a24e85b2faeec4778227a9f04eb19de1fc8468c78746954c84f9e616a06dd0f8a4332ba4b438fefb7e222699baa379 WHIRLPOOL 8641abf42316ab278207c0a25d9155d4d4fddaf0e704255b40708875b9f31bd3e6caf903550783c15b160bd2b86ffc129b2eb7a1fb4a641d8d58edc3b53145c3
 DIST readline-6.2.tar.gz 2277926 SHA256 79a696070a058c233c72dd6ac697021cc64abd5ed51e59db867d66d196a89381 SHA512 fa5b4f1b6f81bc0b3be0739adb06dab0668603ff256fe62b59ebfe21d5a9e340a758a8eef569df8c4c4ecb86cdd9698a6dabc2ee8c70a769de2bd5930c32ff59 WHIRLPOOL 5d92645085f253206c16533e3cb35bb382d6fe616bf2144feb06f9ffb9b4d7cc25ceaa846b98f17aa442552a0e80642a62d57fe20982e0ed8fdefb75c2f9bbf0
 DIST readline-6.3.tar.gz 2468560 SHA256 56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43 SHA512 f70efaf46d570b85c7637172b0ee2eb9a4aa73ba38a62bb45075e665929d9701b96fba0aea6c767fd9a2a0d39dfe8e70ab06da08f8524aee76a7c502f370a401 WHIRLPOOL 7c68627559890dbebf1394b911cfd4675ec8862b84d4e067a207dd37a0a94482c8d92216195df2873bcdf03a0a86150663a9604cd65a0d78363376bc8ee4cfda
-DIST readline-7.0-rc1.tar.gz 2897058 SHA256 bb7e9cd745e9e6609a560ae458c61c22e641cd731eed2c2a2b7bdd93ff80beac SHA512 2a7b0e54bb79824c164f993839c585deff0bcf823cde38b8d48e2a13601df692123d40e0af39959b3b7e5c408b07876aac2d4422279cd18cd2802559a8cdb1f5 WHIRLPOOL 333e330e2d0dd0998d627bf845b24abaee6206c5449dfeab7ad89637014dec90678be9df32f47a5a48515a883ddd86c684dfb3b2e5ed61dbbdd48dab7a852887
+DIST readline-7.0-beta2.tar.gz 2899447 SHA256 4b78c5998c588ff5a233a4cbfea08f1248c2d7febfafe82cee9479de9265e43f SHA512 36ff46c63d89bca2d198ea32a37db9157ac55ce6369f5bccb3acfdfcd1a144551b4db4c907daef87773d8bdac57ce262a2b5f3c9598da85c7aba570fca9d55fb WHIRLPOOL 5bb584d8b0b1582061fe8e5edb596335028826952010f20e0d910327cf1bb85dde532f8cb1134b77cc9fe3e2cc27c02307c9879ef12045b51897c0b90915fd13
 DIST readline43-001 1126 SHA256 787244afefceeaf8bfbdc95eef0c4d163ab05ecf178bb631fff287354df0d955 SHA512 1bfcaf9fd36d154230682ef66a9561281822f09629f9923acfbacbaafd650974b4d94267e1bf74ab4a66f0e2da95e64894c78373c82bee593bd9afbae4af58bc WHIRLPOOL 080c0cffb0637bba2f6819524291c8efd1832b42b7ca619fda551b00ed82558d9c03a6f739b350b8a1de2c32e6ab92fd86137a9620473439c5b6ced6d3a06f91
 DIST readline43-002 738 SHA256 3fd4694c4043b61010c44778ed61581073ac5ddee53436b0e4e1ad2bbe4da226 SHA512 546a7bfab27dd0b77f8b0683b82358a295d47e4e249e01d2e49612a2f113c18580c8276b17451e1edab61a26ddcff0267457a804120d5e0052dfe8e88632ddd2 WHIRLPOOL d3b43145a4ed207f353c5b95b52bdb81be31bd5b077ad60152799333ca582c7524c5587a4e0d9a0fc9246a114552f0c26933d2bc8f60e9de2536a8b6ec9f2cda
 DIST readline43-003 2202 SHA256 346120970e3860c776e3cf5fd78e4f09b0d326a3b633a508f35f3f0b56f4412b SHA512 fbabbe5a11c2a17dd0cb47adfb40940c860069f0e99b1478546b0351471663094d032c8049e1a2ca060f4b51835bb6a824276e1864a627711e0805268386cb8e WHIRLPOOL 076d101812e7a98d445fd447d816fd0b15c9690869f4a567d76287c495c257f85e4e79f11f7e6e8354093613ca1c0a758514672cec98d303279daf597dee2577

diff --git a/sys-libs/readline/files/readline-7.0-headers.patch b/sys-libs/readline/files/readline-7.0-headers.patch
new file mode 100644
index 0000000..dfe4e22
--- /dev/null
+++ b/sys-libs/readline/files/readline-7.0-headers.patch
@@ -0,0 +1,24 @@
+From 4bc0aa68aff12a59628dd3c99a53360a9aa1ce93 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Thu, 11 Aug 2016 17:49:27 +0800
+Subject: [PATCH] include ctype.h for isdigit usage
+
+---
+ lib/readline/histexpand.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/lib/readline/histexpand.c b/lib/readline/histexpand.c
+index 46a99aa62e30..13248db83048 100644
+--- a/lib/readline/histexpand.c
++++ b/lib/readline/histexpand.c
+@@ -26,6 +26,7 @@
+ #endif
+ 
+ #include <stdio.h>
++#include <ctype.h>
+ 
+ #if defined (HAVE_STDLIB_H)
+ #  include <stdlib.h>
+-- 
+2.9.0
+

diff --git a/sys-libs/readline/readline-7.0_rc1.ebuild b/sys-libs/readline/readline-7.0_beta2.ebuild
similarity index 95%
rename from sys-libs/readline/readline-7.0_rc1.ebuild
rename to sys-libs/readline/readline-7.0_beta2.ebuild
index f1e8581..a9958df 100644
--- a/sys-libs/readline/readline-7.0_rc1.ebuild
+++ b/sys-libs/readline/readline-7.0_beta2.ebuild
@@ -1,6 +1,5 @@
 # Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Id$
 
 EAPI="5"
 
@@ -40,11 +39,7 @@ SLOT="0/7"  # subslot matches SONAME major
 #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
 IUSE="static-libs utils"
 
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}]
-	abi_x86_32? (
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-		!<=app-emulation/emul-linux-x86-baselibs-20131008-r7
-	)"
+RDEPEND=">=sys-libs/ncurses-5.9-r3:0=[static-libs?,${MULTILIB_USEDEP}]"
 DEPEND="${RDEPEND}
 	virtual/pkgconfig"
 
@@ -58,6 +53,7 @@ src_prepare() {
 	[[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
 	epatch "${FILESDIR}"/${PN}-5.0-no_rpath.patch
 	epatch "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
+	epatch "${FILESDIR}"/${PN}-7.0-headers.patch
 
 	# Force ncurses linking. #71420
 	# Use pkg-config to get the right values. #457558


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-libs/readline/files/, sys-libs/readline/
@ 2016-11-18  9:03 Lars Wendler
  0 siblings, 0 replies; 7+ messages in thread
From: Lars Wendler @ 2016-11-18  9:03 UTC (permalink / raw
  To: gentoo-commits

commit:     0b8bb23ef469bbbf88a695582219c0a79fa19ba9
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 18 09:02:52 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Nov 18 09:03:06 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0b8bb23e

sys-libs/readline: Bump to version 7.0_p1. Removed old.

We already had the issue fixed in 7.0-r1 that 7.0_p1 is fixing but now we have
the official patch.

Package-Manager: portage-2.3.2

 sys-libs/readline/Manifest                         |  1 +
 .../files/readline-7.0-history-alloclist.patch     | 29 ----------------------
 ...adline-7.0-r1.ebuild => readline-7.0_p1.ebuild} |  1 -
 3 files changed, 1 insertion(+), 30 deletions(-)

diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index 22a0b3d..296f740 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -35,3 +35,4 @@ DIST readline63-005 1664 SHA256 877788f9228d1a9907a4bcfe3d6dd0439c08d728949458b4
 DIST readline63-006 1982 SHA256 5c237ab3c6c97c23cf52b2a118adc265b7fb411b57c93a5f7c221d50fafbe556 SHA512 e9fbfa38d7b03ab2aff2e9e48918b85b4b67a729862ee47d1cc8e0aeb90c3224394a79f68829951e1377cae65742aa5385eae865f75e9c0b2e2abde42889431c WHIRLPOOL 7b88ad9fcad9eee0762d881307d2f865c66a9ee246bc1a648d6203677fc307759ca7ee216fb632114d3da76ca27a67222aefd830bcf99ee9a96d1ba2f2105290
 DIST readline63-007 1428 SHA256 4d79b5a2adec3c2e8114cbd3d63c1771f7c6cf64035368624903d257014f5bea SHA512 abee331894846b360203a521d9a66fa02c03214120d5cafbd1cb4d680bd7bbef14321ae845dd67f7b5e8c87322801fd96fc9a5fd0ae026b41d98dc24a8949854 WHIRLPOOL fc9d866a6e0f0c2a2f752c65e6fcae56a1b0e1b5cef45154ff51b5d1b49fc75ffaa30bdf90c221fb6493381b9d67eb20168bdfd273fa0dd89602f18680bb3e5f
 DIST readline63-008 1452 SHA256 3bc093cf526ceac23eb80256b0ec87fa1735540d659742107b6284d635c43787 SHA512 8e30bbca3aa5cea8c2ee511abe0ec8f131608d74fe5ab24d68bcf452267f0f97446ed6e7cd482360876ce6c027280e4f4450cae05eb18f56046240f4c224841c WHIRLPOOL 94d9371e6ca35e72565c1990e0ec8bedf8a141f0a3d061e4928f6184c3ef4a4b472f4278d443b990a53977ad6f3f7bdbf41e51a999202b48414df3a946bb9796
+DIST readline70-001 1777 SHA256 9ac1b3ac2ec7b1bf0709af047f2d7d2a34ccde353684e57c6b47ebca77d7a376 SHA512 4402186905af8cd42c609d640c2e13b9ad61c7778e5a3fd2c2d9da301f0deab05b04d7836f31527262f44f406517823dbb18cb07f2c73931186c806b494699ec WHIRLPOOL 3f52c3e5b0c5a600585e58ed2e013cdba2dee47f3604e7db96b811d715618f19fd75835a5cd9790f582493a32f54993cbac69ee04fa6c73775f14741c215fd65

diff --git a/sys-libs/readline/files/readline-7.0-history-alloclist.patch b/sys-libs/readline/files/readline-7.0-history-alloclist.patch
deleted file mode 100644
index 73faa60..00000000
--- a/sys-libs/readline/files/readline-7.0-history-alloclist.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-https://bugs.gentoo.org/597006
-https://lists.gnu.org/archive/html/bug-bash/2016-10/msg00010.html
-
-*** ../bash-4.4/lib/readline/history.c	2015-12-28 13:50:31.000000000 -0500
---- lib/readline/history.c	2016-09-30 14:28:40.000000000 -0400
-***************
-*** 58,61 ****
---- 58,63 ----
-  #define DEFAULT_HISTORY_INITIAL_SIZE	502
-  
-+ #define MAX_HISTORY_INITIAL_SIZE	8192
-+ 
-  /* The number of slots to increase the_history by. */
-  #define DEFAULT_HISTORY_GROW_SIZE 50
-***************
-*** 308,312 ****
-  	{
-  	  if (history_stifled && history_max_entries > 0)
-! 	    history_size = history_max_entries + 2;
-  	  else
-  	    history_size = DEFAULT_HISTORY_INITIAL_SIZE;
---- 310,316 ----
-  	{
-  	  if (history_stifled && history_max_entries > 0)
-! 	    history_size = (history_max_entries > MAX_HISTORY_INITIAL_SIZE)
-! 				? MAX_HISTORY_INITIAL_SIZE
-! 				: history_max_entries + 2;
-  	  else
-  	    history_size = DEFAULT_HISTORY_INITIAL_SIZE;

diff --git a/sys-libs/readline/readline-7.0-r1.ebuild b/sys-libs/readline/readline-7.0_p1.ebuild
similarity index 98%
rename from sys-libs/readline/readline-7.0-r1.ebuild
rename to sys-libs/readline/readline-7.0_p1.ebuild
index aecaa1c..56fddcb 100644
--- a/sys-libs/readline/readline-7.0-r1.ebuild
+++ b/sys-libs/readline/readline-7.0_p1.ebuild
@@ -54,7 +54,6 @@ src_prepare() {
 	epatch "${FILESDIR}"/${PN}-5.0-no_rpath.patch
 	epatch "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
 	epatch "${FILESDIR}"/${PN}-7.0-headers.patch
-	epatch "${FILESDIR}"/${PN}-7.0-history-alloclist.patch #597006
 
 	# Force ncurses linking. #71420
 	# Use pkg-config to get the right values. #457558


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-libs/readline/files/, sys-libs/readline/
@ 2016-12-09 19:10 Mike Frysinger
  0 siblings, 0 replies; 7+ messages in thread
From: Mike Frysinger @ 2016-12-09 19:10 UTC (permalink / raw
  To: gentoo-commits

commit:     eebfd6c16cebfd78779e12215ef1a07e3bf0ebbf
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Fri Dec  9 19:08:12 2016 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Fri Dec  9 19:08:58 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eebfd6c1

sys-libs/readline: add missing prototype from upstream

 .../readline/files/readline-7.0-missing-echo-proto.patch   | 14 ++++++++++++++
 .../{readline-7.0_p1.ebuild => readline-7.0_p1-r1.ebuild}  |  1 +
 2 files changed, 15 insertions(+)

diff --git a/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch b/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
new file mode 100644
index 00000000..fe945be
--- /dev/null
+++ b/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
@@ -0,0 +1,14 @@
+https://lists.gnu.org/archive/html/bug-readline/2016-11/msg00000.html
+
+fix from upstream
+
+--- a/lib/readline/readline.h
++++ b/lib/readline/readline.h
+@@ -413,6 +413,7 @@
+ extern void rl_tty_set_default_bindings PARAMS((Keymap));
+ extern void rl_tty_unset_default_bindings PARAMS((Keymap));
+ 
++extern int rl_tty_set_echoing PARAMS((int));
+ extern int rl_reset_terminal PARAMS((const char *));
+ extern void rl_resize_terminal PARAMS((void));
+ extern void rl_set_screen_size PARAMS((int, int));

diff --git a/sys-libs/readline/readline-7.0_p1.ebuild b/sys-libs/readline/readline-7.0_p1-r1.ebuild
similarity index 98%
rename from sys-libs/readline/readline-7.0_p1.ebuild
rename to sys-libs/readline/readline-7.0_p1-r1.ebuild
index 56fddcb..f460715 100644
--- a/sys-libs/readline/readline-7.0_p1.ebuild
+++ b/sys-libs/readline/readline-7.0_p1-r1.ebuild
@@ -54,6 +54,7 @@ src_prepare() {
 	epatch "${FILESDIR}"/${PN}-5.0-no_rpath.patch
 	epatch "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
 	epatch "${FILESDIR}"/${PN}-7.0-headers.patch
+	epatch "${FILESDIR}"/${PN}-7.0-missing-echo-proto.patch
 
 	# Force ncurses linking. #71420
 	# Use pkg-config to get the right values. #457558


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-libs/readline/files/, sys-libs/readline/
@ 2018-04-12 15:45 Lars Wendler
  0 siblings, 0 replies; 7+ messages in thread
From: Lars Wendler @ 2018-04-12 15:45 UTC (permalink / raw
  To: gentoo-commits

commit:     a19fc243299db597a1897e8c423c98d19b092998
Author:     Marty E. Plummer <hanetzer <AT> startmail <DOT> com>
AuthorDate: Sun Mar 25 12:43:15 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Apr 12 15:29:51 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a19fc243

sys-libs/readline: EAPI bump and mingw-w64 patch

EAPI 6, patches reformatted to be -p1 (still usable for the older
ebuilds), upstreamish[1] patch added to support mingw-w64.
dohtml changed to HTML_DOCS einstalldocs. Removed src_unpack as
unneeded (probably a holdover from a much older version).

[1]: http://lists.gnu.org/archive/html/bug-readline/2018-01/msg00001.html

Package-Manager: Portage-2.3.24, Repoman-2.3.6
Closes: https://github.com/gentoo/gentoo/pull/7616

 .../readline/files/readline-5.0-no_rpath.patch     |   4 +-
 sys-libs/readline/files/readline-7.0-headers.patch |   4 +-
 sys-libs/readline/files/readline-7.0-mingw.patch   | 152 +++++++++++++++++++
 .../files/readline-7.0-missing-echo-proto.patch    |   4 +-
 sys-libs/readline/readline-7.0_p3-r1.ebuild        | 163 +++++++++++++++++++++
 5 files changed, 321 insertions(+), 6 deletions(-)

diff --git a/sys-libs/readline/files/readline-5.0-no_rpath.patch b/sys-libs/readline/files/readline-5.0-no_rpath.patch
index 624b2d7dea2..befad63e425 100644
--- a/sys-libs/readline/files/readline-5.0-no_rpath.patch
+++ b/sys-libs/readline/files/readline-5.0-no_rpath.patch
@@ -1,7 +1,7 @@
 ripped from Fedora
 
---- support/shobj-conf
-+++ support/shobj-conf
+--- a/support/shobj-conf
++++ b/support/shobj-conf
 @@ -102,7 +102,7 @@
  	SHOBJ_LD='${CC}'
  	SHOBJ_LDFLAGS='-shared -Wl,-soname,$@'

diff --git a/sys-libs/readline/files/readline-7.0-headers.patch b/sys-libs/readline/files/readline-7.0-headers.patch
index dfe4e22ad1a..892ec21f51e 100644
--- a/sys-libs/readline/files/readline-7.0-headers.patch
+++ b/sys-libs/readline/files/readline-7.0-headers.patch
@@ -9,8 +9,8 @@ Subject: [PATCH] include ctype.h for isdigit usage
 
 diff --git a/lib/readline/histexpand.c b/lib/readline/histexpand.c
 index 46a99aa62e30..13248db83048 100644
---- a/lib/readline/histexpand.c
-+++ b/lib/readline/histexpand.c
+--- a/histexpand.c
++++ b/histexpand.c
 @@ -26,6 +26,7 @@
  #endif
  

diff --git a/sys-libs/readline/files/readline-7.0-mingw.patch b/sys-libs/readline/files/readline-7.0-mingw.patch
new file mode 100644
index 00000000000..f003038d2c0
--- /dev/null
+++ b/sys-libs/readline/files/readline-7.0-mingw.patch
@@ -0,0 +1,152 @@
+--- a/colors.c
++++ b/colors.c
+@@ -37,6 +37,10 @@
+ #include "posixstat.h" // stat related macros (S_ISREG, ...)
+ #include <fcntl.h> // S_ISUID
+ 
++#ifndef S_ISDIR
++#define	S_ISDIR(m)	(((m) & S_IFMT) == S_IFDIR)
++#endif
++
+ // strlen()
+ #if defined (HAVE_STRING_H)
+ #  include <string.h>
+@@ -182,12 +186,17 @@ _rl_print_color_indicator (const char *f
+       if (S_ISREG (mode))
+         {
+           colored_filetype = C_FILE;
+-
++#ifdef S_ISUID
+           if ((mode & S_ISUID) != 0 && is_colored (C_SETUID))
+             colored_filetype = C_SETUID;
+-          else if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
++		else
++#endif
++#ifdef S_ISGID
++          if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
+             colored_filetype = C_SETGID;
+-          else if (is_colored (C_CAP) && 0) //f->has_capability)
++          else
++#endif
++		  if (is_colored (C_CAP) && 0) //f->has_capability)
+             colored_filetype = C_CAP;
+           else if ((mode & S_IXUGO) != 0 && is_colored (C_EXEC))
+             colored_filetype = C_EXEC;
+@@ -211,12 +220,16 @@ _rl_print_color_indicator (const char *f
+             colored_filetype = C_STICKY;
+ #endif
+         }
++#if defined (S_ISLNK)
+       else if (S_ISLNK (mode))
+         colored_filetype = C_LINK;
++#endif
+       else if (S_ISFIFO (mode))
+         colored_filetype = C_FIFO;
++#if defined (S_ISSOCK)
+       else if (S_ISSOCK (mode))
+         colored_filetype = C_SOCK;
++#endif
+       else if (S_ISBLK (mode))
+         colored_filetype = C_BLK;
+       else if (S_ISCHR (mode))
+--- a/histfile.c
++++ b/histfile.c
+@@ -606,12 +606,14 @@ history_truncate_file (fname, lines)
+       history_lines_written_to_file = 0;
+     }
+ 
++#if defined (HAVE_CHOWN)
+   /* Make sure the new filename is owned by the same user as the old.  If one
+      user is running this, it's a no-op.  If the shell is running after sudo
+      with a shared history file, we don't want to leave the history file
+      owned by root. */
+   if (rv == 0 && exists)
+     r = chown (filename, finfo.st_uid, finfo.st_gid);
++#endif
+ 
+   xfree (filename);
+   FREE (tempname);
+@@ -753,12 +755,14 @@ mmap_error:
+       history_lines_written_to_file = 0;
+     }
+ 
++#if defined (HAVE_CHOWN)
+   /* Make sure the new filename is owned by the same user as the old.  If one
+      user is running this, it's a no-op.  If the shell is running after sudo
+      with a shared history file, we don't want to leave the history file
+      owned by root. */
+   if (rv == 0 && exists)
+     mode = chown (histname, finfo.st_uid, finfo.st_gid);
++#endif
+ 
+   FREE (histname);
+   FREE (tempname);
+--- a/input.c
++++ b/input.c
+@@ -71,6 +71,10 @@ extern int errno;
+ #include "rlshell.h"
+ #include "xmalloc.h"
+ 
++#if defined (__MINGW32__)
++#include <conio.h>
++#endif
++
+ /* What kind of non-blocking I/O do we have? */
+ #if !defined (O_NDELAY) && defined (O_NONBLOCK)
+ #  define O_NDELAY O_NONBLOCK	/* Posix style */
+--- a/posixstat.h
++++ b/posixstat.h
+@@ -78,30 +78,44 @@
+ 
+ #if defined (S_IFBLK) && !defined (S_ISBLK)
+ #define	S_ISBLK(m)	(((m)&S_IFMT) == S_IFBLK)	/* block device */
++#elif !defined (S_IFBLK)
++#define S_ISBLK(m) 0
+ #endif
+ 
+ #if defined (S_IFCHR) && !defined (S_ISCHR)
+ #define	S_ISCHR(m)	(((m)&S_IFMT) == S_IFCHR)	/* character device */
++#elif !defined (S_IFCHR)
++#define S_ISCHR(m) 0
+ #endif
+ 
+ #if defined (S_IFDIR) && !defined (S_ISDIR)
+ #define	S_ISDIR(m)	(((m)&S_IFMT) == S_IFDIR)	/* directory */
++#elif !defined (S_IFDIR)
++#define S_ISDIR(m) 0
+ #endif
+ 
+ #if defined (S_IFREG) && !defined (S_ISREG)
+ #define	S_ISREG(m)	(((m)&S_IFMT) == S_IFREG)	/* file */
++#elif !defined (S_IFREG)
++#define S_ISREG(m) 0
+ #endif
+ 
+ #if defined (S_IFIFO) && !defined (S_ISFIFO)
+ #define	S_ISFIFO(m)	(((m)&S_IFMT) == S_IFIFO)	/* fifo - named pipe */
++#elif !defined (S_IFIFO)
++#define S_ISFIFO(m) 0
+ #endif
+ 
+ #if defined (S_IFLNK) && !defined (S_ISLNK)
+ #define	S_ISLNK(m)	(((m)&S_IFMT) == S_IFLNK)	/* symbolic link */
++#elif !defined (S_IFLNK)
++#define S_ISLNK(m) 0
+ #endif
+ 
+ #if defined (S_IFSOCK) && !defined (S_ISSOCK)
+ #define	S_ISSOCK(m)	(((m)&S_IFMT) == S_IFSOCK)	/* socket */
++#elif !defined (S_IFSOCK)
++#define S_ISSOCK(m) 0
+ #endif
+ 
+ /*
+@@ -137,6 +151,8 @@
+ /* These are non-standard, but are used in builtins.c$symbolic_umask() */
+ #define S_IRUGO		(S_IRUSR | S_IRGRP | S_IROTH)
+ #define S_IWUGO		(S_IWUSR | S_IWGRP | S_IWOTH)
++#if defined(S_IXUSR) && defined(S_IXOTH)
+ #define S_IXUGO		(S_IXUSR | S_IXGRP | S_IXOTH)
++#endif
+ 
+ #endif /* _POSIXSTAT_H_ */

diff --git a/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch b/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
index fe945be7253..cad3c8ca2c4 100644
--- a/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
+++ b/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
@@ -2,8 +2,8 @@ https://lists.gnu.org/archive/html/bug-readline/2016-11/msg00000.html
 
 fix from upstream
 
---- a/lib/readline/readline.h
-+++ b/lib/readline/readline.h
+--- a/readline.h
++++ b/readline.h
 @@ -413,6 +413,7 @@
  extern void rl_tty_set_default_bindings PARAMS((Keymap));
  extern void rl_tty_unset_default_bindings PARAMS((Keymap));

diff --git a/sys-libs/readline/readline-7.0_p3-r1.ebuild b/sys-libs/readline/readline-7.0_p3-r1.ebuild
new file mode 100644
index 00000000000..6bc35b2a686
--- /dev/null
+++ b/sys-libs/readline/readline-7.0_p3-r1.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic multilib-minimal toolchain-funcs
+
+# Official patches
+# See ftp://ftp.cwru.edu/pub/bash/readline-7.0-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+	[[ ${PLEVEL} -eq 0 ]] && return 1
+	local opt=$1
+	eval set -- {1..${PLEVEL}}
+	set -- $(printf "${PN}${MY_PV/\.}-%03d " "$@")
+	if [[ ${opt} == -s ]] ; then
+		echo "${@/#/${DISTDIR}/}"
+	else
+		local u
+		for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${PN} ; do
+			printf "${u}/${PN}-${MY_PV}-patches/%s " "$@"
+		done
+	fi
+}
+
+DESCRIPTION="Another cute console display library"
+HOMEPAGE="http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html"
+case ${PV} in
+*_alpha*|*_beta*|*_rc*) SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz" ;;
+*) SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)" ;;
+esac
+
+LICENSE="GPL-3"
+SLOT="0/7"  # subslot matches SONAME major
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+IUSE="static-libs utils"
+
+RDEPEND=">=sys-libs/ncurses-5.9-r3:0=[static-libs?,${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-5.0-no_rpath.patch
+	"${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
+	"${FILESDIR}"/${PN}-7.0-headers.patch
+	"${FILESDIR}"/${PN}-7.0-missing-echo-proto.patch
+	"${FILESDIR}"/${PN}-7.0-mingw.patch
+)
+
+src_prepare() {
+	[[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s)
+	default
+
+	# Force ncurses linking. #71420
+	# Use pkg-config to get the right values. #457558
+	local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses --libs)
+	sed -i \
+		-e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \
+		support/shobj-conf || die
+	sed -i \
+		-e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \
+		examples/rlfe/configure || die
+
+	# fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated
+	# objformat for years, so we don't want to rely on that.
+	sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die
+
+	ln -s ../.. examples/rlfe/readline || die # for local readline headers
+}
+
+src_configure() {
+	# fix implicit decls with widechar funcs
+	append-cppflags -D_GNU_SOURCE
+	# https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html
+	append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
+
+	# Make sure configure picks a better ar than `ar`. #484866
+	export ac_cv_prog_AR=$(tc-getAR)
+
+	# Force the test since we used sed above to force it.
+	export bash_cv_termcap_lib=ncurses
+
+	# Control cross-compiling cases when we know the right answer.
+	# In cases where the C library doesn't support wide characters, readline
+	# itself won't work correctly, so forcing the answer below should be OK.
+	if tc-is-cross-compiler ; then
+		use kernel_Winnt || export bash_cv_func_sigsetjmp='present'
+		export bash_cv_func_ctype_nonascii='yes'
+		export bash_cv_wcwidth_broken='no' #503312
+	fi
+
+	# This is for rlfe, but we need to make sure LDFLAGS doesn't change
+	# so we can re-use the config cache file between the two.
+	append-ldflags -L.
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	ECONF_SOURCE=${S} \
+	econf \
+		--cache-file="${BUILD_DIR}"/config.cache \
+		--docdir='$(datarootdir)'/doc/${PF} \
+		--with-curses \
+		$(use_enable static-libs static)
+
+	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
+		# code is full of AC_TRY_RUN()
+		mkdir -p examples/rlfe || die
+		cd examples/rlfe || die
+		ECONF_SOURCE=${S}/examples/rlfe \
+		econf --cache-file="${BUILD_DIR}"/config.cache
+	fi
+}
+
+multilib_src_compile() {
+	emake
+
+	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
+		# code is full of AC_TRY_RUN()
+		cd examples/rlfe || die
+		local l
+		for l in readline history ; do
+			ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die
+			ln -sf ../../lib${l}.a lib${l}.a || die
+		done
+		emake
+	fi
+}
+
+multilib_src_install() {
+	default
+
+	if multilib_is_native_abi ; then
+		gen_usr_ldscript -a readline history #4411
+
+		if use utils && ! tc-is-cross-compiler; then
+			dobin examples/rlfe/rlfe
+		fi
+	fi
+}
+
+multilib_src_install_all() {
+	HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs
+	dodoc USAGE
+	docinto ps
+	dodoc doc/*.ps
+}
+pkg_preinst() {
+	# bug #29865
+	# Reappeared in #595324 with paludis so keeping this for now...
+	preserve_old_lib /$(get_libdir)/lib{history,readline}.so.{4,5,6}
+}
+
+pkg_postinst() {
+	preserve_old_lib_notify /$(get_libdir)/lib{history,readline}.so.{4,5,6}
+}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-libs/readline/files/, sys-libs/readline/
@ 2019-01-07 23:08 Lars Wendler
  0 siblings, 0 replies; 7+ messages in thread
From: Lars Wendler @ 2019-01-07 23:08 UTC (permalink / raw
  To: gentoo-commits

commit:     a2183713c540b7052f2bbf926be567adc7254ae3
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Jan  7 23:05:48 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Jan  7 23:07:59 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2183713

sys-libs/readline: Bump to version 8.0 (without KEYWORDS)

Package-Manager: Portage-2.3.54, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-libs/readline/Manifest                         |   1 +
 sys-libs/readline/files/readline-8.0-headers.patch |  17 ++
 sys-libs/readline/readline-8.0.ebuild              | 173 +++++++++++++++++++++
 3 files changed, 191 insertions(+)

diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index 8a1588192c8..268cc05765b 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -2,6 +2,7 @@ DIST readline-4.3.tar.gz 961662 BLAKE2B a7267200b79c8010d08f8aaa4e0ed357eaddb970
 DIST readline-5.2.tar.gz 2037705 BLAKE2B df1012925f7cac8aa5d513097de97fa55c801993fbcf651e64468c0255cb27f7a2357613f8ab67791ab7799def57bde34376d3c41e65285689318f4b9cbedf84 SHA512 74318b32c56e888716bda2507228ecc374a24e85b2faeec4778227a9f04eb19de1fc8468c78746954c84f9e616a06dd0f8a4332ba4b438fefb7e222699baa379
 DIST readline-6.3.tar.gz 2468560 BLAKE2B 24488ec141734c050ba985a93423692396f105619bae3ce5b109bc68a4f43862bcf3a6fb8d82fec1145d665cdb408765e179379bb35f008d09c441fa2e5739df SHA512 f70efaf46d570b85c7637172b0ee2eb9a4aa73ba38a62bb45075e665929d9701b96fba0aea6c767fd9a2a0d39dfe8e70ab06da08f8524aee76a7c502f370a401
 DIST readline-7.0.tar.gz 2910016 BLAKE2B 679b8aa7ce003017b729e6d8d4cb69d0f991578441a3e69005090079e61f6aa48b7ad4d0b1f34b6041528cf33254a1bf3ddb05b60db53a06e443d7922d49d0d4 SHA512 18243189d39bf0d4c8a76cddcce75243c1bae8824c686e9b6ba352667607e5b10c5feb79372a1093c1c388d821841670702e940df12eae94bcebdeed90047870
+DIST readline-8.0.tar.gz 2975937 BLAKE2B 95e08b28cc46582f036379413810ca40c97d4d3bc59a9e03e04e57d531573abfbe955f6f1cb86e39c208bf6c3f4c618cff70a87bec596d0b9120909d6c5a2f69 SHA512 41759d27bc3a258fefd7f4ff3277fa6ab9c21abb7b160e1a75aa8eba547bd90b288514e76264bd94fb0172da8a4faa54aab2c07b68a0356918ecf7f1969e866f
 DIST readline43-001 1126 BLAKE2B 42e7637b71936b59334dae72589b8b44256af7d3c79bec28490e13fa1fea954ce42afc1f51bb1d592da14c403d0c64565fa8823874d305ad385962b462536b5f SHA512 1bfcaf9fd36d154230682ef66a9561281822f09629f9923acfbacbaafd650974b4d94267e1bf74ab4a66f0e2da95e64894c78373c82bee593bd9afbae4af58bc
 DIST readline43-002 738 BLAKE2B b4aca8deb8e32c94228c41e6a1e9dd2865e01662b6a8e28307e64b260f4a614d17949cab68aea0c4d2c9ca32a888f11a753cf6849a0a95fc5e9b315ea7e20a1d SHA512 546a7bfab27dd0b77f8b0683b82358a295d47e4e249e01d2e49612a2f113c18580c8276b17451e1edab61a26ddcff0267457a804120d5e0052dfe8e88632ddd2
 DIST readline43-003 2202 BLAKE2B 435bf8c01a2c8419e97550c421945e11ad0d6f3326181c2e9e9c66d8baf12b4dc30894bad590532f917bbf30568e93439b49054c7b023179d5dd95aa309a8f8d SHA512 fbabbe5a11c2a17dd0cb47adfb40940c860069f0e99b1478546b0351471663094d032c8049e1a2ca060f4b51835bb6a824276e1864a627711e0805268386cb8e

diff --git a/sys-libs/readline/files/readline-8.0-headers.patch b/sys-libs/readline/files/readline-8.0-headers.patch
new file mode 100644
index 00000000000..f19a3b136eb
--- /dev/null
+++ b/sys-libs/readline/files/readline-8.0-headers.patch
@@ -0,0 +1,17 @@
+Required by bash-5.0 or else compilation fails:
+
+ bashline.c:69:10: fatal error: readline/rlmbutil.h: No such file or directory
+  #include <readline/rlmbutil.h>
+           ^~~~~~~~~~~~~~~~~~~~~
+
+--- readline-8.0/Makefile.in
++++ readline-8.0/Makefile.in
+@@ -153,7 +153,7 @@
+ CREATED_TAGS = TAGS tags
+ 
+ INSTALLED_HEADERS = readline.h chardefs.h keymaps.h history.h tilde.h \
+-		    rlstdc.h rlconf.h rltypedefs.h
++		    rlstdc.h rlconf.h rltypedefs.h rlmbutil.h
+ 
+ OTHER_DOCS = $(srcdir)/CHANGES $(srcdir)/INSTALL $(srcdir)/README
+ OTHER_INSTALLED_DOCS = CHANGES INSTALL README

diff --git a/sys-libs/readline/readline-8.0.ebuild b/sys-libs/readline/readline-8.0.ebuild
new file mode 100644
index 00000000000..8632bb9f9b2
--- /dev/null
+++ b/sys-libs/readline/readline-8.0.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic multilib-minimal toolchain-funcs
+
+# Official patches
+# See ftp://ftp.cwru.edu/pub/bash/readline-7.0-patches/
+PLEVEL="${PV##*_p}"
+MY_PV="${PV/_p*}"
+MY_PV="${MY_PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+	[[ ${PLEVEL} -eq 0 ]] && return 1
+	local opt=$1
+	eval set -- {1..${PLEVEL}}
+	set -- $(printf "${PN}${MY_PV/\.}-%03d " "$@")
+	if [[ ${opt} == -s ]] ; then
+		echo "${@/#/${DISTDIR}/}"
+	else
+		local u
+		for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${PN} ; do
+			printf "${u}/${PN}-${MY_PV}-patches/%s " "$@"
+		done
+	fi
+}
+
+DESCRIPTION="Another cute console display library"
+HOMEPAGE="http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html"
+
+case ${PV} in
+	*_alpha*|*_beta*|*_rc*)
+		SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
+	;;
+	*)
+		SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)"
+	;;
+esac
+
+LICENSE="GPL-3"
+SLOT="0/8"  # subslot matches SONAME major
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="static-libs utils"
+
+RDEPEND=">=sys-libs/ncurses-5.9-r3:0=[static-libs?,${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-5.0-no_rpath.patch
+	"${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
+	"${FILESDIR}"/${PN}-7.0-headers.patch
+	"${FILESDIR}"/${PN}-8.0-headers.patch
+)
+
+# Needed because we don't want the patches being unpacked
+# (which emits annoying and useless error messages)
+src_unpack() {
+	unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+	[[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s)
+	default
+
+	# Force ncurses linking. #71420
+	# Use pkg-config to get the right values. #457558
+	local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses --libs)
+	sed -i \
+		-e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \
+		support/shobj-conf || die
+	sed -i \
+		-e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \
+		examples/rlfe/configure || die
+
+	# fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated
+	# objformat for years, so we don't want to rely on that.
+	sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die
+
+	ln -s ../.. examples/rlfe/readline || die # for local readline headers
+}
+
+src_configure() {
+	# fix implicit decls with widechar funcs
+	append-cppflags -D_GNU_SOURCE
+	# https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html
+	append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
+
+	# Make sure configure picks a better ar than `ar`. #484866
+	export ac_cv_prog_AR=$(tc-getAR)
+
+	# Force the test since we used sed above to force it.
+	export bash_cv_termcap_lib=ncurses
+
+	# Control cross-compiling cases when we know the right answer.
+	# In cases where the C library doesn't support wide characters, readline
+	# itself won't work correctly, so forcing the answer below should be OK.
+	if tc-is-cross-compiler ; then
+		use kernel_Winnt || export bash_cv_func_sigsetjmp='present'
+		export bash_cv_func_ctype_nonascii='yes'
+		export bash_cv_wcwidth_broken='no' #503312
+	fi
+
+	# This is for rlfe, but we need to make sure LDFLAGS doesn't change
+	# so we can re-use the config cache file between the two.
+	append-ldflags -L.
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	local myeconfargs=(
+		--cache-file="${BUILD_DIR}"/config.cache
+		--with-curses
+		$(use_enable static-libs static)
+	)
+	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+
+	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
+		# code is full of AC_TRY_RUN()
+		mkdir -p examples/rlfe || die
+		cd examples/rlfe || die
+		ECONF_SOURCE="${S}"/examples/rlfe \
+		econf --cache-file="${BUILD_DIR}"/config.cache
+	fi
+}
+
+multilib_src_compile() {
+	emake
+
+	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
+		# code is full of AC_TRY_RUN()
+		cd examples/rlfe || die
+		local l
+		for l in readline history ; do
+			ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die
+			ln -s ../../lib${l}.a lib${l}.a || die
+		done
+		emake
+	fi
+}
+
+multilib_src_install() {
+	default
+
+	if multilib_is_native_abi ; then
+		gen_usr_ldscript -a readline history #4411
+
+		if use utils && ! tc-is-cross-compiler; then
+			dobin examples/rlfe/rlfe
+		fi
+	fi
+}
+
+multilib_src_install_all() {
+	HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs
+	dodoc USAGE
+	docinto ps
+	dodoc doc/*.ps
+}
+pkg_preinst() {
+	# bug #29865
+	# Reappeared in #595324 with paludis so keeping this for now...
+	preserve_old_lib /$(get_libdir)/lib{history,readline}.so.{4,5,6,7}
+}
+
+pkg_postinst() {
+	preserve_old_lib_notify /$(get_libdir)/lib{history,readline}.so.{4,5,6,7}
+}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-libs/readline/files/, sys-libs/readline/
@ 2020-12-21  1:55 Lars Wendler
  0 siblings, 0 replies; 7+ messages in thread
From: Lars Wendler @ 2020-12-21  1:55 UTC (permalink / raw
  To: gentoo-commits

commit:     20a6be318ebc738b8ca0fb36e01499035277f39d
Author:     John Helmert III <jchelmert3 <AT> posteo <DOT> net>
AuthorDate: Thu Jul 30 19:08:10 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Dec 21 01:55:33 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20a6be31

sys-libs/readline: Security cleanup (drop <8)

Bug: https://bugs.gentoo.org/717924
Package-Manager: Portage-3.0.1, Repoman-2.3.23
Signed-off-by: John Helmert III <jchelmert3 <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/16911
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-libs/readline/Manifest                         |  15 --
 .../readline-6.3-fix-long-prompt-vi-search.patch   |  26 ---
 .../readline/files/readline-6.3-read-eof.patch     |  54 -------
 sys-libs/readline/files/readline-7.0-mingw.patch   | 152 ------------------
 .../files/readline-7.0-missing-echo-proto.patch    |  14 --
 sys-libs/readline/readline-6.3_p8-r3.ebuild        | 163 -------------------
 sys-libs/readline/readline-7.0_p5-r1.ebuild        | 174 ---------------------
 7 files changed, 598 deletions(-)

diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index 30df2545548..db9715837e8 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -1,20 +1,5 @@
-DIST readline-6.3.tar.gz 2468560 BLAKE2B 24488ec141734c050ba985a93423692396f105619bae3ce5b109bc68a4f43862bcf3a6fb8d82fec1145d665cdb408765e179379bb35f008d09c441fa2e5739df SHA512 f70efaf46d570b85c7637172b0ee2eb9a4aa73ba38a62bb45075e665929d9701b96fba0aea6c767fd9a2a0d39dfe8e70ab06da08f8524aee76a7c502f370a401
-DIST readline-7.0.tar.gz 2910016 BLAKE2B 679b8aa7ce003017b729e6d8d4cb69d0f991578441a3e69005090079e61f6aa48b7ad4d0b1f34b6041528cf33254a1bf3ddb05b60db53a06e443d7922d49d0d4 SHA512 18243189d39bf0d4c8a76cddcce75243c1bae8824c686e9b6ba352667607e5b10c5feb79372a1093c1c388d821841670702e940df12eae94bcebdeed90047870
 DIST readline-8.0.tar.gz 2975937 BLAKE2B 95e08b28cc46582f036379413810ca40c97d4d3bc59a9e03e04e57d531573abfbe955f6f1cb86e39c208bf6c3f4c618cff70a87bec596d0b9120909d6c5a2f69 SHA512 41759d27bc3a258fefd7f4ff3277fa6ab9c21abb7b160e1a75aa8eba547bd90b288514e76264bd94fb0172da8a4faa54aab2c07b68a0356918ecf7f1969e866f
 DIST readline-8.1.tar.gz 2993288 BLAKE2B f0feca1ea3517b2b613adacac8c997cce0e86aa2f410c82a40ce1a2e128067112b4c68dbf25b808291c28c47583345abac994ce10b8d117958afcb96ee5e7c69 SHA512 27790d0461da3093a7fee6e89a51dcab5dc61928ec42e9228ab36493b17220641d5e481ea3d8fee5ee0044c70bf960f55c7d3f1a704cf6b9c42e5c269b797e00
-DIST readline63-001 1366 BLAKE2B 82af5be99597719329db3f1d6049e75a5654ccf6597cf557c71ad7ada0ac03be87381a7738931eb78716de65902ae87498f574b84150a69eae9cc308c4bfffdd SHA512 e70f89ca52a4eae7e1cddd70de6a7162252231ee029c89bb3fcb0f6c8c8b46c666be910c8b2eee72e96983ec2f1a23663694dc222f67228d82e8e4684f1504a2
-DIST readline63-002 1297 BLAKE2B 5ace4a81381910ee48dee8cdbb2ca95a1bef2d1f8acca6d39a910c078c86de10a0fc29486939b336110ecb0281b3edb16e4b985f41e7ee161904728f289fff04 SHA512 4e23bd67433577e6e361d10a6c32768ea9e13b10e77493e565b870f56069b673fbcb0b860225f79fa9931845fc91d35c9a82c1385c23f8b757ebfd59f27851f4
-DIST readline63-003 985 BLAKE2B cf2cda505b100d5f820d8bfc99eed6b50e65c92b6a495073352fc7385c6456478594e5c2dc293ce556b66853dff705050fb97982aa25fce452ae53d2cb272cf4 SHA512 6bfb84a5b980091b995e2b96bdf5680f97fe670e6cac1b8606d2d75a1ef922ff5bd4e73f029f7af98a115006b7ab7828146f2cd6986287543d8a29987c91dc12
-DIST readline63-004 1363 BLAKE2B c1aec93f1e23acd51b36068d3aac31b93ffd9c1039be2c45ff4e6479135f153888030c68cf19c5ced950f6fbbb38ee7fa644d5a737f3f8ed511e97bf342940f5 SHA512 6b683e9fe28831885135391b5a23bc580cacf0ffe720951a80f545574eda4eb064fe189801d44329b2eb2d3577db5a90f9e5ad9ed131e7e8a8ae349511632721
-DIST readline63-005 1664 BLAKE2B f98f62be8676aca81b91d919bc4eccfe40c382a8baab0e64b1659b714f0d72424e29b709cc5e226fd73daf67eef264a17e07982d2553ce80f5e5f39fad70610b SHA512 b0332d7f999376788155341319d138a899a2278c338a6faaac89ecf3ed1e2248a07413dd810a76996bf25f211de787182b55f34ab3d7d31eb7519d7a48ebed32
-DIST readline63-006 1982 BLAKE2B ad6d16ff769eb8e367cf961ffe152c04778b046a04e4a62e0ce21d08fa16b0eca3d278dbdc274b082d24fa2ec959ffb62168ea7693b4de94b59a4526b1f0c4a2 SHA512 e9fbfa38d7b03ab2aff2e9e48918b85b4b67a729862ee47d1cc8e0aeb90c3224394a79f68829951e1377cae65742aa5385eae865f75e9c0b2e2abde42889431c
-DIST readline63-007 1428 BLAKE2B 60e64c2dd36457e3992cfbfbbcc261337e515be360a37d71b9de236c62c781f10f0ec37e4e196b4634e5d547edebbf915370091ca42fff873b78cd80cfe3a7f2 SHA512 abee331894846b360203a521d9a66fa02c03214120d5cafbd1cb4d680bd7bbef14321ae845dd67f7b5e8c87322801fd96fc9a5fd0ae026b41d98dc24a8949854
-DIST readline63-008 1452 BLAKE2B 4e41c45be1479fba9f74bf9cedb8d1f6237e650962d5b45ea1a61cc48a8323a0fa60d76f68c011b6e7c73a1078b5ff80f9966e983b994f814d471d0efd9efde6 SHA512 8e30bbca3aa5cea8c2ee511abe0ec8f131608d74fe5ab24d68bcf452267f0f97446ed6e7cd482360876ce6c027280e4f4450cae05eb18f56046240f4c224841c
-DIST readline70-001 1777 BLAKE2B ab217bd9d27f30351397db2b745cb33ac7e0ce18bbc00112bb87570da0f62ee0e8d182395c97e4ecc21af51e7e1e580ba48076de1095c556f0744475e4019821 SHA512 4402186905af8cd42c609d640c2e13b9ad61c7778e5a3fd2c2d9da301f0deab05b04d7836f31527262f44f406517823dbb18cb07f2c73931186c806b494699ec
-DIST readline70-002 2953 BLAKE2B 47d729b1babe904855fe5d4f780a5b2153a743def527479c3cb82759cdee5bb4260be722e1050be680f5c0dd6dec8ca25c4c1ff557415abae6b3fac2bd481f0b SHA512 13d1489578508d4d2c3a1618024198a709dbce74a6bbf0f6d7ec67d2419c55bfec9f0ca9de0ed93f129d21d5c3a94307ccdc49408455bbb301c5e3a772b03185
-DIST readline70-003 1294 BLAKE2B 9473e18b582fba69cea83e3f5b9fa278dd8b0544325439307d2b4053cbeca8d2f008104bee181ae5d9405d702e6d3bcf26379c4d46e269906474c8544367b780 SHA512 eaf962a1480eb3870519017b81ecc5cef171e4c41fcf8c17da61ccbfd0379ed6bca85c17b03e2207ae4d51509f33fd010294c75f4bd0433a52118015d4160385
-DIST readline70-004 1501 BLAKE2B cebce69a21bee3a4d6a908de09f371d65eab6af51a8dc0f58fc915b916957db420252ce07b06703c05d984f62e1e849b6975f5444b2af6ba35ff7c939acf9d99 SHA512 7be41558eab3b88a3657f8589ecfaff0b8ee7f59083d385f50e8704fe830e05a50652a5feda19ff1f3cfd98bff4bb8e25e1637ec4dac8a618db9c8220a3d954e
-DIST readline70-005 1641 BLAKE2B f720508f698b113c6328018f7e6e8775c7c79afc464047405a5c3dae017d611535017dfc2759c11483bb536fab1e9bf72c7a9d3c769b7aea3bd2cee9686bd522 SHA512 eeb27f4f9195cb905d5891f26480d58f59c885dde3457f7a30ff57760ac772e2333ee8aeae979214949f3b52030285b10db013e307ee7311abab677a4427e878
 DIST readline80-001 927 BLAKE2B 95e3ac33ff4adb65813274864c17781056a8ea065f9a76571b4a6bcb2ebab090c3a021fa2b621832c11b5995e48a8a26dd6e3a8f5864a8e8b520bfcf85d7c4ab SHA512 a148cda6ac97935d51ede1bbacf847d7d2cba8861cf3941d32e3da2f45f16dcc05b20845b63d4264692520db8329e1236cf2bc4fd8ccbe6e40921bbbdeb2cb1c
 DIST readline80-002 1401 BLAKE2B a2f511272f6d651208469998330059d6bae17bb8b704b64468685bb0368b76df1ca5b1dcd8e5cb0019e80932130c8a92fd1a305679bf79f0b801532a94c4b4ae SHA512 a941d142a59fe592cc45c1cf4d416e2fc0ab543dd6a0496fb8b2ec6f651cedd6fb9e0c105f14880700b69b2d6912653b3f66371e45cbe4adc0cc9554801afd3c
 DIST readline80-003 2158 BLAKE2B d8910aef1b796a59500b255df8db71ad1738dd164fd69827759eade74b6d9806ecd364839cfa904fc2f2d48352342155f670e5ec43aac0693f36820fb7139a4d SHA512 85235fca047b4ac87b846d998fffc67ae67ed365b068fd2743e84f11fd00086f85e622955192e07e3560965e32ff5f6d014e0146cde528fb0d0f7b5b829875ca

diff --git a/sys-libs/readline/files/readline-6.3-fix-long-prompt-vi-search.patch b/sys-libs/readline/files/readline-6.3-fix-long-prompt-vi-search.patch
deleted file mode 100644
index 23d785054e7..00000000000
--- a/sys-libs/readline/files/readline-6.3-fix-long-prompt-vi-search.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-https://lists.gnu.org/archive/html/bug-bash/2014-08/msg00082.html
-
-From 2774192e93991e3d85ccc37c714aa018e442af6d Mon Sep 17 00:00:00 2001
-From: Dylan Cali <calid1984@gmail.com>
-Date: Sat, 23 Aug 2014 02:26:05 -0500
-Subject: [PATCH] fix vi search prompt bug for long prompts
-
----
- display.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/display.c b/display.c
-index 4df1f73..e575b16 100644
---- a/display.c
-+++ b/display.c
-@@ -2259,7 +2259,7 @@ rl_message (va_alist)
-       va_start (args);
-       format = va_arg (args, char *);
- #endif
--      vsnprintf (msg_buf, msg_bufsiz - 1, format, args);
-+      vsnprintf (msg_buf, msg_bufsiz, format, args);
-     }
- #else
-   vsprintf (msg_buf, format, args);
--- 
-1.7.10.4

diff --git a/sys-libs/readline/files/readline-6.3-read-eof.patch b/sys-libs/readline/files/readline-6.3-read-eof.patch
deleted file mode 100644
index f74aad63be1..00000000000
--- a/sys-libs/readline/files/readline-6.3-read-eof.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-http://lists.gnu.org/archive/html/bug-bash/2014-12/msg00152.html
-
-*** ../bash-4.3-patched/lib/readline/readline.c	2014-10-01 13:08:28.000000000 -0400
---- lib/readline/readline.c	2014-12-20 22:37:28.000000000 -0500
-***************
-*** 580,592 ****
-  	}
-  
-!       /* EOF typed to a non-blank line is a <NL>.  If we want to change this,
-! 	 to force any existing line to be ignored when read(2) reads EOF,
-! 	 for example, this is the place to change. */
-        if (c == EOF && rl_end)
-! 	c = NEWLINE;
-  
-        /* The character _rl_eof_char typed to blank line, and not as the
-! 	 previous character is interpreted as EOF. */
-!       if (((c == _rl_eof_char && lastc != c) || c == EOF) && !rl_end)
-  	{
-  #if defined (READLINE_CALLBACKS)
---- 587,620 ----
-  	}
-  
-!       /* EOF typed to a non-blank line is ^D the first time, EOF the second
-! 	 time in a row.  This won't return any partial line read from the tty.
-! 	 If we want to change this, to force any existing line to be returned
-! 	 when read(2) reads EOF, for example, this is the place to change. */
-        if (c == EOF && rl_end)
-! 	{
-! 	  if (RL_SIG_RECEIVED ())
-! 	    {
-! 	      RL_CHECK_SIGNALS ();
-! 	      if (rl_signal_event_hook)
-! 		(*rl_signal_event_hook) ();		/* XXX */
-! 	    }
-! 
-! 	  /* XXX - reading two consecutive EOFs returns EOF */
-! 	  if (RL_ISSTATE (RL_STATE_TERMPREPPED))
-! 	    {
-! 	      if (lastc == _rl_eof_char || lastc == EOF)
-! 		rl_end = 0;
-! 	      else
-! 	        c = _rl_eof_char;
-! 	    }
-! 	  else
-! 	    c = NEWLINE;
-! 	}
-  
-        /* The character _rl_eof_char typed to blank line, and not as the
-! 	 previous character is interpreted as EOF.  This doesn't work when
-! 	 READLINE_CALLBACKS is defined, so hitting a series of ^Ds will
-! 	 erase all the chars on the line and then return EOF. */
-!       if (((c == _rl_eof_char && lastc != c) || c == EOF) && rl_end == 0)
-  	{
-  #if defined (READLINE_CALLBACKS)

diff --git a/sys-libs/readline/files/readline-7.0-mingw.patch b/sys-libs/readline/files/readline-7.0-mingw.patch
deleted file mode 100644
index f003038d2c0..00000000000
--- a/sys-libs/readline/files/readline-7.0-mingw.patch
+++ /dev/null
@@ -1,152 +0,0 @@
---- a/colors.c
-+++ b/colors.c
-@@ -37,6 +37,10 @@
- #include "posixstat.h" // stat related macros (S_ISREG, ...)
- #include <fcntl.h> // S_ISUID
- 
-+#ifndef S_ISDIR
-+#define	S_ISDIR(m)	(((m) & S_IFMT) == S_IFDIR)
-+#endif
-+
- // strlen()
- #if defined (HAVE_STRING_H)
- #  include <string.h>
-@@ -182,12 +186,17 @@ _rl_print_color_indicator (const char *f
-       if (S_ISREG (mode))
-         {
-           colored_filetype = C_FILE;
--
-+#ifdef S_ISUID
-           if ((mode & S_ISUID) != 0 && is_colored (C_SETUID))
-             colored_filetype = C_SETUID;
--          else if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
-+		else
-+#endif
-+#ifdef S_ISGID
-+          if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
-             colored_filetype = C_SETGID;
--          else if (is_colored (C_CAP) && 0) //f->has_capability)
-+          else
-+#endif
-+		  if (is_colored (C_CAP) && 0) //f->has_capability)
-             colored_filetype = C_CAP;
-           else if ((mode & S_IXUGO) != 0 && is_colored (C_EXEC))
-             colored_filetype = C_EXEC;
-@@ -211,12 +220,16 @@ _rl_print_color_indicator (const char *f
-             colored_filetype = C_STICKY;
- #endif
-         }
-+#if defined (S_ISLNK)
-       else if (S_ISLNK (mode))
-         colored_filetype = C_LINK;
-+#endif
-       else if (S_ISFIFO (mode))
-         colored_filetype = C_FIFO;
-+#if defined (S_ISSOCK)
-       else if (S_ISSOCK (mode))
-         colored_filetype = C_SOCK;
-+#endif
-       else if (S_ISBLK (mode))
-         colored_filetype = C_BLK;
-       else if (S_ISCHR (mode))
---- a/histfile.c
-+++ b/histfile.c
-@@ -606,12 +606,14 @@ history_truncate_file (fname, lines)
-       history_lines_written_to_file = 0;
-     }
- 
-+#if defined (HAVE_CHOWN)
-   /* Make sure the new filename is owned by the same user as the old.  If one
-      user is running this, it's a no-op.  If the shell is running after sudo
-      with a shared history file, we don't want to leave the history file
-      owned by root. */
-   if (rv == 0 && exists)
-     r = chown (filename, finfo.st_uid, finfo.st_gid);
-+#endif
- 
-   xfree (filename);
-   FREE (tempname);
-@@ -753,12 +755,14 @@ mmap_error:
-       history_lines_written_to_file = 0;
-     }
- 
-+#if defined (HAVE_CHOWN)
-   /* Make sure the new filename is owned by the same user as the old.  If one
-      user is running this, it's a no-op.  If the shell is running after sudo
-      with a shared history file, we don't want to leave the history file
-      owned by root. */
-   if (rv == 0 && exists)
-     mode = chown (histname, finfo.st_uid, finfo.st_gid);
-+#endif
- 
-   FREE (histname);
-   FREE (tempname);
---- a/input.c
-+++ b/input.c
-@@ -71,6 +71,10 @@ extern int errno;
- #include "rlshell.h"
- #include "xmalloc.h"
- 
-+#if defined (__MINGW32__)
-+#include <conio.h>
-+#endif
-+
- /* What kind of non-blocking I/O do we have? */
- #if !defined (O_NDELAY) && defined (O_NONBLOCK)
- #  define O_NDELAY O_NONBLOCK	/* Posix style */
---- a/posixstat.h
-+++ b/posixstat.h
-@@ -78,30 +78,44 @@
- 
- #if defined (S_IFBLK) && !defined (S_ISBLK)
- #define	S_ISBLK(m)	(((m)&S_IFMT) == S_IFBLK)	/* block device */
-+#elif !defined (S_IFBLK)
-+#define S_ISBLK(m) 0
- #endif
- 
- #if defined (S_IFCHR) && !defined (S_ISCHR)
- #define	S_ISCHR(m)	(((m)&S_IFMT) == S_IFCHR)	/* character device */
-+#elif !defined (S_IFCHR)
-+#define S_ISCHR(m) 0
- #endif
- 
- #if defined (S_IFDIR) && !defined (S_ISDIR)
- #define	S_ISDIR(m)	(((m)&S_IFMT) == S_IFDIR)	/* directory */
-+#elif !defined (S_IFDIR)
-+#define S_ISDIR(m) 0
- #endif
- 
- #if defined (S_IFREG) && !defined (S_ISREG)
- #define	S_ISREG(m)	(((m)&S_IFMT) == S_IFREG)	/* file */
-+#elif !defined (S_IFREG)
-+#define S_ISREG(m) 0
- #endif
- 
- #if defined (S_IFIFO) && !defined (S_ISFIFO)
- #define	S_ISFIFO(m)	(((m)&S_IFMT) == S_IFIFO)	/* fifo - named pipe */
-+#elif !defined (S_IFIFO)
-+#define S_ISFIFO(m) 0
- #endif
- 
- #if defined (S_IFLNK) && !defined (S_ISLNK)
- #define	S_ISLNK(m)	(((m)&S_IFMT) == S_IFLNK)	/* symbolic link */
-+#elif !defined (S_IFLNK)
-+#define S_ISLNK(m) 0
- #endif
- 
- #if defined (S_IFSOCK) && !defined (S_ISSOCK)
- #define	S_ISSOCK(m)	(((m)&S_IFMT) == S_IFSOCK)	/* socket */
-+#elif !defined (S_IFSOCK)
-+#define S_ISSOCK(m) 0
- #endif
- 
- /*
-@@ -137,6 +151,8 @@
- /* These are non-standard, but are used in builtins.c$symbolic_umask() */
- #define S_IRUGO		(S_IRUSR | S_IRGRP | S_IROTH)
- #define S_IWUGO		(S_IWUSR | S_IWGRP | S_IWOTH)
-+#if defined(S_IXUSR) && defined(S_IXOTH)
- #define S_IXUGO		(S_IXUSR | S_IXGRP | S_IXOTH)
-+#endif
- 
- #endif /* _POSIXSTAT_H_ */

diff --git a/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch b/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
deleted file mode 100644
index cad3c8ca2c4..00000000000
--- a/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://lists.gnu.org/archive/html/bug-readline/2016-11/msg00000.html
-
-fix from upstream
-
---- a/readline.h
-+++ b/readline.h
-@@ -413,6 +413,7 @@
- extern void rl_tty_set_default_bindings PARAMS((Keymap));
- extern void rl_tty_unset_default_bindings PARAMS((Keymap));
- 
-+extern int rl_tty_set_echoing PARAMS((int));
- extern int rl_reset_terminal PARAMS((const char *));
- extern void rl_resize_terminal PARAMS((void));
- extern void rl_set_screen_size PARAMS((int, int));

diff --git a/sys-libs/readline/readline-6.3_p8-r3.ebuild b/sys-libs/readline/readline-6.3_p8-r3.ebuild
deleted file mode 100644
index 009f74e037f..00000000000
--- a/sys-libs/readline/readline-6.3_p8-r3.ebuild
+++ /dev/null
@@ -1,163 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib toolchain-funcs flag-o-matic multilib-minimal preserve-libs usr-ldscript
-
-# Official patches
-# See ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/
-PLEVEL=${PV##*_p}
-MY_PV=${PV/_p*}
-MY_PV=${MY_PV/_/-}
-MY_P=${PN}-${MY_PV}
-[[ ${PV} != *_p* ]] && PLEVEL=0
-patches() {
-	[[ ${PLEVEL} -eq 0 ]] && return 1
-	local opt=$1
-	eval set -- {1..${PLEVEL}}
-	set -- $(printf "${PN}${MY_PV/\.}-%03d " "$@")
-	if [[ ${opt} == -s ]] ; then
-		echo "${@/#/${DISTDIR}/}"
-	else
-		local u
-		for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${PN} ; do
-			printf "${u}/${PN}-${MY_PV}-patches/%s " "$@"
-		done
-	fi
-}
-
-DESCRIPTION="Another cute console display library"
-HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html"
-SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="static-libs utils"
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}]"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig"
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-5.0-no_rpath.patch
-	"${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
-	"${FILESDIR}"/${PN}-6.3-fix-long-prompt-vi-search.patch
-	"${FILESDIR}"/${PN}-6.3-read-eof.patch
-)
-
-src_unpack() {
-	unpack ${MY_P}.tar.gz
-}
-
-src_prepare() {
-	[[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
-	epatch "${PATCHES[@]}"
-
-	# Force ncurses linking. #71420
-	# Use pkg-config to get the right values. #457558
-	local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses --libs)
-	sed -i \
-		-e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \
-		support/shobj-conf || die
-	sed -i \
-		-e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \
-		examples/rlfe/configure || die
-
-	# fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated
-	# objformat for years, so we don't want to rely on that.
-	sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die
-
-	ln -s ../.. examples/rlfe/readline # for local readline headers
-}
-
-src_configure() {
-	# fix implicit decls with widechar funcs
-	append-cppflags -D_GNU_SOURCE
-	# https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html
-	append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
-
-	# Make sure configure picks a better ar than `ar`. #484866
-	export ac_cv_prog_AR=$(tc-getAR)
-
-	# Force the test since we used sed above to force it.
-	export bash_cv_termcap_lib=ncurses
-
-	# Control cross-compiling cases when we know the right answer.
-	# In cases where the C library doesn't support wide characters, readline
-	# itself won't work correctly, so forcing the answer below should be OK.
-	if tc-is-cross-compiler ; then
-		export bash_cv_func_sigsetjmp='present'
-		export bash_cv_func_ctype_nonascii='yes'
-		export bash_cv_wcwidth_broken='no' #503312
-	fi
-
-	# This is for rlfe, but we need to make sure LDFLAGS doesn't change
-	# so we can re-use the config cache file between the two.
-	append-ldflags -L.
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	ECONF_SOURCE=${S} \
-	econf \
-		--cache-file="${BUILD_DIR}"/config.cache \
-		--docdir='$(datarootdir)'/doc/${PF} \
-		--with-curses \
-		$(use_enable static-libs static)
-
-	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
-		# code is full of AC_TRY_RUN()
-		mkdir -p examples/rlfe || die
-		cd examples/rlfe || die
-		ECONF_SOURCE=${S}/examples/rlfe \
-		econf --cache-file="${BUILD_DIR}"/config.cache
-	fi
-}
-
-multilib_src_compile() {
-	emake
-
-	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
-		# code is full of AC_TRY_RUN()
-		cd examples/rlfe || die
-		local l
-		for l in readline history ; do
-			ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname)
-			ln -sf ../../lib${l}.a lib${l}.a
-		done
-		emake
-	fi
-}
-
-multilib_src_install() {
-	default
-
-	if multilib_is_native_abi ; then
-		gen_usr_ldscript -a readline history #4411
-
-		if use utils && ! tc-is-cross-compiler; then
-			dobin examples/rlfe/rlfe
-		fi
-	fi
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	dodoc USAGE
-	dohtml -r doc/.
-	docinto ps
-	dodoc doc/*.ps
-}
-
-pkg_preinst() {
-	preserve_old_lib /$(get_libdir)/lib{history,readline}.so.{4,5} #29865
-}
-
-pkg_postinst() {
-	preserve_old_lib_notify /$(get_libdir)/lib{history,readline}.so.{4,5}
-}

diff --git a/sys-libs/readline/readline-7.0_p5-r1.ebuild b/sys-libs/readline/readline-7.0_p5-r1.ebuild
deleted file mode 100644
index 00c928489ec..00000000000
--- a/sys-libs/readline/readline-7.0_p5-r1.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic multilib-minimal toolchain-funcs preserve-libs usr-ldscript
-
-# Official patches
-# See ftp://ftp.cwru.edu/pub/bash/readline-7.0-patches/
-PLEVEL="${PV##*_p}"
-MY_PV="${PV/_p*}"
-MY_PV="${MY_PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-[[ ${PV} != *_p* ]] && PLEVEL=0
-patches() {
-	[[ ${PLEVEL} -eq 0 ]] && return 1
-	local opt=$1
-	eval set -- {1..${PLEVEL}}
-	set -- $(printf "${PN}${MY_PV/\.}-%03d " "$@")
-	if [[ ${opt} == -s ]] ; then
-		echo "${@/#/${DISTDIR}/}"
-	else
-		local u
-		for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${PN} ; do
-			printf "${u}/${PN}-${MY_PV}-patches/%s " "$@"
-		done
-	fi
-}
-
-DESCRIPTION="Another cute console display library"
-HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html"
-
-case ${PV} in
-	*_alpha*|*_beta*|*_rc*)
-		SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
-	;;
-	*)
-		SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)"
-	;;
-esac
-
-LICENSE="GPL-3"
-SLOT="0/7"  # subslot matches SONAME major
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="static-libs +unicode utils"
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0=[static-libs?,unicode?,${MULTILIB_USEDEP}]"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig"
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-5.0-no_rpath.patch
-	"${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
-	"${FILESDIR}"/${PN}-7.0-headers.patch
-	"${FILESDIR}"/${PN}-7.0-missing-echo-proto.patch
-	"${FILESDIR}"/${PN}-7.0-mingw.patch
-)
-
-# Needed because we don't want the patches being unpacked
-# (which emits annoying and useless error messages)
-src_unpack() {
-	unpack ${MY_P}.tar.gz
-}
-
-src_prepare() {
-	[[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s)
-	default
-
-	# Force ncurses linking. #71420
-	# Use pkg-config to get the right values. #457558
-	local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs)
-	sed -i \
-		-e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \
-		support/shobj-conf || die
-	sed -i \
-		-e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \
-		examples/rlfe/configure || die
-
-	# fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated
-	# objformat for years, so we don't want to rely on that.
-	sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die
-
-	ln -s ../.. examples/rlfe/readline || die # for local readline headers
-}
-
-src_configure() {
-	# fix implicit decls with widechar funcs
-	append-cppflags -D_GNU_SOURCE
-	# https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html
-	append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
-
-	# Make sure configure picks a better ar than `ar`. #484866
-	export ac_cv_prog_AR=$(tc-getAR)
-
-	# Force the test since we used sed above to force it.
-	export bash_cv_termcap_lib=ncurses
-
-	# Control cross-compiling cases when we know the right answer.
-	# In cases where the C library doesn't support wide characters, readline
-	# itself won't work correctly, so forcing the answer below should be OK.
-	if tc-is-cross-compiler ; then
-		use kernel_Winnt || export bash_cv_func_sigsetjmp='present'
-		export bash_cv_func_ctype_nonascii='yes'
-		export bash_cv_wcwidth_broken='no' #503312
-	fi
-
-	# This is for rlfe, but we need to make sure LDFLAGS doesn't change
-	# so we can re-use the config cache file between the two.
-	append-ldflags -L.
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	local myeconfargs=(
-		--cache-file="${BUILD_DIR}"/config.cache
-		--with-curses
-		$(use_enable static-libs static)
-	)
-	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-
-	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
-		# code is full of AC_TRY_RUN()
-		mkdir -p examples/rlfe || die
-		cd examples/rlfe || die
-		ECONF_SOURCE="${S}"/examples/rlfe \
-		econf --cache-file="${BUILD_DIR}"/config.cache
-	fi
-}
-
-multilib_src_compile() {
-	emake
-
-	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
-		# code is full of AC_TRY_RUN()
-		cd examples/rlfe || die
-		local l
-		for l in readline history ; do
-			ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die
-			ln -s ../../lib${l}.a lib${l}.a || die
-		done
-		emake
-	fi
-}
-
-multilib_src_install() {
-	default
-
-	if multilib_is_native_abi ; then
-		gen_usr_ldscript -a readline history #4411
-
-		if use utils && ! tc-is-cross-compiler; then
-			dobin examples/rlfe/rlfe
-		fi
-	fi
-}
-
-multilib_src_install_all() {
-	HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs
-	dodoc USAGE
-	docinto ps
-	dodoc doc/*.ps
-}
-pkg_preinst() {
-	# bug #29865
-	# Reappeared in #595324 with paludis so keeping this for now...
-	preserve_old_lib /$(get_libdir)/lib{history,readline}.so.{4,5,6}
-}
-
-pkg_postinst() {
-	preserve_old_lib_notify /$(get_libdir)/lib{history,readline}.so.{4,5,6}
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-libs/readline/files/, sys-libs/readline/
@ 2024-11-24 22:51 Sam James
  0 siblings, 0 replies; 7+ messages in thread
From: Sam James @ 2024-11-24 22:51 UTC (permalink / raw
  To: gentoo-commits

commit:     6b9a8501590c4b1fa99ff64229a50618ec060db1
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 24 22:50:22 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Nov 24 22:50:22 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b9a8501

sys-libs/readline: fix compat in headers with C23

HAVE_STDARG_H isn't defined for readline consumers externally so we always
end up using the ancient non-prototypes. Fix that as all compilers we care
about since forever in Gentoo will support this path.

This in particular shows up with rl_message in consumers.

Closes: https://bugs.gentoo.org/943820
Closes: https://bugs.gentoo.org/944059
Closes: https://bugs.gentoo.org/944300
Closes: https://bugs.gentoo.org/944344
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-libs/readline/files/readline-8.2-c23.patch |  20 ++
 sys-libs/readline/readline-8.2_p13-r1.ebuild   | 269 +++++++++++++++++++++++++
 2 files changed, 289 insertions(+)

diff --git a/sys-libs/readline/files/readline-8.2-c23.patch b/sys-libs/readline/files/readline-8.2-c23.patch
new file mode 100644
index 000000000000..4792bc923a28
--- /dev/null
+++ b/sys-libs/readline/files/readline-8.2-c23.patch
@@ -0,0 +1,20 @@
+HAVE_STDARG_H isn't defined for readline consumers externally so we always
+end up using the ancient non-prototypes. Fix that as all compilers we care
+about since forever in Gentoo will support this path.
+
+This in particular shows up with rl_message in consumers:
+https://bugs.gentoo.org/943820
+https://bugs.gentoo.org/944059
+https://bugs.gentoo.org/944300
+https://bugs.gentoo.org/944344
+--- a/rlstdc.h
++++ b/rlstdc.h
+@@ -44,7 +44,7 @@
+ 
+ /* Moved from config.h.in because readline.h:rl_message depends on these
+    defines. */
+-#if defined (__STDC__) && defined (HAVE_STDARG_H)
++#if defined (__STDC__)
+ #  define PREFER_STDARG
+ #  define USE_VARARGS
+ #else

diff --git a/sys-libs/readline/readline-8.2_p13-r1.ebuild b/sys-libs/readline/readline-8.2_p13-r1.ebuild
new file mode 100644
index 000000000000..45b13024661c
--- /dev/null
+++ b/sys-libs/readline/readline-8.2_p13-r1.ebuild
@@ -0,0 +1,269 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# There's no standard way of versioning the point releases upstream
+# make anyway, so while this was added for RC versions, it's fine
+# in general.
+QA_PKGCONFIG_VERSION=$(ver_cut 1-2)
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc
+inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs verify-sig
+
+# Official patches
+# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/
+PLEVEL="${PV##*_p}"
+MY_PV="${PV/_p*}"
+MY_PV="${MY_PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+MY_PATCHES=()
+
+is_release() {
+	case ${PV} in
+		9999|*_alpha*|*_beta*|*_rc*)
+			return 1
+			;;
+		*)
+			return 0
+			;;
+	esac
+}
+
+[[ ${PV} != *_p* ]] && PLEVEL=0
+
+DESCRIPTION="Another cute console display library"
+HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html https://git.savannah.gnu.org/cgit/readline.git"
+
+if [[ ${PV} == 9999 ]] ; then
+	EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git"
+	EGIT_BRANCH=devel
+	inherit git-r3
+elif is_release ; then
+	SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz"
+	SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/readline-8.1-rlfe-c99.patch.xz"
+	SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
+
+	if [[ ${PLEVEL} -gt 0 ]] ; then
+		# bash-5.1 -> bash51
+		my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2))
+
+		patch_url=
+		my_patch_index=
+
+		upstream_url_base="mirror://gnu/readline"
+		mirror_url_base="ftp://ftp.cwru.edu/pub/readline"
+
+		for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do
+			printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index}
+			patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}"
+
+			SRC_URI+=" ${patch_url}"
+			SRC_URI+=" verify-sig? ( ${patch_url}.sig )"
+
+			# Add in the mirror URL too.
+			SRC_URI+=" ${patch_url/${upstream_url_base}/${mirror_url_base}}"
+			SRC_URI+=" verify-sig? ( ${patch_url/${upstream_url_base}/${mirror_url_base}}.sig )"
+
+			MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} )
+		done
+
+		unset my_p patch_url my_patch_index upstream_url_base mirror_url_base
+	fi
+else
+	SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz"
+	SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz.sig )"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+if ! is_release ; then
+	inherit autotools
+fi
+
+LICENSE="GPL-3+"
+SLOT="0/8"  # subslot matches SONAME major
+if is_release ; then
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="static-libs +unicode utils"
+
+RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig
+	verify-sig? ( sec-keys/openpgp-keys-chetramey )"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-5.0-no_rpath.patch
+	"${FILESDIR}"/${PN}-7.0-headers.patch
+	"${FILESDIR}"/${PN}-8.0-headers.patch
+	"${WORKDIR}"/${PN}-8.1-rlfe-c99.patch
+	# Not needed with 8.3 which drops < C89 compat
+	"${FILESDIR}"/${PN}-8.2-c23.patch
+
+	# TODO: rebase
+	#"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch
+)
+
+src_unpack() {
+	local patch
+
+	if [[ ${PV} == 9999 ]]; then
+		git-r3_src_unpack
+	else
+		if use verify-sig; then
+			verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
+
+			for patch in "${MY_PATCHES[@]}"; do
+				verify-sig_verify_detached "${patch}"{,.sig}
+			done
+		fi
+
+		unpack "${MY_P}.tar.gz"
+		unpack readline-8.1-rlfe-c99.patch.xz
+
+		#if [[ ${GENTOO_PATCH_VER} ]]; then
+		#	unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
+		#fi
+	fi
+}
+
+src_prepare() {
+	[[ ${PLEVEL} -gt 0 ]] && eapply -p0 "${MY_PATCHES[@]}"
+
+	default
+
+	is_release || eautoreconf
+
+	if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then
+		# If we're bootstrapping, make a guess. We don't have pkg-config
+		# around yet. bug #818103.
+		# Incorrectly populating this leads to underlinked libreadline.
+		local ncurses_libs
+		local ncurses_libs_suffix=$(usex unicode w '')
+
+		ncurses_libs="-lncurses${ncurses_libs_suffix}"
+
+		if has_version "sys-libs/ncurses[tinfo(+)]" ; then
+			ncurses_libs+=" -ltinfo${ncurses_libs_suffix}"
+		fi
+	else
+		# Force ncurses linking, bug #71420.
+		# Use pkg-config to get the right values, bug #457558.
+		local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs)
+	fi
+
+	sed -i \
+		-e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \
+		support/shobj-conf || die
+	sed -i \
+		-e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \
+		examples/rlfe/configure || die
+
+	# Fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated
+	# objformat for years, so we don't want to rely on that.
+	sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die
+
+	# For local readline headers
+	ln -s ../.. examples/rlfe/readline || die
+}
+
+src_configure() {
+	# readline-8.3 drops unprototyped functions, earlier versions are
+	# incompatible with C23.
+	append-cflags -std=gnu17
+
+	# Fix implicit decls with widechar funcs
+	append-cppflags -D_GNU_SOURCE
+	# https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html
+	append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
+
+	# Make sure configure picks a better ar than `ar`, bug #484866
+	export ac_cv_prog_AR="$(tc-getAR)"
+
+	# Force the test since we used sed above to force it.
+	export bash_cv_termcap_lib=ncurses
+
+	# Control cross-compiling cases when we know the right answer.
+	# In cases where the C library doesn't support wide characters, readline
+	# itself won't work correctly, so forcing the answer below should be OK.
+	if tc-is-cross-compiler ; then
+		export bash_cv_func_sigsetjmp="present"
+		export bash_cv_func_ctype_nonascii="yes"
+		# bug #503312
+		export bash_cv_wcwidth_broken="no"
+	fi
+
+	# This is for rlfe, but we need to make sure LDFLAGS doesn't change
+	# so we can re-use the config cache file between the two.
+	append-ldflags -L.
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	local myeconfargs=(
+		--cache-file="${BUILD_DIR}"/config.cache
+		--with-curses
+		$(use_enable static-libs static)
+	)
+
+	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+
+	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
+		# Code is full of AC_TRY_RUN()
+		mkdir -p examples/rlfe || die
+		cd examples/rlfe || die
+
+		ECONF_SOURCE="${S}"/examples/rlfe econf --cache-file="${BUILD_DIR}"/config.cache
+	fi
+}
+
+multilib_src_compile() {
+	emake
+
+	if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
+		# Code is full of AC_TRY_RUN()
+		cd examples/rlfe || die
+		local l
+		for l in readline history ; do
+			ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die
+			ln -s ../../lib${l}.a lib${l}.a || die
+		done
+		emake
+	fi
+}
+
+multilib_src_install() {
+	default
+
+	if multilib_is_native_abi ; then
+		if use utils && ! tc-is-cross-compiler; then
+			dobin examples/rlfe/rlfe
+		fi
+	fi
+}
+
+multilib_src_install_all() {
+	HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs
+
+	dodoc USAGE
+	docinto ps
+	dodoc doc/*.ps
+}
+pkg_preinst() {
+	# bug #29865
+	# Reappeared in bug #595324 with paludis so keeping this for now...
+	preserve_old_lib \
+		/$(get_libdir)/lib{history,readline}$(get_libname 4) \
+		/$(get_libdir)/lib{history,readline}$(get_libname 5) \
+		/$(get_libdir)/lib{history,readline}$(get_libname 6) \
+		/$(get_libdir)/lib{history,readline}$(get_libname 7)
+}
+
+pkg_postinst() {
+	preserve_old_lib_notify \
+		/$(get_libdir)/lib{history,readline}$(get_libname 4) \
+		/$(get_libdir)/lib{history,readline}$(get_libname 5) \
+		/$(get_libdir)/lib{history,readline}$(get_libname 6) \
+		/$(get_libdir)/lib{history,readline}$(get_libname 7)
+}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-11-24 22:51 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-07 23:08 [gentoo-commits] repo/gentoo:master commit in: sys-libs/readline/files/, sys-libs/readline/ Lars Wendler
  -- strict thread matches above, loose matches on Subject: below --
2024-11-24 22:51 Sam James
2020-12-21  1:55 Lars Wendler
2018-04-12 15:45 Lars Wendler
2016-12-09 19:10 Mike Frysinger
2016-11-18  9:03 Lars Wendler
2016-08-11 13:28 Mike Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox