expect/expect.spec
Reinhard Max 7bbe6560d5 Accepting request 540240 from home:avindra
- New version 5.45.3:
  * expect.c: On finding a full buffer during matching the sliding
    window mechanism slides too far, truncating the whole buffer and
    preventing matches across the boundary. Fix is shortening the
    slide distance (slide only one 1/3).
  * expect.c: Replaced a cc==0 check with proper Tcl_Eof() check.
- Includes changes from 5.45.2:
  * configure: Extended Tcl header detection for OS X Mountain Lion.
  * expect.c: Replaced memcpy with memmove to properly handle
    overlapping memory.
- Includes changes from 5.45.1:
  * exp_chan.c: Fix a problem when talking a tty where the writer
    dies. Some operating systems report the condition as EIO with
    nothing read, while this actually an EOF. Previously, returned
    data was incomplete due to the error causing data in buffers to
    be dropped.
  * exp_chan.c: Fix a problem with the iteration over the expect
    channel list where the loop code may modify the list, breaking
    the iterator.
  * Fixes for exp_chan.c and exp_command.h
  * expect.c: Convert #bytes information to #chars to prevent later
    code to fail when copying strings around and miscalculating how
    much to copy, for strings containing non-ASCII utf chars.
  * exp_inter.c: Hack access to TCL_REG_BOSONLY when not present,
    became private with Tcl 8.5 and higher.
  * expect.h: Remove the local fiddling with the memory allocation
    and panic macros.
  * example/unbuffer: Prevent unbuffer from swallowing exit code of
    the command it ran (regular mode only, not -p)
  * Various deduplications and cleanups
- cleanup with spec-cleaner
- use %make_install macro

OBS-URL: https://build.opensuse.org/request/show/540240
OBS-URL: https://build.opensuse.org/package/show/devel:languages:tcl/expect?expand=0&rev=19
2017-11-09 14:56:10 +00:00

97 lines
2.9 KiB
RPMSpec

#
# spec file for package expect
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#
Name: expect
Version: 5.45.3
Release: 0
Summary: A Tool for Automating Interactive Programs
License: SUSE-Public-Domain
Group: Development/Languages/Tcl
Url: http://expect.nist.gov
Source: http://downloads.sourceforge.net/project/%{name}/Expect/%{version}/%{name}%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: expect-rpmlintrc
Patch1: expect.patch
Patch2: expect-fixes.patch
Patch3: expect-log.patch
Patch4: config-guess-sub-update.patch
BuildRequires: autoconf
BuildRequires: tcl-devel
%description
Expect is a tool primarily for automating interactive applications,
such as telnet, ftp, passwd, fsck, rlogin, tip, and more. Expect
really makes this stuff trivial. Expect is also useful for testing
these applications. It is described in many books, articles, papers,
and FAQs. There is an entire book on it available from O'Reilly.
%package devel
Summary: Header Files and C API Documentation for expect
Group: Development/Libraries/Tcl
%description devel
This package contains header files and documentation needed for linking
to expect from programs written in compiled languages like C, C++, etc.
This package is not needed for developing scripts that run under the
/usr/bin/expect interpreter, or any other Tcl interpreter with the
expect package loaded.
%prep
%setup -q -n %name%version
%patch1
%patch2
%patch3
%patch4
%build
autoreconf
%configure \
--with-tcl=%_libdir \
--with-tk=no_tk \
--with-tclinclude=%_includedir \
--enable-shared
make %{?_smp_mflags} all pkglibdir=%_libdir/tcl/%name%version
%check
make %{?_smp_mflags} test
%install
# set the right path to the expect binary...
sed -i \
-e '1s,^#![^ ]*expectk,#!%_bindir/wish\npackage require Expect,' \
-e '1s,^#![^ ]*expect,#!%_bindir/expect,' \
example/*
%make_install pkglibdir=%_libdir/tcl/%name%version
# Remove some executables and manpages we don't want to ship
rm %buildroot%_bindir/*passwd
rm %buildroot%_bindir/weather
rm %buildroot%_mandir/*/*passwd*
%files
%_bindir/*
%_libdir/tcl/*
%_libdir/lib*.so
%_mandir/man1/*
%doc ChangeLog HISTORY INSTALL FAQ NEWS README
%files devel
%_includedir/*
%_mandir/man3/*
%changelog