legacy package [release 6.3.008-2mamba;Thu Nov 03 2016]

This commit is contained in:
Silvan Calarco 2024-01-06 05:34:14 +01:00
parent e1a12065fc
commit 885c787d1f
5 changed files with 634 additions and 0 deletions

View File

@ -1,2 +1,6 @@
# libreadline6
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.

View File

@ -0,0 +1,41 @@
diff -up readline-6.2/shlib/Makefile.in.shlib readline-6.2/shlib/Makefile.in
--- readline-6.2/shlib/Makefile.in.shlib 2010-12-28 21:56:21.000000000 +0100
+++ readline-6.2/shlib/Makefile.in 2011-02-14 17:34:38.821537496 +0100
@@ -170,7 +170,7 @@ $(SHARED_READLINE): $(SHARED_OBJ)
$(SHARED_HISTORY): $(SHARED_HISTOBJ) xmalloc.so xfree.so
$(RM) $@
- $(SHOBJ_LD) ${SHOBJ_LDFLAGS} ${SHLIB_XLDFLAGS} -o $@ $(SHARED_HISTOBJ) xmalloc.so xfree.so $(SHLIB_LIBS)
+ $(SHOBJ_LD) ${SHOBJ_LDFLAGS} ${SHLIB_XLDFLAGS} -o $@ $(SHARED_HISTOBJ) xmalloc.so xfree.so
# Since tilde.c is shared between readline and bash, make sure we compile
# it with the right flags when it's built as part of readline
diff -up readline-6.2/support/shlib-install.shlib readline-6.2/support/shlib-install
--- readline-6.2/support/shlib-install.shlib 2009-10-28 14:30:18.000000000 +0100
+++ readline-6.2/support/shlib-install 2011-02-14 17:33:07.611768164 +0100
@@ -72,7 +72,7 @@ fi
case "$host_os" in
hpux*|darwin*|macosx*|linux*)
if [ -z "$uninstall" ]; then
- chmod 555 ${INSTALLDIR}/${LIBNAME}
+ chmod 755 ${INSTALLDIR}/${LIBNAME}
fi ;;
cygwin*|mingw*)
IMPLIBNAME=`echo ${LIBNAME} \
diff -up readline-6.2/support/shobj-conf.shlib readline-6.2/support/shobj-conf
--- readline-6.2/support/shobj-conf.shlib 2009-10-28 14:20:21.000000000 +0100
+++ readline-6.2/support/shobj-conf 2011-02-14 17:33:07.612767986 +0100
@@ -112,10 +112,11 @@ sunos5*|solaris2*)
linux*-*|gnu*-*|k*bsd*-gnu-*|freebsd*-gentoo)
SHOBJ_CFLAGS=-fPIC
SHOBJ_LD='${CC}'
- SHOBJ_LDFLAGS='-shared -Wl,-soname,$@'
+ SHOBJ_LDFLAGS='$(CFLAGS) -shared -Wl,-soname,$@'
- SHLIB_XLDFLAGS='-Wl,-rpath,$(libdir) -Wl,-soname,`basename $@ $(SHLIB_MINOR)`'
+ SHLIB_XLDFLAGS='-Wl,-soname,`basename $@ $(SHLIB_MINOR)`'
SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)'
+ SHLIB_LIBS='-ltermcap'
;;
freebsd2*)

View File

@ -0,0 +1,394 @@
READLINE PATCH REPORT
=====================
Readline-Release: 6.3
Patch-ID: readline63-001
Bug-Reported-by: Daan van Rossum <daan@flash.uchicago.edu>
Bug-Reference-ID: <20140307072523.GA14250@flash.uchicago.edu>
Bug-Reference-URL:
Bug-Description:
The `.' command in vi mode cannot undo multi-key commands beginning with
`c', `d', and `y' (command plus motion specifier).
Patch (apply with `patch -p0'):
*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400
--- readline.c 2014-03-07 15:20:33.000000000 -0500
***************
*** 965,969 ****
if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
key != ANYOTHERKEY &&
! rl_key_sequence_length == 1 && /* XXX */
_rl_vi_textmod_command (key))
_rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
--- 965,969 ----
if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
key != ANYOTHERKEY &&
! _rl_dispatching_keymap == vi_movement_keymap &&
_rl_vi_textmod_command (key))
_rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 5
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 1
READLINE PATCH REPORT
=====================
Readline-Release: 6.3
Patch-ID: readline63-002
Bug-Reported-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Bug-Reference-ID: <CAOMFOmXy3mT2So5GQ5F-smCVArQuAeBwZ2QKzgCtMeXJoDeYOQ@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00010.html
Bug-Description:
When in callback mode, some readline commands can cause readline to seg
fault by passing invalid contexts to callback functions.
Patch (apply with `patch -p0'):
*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400
--- readline.c 2014-03-10 14:15:02.000000000 -0400
***************
*** 745,749 ****
RL_CHECK_SIGNALS ();
! if (r == 0) /* success! */
{
_rl_keyseq_chain_dispose ();
--- 745,750 ----
RL_CHECK_SIGNALS ();
! /* We only treat values < 0 specially to simulate recursion. */
! if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0)) /* success! or failure! */
{
_rl_keyseq_chain_dispose ();
*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 1
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 2
READLINE PATCH REPORT
=====================
Readline-Release: 6.3
Patch-ID: readline63-003
Bug-Reported-by:
Bug-Reference-ID:
Bug-Reference-URL:
Bug-Description:
There are debugging functions in the readline release that are theoretically
exploitable as security problems. They are not public functions, but have
global linkage.
Patch (apply with `patch -p0'):
*** ../readline-6.3/util.c 2013-09-02 13:36:12.000000000 -0400
--- util.c 2014-03-20 10:25:53.000000000 -0400
***************
*** 477,480 ****
--- 479,483 ----
}
+ #if defined (DEBUG)
#if defined (USE_VARARGS)
static FILE *_rl_tracefp;
***************
*** 539,542 ****
--- 542,546 ----
}
#endif
+ #endif /* DEBUG */
*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 2
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 3
READLINE PATCH REPORT
=====================
Readline-Release: 6.3
Patch-ID: readline63-004
Bug-Reported-by: Egmont Koblinger <egmont@gmail.com>
Bug-Reference-ID: <CAGWcZk+bU5Jo1M+tutGvL-250UBE9DXjpeJVofYJSFcqFEVfMg@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00153.html
Bug-Description:
The signal handling changes to bash and readline (to avoid running any code
in a signal handler context) cause the cursor to be placed on the wrong
line of a multi-line command after a ^C interrupts editing.
Patch (apply with `patch -p0'):
*** ../readline-6.3-patched/display.c 2013-12-27 13:10:56.000000000 -0500
--- display.c 2014-03-27 11:52:45.000000000 -0400
***************
*** 2678,2682 ****
if (_rl_echoing_p)
{
! _rl_move_vert (_rl_vis_botlin);
_rl_vis_botlin = 0;
fflush (rl_outstream);
--- 2678,2683 ----
if (_rl_echoing_p)
{
! if (_rl_vis_botlin > 0) /* minor optimization plus bug fix */
! _rl_move_vert (_rl_vis_botlin);
_rl_vis_botlin = 0;
fflush (rl_outstream);
*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 3
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 4
READLINE PATCH REPORT
=====================
Readline-Release: 6.3
Patch-ID: readline63-005
Bug-Reported-by: Juergen Daubert <jue@jue.li>
Bug-Reference-ID: <20140303180430.GA7346@jue.netz>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00002.html
Bug-Description:
There are still applications using the deprecated Function/VFunction/etc.
typedefs in rltypedefs.h. This patch restores the typedefs, but attempts
to mark them as deprecated using gcc/clang attributes. Thanks to Max Horn
for the suggestion.
Patch (apply with `patch -p0'):
*** ../readline-6.3-patched/rltypedefs.h 2011-03-26 14:53:31.000000000 -0400
--- rltypedefs.h 2014-04-10 11:30:45.000000000 -0400
***************
*** 27,30 ****
--- 27,49 ----
#endif
+ /* Old-style, attempt to mark as deprecated in some way people will notice. */
+
+ #if !defined (_FUNCTION_DEF)
+ # define _FUNCTION_DEF
+
+ #if defined(__GNUC__) || defined(__clang__)
+ typedef int Function () __attribute__ ((deprecated));
+ typedef void VFunction () __attribute__ ((deprecated));
+ typedef char *CPFunction () __attribute__ ((deprecated));
+ typedef char **CPPFunction () __attribute__ ((deprecated));
+ #else
+ typedef int Function ();
+ typedef void VFunction ();
+ typedef char *CPFunction ();
+ typedef char **CPPFunction ();
+ #endif
+
+ #endif /* _FUNCTION_DEF */
+
/* New style. */
*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 4
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 5
READLINE PATCH REPORT
=====================
Readline-Release: 6.3
Patch-ID: readline63-006
Bug-Reported-by: <Trond.Endrestol@ximalas.info>
Bug-Reference-ID: <alpine.BSF.2.03.1404192114310.1973@enterprise.ximalas.info>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00069.html
Bug-Description:
Using reverse-i-search when horizontal scrolling is enabled does not redisplay
the entire line containing the successful search results.
Patch (apply with `patch -p0'):
*** ../readline-6.3-patched/display.c 2014-04-08 18:19:36.000000000 -0400
--- display.c 2014-04-20 18:32:52.000000000 -0400
***************
*** 1638,1642 ****
the spot of first difference is before the end of the invisible chars,
lendiff needs to be adjusted. */
! if (current_line == 0 && !_rl_horizontal_scroll_mode &&
current_invis_chars != visible_wrap_offset)
{
--- 1638,1642 ----
the spot of first difference is before the end of the invisible chars,
lendiff needs to be adjusted. */
! if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */
current_invis_chars != visible_wrap_offset)
{
***************
*** 1826,1831 ****
_rl_last_c_pos += bytes_to_insert;
if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
! goto clear_rest_of_line;
}
}
--- 1826,1836 ----
_rl_last_c_pos += bytes_to_insert;
+ /* XXX - we only want to do this if we are at the end of the line
+ so we move there with _rl_move_cursor_relative */
if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
! {
! _rl_move_cursor_relative (ne-new, new);
! goto clear_rest_of_line;
! }
}
}
*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 5
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 6
READLINE PATCH REPORT
=====================
Readline-Release: 6.3
Patch-ID: readline63-007
Bug-Reported-by: John Lenton
Bug-Reference-ID:
Bug-Reference-URL: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1317476
Bug-Description:
Readline should allow SIGALRM and SIGVTALRM (if available) to `interrupt'
rl_getc and cause the handler to run when not in a signal handling context.
Patch (apply with `patch -p0'):
*** ../readline-6.3-patched/input.c 2014-01-10 15:07:08.000000000 -0500
--- input.c 2014-05-30 16:20:56.000000000 -0400
***************
*** 535,540 ****
--- 538,551 ----
else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM)
return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
+ /* keyboard-generated signals of interest */
else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT)
RL_CHECK_SIGNALS ();
+ /* non-keyboard-generated signals of interest */
+ else if (_rl_caught_signal == SIGALRM
+ #if defined (SIGVTALRM)
+ || _rl_caught_signal == SIGVTALRM
+ #endif
+ )
+ RL_CHECK_SIGNALS ();
if (rl_signal_event_hook)
*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 6
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 7
READLINE PATCH REPORT
=====================
Readline-Release: 6.3
Patch-ID: readline63-008
Bug-Reported-by: Jared Yanovich <slovichon@gmail.com>
Bug-Reference-ID: <20140625225019.GJ17044@nightderanger.psc.edu>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00070.html
Bug-Description:
When the readline `revert-all-at-newline' option is set, pressing newline
when the current line is one retrieved from history results in a double free
and a segmentation fault.
Patch (apply with `patch -p0'):
*** ../readline-6.3-patched/misc.c 2012-09-01 18:03:11.000000000 -0400
--- misc.c 2014-06-30 13:41:19.000000000 -0400
***************
*** 462,465 ****
--- 462,466 ----
/* Set up rl_line_buffer and other variables from history entry */
rl_replace_from_history (entry, 0); /* entry->line is now current */
+ entry->data = 0; /* entry->data is now current undo list */
/* Undo all changes to this history entry */
while (rl_undo_list)
***************
*** 469,473 ****
FREE (entry->line);
entry->line = savestring (rl_line_buffer);
- entry->data = 0;
}
entry = previous_history ();
--- 470,473 ----
*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 7
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 8

11
libreadline-autoupdate Normal file
View File

@ -0,0 +1,11 @@
#!/bin/bash
VERSION=$1
MAJRELEASE=`echo $VERSION | cut -d. -f1-2`
MAJRELEASENODOT=`echo $MAJRELEASE | tr -d .`
PATCHRELEASE=`echo $VERSION | cut -d. -f3`
> libreadline-$VERSION-patchset.patch
for i in `seq 001 $PATCHRELEASE`; do
PATCHRELEASEFMT=`printf "%0*d\n" 3 $i`
curl -s ftp://ftp.gnu.org/gnu/readline/readline-$MAJRELEASE-patches/readline$MAJRELEASENODOT-$PATCHRELEASEFMT \
>> libreadline-$VERSION-patchset.patch || exit 1
done

184
libreadline6.spec Normal file
View File

@ -0,0 +1,184 @@
%define majver %(echo %version | cut -d. -f1-2)
%define minver %(echo %version | cut -d. -f3)
Name: libreadline6
Version: 6.3.008
Release: 2mamba
Summary: Lets users edit command lines as they are typed in
Group: System/Libraries
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://www.gnu.org/directory/GNU/readline.html
Source0: ftp://ftp.gnu.org/gnu/readline/readline-%{majver}.tar.gz
Source1: libreadline-autoupdate
Patch0: libreadline-6.2-shlib.patch
Patch1: libreadline-%{version}-patchset.patch
License: GPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
## AUTOBUILDREQ-END
Requires(post):%{__install_info}
Requires(preun): %{__install_info}
Obsoletes: libreadline-doc
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%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 history expansion on previous commands.
%package devel
Group: Development/Libraries
Summary: Development files for %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description devel
This package contains libraries and header files for developing applications that use %{name}.
%package static
Group: Development/Libraries
Summary: Static libraries for the readline library
%description static
The %{name}-static package contains the static version of the readline library.
%debug_package
%prep
%setup -q -n readline-%{majver}
%patch1 -p2
%build
%configure
%make
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%makeinstall
# fixup strange shared library permissions
chmod 755 %{buildroot}%{_libdir}/*.so*
# remove unpackaged files
rm -fr %{buildroot}%{_datadir}/readline
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post
/sbin/ldconfig
%install_info history.info
%install_info rluserman.info
exit 0
%preun
%uninstall_info history.info
%uninstall_info rluserman.info
exit 0
%postun -p /sbin/ldconfig
%post devel
%install_info readline.info
exit 0
%preun devel
%uninstall_info readline.info
exit 0
%files
%defattr(-,root,root)
%{_libdir}/libhistory.so.*
%{_libdir}/libreadline.so.*
%{_infodir}/history.info*
%{_infodir}/rluserman.info*
%doc COPYING
%files devel
%defattr(-,root,root)
%{_libdir}/*.so
%dir %{_includedir}/readline
%{_includedir}/readline/*.h
%{_infodir}/readline.info*
%{_mandir}/man3/history.*
%{_mandir}/man3/readline.*
%dir %{_docdir}/readline
%{_docdir}/readline/*
%doc examples/*.c examples/*.h examples/rlfe
%doc CHANGELOG CHANGES NEWS README
%files static
%defattr(-,root,root)
%{_libdir}/lib*.a
%changelog
* Thu Nov 03 2016 Silvan Calarco <silvan.calarco@mambasoft.it> 6.3.008-2mamba
- legacy package
* Thu Dec 18 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 6.3.008-1mamba
- update to 6.3.008
* Tue Jul 22 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 6.3.006-2mamba
- fix license
* Thu Jun 05 2014 Automatic Build System <autodist@mambasoft.it> 6.3.006-1mamba
- automatic version update by autodist
* Thu Apr 24 2014 Automatic Build System <autodist@mambasoft.it> 6.3.005-1mamba
- automatic version update by autodist
* Tue Apr 08 2014 Automatic Build System <autodist@mambasoft.it> 6.3.003-1mamba
- automatic version update by autodist
* Fri Mar 21 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 6.3-1mamba
- update to 6.3
* Sat Dec 08 2012 Automatic Build System <autodist@mambasoft.it> 6.2.004-1mamba
- update to 6.2.004
* Sat Sep 15 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 6.2-4mamba
- added upstream bugfix patch 001
- restore shared library patch to fix build of dependent packages
* Wed May 09 2012 Davide Madrisan <davide.madrisan@gmail.com> 6.2-3mamba
- revert patch0: linking to libtermcap can create problems to other packages
* Tue May 08 2012 Davide Madrisan <davide.madrisan@gmail.com> 6.2-2mamba
- create subpackage libreadline-static
- move readline.info and manpages to package -devel
- provide a debug package
- obsolete libreadline-doc; this documentation is obsolete
- remove unused patch0
- add some code examples to devel package
- force linking to libtermcap to avoid several undefined symbols in libreadline
- add build requirements
* Mon Feb 14 2011 Automatic Build System <autodist@mambasoft.it> 6.2-1mamba
- automatic update by autodist
* Wed Jan 13 2010 Automatic Build System <autodist@mambasoft.it> 6.1-1mamba
- automatic update by autodist
* Sun Mar 22 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 6.0-1mamba
- automatic update by autodist
* Fri Sep 14 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 5.2-2mamba
- added patch with various fixes
* Fri Oct 13 2006 Davide Madrisan <davide.madrisan@qilinux.it> 5.2-1qilnx
- update to version 5.2 by autospec
* Tue Dec 13 2005 Davide Madrisan <davide.madrisan@qilinux.it> 5.1-1qilnx
- update to version 5.1 by autospec
- new compatibility package %{name}43
* Fri Sep 09 2005 Davide Madrisan <davide.madrisan@qilinux.it> 5.0-2qilnx
- fixed dynamic libraries permissions
* Thu Sep 08 2005 Davide Madrisan <davide.madrisan@qilinux.it> 5.0-1qilnx
- update to version 5.0 by autospec
- several specfile fixes
- new package %{name}.doc
* Thu Jul 17 2003 Silvan Calarco <silvan.calarco@qinet.it> 4.3-1qilnx
- first build for readline