Sync from SUSE:SLFO:Main libedit revision cca28a8274f6a5baad28102d78e54d59

This commit is contained in:
Adrian Schröter 2024-05-03 14:54:27 +02:00
parent d16dc2136d
commit 6aaed28fc3
8 changed files with 601 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

19
README.SUSE Normal file
View File

@ -0,0 +1,19 @@
Examples
----------
An Editline port of the fileman.c example from the GNU Readline documentation is
distributed with this package.
Note libcurses, as well as libedit, should be linked to Editline enabled
programs, e.g.
gcc -o fileman fileman.c -ledit -lcurses
A pkg-config libedit.pc file is provided, so you can write
PKG_CHECK_MODULES(LIBEDIT, libedit)
in configure.ac of your client program to detect the existence of libedit.so and
to set CFLAGS and LIBS for using libedit.
Using the pkg-config helper tool, the above fileman example looks like,
gcc -o fileman fileman.c `pkg-config --libs --cflags libedit`

1
baselibs.conf Normal file
View File

@ -0,0 +1 @@
libedit0

View File

@ -0,0 +1,60 @@
From: 1Antoine1 <antoine.belvire@opensuse.org>
Date: 2018-08-06 11:47:22 +0200
Subject: doc: File conlicts with readline-doc
References: (none)
Upstream: not submitted yet
Make sure all manpages are prefixed with "el_" in order to avoid
file conflicts with readline-doc.
---
Index: libedit-20210910-3.1/doc/Makefile.am
===================================================================
--- libedit-20210910-3.1.orig/doc/Makefile.am
+++ libedit-20210910-3.1/doc/Makefile.am
@@ -20,14 +20,14 @@ EL_MAN_LINKS = \
el_resize.3 \
el_set.3 \
el_source.3 \
- history.3 \
- history_end.3 \
- history_init.3 \
- tok_end.3 \
- tok_init.3 \
- tok_line.3 \
- tok_reset.3 \
- tok_str.3
+ el_history.3 \
+ el_history_end.3 \
+ el_history_init.3 \
+ el_tok_end.3 \
+ el_tok_init.3 \
+ el_tok_line.3 \
+ el_tok_reset.3 \
+ el_tok_str.3
EL_MAN_LINKS += \
el_wdeletestr.3 \
@@ -39,14 +39,14 @@ EL_MAN_LINKS += \
el_wparse.3 \
el_wpush.3 \
el_wset.3 \
- history_w.3 \
- history_wend.3 \
- history_winit.3 \
- tok_wend.3 \
- tok_winit.3 \
- tok_wline.3 \
- tok_wreset.3 \
- tok_wstr.3
+ el_history_w.3 \
+ el_history_wend.3 \
+ el_history_winit.3 \
+ el_tok_wend.3 \
+ el_tok_winit.3 \
+ el_tok_wline.3 \
+ el_tok_wreset.3 \
+ el_tok_wstr.3
install-data-hook: $(EL_MAN_LINKS)

BIN
libedit-20210910-3.1.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,30 @@
Index: libedit-20210910-3.1/src/sys.h
===================================================================
--- libedit-20210910-3.1.orig/src/sys.h
+++ libedit-20210910-3.1/src/sys.h
@@ -40,6 +40,10 @@
#ifndef _h_sys
#define _h_sys
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
#ifdef HAVE_SYS_CDEFS_H
#include <sys/cdefs.h>
#endif
@@ -84,12 +88,12 @@ typedef void *ioctl_t;
#ifndef HAVE_STRLCAT
//#define strlcat libedit_strlcat
-size_t strlcat(char *dst, const char *src, size_t size);
+size_t strlcat(char *dst, const char *src, size_t size) libedit_private;
#endif
#ifndef HAVE_STRLCPY
//#define strlcpy libedit_strlcpy
-size_t strlcpy(char *dst, const char *src, size_t size);
+size_t strlcpy(char *dst, const char *src, size_t size) libedit_private;
#endif
#ifndef HAVE_GETLINE

362
libedit.changes Normal file
View File

@ -0,0 +1,362 @@
-------------------------------------------------------------------
Wed Apr 5 15:01:43 UTC 2023 - Cristian Rodríguez <crrodriguez@opensuse.org>
- libedit-hidden-symbols.patch: hide strlcpy and strlcat
symbols
* Both now part of POSIX, will appear in libc shortly.
* Function names starting with str, mem, or wcs followed
by a lowercase letter are reserved.
-------------------------------------------------------------------
Sun Dec 5 21:43:39 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 20210910:
* all: sync with upstream source
* see http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libedit
- drop libedit-20180525-manpage-conflicts.patch (upstream)
-------------------------------------------------------------------
Thu Jul 16 11:04:44 UTC 2020 - Callum Farmer <callumjfarmer13@gmail.com>
- autoreconf already runs libtoolize no need to run twice
-------------------------------------------------------------------
Mon Jul 13 07:06:04 UTC 2020 - Fridrich Strba <fstrba@suse.com>
- Regenerate the build system before the build in order to avoid
errors due to automake version mismatch
-------------------------------------------------------------------
Tue Apr 30 13:49:12 UTC 2019 - Ismail Dönmez <idonmez@suse.com>
- Update to version 20190324-3.1:
* Sync with upstream sources
-------------------------------------------------------------------
Wed Aug 8 13:08:56 UTC 2018 - jengelh@inai.de
- Remove redundant --with-pic (only for static libs).
- Fix RPM groups.
-------------------------------------------------------------------
Mon Aug 6 09:13:50 UTC 2018 - antoine.belvire@opensuse.org
- Bump version tag.
- Make sure all manpages are prefixed with "el_" to avoid file
conflicts with readline-doc:
* Add libedit-20180525-manpage-conflicts.patch.
-------------------------------------------------------------------
Mon Jul 23 06:41:08 UTC 2018 - mpluskal@suse.com
- Update to version 20180525-3.1:
* Sync with upstream sources
- Drop no longer needed patches:
* libedit-20100424-3.0-ncurses.patch
* libedit-ocloexec.patch
* libedit-visibility.patch
- Trim unused dependencies
- Drop %check section (there are no tests available)
-------------------------------------------------------------------
Wed Mar 28 09:30:51 UTC 2018 - dmueller@suse.com
- move Changelog back to runtime package as it might not
be only developer documentation
-------------------------------------------------------------------
Mon Mar 26 15:54:26 CEST 2018 - kukuk@suse.de
- Use %license instead of %doc [bsc#1082318]
- Move development docu into -devel subpackage
-------------------------------------------------------------------
Mon Jun 22 11:45:10 UTC 2015 - tchvatal@suse.com
- Cleanup a bit with spec-cleaner
* remove pkg_name variable which is equal to name variable
-------------------------------------------------------------------
Fri Jun 19 12:01:55 UTC 2015 - idonmez@suse.com
- Update to 20150325-3.1
* version info: 0:53:0
* all: sync with upstream source
-------------------------------------------------------------------
Thu Feb 26 18:40:47 UTC 2015 - mpluskal@suse.com
- Update to 20141030-3.1
* version-info: 0:52:0
* all: sync with upstream source
* configure.ac: Fix posix shell portability issue.
-------------------------------------------------------------------
Mon Jul 28 14:48:16 UTC 2014 - mrueckert@suse.de
- rename README.SUSE (bnc#889029)
-------------------------------------------------------------------
Mon Jul 28 14:47:14 UTC 2014 - mrueckert@suse.de
- update to 20140620-3.1
upgrade to fix a crash with clear_history e.g. in php.
- Bounds search for reallocated index, from OpenBSD via Andreas
Fett
- PR/48957: Federico G. Schwindt: Restore commented out code that
broke rl_callback_handler.
- cast gotsig because it is long on some systems.
- Add stdlib.h for abort() (Jess Thrysoee)
- Don't depend on weak aliases to define the vi "alias" expansion
function, provide an API instead to set it.
- accomodate FreeBSD's flavor of weak references.
- remove remaining makefile support for GCC < 45 that i found.
- PR/48876: Dmitriy Grigoryev: Core dump in readline lib on
attempted expansion Make sure we have 2 matches before calling
strcmp().
- Always NULL terminate the argv[] array. From OpenBSD.
- PR/48821: If called from tty_stty(), recalculate flags.
- more tty modes refactoring, no functional change intended.
- Factor out some common code (more to be done) from PR/48821
- Add An to authors. Wording.
- Add a history function that takes a FILE pointer; needed for
Capsicum. From Eitan Adler
- Add missing EL_REFRESH
- ... if called prior to using_history(). This needed to be
worked around in PHP:
http://git.php.net/?p=php-src.git;a=commitdiff;h=31d67bd3
- get rid of PATH_MAX.
- cast to avoid warning.
- Add a function to move the cursor.
- expose rl_catch_signals and explain what we are doing.
- Test early for EOF to avoid infinite loop in the wide char
case. From Linas Vepstas: linasvepstas at gmail dot com
- provide an el_init_fd function.
- explicitly pass (void *)0 instead of NULL.
- Add FILES section. From jmc@OpenBSD.
- In 2000, .editrc reading from $PWD was removed. Update the man
page. From LEVAI Daniel via jmc@OpenBSD.
- remove dead assignment (Christoph Mallon)
- Fix pasto that affected bind -k (Christoph Mallon)
- Add trailing NULL's to the varargs functions as required. (John
Spencer)
- PR/46945: Steffen Nurpmeso; el_getc() doesn't document it's
setting errno
- return !OKCMD on error.
- PR/46942: Steffen Nurpmeso: editline(3): el_get(): fix
UNBUFFERED return
- PR/46941: Steffen Nurpmeso: document EL_BUFFERED
- PR/46935: Steffen Nurpmeso: editline(3) (libedit): faulty errno
handling, faulty reuse of val in wrong context
- Don't depend on HAVE_GCC being always defined.
- From Kamil Dudka: fix crash of el_insertstr() on incomplete
multi-byte
- PR/46678: Ian Wienand: Add stub implementation for
rl_free_line_state()
- don't crash if add_history is called from an empty line. Called
from nslookup in new bind. XXX: pullup to 6
- Switch from Op to Oo/Oc for nested block.
- remove stdint.h; it is not used.
- don't include both term.h and termcap.h
- define the new variable
- Add rl_completion_word_break_hook from:
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/\
5ec6a45fa762b8cbd0305ca06acb8780335a486a
- save and restore the tty settings on entry and exit
respectively. cleanup debugging printfs.
- From: Jilles Tjoelker: Add a mapping for the cursor delete key
- From Jilles Tjoelker: Do not move the cursor for
ed-delete-next-char in emacs mode. This makes
ed-delete-next-char suitable for mapping to the <Delete> key.
Behaviour in vi mode is unchanged (for 'x').
- These directories default to WARNS?=5
- Use C89 functions definitions.
- Use C89 functions definitions. Remove use of __P
- include the NULL in the argv conversion
- use arraycount
- PR/45843: Henning Petersen: Fix resource leak on error.
- Add coverity annotations about unreachable code (Kamil Dudka)
- Add missing *
- Initialize termbuf (Kamil Dudka)
- Initialize res (Kamil Dudka)
- check for negative return of ct_visual_char (Kamil Dudka)
- Off by one in allocation could cause buffer overflow (Kamil
Dudka)
- remove unrecheable code (Kamil Dudka)
- easier with an int for now.
- Since Width() is used only for display purposes we don't want
to pass -1 for unprintable characters.
- Fixed misplaced parenthesis (Nirbhay Choubey)
- fixed warnings where wint_t is unsigned.
- fix broken change (parenthesis in the wrong place). From
Nirbhay Choubey
- include <wchar.h> if we don't have wcsdup()
- NULL does not need a cast, here
- re-enable -Wconversion
-------------------------------------------------------------------
Tue Mar 13 01:51:31 UTC 2012 - crrodriguez@opensuse.org
- open all FDs with O_CLOEXEC in the library code.
- use gcc visibility by just reusing upstream macros "public"
and "protected"
-------------------------------------------------------------------
Thu Feb 23 18:56:27 UTC 2012 - crrodriguez@opensuse.org
- Update to version 20110802, fix use after free triggerable
with sftp autocompletion and MALLOC_PERTURB set.
-------------------------------------------------------------------
Sun Nov 13 14:49:40 UTC 2011 - jengelh@medozas.de
- Remove redundant/unwanted tags/section (cf. specfile guidelines)
- Use %_smp_mflags for parallel building
-------------------------------------------------------------------
Sun Nov 13 09:15:50 UTC 2011 - coolo@suse.com
- add libtool as explicit buildrequire to avoid implicit dependency from prjconf
-------------------------------------------------------------------
Tue Aug 2 10:56:07 CEST 2011 - tiwai@suse.de
- Add baselibs.conf
-------------------------------------------------------------------
Sun Jul 31 20:45:38 UTC 2011 - crrodriguez@opensuse.org
- Link with ncurses6w instead of ncurses5
- Do not inject artificial dependencies on other packages
-------------------------------------------------------------------
Sat Apr 24 20:17:13 UTC 2010 - pascal.bleser@opensuse.org
- update to 20100424:
* synchronized with the upstream source
* UTF-8 support was added
-------------------------------------------------------------------
Mon Dec 21 17:27:40 UTC 2009 - coolo@novell.com
- fix build with using autoreconf
-------------------------------------------------------------------
Sat Dec 19 12:39:03 CET 2009 - jengelh@medozas.de
- Enable parallel build
-------------------------------------------------------------------
Thu Dec 3 16:01:23 CET 2009 - vuntz@opensuse.org
- Update to version 20090923-3.0:
+ all: apply Apple patches from:
http://opensource.apple.com/source/libedit/libedit-11/patches
- Changes from previous versions:
+ version-info: 0:33:0
- all: Use predefined macro __sun to identify Solaris
- src/el.c: Ignore comment lines in .editrc
+ version-info: 0:32:0
- all: sync with upstream source.
+ version-info: 0:31:0
- all: sync with upstream source.
+ version-info: 0:30:0
- all: sync with upstream source.
+ version-info: 0:29:0
- all: sync with upstream source.
+ version-info: 0:28:0
- all: sync with upstream source. MAJOR.MINOR version is now
3.0. This is due to NetBSD changing time_t and dev_t to 64
bits. It does not really effect this package.
- configure.ac: Remove '--enable-debug' configure flag. The
autoconf way to control flags is by specifying them when
running configure, e.g. 'CFLAGS="-O0 -g" ./configure'
- Fix self-obsoletion of libedit.
- Add libedit-ncurses-pkg-config.patch to fix the pkg-config file
so that it references ncurses, and not curses.
-------------------------------------------------------------------
Sat Sep 6 18:21:16 CEST 2008 - mrueckert@suse.de
- update to 20080712-2.11
* version-info: 0:27:0
* configure.ac: Added '--enable-debug' configure flag, to produce
debugging information.
* examples/fileman.c: cast stat struct members, st_nlink and
st_size, appropriately (see also 'man 2 stat').
Patch by Alex Elder.
* all: sync with upstream source. MINOR version is now 11.
- rename main package to libedit and split out a subpackage libedit0
-------------------------------------------------------------------
Fri Aug 31 22:29:07 CEST 2007 - mrueckert@suse.de
- update to 20070831-2.10
* version-info: 0:26:0
* libedit.pc.in,Makefile.am,configure.ac,patches/extra_dist_list.sh:
Added pkg-config support for libedit. Patch by Masatake YAMATO.
-------------------------------------------------------------------
Wed Aug 15 01:14:38 CEST 2007 - mrueckert@suse.de
- update to 20070813-2.10
* version-info: 0:25:0
* all: sync with upstream source.
-------------------------------------------------------------------
Mon Jul 16 16:37:10 CEST 2007 - mrueckert@suse.de
- fixed a few -n lines that wont work in abuild otherwise
-------------------------------------------------------------------
Mon Jun 11 18:40:55 CEST 2007 - mrueckert@suse.de
- rename package to follow the library packaging policy.
- dont build the static lib
-------------------------------------------------------------------
Sat Mar 3 17:50:11 CET 2007 - mrueckert@suse.de
- update to 20070302-2.10:
* version-info: 0:24:0
* all: sync with upstream source.
* A bug with el_push() has been fixed.
-------------------------------------------------------------------
Tue Jan 9 17:50:24 CET 2007 - mrueckert@suse.de
- update to 20061228-2.10:
* version-info: 0:23:0
* src/shlib_version: Upstream bumped minor version from 9 to 10.
* all: sync with upstream source. More readline functions.
-------------------------------------------------------------------
Sun Oct 22 21:15:46 CEST 2006 - mrueckert@suse.de
- update to 20061022-2.9:
synced with upstream source.
-------------------------------------------------------------------
Thu Aug 31 16:53:57 CEST 2006 - mrueckert@suse.de
- removed changelog from README.SuSE
-------------------------------------------------------------------
Wed Aug 30 00:20:04 CEST 2006 - mrueckert@suse.de
- update to 20060829-2.9:
Finally all files are bsd 3 clause.
This package should be GPL compatible now.
-------------------------------------------------------------------
Thu Aug 17 12:17:48 CEST 2006 - mrueckert@suse.de
- run ldconfig
-------------------------------------------------------------------
Thu Aug 17 11:37:20 CEST 2006 - mrueckert@suse.de
- updated to 20060816-2.9:
* sync with upstream sources

103
libedit.spec Normal file
View File

@ -0,0 +1,103 @@
#
# spec file for package libedit
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define pkg_version 20210910-3.1
%define sover 0
Name: libedit
Version: 20210910.3.1
Release: 0
Summary: Command Line Editing and History Library
License: BSD-3-Clause
Group: Development/Libraries/C and C++
URL: https://www.thrysoee.dk/editline/
Source0: https://www.thrysoee.dk/editline/libedit-%{pkg_version}.tar.gz
Source1: README.SUSE
Source2: baselibs.conf
Patch0: libedit-20180525-manpage-conflicts.patch
Patch1: libedit-hidden-symbols.patch
# For patch0
BuildRequires: automake
BuildRequires: libtool
BuildRequires: pkgconfig
BuildRequires: pkgconfig(ncurses)
%description
libedit is a command line editing and history library. It is designed
to be used by interactive programs that allow the user to type commands
at a terminal prompt.
%package -n libedit%{sover}
Summary: Command Line Editing and History Library
Group: System/Libraries
Provides: %{name} = %{version}-%{release}
Obsoletes: %{name} < %{version}
%description -n libedit%{sover}
libedit is a command line editing and history library. It is designed
to be used by interactive programs that allow the user to type commands
at a terminal prompt.
%package -n libedit-devel
Summary: Development files for libedit
Group: Development/Libraries/C and C++
Requires: glibc-devel
Requires: libedit%{sover} = %{version}
Provides: libedit%{sover}-devel = %{version}-%{release}
%description -n libedit-devel
libedit is a command line editing and history library. It is designed
to be used by interactive programs that allow the user to type commands
at a terminal prompt.
This package holds the development files for libedit.
%prep
%autosetup -p1 -n %{name}-%{pkg_version}
cp %{SOURCE1} .
%build
autoreconf -fiv
%configure \
--disable-static \
--disable-silent-rules
%make_build
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
%post -n libedit%{sover} -p /sbin/ldconfig
%postun -n libedit%{sover} -p /sbin/ldconfig
%files -n libedit%{sover}
%{_libdir}/libedit.so.%{sover}
%{_libdir}/libedit.so.%{sover}.*
%{_mandir}/man5/editrc.5%{?ext_man}
%license COPYING
%doc ChangeLog
%files -n libedit-devel
%{_libdir}/libedit.so
%{_includedir}/histedit.h
%{_includedir}/editline/
%{_mandir}/man3/*.3%{?ext_man}
%{_mandir}/man7/*.7%{?ext_man}
%{_libdir}/pkgconfig/libedit.pc
%doc examples/*c THANKS README.SUSE
%changelog