[Pkg-tcltk-commits] r1885 - in expect/trunk/debian: . patches
sgolovan at alioth.debian.org
sgolovan at alioth.debian.org
Thu Oct 26 08:36:48 UTC 2017
Author: sgolovan
Date: 2017-10-26 08:36:48 +0000 (Thu, 26 Oct 2017)
New Revision: 1885
Added:
expect/trunk/debian/patches/28-cross.patch
Removed:
expect/trunk/debian/patches/23-memmove.patch
expect/trunk/debian/patches/25-matchlen.patch
expect/trunk/debian/patches/27-exp_chan.patch
Modified:
expect/trunk/debian/changelog
expect/trunk/debian/compat
expect/trunk/debian/control
expect/trunk/debian/patches/10-manpage.patch
expect/trunk/debian/patches/13-implicit-defs.patch
expect/trunk/debian/patches/26-eof-handling.patch
expect/trunk/debian/patches/series
expect/trunk/debian/rules
expect/trunk/debian/tcl-expect-dev.links.in
expect/trunk/debian/tcl-expect.links.in
Log:
[expect]
* New upstream release.
* Remove patches which are were taken from upstream.
* Demote tk8.6 from recommended to suggested in the expect dependencies
list (closes: #876018).
* Apply patch by Helmut Grohne which replaces a few calls to AC_TRY_RUN
in the configure.in script to make the package cross compilable
(closes: #873730).
* Bumped the debhelper compatibility version to 10.
* Remove the now useless build-dependency on autotools-dev.
* Bumped standards version to 4.1.1.
Modified: expect/trunk/debian/changelog
===================================================================
--- expect/trunk/debian/changelog 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/changelog 2017-10-26 08:36:48 UTC (rev 1885)
@@ -1,8 +1,17 @@
-expect (5.45-9) UNRELEASED; urgency=medium
+expect (5.45.3-1) unstable; urgency=medium
- * NOT RELEASED YET
+ * New upstream release.
+ * Remove patches which are were taken from upstream.
+ * Demote tk8.6 from recommended to suggested in the expect dependencies
+ list (closes: #876018).
+ * Apply patch by Helmut Grohne which replaces a few calls to AC_TRY_RUN
+ in the configure.in script to make the package cross compilable
+ (closes: #873730).
+ * Bumped the debhelper compatibility version to 10.
+ * Remove the now useless build-dependency on autotools-dev.
+ * Bumped standards version to 4.1.1.
- -- Sergei Golovan <sgolovan at debian.org> Sat, 15 Jul 2017 08:37:32 +0300
+ -- Sergei Golovan <sgolovan at debian.org> Thu, 26 Oct 2017 11:14:59 +0300
expect (5.45-8) unstable; urgency=medium
Modified: expect/trunk/debian/compat
===================================================================
--- expect/trunk/debian/compat 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/compat 2017-10-26 08:36:48 UTC (rev 1885)
@@ -1 +1 @@
-9
+10
Modified: expect/trunk/debian/control
===================================================================
--- expect/trunk/debian/control 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/control 2017-10-26 08:36:48 UTC (rev 1885)
@@ -2,10 +2,9 @@
Section: interpreters
Priority: optional
Maintainer: Sergei Golovan <sgolovan at debian.org>
-Build-Depends: debhelper (>= 9.0.0), dpkg-dev (>= 1.16.1~), autotools-dev,
- autoconf, tcl8.6-dev
+Build-Depends: debhelper (>= 10.0.0), dpkg-dev (>= 1.16.1~), autoconf, tcl8.6-dev
Build-Conflicts: autoconf2.13
-Standards-Version: 4.0.0
+Standards-Version: 4.1.1
Homepage: http://sourceforge.net/projects/expect/
Package: expect
@@ -14,7 +13,8 @@
Conflicts: expect-dev
Provides: expect-dev
Replaces: expect-dev
-Recommends: tcl8.6, tk8.6
+Recommends: tcl8.6
+Suggests: tk8.6
Multi-Arch: foreign
Description: Automates interactive applications
Expect is a tool for automating interactive applications according to a script.
Modified: expect/trunk/debian/patches/10-manpage.patch
===================================================================
--- expect/trunk/debian/patches/10-manpage.patch 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/patches/10-manpage.patch 2017-10-26 08:36:48 UTC (rev 1885)
@@ -17,17 +17,7 @@
The
.B \-c
-@@ -173,7 +173,8 @@
- .B \-b
- flag.
- (When using Expectk, this option is specified as
--.BR \-buffer .) Note that stdio-buffering may still take place however this shouldn't cause problems when reading from a fifo or stdin.
-+.BR \-buffer .) Note that stdio-buffering may still take place however this
-+shouldn't cause problems when reading from a fifo or stdin.
- .PP
- If the string "\-" is supplied as a filename, standard input is read instead.
- (Use "./\-" to read from a file actually named "\-".)
-@@ -207,7 +208,7 @@
+@@ -209,7 +209,7 @@
original arguments (including the script name) in the variable
.IR argv .
@@ -36,7 +26,7 @@
Note that the usual getopt(3) and execve(2) conventions must be observed
when adding arguments to the #! line.
-@@ -291,7 +292,7 @@
+@@ -293,7 +293,7 @@
program.)
.I
.TP 6
@@ -45,7 +35,7 @@
closes the connection to the current process.
Most interactive programs will detect EOF on their stdin and exit;
thus
-@@ -320,7 +321,7 @@
+@@ -322,7 +322,7 @@
The
.B \-slave
@@ -54,7 +44,7 @@
When the connection is closed, the slave is automatically closed as
well if still open.
-@@ -337,7 +338,7 @@
+@@ -339,7 +339,7 @@
.B wait
below for more info.
.TP
@@ -63,7 +53,7 @@
controls a Tcl debugger allowing you to step through statements, set
breakpoints, etc.
-@@ -355,7 +356,7 @@
+@@ -357,7 +357,7 @@
The
.B debug
command does not change any traps. Compare this to starting Expect with the
@@ -72,7 +62,7 @@
flag (see above).
See the README file or SEE ALSO (below)
-@@ -385,7 +386,7 @@
+@@ -387,7 +387,7 @@
.nf
send_user "password?\\ "
@@ -81,7 +71,7 @@
for {} 1 {} {
if {[fork]!=0} {sleep 3600;continue}
disconnect
-@@ -452,7 +453,7 @@
+@@ -454,7 +454,7 @@
.B exit
is implicitly executed if the end of the script is reached.
.TP
@@ -90,7 +80,7 @@
The command
.B exp_continue
allows
-@@ -462,7 +463,7 @@
+@@ -464,7 +464,7 @@
default
.B exp_continue
resets the timeout timer. The
@@ -99,7 +89,7 @@
flag prevents timer from being restarted. (See
.B expect
for more information.)
-@@ -625,8 +626,8 @@
+@@ -627,8 +627,8 @@
be used to protect patterns that might otherwise match
.B expect
flags from doing so.
@@ -110,7 +100,7 @@
.IP
For example, the following fragment looks for a successful login.
-@@ -733,7 +734,7 @@
+@@ -735,7 +735,7 @@
through
.IR expect_out(9,string) .
If the
@@ -119,7 +109,7 @@
flag is used before a pattern,
the starting and ending indices (in a form suitable for
.BR lrange )
-@@ -780,7 +781,7 @@
+@@ -782,7 +782,7 @@
set expect_out(buffer) abbbcabkkkk
.fi
@@ -128,7 +118,7 @@
flush the output buffer without reading any more output from the
process.
.IP
-@@ -788,7 +789,7 @@
+@@ -790,7 +790,7 @@
This may be prevented by prefixing a pattern with the
.B \-notransfer
flag. This flag is especially useful in experimenting (and can be
@@ -137,7 +127,7 @@
The spawn id associated with the matching output (or eof or
full_buffer) is stored in
-@@ -872,9 +873,9 @@
+@@ -874,9 +874,9 @@
expect {
Password: {
@@ -149,7 +139,7 @@
send_user "\\n"
send "$expect_out(1,string)\\r"
stty echo
-@@ -889,7 +890,7 @@
+@@ -891,7 +891,7 @@
send_user \\
"connection to host failed: $expect_out(buffer)"
exit
@@ -158,7 +148,7 @@
}
.fi
-@@ -1021,14 +1022,14 @@
+@@ -1023,14 +1023,14 @@
By default, it reports on the current spawn id. An optional spawn id specification may be given for information on that spawn id. For example
.nf
@@ -176,7 +166,7 @@
The output of the \-info flag can be reused as the argument to expect_before.
.TP
-@@ -1121,7 +1122,7 @@
+@@ -1123,7 +1123,7 @@
.ta \w' interact 'u +\w'$CTRLZ 'u +\w'{'u
set CTRLZ \\032
interact {
@@ -185,7 +175,7 @@
\\001 {send_user "you typed a control\-A\\n";
send "\\001"
}
-@@ -1150,8 +1151,8 @@
+@@ -1152,8 +1152,8 @@
flag may be used to protect patterns that might otherwise match
.B interact
flags from doing so.
@@ -196,7 +186,7 @@
The
.B \-re
-@@ -1197,7 +1198,7 @@
+@@ -1199,7 +1199,7 @@
messages:
.nf
@@ -205,7 +195,7 @@
$spawn_id
.fi
-@@ -1296,9 +1297,9 @@
+@@ -1298,9 +1298,9 @@
.nf
interact {
@@ -218,7 +208,7 @@
}
.fi
-@@ -1314,11 +1315,11 @@
+@@ -1316,11 +1316,11 @@
.nf
proc lognumber {} {
@@ -232,7 +222,7 @@
.fi
.IP
-@@ -1389,7 +1390,7 @@
+@@ -1391,7 +1391,7 @@
command, except that any_spawn_id is not meaningful in
.BR interact .)
All following flags and
@@ -241,7 +231,7 @@
If no
.B \-input
appears,
-@@ -1427,7 +1428,7 @@
+@@ -1429,7 +1429,7 @@
It is possible to change the processes that are being interacted with
by using indirect spawn ids. (Indirect spawn ids are described in the
section on the expect command.) Indirect spawn ids may be specified
@@ -250,7 +240,7 @@
.TP
.B interpreter " [args]"
causes the user to be interactively prompted for
-@@ -1513,18 +1514,18 @@
+@@ -1515,18 +1515,18 @@
flag.
The
@@ -272,7 +262,7 @@
flag causes log_user to return a description of the
most recent non-info arguments given.
.TP
-@@ -1645,7 +1646,7 @@
+@@ -1647,7 +1647,7 @@
Any string can be preceded by "\-\-" whether or not it actually looks
like a flag. This provides a reliable mechanism to specify variable strings
without being tripped up by those that accidentally look like flags.
@@ -281,7 +271,7 @@
The
.B \-i
-@@ -1669,7 +1670,7 @@
+@@ -1671,7 +1671,7 @@
The
.B \-break
flag generates a break condition. This only makes sense if the spawn
@@ -290,7 +280,7 @@
spawned a process such as tip, you should use tip's convention for
generating a break.
-@@ -1772,7 +1773,7 @@
+@@ -1774,7 +1774,7 @@
except that the output is sent to stderr rather than the current
process.
.TP
@@ -299,7 +289,7 @@
is like
.BR send ,
except that the string is only sent to the log file (see
-@@ -1949,7 +1950,7 @@
+@@ -1951,7 +1951,7 @@
The variable
.I spawn_out(slave,fd)
is set to a file identifier corresponding to the pty slave.
@@ -308,7 +298,7 @@
The
.B \-ignore
-@@ -1976,7 +1977,7 @@
+@@ -1978,7 +1978,7 @@
.fi
The
@@ -317,7 +307,7 @@
flag causes strace to return a description of the
most recent non-info arguments given.
.TP
-@@ -2016,7 +2017,7 @@
+@@ -2018,7 +2018,7 @@
stty \-echo
send_user "Password: "
@@ -326,7 +316,7 @@
set password $expect_out(1,string)
stty echo
-@@ -2151,7 +2152,7 @@
+@@ -2153,7 +2153,7 @@
trap exit {SIGINT SIGTERM}
.fi
@@ -335,7 +325,7 @@
to start the interactive debugger. This is due to the following trap:
.nf
-@@ -2192,9 +2193,9 @@
+@@ -2194,9 +2194,9 @@
normally returns a list of four integers.
The first integer is the pid of the process that was waited upon.
The second integer is the corresponding spawn id.
@@ -347,7 +337,7 @@
the value of errno set by the operating system. The global variable
errorCode is also set.
-@@ -2210,7 +2211,7 @@
+@@ -2212,7 +2212,7 @@
flag declares the process to wait corresponding to the named spawn_id
(NOT the process id).
Inside a SIGCHLD handler,
@@ -356,7 +346,7 @@
The
.B \-nowait
-@@ -2221,7 +2222,7 @@
+@@ -2223,7 +2223,7 @@
The
.B wait
command may also be used wait for a forked process using the arguments
@@ -365,7 +355,7 @@
executed at any time. There is no control over which process is
reaped. However, the return value can be checked for the process id.
-@@ -2372,7 +2373,7 @@
+@@ -2374,7 +2374,7 @@
.nf
set env(SHELL) /bin/sh
@@ -374,7 +364,7 @@
.fi
-@@ -2425,7 +2426,7 @@
+@@ -2427,7 +2427,7 @@
to set a flag in the trap code. Then check the flag immediately after
the command (i.e., sleep).
@@ -383,7 +373,7 @@
concept of timeouts in general.
.SH "EXPECT HINTS"
-@@ -2447,7 +2448,7 @@
+@@ -2449,7 +2449,7 @@
set prompt "(%|#|\\\\$) $" ;# default prompt
catch {set prompt $env(EXPECT_PROMPT)}
Modified: expect/trunk/debian/patches/13-implicit-defs.patch
===================================================================
--- expect/trunk/debian/patches/13-implicit-defs.patch 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/patches/13-implicit-defs.patch 2017-10-26 08:36:48 UTC (rev 1885)
@@ -57,8 +57,8 @@
+EXTERN void exp_ecmd_remove_state_direct_and_indirect _ANSI_ARGS_((Tcl_Interp *interp,ExpState *esPtr));
EXTERN void expChannelInit _ANSI_ARGS_((void));
EXTERN int expChannelCountGet _ANSI_ARGS_((void));
-
-@@ -337,6 +341,8 @@
+ EXTERN int expChannelStillAlive _ANSI_ARGS_((ExpState *, char *));
+@@ -338,6 +342,8 @@
EXTERN ExpState * expStdinoutGet _ANSI_ARGS_((void));
EXTERN ExpState * expDevttyGet _ANSI_ARGS_((void));
@@ -67,7 +67,7 @@
/* generic functions that really should be provided by Tcl */
#if 0 /* Redefined as macros. */
EXTERN int expSizeGet _ANSI_ARGS_((ExpState *));
-@@ -348,6 +354,8 @@
+@@ -349,6 +355,8 @@
#define EXP_CMDINFO_CLOSE "expect/cmdinfo/close"
#define EXP_CMDINFO_RETURN "expect/cmdinfo/return"
Deleted: expect/trunk/debian/patches/23-memmove.patch
===================================================================
--- expect/trunk/debian/patches/23-memmove.patch 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/patches/23-memmove.patch 2017-10-26 08:36:48 UTC (rev 1885)
@@ -1,17 +0,0 @@
-Author: Per Cederqvist <ceder at lysator.liu.se>
-Description: Fix for copying overlapping memory area.
-Last-Modified: Mon, 04 Nov 2013 08:23:51 +0400
-Bug-Debian: http://bugs.debian.org/728663
-Bug: https://sourceforge.net/p/expect/patches/16/
-
---- a/expect.c
-+++ b/expect.c
-@@ -1094,7 +1094,7 @@
- /* shift remaining elements down */
- /* but only if there are any left */
- if (i+1 != ecmd->ecd.count) {
-- memcpy(&ecmd->ecd.cases[i],
-+ memmove(&ecmd->ecd.cases[i],
- &ecmd->ecd.cases[i+1],
- ((ecmd->ecd.count - i) - 1) *
- sizeof(struct exp_cmd_descriptor *));
Deleted: expect/trunk/debian/patches/25-matchlen.patch
===================================================================
--- expect/trunk/debian/patches/25-matchlen.patch 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/patches/25-matchlen.patch 2017-10-26 08:36:48 UTC (rev 1885)
@@ -1,19 +0,0 @@
-Author: Upstream
-Description: Report and fix by Mutsuhito Iikura. 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).
-Last-Modified: Fri, 23 Oct 2015 11:07:19 +0300
-Bug: http://sourceforge.net/p/expect/bugs/76/
-
---- a/expect.c
-+++ b/expect.c
-@@ -979,7 +979,7 @@
- /* condition is (size >= max*2/3) <=> (size*3 >= max*2) */
- if (((expSizeGet(esPtr)*3) >= (esPtr->input.max*2)) && (numchars > 0)) {
- o->e = e;
-- o->matchlen = numchars;
-+ o->matchlen = numchars/3;
- o->matchbuf = str;
- o->esPtr = esPtr;
- expDiagLogU(yes);
Modified: expect/trunk/debian/patches/26-eof-handling.patch
===================================================================
--- expect/trunk/debian/patches/26-eof-handling.patch 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/patches/26-eof-handling.patch 2017-10-26 08:36:48 UTC (rev 1885)
@@ -8,26 +8,12 @@
--- a/expect.c
+++ b/expect.c
-@@ -1860,19 +1860,11 @@
- if (cc == EXP_DATA_NEW) {
+@@ -1861,7 +1861,7 @@
/* try to read it */
cc = expIRead(interp,esPtr,timeout,tcl_set_flags);
--
-- /* the meaning of 0 from i_read means eof. Muck with it a */
-- /* little, so that from now on it means "no new data arrived */
-- /* but it should be looked at again anyway". */
-- if (cc == 0) {
-+
+
+- if (Tcl_Eof(esPtr->channel)) {
+ if (cc == 0 && Tcl_Eof(esPtr->channel)) {
cc = EXP_EOF;
-- } else if (cc > 0) {
-- /* successfully read data */
-- } else {
-- /* failed to read data - some sort of error was encountered such as
-- * an interrupt with that forced an error return
-- */
}
-+
} else if (cc == EXP_DATA_OLD) {
- cc = 0;
- } else if (cc == EXP_RECONFIGURE) {
Deleted: expect/trunk/debian/patches/27-exp_chan.patch
===================================================================
--- expect/trunk/debian/patches/27-exp_chan.patch 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/patches/27-exp_chan.patch 2017-10-26 08:36:48 UTC (rev 1885)
@@ -1,131 +0,0 @@
-Author: Upstream
-Description: Combination of 3 patches for unreleased Expect 5.45.1.
- 1) A patch sent in by Ogawa Hirofumi. The patch fixes a problem when
- talking a tty where the writer has died. Some operating systems
- report the condition as EIO with nothing read, while this
- actually an EOF. Without the patch the returned data is
- incomplete due to the error reported immediately and dropping
- data in buffers.
- 2) A patch by Michael Cleverly fixing a problem with the
- iteration over the expect channel list where the loop code may
- modify the list, breaking the iterator.
- 3) A patch by Michael Cleverly fixing problem with an insufficient
- test for a lost channel in exp_background_channelhandler().
-Last-Modified: Fri, 23 Oct 2015 11:24:33 +0300
-
---- a/expect.c
-+++ b/expect.c
-@@ -2495,8 +2495,12 @@
- */
-
- /* First check that the esPtr is even still valid! */
-- /* This ought to be sufficient. */
-- if (0 == Tcl_GetChannel(interp,backup,(int *)0)) {
-+ /*
-+ * It isn't sufficient to just check that 'Tcl_GetChannel' still knows about
-+ * backup since it is possible that esPtr was lost in the background AND
-+ * another process spawned and reassigned the same name.
-+ */
-+ if (!expChannelStillAlive(esPtr, backup)) {
- expDiagLog("expect channel %s lost in background handler\n",backup);
- return;
- }
---- a/exp_chan.c
-+++ b/exp_chan.c
-@@ -218,6 +218,11 @@
-
- bytesRead = read(esPtr->fdin, buf, (size_t) toRead);
- /*printf("ExpInputProc: read(%d,,) = %d\r\n",esPtr->fdin,bytesRead);*/
-+
-+ /* Emulate EOF on tty for tcl */
-+ if ((bytesRead == -1) && (errno == EIO) && isatty(esPtr->fdin)) {
-+ bytesRead = 0;
-+ }
- if (bytesRead > -1) {
- /* strip parity if requested */
- if (esPtr->parity == 0) {
-@@ -448,6 +453,34 @@
- ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
- return tsdPtr->channelCount;
- }
-+
-+int
-+expChannelStillAlive(esBackupPtr, backupName)
-+ ExpState *esBackupPtr;
-+ char *backupName;
-+{
-+ ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
-+ ExpState *esPtr;
-+
-+ /*
-+ * This utility function is called from 'exp_background_channelhandler'
-+ * and checks to make sure that backupName can still be found in the
-+ * channels linked list at the same address as before.
-+ *
-+ * If it can't be (or if the memory address has changed) then it
-+ * means that it was lost in the background (and possibly another
-+ * channel was opened and reassigned the same name).
-+ */
-+
-+ for (esPtr = tsdPtr->firstExpPtr; esPtr; esPtr = esPtr->nextPtr) {
-+ if (0 == strcmp(esPtr->name, backupName))
-+ return (esPtr == esBackupPtr);
-+ }
-+
-+ /* not found; must have been lost in the background */
-+ return 0;
-+}
-+
- #if 0 /* Converted to macros */
- int
- expSizeGet(esPtr)
-@@ -603,12 +636,38 @@
- {
- ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
- ExpState *esPtr;
-+ ExpState *esNextPtr;
-+ ExpState *esPriorPtr = 0;
-
- /* kick off any that already have input waiting */
-- for (esPtr = tsdPtr->firstExpPtr;esPtr;esPtr = esPtr->nextPtr) {
-+ for (esPtr = tsdPtr->firstExpPtr;esPtr; esPriorPtr = esPtr, esPtr = esPtr->nextPtr) {
- /* is bg_interp the best way to check if armed? */
- if (esPtr->bg_interp && !expSizeZero(esPtr)) {
-+ /*
-+ * We save the nextPtr in a local variable before calling
-+ * 'exp_background_channelhandler' since in some cases
-+ * 'expStateFree' could end up getting called before it
-+ * returns, leading to a likely segfault on the next
-+ * interaction through the for loop.
-+ */
-+ esNextPtr = esPtr->nextPtr;
- exp_background_channelhandler((ClientData)esPtr,0);
-+ if (esNextPtr != esPtr->nextPtr) {
-+ /*
-+ * 'expStateFree' must have been called from
-+ * underneath us so we know that esPtr->nextPtr is
-+ * invalid. However, it is possible that either the
-+ * original nextPtr and/or the priorPtr have been
-+ * freed too. If the esPriorPtr->nextPtr is now
-+ * esNextPtr it seems safe to proceed. Otherwise we
-+ * break and end early for safety.
-+ */
-+ if (esPriorPtr && esPriorPtr->nextPtr == esNextPtr) {
-+ esPtr = esPriorPtr;
-+ } else {
-+ break; /* maybe set esPtr = tsdPtr->firstExpPtr again? */
-+ }
-+ }
- }
- }
- }
---- a/exp_command.h
-+++ b/exp_command.h
-@@ -248,6 +248,7 @@
- EXTERN void exp_ecmd_remove_state_direct_and_indirect _ANSI_ARGS_((Tcl_Interp *interp,ExpState *esPtr));
- EXTERN void expChannelInit _ANSI_ARGS_((void));
- EXTERN int expChannelCountGet _ANSI_ARGS_((void));
-+EXTERN int expChannelStillAlive _ANSI_ARGS_((ExpState *, char *));
-
- EXTERN int exp_tcl2_returnvalue _ANSI_ARGS_((int));
- EXTERN int exp_2tcl_returnvalue _ANSI_ARGS_((int));
Added: expect/trunk/debian/patches/28-cross.patch
===================================================================
--- expect/trunk/debian/patches/28-cross.patch (rev 0)
+++ expect/trunk/debian/patches/28-cross.patch 2017-10-26 08:36:48 UTC (rev 1885)
@@ -0,0 +1,265 @@
+From: Helmut Grohne <helmut at subdivi.de>
+Subject: make cross compilation work
+
+This patch essentially replaces most AC_TRY_RUN with something "better".
+Dependening on the use case that may be AC_TRY_COMPILE, AC_COMPUTE_INT or even
+AC_CHECK_TYPE. Uses beyond cross compilation:
+ * Significant simplification of the code.
+ * Some checks become cacheable.
+
+Index: expect-5.45/configure.in
+===================================================================
+--- expect-5.45.orig/configure.in
++++ expect-5.45/configure.in
+@@ -467,47 +467,32 @@
+ # and if so that WNOHANG is not defined. The only place I've
+ # seen this is ISC.
+ AC_MSG_CHECKING([if WNOHANG requires _POSIX_SOURCE])
+-AC_TRY_RUN([
++AC_TRY_COMPILE([
+ #include <sys/wait.h>
+-main() {
++],[
+ #ifndef WNOHANG
+- return 0;
+-#else
+- return 1;
++#error WNOHANG missing
+ #endif
+-}],
+- AC_MSG_RESULT(yes)
+- AC_DEFINE(WNOHANG_REQUIRES_POSIX_SOURCE)
+-,
++],
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_MSG_RESULT(yes)
++ AC_DEFINE(WNOHANG_REQUIRES_POSIX_SOURCE)
+ )
+
+ AC_MSG_CHECKING([if any value exists for WNOHANG])
+ rm -rf wnohang
+-AC_TRY_RUN([
++AC_COMPUTE_INT(WNOHANG_BACKUP_VALUE, WNOHANG, [
+ #include <stdio.h>
+ #include <sys/wait.h>
+-main() {
+-#ifdef WNOHANG
+- FILE *fp = fopen("wnohang","w");
+- fprintf(fp,"%d",WNOHANG);
+- fclose(fp);
+- return 0;
+-#else
+- return 1;
+-#endif
+-}],
+- AC_MSG_RESULT(yes)
+- AC_DEFINE_UNQUOTED(WNOHANG_BACKUP_VALUE, `cat wnohang`)
+- rm -f wnohang
+-,
+- AC_MSG_RESULT(no)
++],[WNOHANG_BACKUP_VALUE=no])
++if "$WNOHANG_BACKUP_VALUE" = "no"; then
+ AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
+-,
+- AC_MSG_ERROR([Expect can't be cross compiled])
+-)
++ AC_MSG_RESULT(no)
++else
++ AC_DEFINE_UNQUOTED(WNOHANG_BACKUP_VALUE, [$WNOHANG_BACKUP_VALUE])
++ AC_MSG_RESULT(yes)
++fi
+
+ #
+ # check how signals work
+@@ -711,22 +696,12 @@
+ fi
+
+ # first check for the pure bsd
+-AC_MSG_CHECKING([for struct sgttyb])
+-AC_TRY_RUN([
+-#include <sgtty.h>
+-main()
+-{
+- struct sgttyb tmp;
+- exit(0);
+-}],
+- AC_MSG_RESULT(yes)
++AC_CHECK_TYPE([struct sgttyb],[
+ AC_DEFINE(HAVE_SGTTYB)
+ PTY_TYPE=sgttyb
+-,
+- AC_MSG_RESULT(no)
+-,
+- AC_MSG_ERROR([Expect can't be cross compiled])
+-)
++],[],[
++#include <sgtty.h>
++])
+
+ # mach systems have include files for unimplemented features
+ # so avoid doing following test on those systems
+@@ -736,109 +711,77 @@
+ # note that if we detect termio.h (only), we still set PTY_TYPE=termios
+ # since that just controls which of pty_XXXX.c file is use and
+ # pty_termios.c is set up to handle pty_termio.
+- AC_MSG_CHECKING([for struct termio])
+- AC_TRY_RUN([#include <termio.h>
+- main()
+- {
+- struct termio tmp;
+- exit(0);
+- }],
++ AC_CHECK_TYPE([struct termio],[
+ AC_DEFINE(HAVE_TERMIO)
+ PTY_TYPE=termios
+- AC_MSG_RESULT(yes)
+-,
+- AC_MSG_RESULT(no)
+-,
+- AC_MSG_ERROR([Expect can't be cross compiled])
+-)
++],[],[
++#include <termio.h>
++])
+
+ # now check for the new style ttys (not yet posix)
+- AC_MSG_CHECKING([for struct termios])
+- AC_TRY_RUN([
++ AC_CHECK_TYPE([struct termios],[
++ AC_DEFINE(HAVE_TERMIOS)
++ PTY_TYPE=termios
++ ],[],[
+ /* including termios.h on Solaris 5.6 fails unless inttypes.h included */
+ # ifdef HAVE_INTTYPES_H
+ # include <inttypes.h>
+ # endif
+ # include <termios.h>
+- main()
+- {
+- struct termios tmp;
+- exit(0);
+- }],
+- AC_DEFINE(HAVE_TERMIOS)
+- PTY_TYPE=termios
+- AC_MSG_RESULT(yes)
+- ,
+- AC_MSG_RESULT(no)
+- ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
+- )
++ ])
+ fi
+
+ AC_MSG_CHECKING([if TCGETS or TCGETA in termios.h])
+-AC_TRY_RUN([
++AC_TRY_COMPILE([
+ /* including termios.h on Solaris 5.6 fails unless inttypes.h included */
+ #ifdef HAVE_INTTYPES_H
+ #include <inttypes.h>
+ #endif
+ #include <termios.h>
+-main() {
++],[
+ #if defined(TCGETS) || defined(TCGETA)
+- return 0;
+ #else
+- return 1;
++#error missing
+ #endif
+-}],
++],[
+ AC_DEFINE(HAVE_TCGETS_OR_TCGETA_IN_TERMIOS_H)
+ AC_MSG_RESULT(yes)
+-,
++],[
+ AC_MSG_RESULT(no)
+-,
+- AC_MSG_ERROR([Expect can't be cross compiled])
+-)
++])
+
+ AC_MSG_CHECKING([if TIOCGWINSZ in termios.h])
+-AC_TRY_RUN([
++AC_TRY_COMPILE([
+ /* including termios.h on Solaris 5.6 fails unless inttypes.h included */
+ #ifdef HAVE_INTTYPES_H
+ #include <inttypes.h>
+ #endif
+ #include <termios.h>
+-main() {
+-#ifdef TIOCGWINSZ
+- return 0;
+-#else
+- return 1;
++],[
++#ifndef TIOCGWINSZ
++#error missing
+ #endif
+-}],
++],[
+ AC_DEFINE(HAVE_TIOCGWINSZ_IN_TERMIOS_H)
+ AC_MSG_RESULT(yes)
+-,
++],[
+ AC_MSG_RESULT(no)
+-,
+- AC_MSG_ERROR([Expect can't be cross compiled])
+-)
++])
+
+ # finally check for Cray style ttys
+ AC_MSG_CHECKING([for Cray-style ptys])
+ SETUID=":"
+-AC_TRY_RUN([
+-main(){
+-#ifdef CRAY
+- return 0;
+-#else
+- return 1;
++AC_TRY_COMPILE([],[
++#ifndef CRAY
++#error missing
+ #endif
+-}
+-],
++],[
+ PTY_TYPE=unicos
+ SETUID="chmod u+s"
+ AC_MSG_RESULT(yes)
+-,
++],[
+ AC_MSG_RESULT(no)
+-,
+- AC_MSG_ERROR([Expect can't be cross compiled])
+-)
++])
+
+ #
+ # Check for select and/or poll. If both exist, we prefer select.
+@@ -875,21 +818,16 @@
+ # check for timezones
+ #
+ AC_MSG_CHECKING([for SV-style timezone])
+-AC_TRY_RUN([
++AC_TRY_COMPILE([
+ extern char *tzname[2];
+ extern int daylight;
+-main()
+-{
++],[
+ int *x = &daylight;
+ char **y = tzname;
+-
+- exit(0);
+-}],
++],
+ AC_DEFINE(HAVE_SV_TIMEZONE)
+ AC_MSG_RESULT(yes),
+ AC_MSG_RESULT(no)
+-,
+- AC_MSG_ERROR([Expect can't be cross compiled])
+ )
+
+
Modified: expect/trunk/debian/patches/series
===================================================================
--- expect/trunk/debian/patches/series 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/patches/series 2017-10-26 08:36:48 UTC (rev 1885)
@@ -11,8 +11,6 @@
16-logfile.patch
18-non-linux.patch
22-segfault-with-stubs.patch
-23-memmove.patch
24-format.patch
-25-matchlen.patch
26-eof-handling.patch
-27-exp_chan.patch
+28-cross.patch
Modified: expect/trunk/debian/rules
===================================================================
--- expect/trunk/debian/rules 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/rules 2017-10-26 08:36:48 UTC (rev 1885)
@@ -1,6 +1,7 @@
#!/usr/bin/make -f
v = 5.45
+vv = 5.45.3
tclv = 8.6
DPKG_EXPORT_BUILDFLAGS = 1
@@ -14,7 +15,9 @@
LINKS = debian/expect.links debian/tcl-expect.links debian/tcl-expect-dev.links
debian/%.links: debian/%.links.in
- sed 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g' $< > $@
+ sed -e 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g' \
+ -e 's/@V@/$(v)/g' \
+ -e 's/@VV@/$(vv)/g' $< > $@
override_dh_auto_clean:
dh_auto_clean
@@ -63,13 +66,13 @@
cp debian/tmp/usr/share/man/man1/expect.1 debian/tmp/usr/share/man/man3/Expect.3tcl
sed -i -e's:\.TH EXPECT 1:.TH EXPECT 3tcl:' debian/tmp/usr/share/man/man3/Expect.3tcl
# Fix library name
- mv debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/expect$(v)/libexpect$(v).so debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libexpect.so.$(v)
+ mv debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/expect$(vv)/libexpect$(vv).so debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libexpect.so.$(vv)
mkdir -p -m 755 debian/tmp/usr/lib/tcltk/$(DEB_HOST_MULTIARCH)
- mv debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/expect$(v) debian/tmp/usr/lib/tcltk/$(DEB_HOST_MULTIARCH)
+ mv debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/expect$(vv) debian/tmp/usr/lib/tcltk/$(DEB_HOST_MULTIARCH)
# Fix pkgIndex.tcl
- sed -i -e's:usr lib:usr lib $(DEB_HOST_MULTIARCH):' debian/tmp/usr/lib/tcltk/$(DEB_HOST_MULTIARCH)/expect$(v)/pkgIndex.tcl
+ sed -i -e's:usr lib:usr lib $(DEB_HOST_MULTIARCH):' debian/tmp/usr/lib/tcltk/$(DEB_HOST_MULTIARCH)/expect$(vv)/pkgIndex.tcl
# Fix permissions
- chmod 0644 debian/tmp/usr/lib/tcltk/$(DEB_HOST_MULTIARCH)/expect$(v)/pkgIndex.tcl
+ chmod 0644 debian/tmp/usr/lib/tcltk/$(DEB_HOST_MULTIARCH)/expect$(vv)/pkgIndex.tcl
override_dh_link: $(LINKS)
dh_link
@@ -78,8 +81,8 @@
dh_install --fail-missing
get-orig-source:
- wget -O expect_$(v).orig.tar.gz \
- http://prdownloads.sourceforge.net/expect/expect$(v).tar.gz
+ wget -O expect_$(vv).orig.tar.gz \
+ http://prdownloads.sourceforge.net/expect/expect$(vv).tar.gz
.PHONY: override_dh_auto_clean override_dh_auto_configure override_dh_auto_build \
override_dh_auto_install override_dh_install get-orig-source
Modified: expect/trunk/debian/tcl-expect-dev.links.in
===================================================================
--- expect/trunk/debian/tcl-expect-dev.links.in 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/tcl-expect-dev.links.in 2017-10-26 08:36:48 UTC (rev 1885)
@@ -1 +1 @@
-/usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so.5.45 /usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so. at VV@ /usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so
Modified: expect/trunk/debian/tcl-expect.links.in
===================================================================
--- expect/trunk/debian/tcl-expect.links.in 2017-10-08 20:42:27 UTC (rev 1884)
+++ expect/trunk/debian/tcl-expect.links.in 2017-10-26 08:36:48 UTC (rev 1885)
@@ -1 +1,2 @@
-/usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so.5.45 /usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so.5
+/usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so. at VV@ /usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so. at V@
+/usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so. at VV@ /usr/lib/@DEB_HOST_MULTIARCH@/libexpect.so.5
More information about the Pkg-tcltk-commits
mailing list