diff options
-rw-r--r-- | lang/expect/Makefile | 25 | ||||
-rw-r--r-- | lang/expect/distinfo | 2 | ||||
-rw-r--r-- | lang/expect/files/patch-ac | 27 | ||||
-rw-r--r-- | lang/expect/pkg-descr | 419 | ||||
-rw-r--r-- | lang/expect/pkg-plist | 56 |
5 files changed, 75 insertions, 454 deletions
diff --git a/lang/expect/Makefile b/lang/expect/Makefile index 340687b64b44..b23bc0fb3cd7 100644 --- a/lang/expect/Makefile +++ b/lang/expect/Makefile @@ -1,32 +1,33 @@ # New ports collection makefile for: expect -# Version required: 5.18 +# Version required: 5.21 # Date created: 20 November 1994 # Whom: pst # -# $Id: Makefile,v 1.9 1996/02/07 05:10:25 jkh Exp $ +# $Id: Makefile,v 1.10 1996/02/07 09:36:41 asami Exp $ # -DISTNAME= expect-5.19 +DISTNAME= expect-5.21 CATEGORIES+= lang -MASTER_SITES= ftp://ftp.cme.nist.gov/pub/expect/ +MASTER_SITES= http://expect.nist.gov/ \ + ftp://expect.nist.gov/mel/div826/subject/expect/ DISTFILES= expect.tar.gz -LIB_DEPENDS= tcl\\.7\\.:${PORTSDIR}/lang/tcl \ - tk\\.3\\.:${PORTSDIR}/x11/tk +LIB_DEPENDS= tk41\\.1\\.:${PORTSDIR}/x11/tk41 test: @(cd ${WRKSRC}; make test) HAS_CONFIGURE= yes GNU_CONFIGURE= yes +CONFIGURE_ARGS= --enable-shared --with-tclconfig=/usr/libdata/tcl \ + --with-tclinclude=/usr/include/tcl +# Sigh, all this just to get tkInt.h.. post-extract: - (cd ${PORTSDIR}/lang/tcl && make extract) - ln -s ${PORTSDIR}/lang/tcl/work/tcl* ${WRKDIR} - (cd ${PORTSDIR}/x11/tk && make extract) - ln -s ${PORTSDIR}/x11/tk/work/tk* ${WRKDIR} + (cd ${PORTSDIR}/x11/tk41 && make extract) + ln -s ${PORTSDIR}/x11/tk41/work/tk* ${WRKDIR} -pre-install: - test -d ${PREFIX}/lib/expect || mkdir -p ${PREFIX}/lib/expect +post-install: + ldconfig -m ${PREFIX}/lib .include <bsd.port.mk> diff --git a/lang/expect/distinfo b/lang/expect/distinfo index 278daee51e28..67765e8a0a30 100644 --- a/lang/expect/distinfo +++ b/lang/expect/distinfo @@ -1 +1 @@ -MD5 (expect.tar.gz) = e807ec8e09748f70f5aad50311d53f3b +MD5 (expect.tar.gz) = c4fc1348fd31f216010c36d0030d7147 diff --git a/lang/expect/files/patch-ac b/lang/expect/files/patch-ac new file mode 100644 index 000000000000..f7a994c646d8 --- /dev/null +++ b/lang/expect/files/patch-ac @@ -0,0 +1,27 @@ +--- Makefile.in.orig Wed Apr 24 10:37:25 1996 ++++ Makefile.in Sun Apr 28 09:40:54 1996 +@@ -169,6 +169,7 @@ + + INSTALL = @INSTALL@ + INSTALL_PROGRAM = @INSTALL_PROGRAM@ ++INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_DATA = @INSTALL_DATA@ + + AR = ar +@@ -185,6 +186,7 @@ + "HDEFS=$(HDEFS)" \ + "INSTALL=$(INSTALL)" \ + "INSTALL_DATA=$(INSTALL_DATA)" \ ++ "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ + "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ + "LDFLAGS=$(LDFLAGS)" \ + "RUNTEST=$(RUNTEST)" \ +@@ -388,7 +390,7 @@ + ${srcdir}/mkinstalldirs $(bindir_arch_indep) $(man1dir) $(SCRIPTDIR) $(EXECSCRIPTDIR) + -for i in $(SCRIPT_LIST) ; do \ + if [ -f $$i ] ; then \ +- $(INSTALL_PROGRAM) $$i $(bindir_arch_indep)/$$i ; \ ++ $(INSTALL_SCRIPT) $$i $(bindir_arch_indep)/$$i ; \ + rm -f $$i ; \ + else true; fi ; \ + done diff --git a/lang/expect/pkg-descr b/lang/expect/pkg-descr index 892d798dfda1..c48c303eee83 100644 --- a/lang/expect/pkg-descr +++ b/lang/expect/pkg-descr @@ -1,415 +1,8 @@ --------------------- -Introduction --------------------- +Expect is a program that performs programmed dialogue with other +interactive programs. It is briefly described by its man page, expect(1). -This is the README file for Expect, a program that performs programmed -dialogue with other interactive programs. It is briefly described by -its man page, expect(1). This directory contains the source and man -page for Expect. - -This is Expect 5 for Tcl 7.0 thru 7.4. Tk 3.3 thru 4.0 are also -supported. If you have Expect 4 scripts, read the CHANGES.4to5 file. - --------------------- -Getting Started - The Preferable Way --------------------- - -A book on Expect is available from O'Reilly with the title "Exploring -Expect: A Tcl-Based Toolkit for Automating Interactive Applications", -ISBN 1-56592-090-2. - -The book is filled with detailed examples and explanations, and is a -comprehensive tutorial to Expect. The book also includes a tutorial -on Tcl written specifically for Expect users (so you don't have to -read the Expect papers, the debugger paper, Ousterhout's book, or the -man pages). Exploring Expect is 602 pages. - -If you have access to World Wide Web, here are some related URLs: - -one-paragraph description (from O'Reilly catalog): - http://www.ora.com/gnn/bus/ora/item/expect.html -one-page description (from back cover of book): - http://www.ora.com/gnn/bus/ora/item/expect.desc.html -front cover - picture and description: - http://www.ora.com/gnn/bus/ora/item/expect.cover.html - -To order: - Via email: order@ora.com - Via the web: http://www.ora.com/gnn/bus/ora/ordering/index.html - Via phone (Weekdays 6am-6pm PST): 800-889-9938 or 707-829-0515 - -Publisher's address: O'Reilly & Associates, Inc. - 103A Morris Street - Sebastopol, CA 95472 - - -O'Reilly also has available very pretty t-shirts with a blown-up -picture of the artwork from the front cover. - --------------------- -Getting Started - The Hacker Way --------------------- - -While the book is the best way to learn about Expect, it is not -absolutely necessary. There are man pages after all, plus I have -published numerous papers on Expect. All of these papers are in the -public domain and can be received free. If you are a hacker on a -tight budget, this may appeal to you. Nonetheless, I think you will -find the book pays for itself very quickly. It is much more readable -than the man pages, it includes well-written and explained examples, -and it describes everything in the papers as a coherent whole. The -concepts in the papers actually only make up a small fraction of the -book. - -The 1990 USENIX paper (see "Readings" below) is probably the best one -for understanding Expect conceptually. The 1991 Computing Systems and -the LISA IV papers provide a nice mix of examples. The only downside -is, the examples in these papers don't actually work anymore - some -aspects (e.g., syntax) of both Expect and Tcl have changed. The -papers still make interesting reading - just don't study the examples -too closely! Fortunately, most of the examples from the papers also -accompany this distribution - and all of these are up to date. - -For all the details, read the man page. It is long but you can get -started just by skimming the sections on the following commands: - - spawn (starts a process) - send (sends to a process) - expect (waits for output from a process) - interact (lets you interact with a process) - -To print out the Expect man page, invoke your local troff using the --man macros, such as either of: - - ptroff -man expect.man - ditroff -man expect.man - -If Expect is installed, you can read the man pages using the "usual" -man commands, such as "man expect". If not installed, view the man -page on your screen by saying something like: - - nroff -man expect.man | more - -Expect uses Tcl as the underlying language for expressing things such -as procedures, loops, file I/O, and arithmetic expressions. For many -simple scripts, it is not necessary to learn about Tcl. Just by -studying the examples, you will learn enough Tcl to get by. But if -you would like to learn more about Tcl or use it in your own -applications, read the Tcl README file which provides pointers to the -extensive Tcl documentation. Or read Exploring Expect. Chapter 2 of -Exploring Expect is a Tcl tutorial specifically designed for Expect -users. - -An interactive debugger is bundled with Expect. The debugger has its -own documentation that comes separately. It is listed in the Readings -below. Again, it is slightly out of date. An up-to-date description -of the debugger appears in Chapter 18 of Exploring Expect. This -chapter also contains additional advice and tips for debugging. - -You may get the feeling that the Expect documentation is somewhat -scattered and disorganized. This was true prior to publication of -Exploring Expect. The book contains everything you need to know, all -up-to-date, and with examples of every concept. (The book contains no -references to any of the Expect papers because none are necessary.) - ----------------------- -Examples ----------------------- - -This distribution contains many example scripts. (All of the -substantive examples in the book are included.) They can be found in -the example directory of this distribution. The README file in that -directory briefly describes all of the example scripts. Many of the -more sophisticated examples have man pages of their own. - -Other interesting scripts are available separately in the directory -pub/expect/scripts at ftp.cme.nist.gov. (See below for how to -retrieve these.) You are welcome to send me scripts to add to this -directory. A number of Expect scripts are also available in the Tcl -archive, available via anonymous ftp at ftp.aud.alcatel.com. - --------------------- -Readings on Expect --------------------- - -The implementation, philosophy, and design are discussed in "expect: -Curing Those Uncontrollable Fits of Interaction", Proceedings of the -Summer 1990 USENIX Conference, Anaheim, CA, June 11-15, 1990. - -Examples and discussion, specifically aimed at system administrators, -are in "Using expect to Automate System Administration Tasks", -Proceedings of the 1990 USENIX Large Systems Administration Conference -(LISA) IV, Colorado Springs, CO, October 17-19, 1990. - -A comprehensive paper of example scripts is "expect: Scripts for -Controlling Interactive Programs", Computing Systems, Vol. 4, No. 2, -University of California Press Journals, 1991. - -Regression and conformance testing is discussed in "Regression Testing -and Conformance Testing Interactive Programs", Proceedings of the -Summer 1992 USENIX Conference, San Antonio, TX, June 8-12, 1992. - -An explanation of some of the more interesting source code to an early -version of Expect is in Chapter 36 ("Expect") of "Obfuscated C and -Other Mysteries", John Wiley & Sons, ISBN 0-471-57805-3, January 1993. - -A paper on connecting multiple interactive programs together using -Expect is "Kibitz - Connecting Multiple Interactive Programs -Together", Software - Practice & Experience, Vol. 23, No. 5, May 1993. - -The debugger is discussed in "A Debugger for Tcl Applications", -Proceedings of the 1993 Tcl/Tk Workshop, Berkeley, CA, June 10-11, -1993. - -Using Expect with Tk is described in the paper "X Wrappers for -Non-Graphic Interactive Programs", Proceedings of Xhibition '94, San -Jose, CA, June 20-24, 1994. - -Simple techniques to allow secure handling of passwords in background -processes are covered in "Handling Passwords with Security and -Reliability in Background Processes", Proceedings of the 1994 USENIX -LISA VIII Conference, San Diego, CA, September 19-23, 1994. - --------------------- -How to Get the Latest Version of Expect or the Readings --------------------- - -Expect may be ftp'd as pub/expect/expect.tar.Z from ftp.cme.nist.gov. -Request email delivery by mailing to "library@cme.nist.gov". The -contents of the message should be (no subject line) "send -pub/expect/expect.tar.Z". (Development versions of Expect may -occasionally be made available as alpha.tar.Z in the same directory.) - -Once you have retrieved the system, read the INSTALL file. The papers -mentioned above can be retrieved separately as: - - pub/expect/seminal.ps.Z (USENIX '90 - Intro and Implementation) - pub/expect/sysadm.ps.Z (LISA '90 - System Administration) - pub/expect/scripts.ps.Z (Computing Systems '91 - Overview of Scripts) - pub/expect/regress.ps.Z (USENIX '92 - Testing) - pub/expect/kibitz.ps.Z (SP&E '93 - Automating Multiple - Interactive Programs Simultaneously) - pub/expect/tcl-debug.ps.Z (Tcl/Tk '93 - Tcl/Tk Debugger) - pub/expect/expectk.ps.Z (Xhibition '94 - Using Expect with Tk) - pub/expect/bgpasswd.ps.Z (LISA '94 - Passwds in Background Procs) - -The book "Exploring Expect" is described in more detail earlier in -this file. - -The book "Obfuscated C and Other Mysteries" is not on-line but is -available in bookstores or directly from the publisher (Wiley). - -Overhead transparencies I've used at conferences are also available in -the same way as the papers themselves. The transparencies are sketchy -and not meant for personal education - however if you are familiar -with Expect and just want to give a short talk on it to your -colleagues, you may find the transparencies useful. They vary in -length from 15 to 20 minutes in length. These are: - - pub/expect/seminal-talk.ps.Z (USENIX '90 - Intro and Implementation) - pub/expect/sysadm-talk.ps.Z (LISA '90 - System Administration) - pub/expect/regress-talk.ps.Z (USENIX '92 - Testing) - pub/expect/tcl-debug-talk.ps.Z (Tcl/Tk '93 - Tcl/Tk Debugger) - pub/expect/expectk-talk.ps.Z (Xhibition '94 - Expect + Tk = Expectk) - pub/expect/bgpasswd-talk.ps.Z (LISA '94 - Passwords in the Background) - -All of the documents are compressed PostScript files and should be -uncompressed and sent to a PostScript printer. The documents are -intended for printing at 8.5"x11" and may fail on some ISO A4 -printers. According to Hans Mayer <Hans.Mayer@gmd.de>, you can make -them A4-able by searching for "FMVERSION" and changing the next line -from: - - 1 1 0 0 612 792 0 1 13 FMDOCUMENT -to: - 1 1 0 0 594 841 0 1 13 FMDOCUMENT - - --------------------- -Using Expect with and without Tcl and/or Tk. --------------------- - -The usual way of using Expect is as a standalone program with Tcl as -the control language. Since you may already have Tcl, it is available -separately. Tcl may be retrieved as pub/expect/tcl.tar.Z in the same -way as described above for Expect. When new releases of Tcl appear, I -will try to check them out for Expect as soon as possible. If you -would like to get the newest Tcl release without waiting, ftp it from -ftp.smli.com (directory pub/tcl). - -Expect may also be built using the Tk library, a Tcl interface to the -X Window System. Tk is available in the same way as Tcl. - -It is possible to embed the Expect/Tcl core and optionally Tk in your -own C programs. This is described in libexpect(3). - -Expect can also be used from a C or C++ program without Tcl. This is -described in libexpect(3). While I consider this library to be easy -to use, the standalone Expect program is much, much easier to use than -working with the C compiler and its usual edit, compile, debug cycle. -Unlike typical programming, most of the debugging isn't getting the C -compiler to accept your programs - rather, it is getting the dialogue -correct. Also, translating scripts from Expect to C is usually not -necessary. For example, the speed of interactive dialogues is -virtually never an issue. So please try 'expect' first. It is a more -appropriate tool than the library for most people. - --------------------- -Systems Supported --------------------- - -I do not know of any UNIX systems on which Expect will not run. -Systems which do not support select or poll can use Expect, but -without the ability to run multiple processes simultaneously. I am -willing to work with you to complete a port. - -Before sending me changes, please download or verify that you have the -latest version of Expect (see above). Then send me a "diff -c" along -with a suitable English explanation. If your diff involves something -specific to a machine, give me diffs for configure.in as well or give -me a hint about when the diffs should be done so I can write the -configure support myself. Also please include the version of the OS -and whether it is beta, current, recent, or totally out-of-date and -unsupported. - --------------------- -Installing Expect --------------------- - -Expect comes with a configure script that provides for an automated -installation. I believe you will find that Expect is very easy to -install. (Tcl and Tk, too.) - -For more information, read the INSTALL file. - --------------------- -History --------------------- - -Expect was conceived of in September, 1987. The bulk of version 2 was -designed and written between January and April, 1990. Minor evolution -occurred after that until Tcl 6.0 was released. At that time -(October, 1991) approximately half of Expect was rewritten for version -3. See the HISTORY file for more information. The HISTORY file may -be retrieved separately as pub/expect/HISTORY. - -Around January 1993, an alpha version of Expect 4 was introduced. -This included Tk support as well as a large number of enhancements. A -few changes were made to the user interface itself, which is why the -major version number was changed. A production version of Expect 4 -was released in August 1993. - -In October 1993, an alpha version of Expect 5 was released to match -Tcl 7.0. A large number of enhancements were made, including some -changes to the user interface itself, which is why the major version -number was changed (again). This documentation and software -distribution is the production version of Expect 5 - initially -released in March '94. - -Some of the papers listed above correspond to earlier versions -although they are still good ways to learn about Expect. There are -important differences between Expect 3, 4, and 5. See the CHANGES.* -files if you want to read about them. Expect 4 has ceased further -development and is not supported. However, if for some reason you -want the old code, it is available from pub/expect/old as described -above. - -The book became available around January '95. It describes Expect 5 -as it is today, rather than how Expect 5 was when it was originally -released. Thus, if you have not upgraded Expect since before getting -the book, you should upgrade now. - --------------------- -Support from Don Libes or NIST --------------------- - -Although I can't promise anything in the way of support, I'd be -interested to hear about your experiences using it (good or bad). I'm -also interested in hearing bug reports and suggestions for improvement -even though I can't promise to implement them. - -If you send me a bug, fix, or question, include the version of Expect -(as reported by expect -d), version of Tcl, and name and version of -the OS that you are using. Before sending mail, it may be helpful to -verify that your problem still exists in the latest version. You can -check on the current release and whether it addresses your problems by -retrieving the latest HISTORY file (see "History" above). - - -Awards, love letters, and bug reports may be sent to: - -Don Libes -National Institute of Standards and Technology -Bldg 220, Rm A-127 -Gaithersburg, MD 20899 -(301) 975-3535 -libes@nist.gov - -I hereby place this software in the public domain. NIST and I would -appreciate credit if this program or parts of it are used. - -Design and implementation of this program was funded primarily by -myself. Funding contributors include the NIST Automated Manufacturing -Research Facility (funded by the Navy Manufacturing Technology -Program), the NIST Scientific and Technical Research Services, the -ARPA Persistent Object Bases project and the Computer-aided -Acquisition and the Logistic Support (CALS) program of the Office of -the Secretary of Defense. - -Especially signicant contributions were made by John Ousterhout, Henry -Spencer, and Rob Savoye. See the HISTORY file for others. - --------------------- -Support for Don Libes or NIST --------------------- - -NIST accepts external funding and other resources (hardware, software, -and personnel). This can be a fine way to work more closely with NIST -and encourage particular areas of research. - -Funding can be earmarked for specific purposes or for less-specific -purposes. For example, if you simply like the work I do, you can -contribute directly to my funding which will reduce the amount of time -I have to spend writing proposals and submitting them to other people -for funding on my own. - -I can also participate in the NIST Fellows program allowing me to -spend several months to a year working directly with your company and -potentially even at your location. I am also interested in returning -to an academic program. I presently have an MS and am hunting for -Ph.D. topics and advisors. Let me know if you have ideas or are -interested in being my advisor. - --------------------- -Commercial Support --------------------- - -Several companies provide commercial support for Expect. If your -company has a financial investment in Expect or you wish to be assured -of continuing support for Expect, you can buy a support contract this -way. These companies currently include: - -Cygnus Support -1937 Landings Drive -Mountain View, CA 94043 -+1 (415) 903-1400 -info@cygnus.com - -Computerized Processes Unlimited -4200 S. I-10 Service Rd., Suite 205 -Metairie, LA 70006 -+1 (504) 889-2784 -info@cpu.com - -Neither NIST nor I have any commercial relationship with these -companies. Cygnus is in the process of signing an agreement with NIST -that describes its non-exclusive position to support Expect. Other -companies are welcome to apply for such an agreement or other kinds of -agreements such as permission-to-use. Strictly speaking, such -agreements are not necessary, however they make us look good to our -funding source, the U.S. Congress. - -Note that Cygnus does not sell support for Expect explicitly. But -they will support Expect if you buy support for their DejaGnu product -which is a testing framework built on top of Expect. +It uses pseudo-tty's to control the child processes, so it is not affected +by programs that refuse to read from stdin or pipes. (eg: passwd(1) etc). +The Expect home page is: http://expect.nist.gov +The Expect FAQ is: http://expect.nist.gov/FAQ.html diff --git a/lang/expect/pkg-plist b/lang/expect/pkg-plist index b1f78a3fb4a8..d7f0c992b1a0 100644 --- a/lang/expect/pkg-plist +++ b/lang/expect/pkg-plist @@ -1,42 +1,42 @@ +bin/autoexpect +bin/autopasswd +bin/cryptdir +bin/decryptdir +bin/dislocate bin/expect bin/expectk -bin/timed-run -bin/timed-read bin/ftp-rfc -bin/autopasswd +bin/kibitz bin/lpunlock -bin/weather +bin/mkpasswd bin/passmass bin/rftp -bin/kibitz bin/rlogin-cwd -bin/xpstat -bin/tkpasswd -bin/dislocate -bin/xkibitz +bin/timed-read +bin/timed-run bin/tknewsbiff +bin/tkpasswd bin/unbuffer -bin/mkpasswd -bin/cryptdir -bin/decryptdir -bin/autoexpect -lib/libexpect.a -lib/libexpectk.a -man/man1/expectk.1 +bin/weather +bin/xkibitz +bin/xpstat +include/Dbg.h +include/expect.h +include/expect_comm.h +include/expect_tcl.h +lib/expect5.21/pkgIndex.tcl +lib/libexpect521.a +lib/libexpect521.so.1.0 +man/man1/autoexpect.1 +man/man1/cryptdir.1 +man/man1/decryptdir.1 +man/man1/dislocate.1 man/man1/expect.1 +man/man1/expectk.1 man/man1/kibitz.1 -man/man1/dislocate.1 -man/man1/xkibitz.1 -man/man1/tknewsbiff.1 -man/man1/unbuffer.1 man/man1/mkpasswd.1 man/man1/passmass.1 -man/man1/cryptdir.1 -man/man1/decryptdir.1 -man/man1/autoexpect.1 +man/man1/tknewsbiff.1 +man/man1/unbuffer.1 +man/man1/xkibitz.1 man/man3/libexpect.3 -include/expect_cf.h -include/expect.h -include/expect_tcl.h -include/expect_comm.h -include/Dbg.h |