diff --git a/README.md b/README.md index 01e9bef..792c39d 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,7 @@ # expect +Expect is a tool for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this stuff trivial. +Expect is also useful for testing these same applications. And by adding Tk, you can also wrap interactive applications in X11 GUIs. +Expect can make easy all sorts of tasks that are prohibitively difficult with anything else. +You will find that Expect is an absolutely invaluable tool - using it, you will be able to automate tasks that you've never even thought of before - and you'll be able to do this automation quickly and easily. + diff --git a/expect-5.44.1-configure_no_escape_vars.patch b/expect-5.44.1-configure_no_escape_vars.patch new file mode 100644 index 0000000..6d678ce --- /dev/null +++ b/expect-5.44.1-configure_no_escape_vars.patch @@ -0,0 +1,15 @@ +diff -Nru expect-5.44.1.orig/configure expect-5.44.1/configure +--- expect-5.44.1.orig/configure 2006-01-31 18:00:26.000000000 +0100 ++++ expect-5.44.1/configure 2007-11-21 15:48:03.000000000 +0100 +@@ -16927,9 +16927,9 @@ + + # These are escaped so that only CFLAGS is picked up at configure time. + # The other values will be substituted at make time. +- CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" ++ CFLAGS="${CFLAGS} ${CFLAGS_DEFAULT} ${CFLAGS_WARNING}" + if test "${SHARED_BUILD}" = "1" ; then +- CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" ++ CFLAGS="${CFLAGS} ${SHLIB_CFLAGS}" + fi + + diff --git a/expect-5.44.1-tcl8.5.patch b/expect-5.44.1-tcl8.5.patch new file mode 100644 index 0000000..f582d22 --- /dev/null +++ b/expect-5.44.1-tcl8.5.patch @@ -0,0 +1,12 @@ +diff -Nru expect-5.44.1.orig/exp_inter.c expect-5.44.1/exp_inter.c +--- expect-5.44.1.orig/exp_inter.c 2007-11-21 15:02:41.000000000 +0100 ++++ expect-5.44.1/exp_inter.c 2007-11-21 15:02:06.000000000 +0100 +@@ -35,7 +35,7 @@ + + #include + +-#include "tcl.h" ++#include "tclInt.h" + #include "string.h" + + #include "exp_tty_in.h" diff --git a/expect-5.45-example-replace-expectk.patch b/expect-5.45-example-replace-expectk.patch new file mode 100644 index 0000000..26ceca7 --- /dev/null +++ b/expect-5.45-example-replace-expectk.patch @@ -0,0 +1,14 @@ +--- expect5.45/example/term_expect.orig 2013-09-21 16:42:15.177453812 +0200 ++++ expect5.45/example/term_expect 2013-09-21 16:43:20.263847151 +0200 +@@ -1,4 +1,10 @@ +-#!/depot/path/expectk ++#!/bin/sh ++# -*- tcl -*- ++# The next line is executed by /bin/sh, but not tcl \ ++exec tclsh "$0" ${1+"$@"} ++ ++package require Tk ++package require Expect + + # Name: tkterm - terminal emulator using Expect and Tk text widget, v3.0 + # Author: Don Libes, July '94 diff --git a/expect.spec b/expect.spec new file mode 100644 index 0000000..10bb906 --- /dev/null +++ b/expect.spec @@ -0,0 +1,364 @@ +%define majversion %(echo %version | cut -d. -f1-2) + +Name: expect +Epoch: 1 +Version: 5.45.4 +Release: 1mamba +Summary: A tool for automating interactive applications +Group: System/Libraries +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: http://www.tcl.tk +Source0: http://downloads.sourceforge.net/project/expect/Expect/%{version}/expect%{version}.tar.gz +Patch2: expect-5.44.1-tcl8.5.patch +Patch3: expect-5.44.1-configure_no_escape_vars.patch +Patch5: expect-5.45-example-replace-expectk.patch +License: BSD +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: ldconfig +BuildRequires: libtcl-devel +## AUTOBUILDREQ-END +BuildRequires: libz-devel +BuildRequires: chrpath +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +Expect is a tool for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this stuff trivial. +Expect is also useful for testing these same applications. And by adding Tk, you can also wrap interactive applications in X11 GUIs. +Expect can make easy all sorts of tasks that are prohibitively difficult with anything else. +You will find that Expect is an absolutely invaluable tool - using it, you will be able to automate tasks that you've never even thought of before - and you'll be able to do this automation quickly and easily. + +%package devel +Summary: A tool for automating interactive applications +Group: Development/Libraries +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description devel +Expect is a tool for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this stuff trivial. +Expect is also useful for testing these same applications. And by adding Tk, you can also wrap interactive applications in X11 GUIs. +Expect can make easy all sorts of tasks that are prohibitively difficult with anything else. +You will find that Expect is an absolutely invaluable tool - using it, you will be able to automate tasks that you've never even thought of before - and you'll be able to do this automation quickly and easily. + +This package contains header files need for development. + +%package tk +Summary: A tool for automating interactive applications +Group: System/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description tk +Expect is a tool for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this stuff trivial. +Expect is also useful for testing these same applications. And by adding Tk, you can also wrap interactive applications in X11 GUIs. +Expect can make easy all sorts of tasks that are prohibitively difficult with anything else. +You will find that Expect is an absolutely invaluable tool - using it, you will be able to automate tasks that you've never even thought of before - and you'll be able to do this automation quickly and easily. + +This package contains tk frontends to expect. + +%package examples +Summary: A series of examples based on expect +Group: System/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description examples +Expect is a tool for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this stuff trivial. +Expect is also useful for testing these same applications. And by adding Tk, you can also wrap interactive applications in X11 GUIs. +Expect can make easy all sorts of tasks that are prohibitively difficult with anything else. +You will find that Expect is an absolutely invaluable tool - using it, you will be able to automate tasks that you've never even thought of before - and you'll be able to do this automation quickly and easily. + +This package contains a collection of examples based on expect. + +%debug_package + +%prep +%setup -q -n expect%{version} +#%patch2 -p1 +%patch3 -p1 +%patch5 -p1 +sed -i "s,| arm-\* |,| aarch64-\* | arm-\* |," tclconfig/config.sub + +%build +./configure \ + --host=%{_host} \ + --build=%{_build} \ + --prefix=%{_prefix} \ + --libdir=%{_libdir} \ + --mandir=%{_mandir} \ + --enable-shared \ +%ifarch x86_64 aarch64 + --enable-64bit +%endif + +%make + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +make install \ + DESTDIR=%{buildroot} + +## fix library installation +ln -s expect%{version}/libexpect%{version}.so %{buildroot}%{_libdir}/libexpect%{version}.so + +# install examples +cd example +sed -i "s|/depot/path/|%{_bindir}/|" * +sed -i "s|\.\./expect|%{_bindir}/expect|" * +install -m0755 \ + archie autoexpect autopasswd dislocate dvorak ftp-inband \ + ftp-rfc gethostbyaddr irsh kibitz lpunlock mkpasswd multixterm passmass \ + passwdprompt rftp rlogin-cwd robohunt telnet-cwd term_expect timed-read \ + timed-run tknewsbiff tkpasswd tkterm unbuffer virterm vrfy weather xkibitz xpstat \ + %{buildroot}%{_bindir} +cd .. + +#rm -fr %{buildroot}%{_libdir}/expect%{expect_version} + +# FIXME : hack to remove unsecure RPATH (%{buildroot}/usr/lib:/usr/X11R6/lib) +chrpath -d %{buildroot}%{_bindir}/expect + +# remove mann or rpm crashes for no really known reason +rm -rf %{buildroot}%{_mandir}/mann + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%{_bindir}/autoexpect +%{_bindir}/autopasswd +%{_bindir}/cryptdir +%{_bindir}/decryptdir +%{_bindir}/dislocate +%{_bindir}/expect +%{_bindir}/ftp-rfc +%{_bindir}/kibitz +%{_bindir}/lpunlock +%{_bindir}/mkpasswd +%{_bindir}/passmass +%{_bindir}/rftp +%{_bindir}/rlogin-cwd +%{_bindir}/timed-read +%{_bindir}/timed-run +%{_bindir}/unbuffer +%{_bindir}/weather +%{_bindir}/xkibitz +%{_libdir}/libexpect%{version}.so +%dir %{_libdir}/expect%{version} +%{_libdir}/expect%{version}/libexpect%{version}.so +%{_libdir}/expect%{version}/pkgIndex.tcl +%{_mandir}/man1/autoexpect.* +%{_mandir}/man1/cryptdir.1* +%{_mandir}/man1/decryptdir.1* +%{_mandir}/man1/dislocate.* +%{_mandir}/man1/expect.* +%{_mandir}/man1/kibitz.* +%{_mandir}/man1/mkpasswd.* +%{_mandir}/man1/passmass.* +%{_mandir}/man1/unbuffer.* +%{_mandir}/man1/xkibitz.* +%{_mandir}/man3/libexpect.3* + +%files tk +%defattr(-,root,root) +%{_bindir}/multixterm +%{_bindir}/tknewsbiff +%{_bindir}/tkpasswd +%{_bindir}/xpstat +%{_mandir}/man1/tknewsbiff.* +%{_mandir}/man1/multixterm.* + +%files devel +%defattr(-,root,root) +%{_includedir}/*.h +%doc ChangeLog FAQ HISTORY INSTALL NEWS README + +%files examples +%defattr(-,root,root) +%{_bindir}/archie +%{_bindir}/dvorak +%{_bindir}/ftp-inband +%{_bindir}/gethostbyaddr +%{_bindir}/irsh +%{_bindir}/passwdprompt +%{_bindir}/robohunt +%{_bindir}/telnet-cwd +%{_bindir}/term_expect +%{_bindir}/tkterm +%{_bindir}/virterm +%{_bindir}/vrfy + +%changelog +* Sat Jan 04 2020 Silvan Calarco 5.45.4-1mamba +- update to 5.45.4 + +* Fri Jan 03 2020 Silvan Calarco 8.6.10-3mamba +- rebuilt with current toolchain and --enable-64bit + +* Sat Nov 23 2019 Silvan Calarco 8.6.10-2mamba +- add tcktk package with common files for biarch support + +* Fri Nov 22 2019 Automatic Build System 8.6.10-1mamba +- automatic version update by autodist + +* Sat Jun 22 2019 Silvan Calarco 8.6.9-2mamba +- move tclConfig.sh from %{_libdir} to %{_prefix}/lib/tcl%{majversion} + +* Sat Nov 17 2018 Automatic Build System 8.6.9-1mamba +- automatic version update by autodist + +* Wed Aug 22 2018 Silvan Calarco 8.6.8-2mamba +- rebuilt with glibc >= 2.27 to remove deps on obsoleted libieee + +* Wed Dec 27 2017 Automatic Build System 8.6.8-1mamba +- automatic version update by autodist + +* Fri Aug 25 2017 Automatic Build System 8.6.7-1mamba +- automatic version update by autodist + +* Thu Jul 28 2016 Automatic Build System 8.6.6-1mamba +- automatic version update by autodist + +* Tue Mar 01 2016 Automatic Build System 8.6.5-1mamba +- automatic version update by autodist + +* Fri Mar 20 2015 Automatic Build System 8.6.4-1mamba +- automatic version update by autodist + +* Sat Nov 15 2014 Automatic Build System 8.6.3-1mamba +- automatic version update by autodist + +* Thu Sep 18 2014 Automatic Build System 8.6.2-1mamba +- automatic version update by autodist + +* Tue May 06 2014 Silvan Calarco 8.6.1-4mamba +- fix tools calling expect (can't find package Expect) + +* Sun Feb 09 2014 Silvan Calarco 8.6.1-3mamba +- remove sqlite pkg provided by libsqlite-tcl + +* Sat Sep 21 2013 Silvan Calarco 8.6.1-2mamba +- patch example requiring expectk which is no longer provided + +* Sat Sep 21 2013 Automatic Build System 8.6.1-1mamba +- automatic version update by autodist + +* Mon Jul 08 2013 Silvan Calarco 8.6.0-4mamba +- libtk-devel: don't provide/obsolete libtk85-devel +- expect: update to 5.45 +- fix conflicting files installed in wrong version dir %{_prefix}/lib/tcl8/8.5 + +* Tue Jul 02 2013 Silvan Calarco 8.6.0-3mamba +- add patch to fix libs in tk.pc + +* Tue Jul 02 2013 Silvan Calarco 8.6.0-2mamba +- remove requires/obsoletes for *85 version (provided by tcltk85 legacy packages) + +* Thu Jan 03 2013 Automatic Build System 8.6.0-1mamba +- automatic version update by autodist + +* Sat Nov 10 2012 Automatic Build System 8.5.13-1mamba +- automatic version update by autodist + +* Fri Jul 27 2012 Automatic Build System 8.5.12-1mamba +- automatic version update by autodist + +* Thu Nov 10 2011 Automatic Build System 8.5.11-1mamba +- automatic version update by autodist + +* Sat Jun 25 2011 Automatic Build System 8.5.10-1mamba +- automatic update by autodist + +* Tue Dec 14 2010 Davide Madrisan 8.5.9-2mamba +- libtcl: provide tcl (required to install some closed-source packages) +- libtk: provide tk + +* Thu Sep 09 2010 Automatic Build System 8.5.9-1mamba +- automatic update to 8.5.9 by autodist + +* Thu Sep 02 2010 Silvan Calarco 8.5.8-4mamba +- fixed alternatives installation in posttrans script + +* Thu Jun 03 2010 Silvan Calarco 8.5.8-3mamba +- added prereq for /usr/sbin/alternatives +- update to 5.44.1.15 from sourceforge.net/project/expect + +* Tue Mar 16 2010 Silvan Calarco 8.5.8-2mamba +- renamed from tcltk85 to tlctk obsoleting old package names + +* Wed Nov 18 2009 Automatic Build System 8.5.8-1mamba +- automatic update to 8.5.8 by autodist + +* Thu Apr 16 2009 Silvan Calarco 8.5.7-1mamba +- automatic update to 8.5.7 by autodist + +* Tue Dec 23 2008 Silvan Calarco 8.5.6-1mamba +- automatic update to 8.5.6 by autodist + +* Thu Oct 16 2008 Silvan Calarco 8.5.5-1mamba +- automatic update to 8.5.5 by autodist + +* Sun Aug 31 2008 Silvan Calarco 8.5.4-1mamba +- update to 8.5.4 + +* Fri May 09 2008 Silvan Calarco 8.5.2-1mamba +- update to 8.5.2 + +* Wed Nov 21 2007 Silvan Calarco 8.5b3-1mamba +- update to 8.5b3 + +* Tue Nov 20 2007 Silvan Calarco 8.5b2-1mamba +- update to 8.5b2 +- expect: update to 5.44.1 + +* Sun Apr 22 2007 Stefano Cotta Ramusino 8.4.14-2mamba +- specfile cleaned +- added missing header files in devel packages +- update expect to version 5.43.0 +- fixed shared library permissions +- update patches + +* Wed Apr 04 2007 Silvan Calarco 8.4.14-1mamba +- update to version 8.4.14 by autospec + +* Mon Jan 23 2006 Silvan Calarco 8.4.12-1qilnx +- update to version 8.4.12 by autospec + +* Tue Sep 27 2005 Davide Madrisan 8.4.11-2qilnx +- rebuilt + +* Mon Jul 11 2005 Silvan Calarco 8.4.11-1qilnx +- update to version 8.4.11 by autospec + +* Wed Jan 19 2005 Davide Madrisan 8.4.9-1qilnx +- update to version 8.4.9 by autospec +- patched autoconf to remove autoconf2.13 requirement +- updated the security patch for `expect' and `expectk' binaries +- fixed libraries permissions +- dinamically build the list of man pages for all the subpackages + +* Mon Aug 02 2004 Davide Madrisan 8.4.7-1qilnx +- update to 8.4.7 + +* Wed Mar 03 2004 Davide Madrisan 8.4.6-1qilnx +- rebuilt for 8.4.6 + +* Sat Feb 28 2004 Davide Madrisan 8.4.5-1qilnx +- Tcl and Tk updated to version 8.4.5; expect updated to version 5.40 +- extended specfile cleanups +- security fix: removed in `expect' and `expectk' the world writable runtime + library search path `{buildroot}%{_libdir}' (patch0) + +* Fri Aug 01 2003 Silvan Calarco 8.4.4-1qilnx +- rebuilt for 8.4.4 +- added expect + +* Thu May 15 2003 Alessandro Ramazzina 8.4.2-2qilnx +- delete tcllib package from the tcltk.spec file + +* Wed May 14 2003 Alessandro Ramazzina 8.4.2-1qilnx +- creation of tcltk package