mirror of
https://git.yoctoproject.org/poky
synced 2026-01-29 21:08:42 +01:00
expect: Add recipe
Nedeed for gcc-runtime tests. Fixed build on multilib and add patch to remove !/depot/path/expect -f which caused rpm to puke on rfs generation (From OE-Core rev: 8f06d2975ed7d5db3828dc116c0df72d1161e8e5) Signed-off-by: Mihaela Sendrea <mihaela.sendrea@enea.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
7579458539
commit
b74b2356bf
108
meta/recipes-devtools/expect/expect/0001-configure.in.patch
Normal file
108
meta/recipes-devtools/expect/expect/0001-configure.in.patch
Normal file
@@ -0,0 +1,108 @@
|
||||
Allow cross compiling.
|
||||
|
||||
Signed-off-by: Anders Roxell <anders.roxell@enea.com>
|
||||
Upstream-Status: Pending
|
||||
---
|
||||
diff -uNr a/configure.in b/configure.in
|
||||
--- a/configure.in 2012-12-14 15:31:32.623180450 +0100
|
||||
+++ b/configure.in 2012-12-14 15:53:34.518233519 +0100
|
||||
@@ -481,7 +481,7 @@
|
||||
,
|
||||
AC_MSG_RESULT(no)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_MSG_RESULT(no)
|
||||
)
|
||||
|
||||
AC_MSG_CHECKING([if any value exists for WNOHANG])
|
||||
@@ -506,7 +506,9 @@
|
||||
AC_MSG_RESULT(no)
|
||||
AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_MSG_RESULT(yes)
|
||||
+ AC_DEFINE_UNQUOTED(WNOHANG_BACKUP_VALUE, `cat wnohang`)
|
||||
+ rm -f wnohang
|
||||
)
|
||||
|
||||
#
|
||||
@@ -574,7 +576,8 @@
|
||||
AC_DEFINE(REARM_SIG)
|
||||
,
|
||||
AC_MSG_RESULT(no)
|
||||
-, AC_MSG_WARN([Expect can't be cross compiled])
|
||||
+,
|
||||
+ AC_MSG_RESULT(no)
|
||||
)
|
||||
|
||||
# HPUX7 has trouble with the big cat so split it
|
||||
@@ -725,7 +728,9 @@
|
||||
,
|
||||
AC_MSG_RESULT(no)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_MSG_RESULT(yes)
|
||||
+ AC_DEFINE(HAVE_SGTTYB)
|
||||
+ PTY_TYPE=sgttyb
|
||||
)
|
||||
|
||||
# mach systems have include files for unimplemented features
|
||||
@@ -749,7 +754,9 @@
|
||||
,
|
||||
AC_MSG_RESULT(no)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_DEFINE(HAVE_TERMIO)
|
||||
+ PTY_TYPE=termios
|
||||
+ AC_MSG_RESULT(yes)
|
||||
)
|
||||
|
||||
# now check for the new style ttys (not yet posix)
|
||||
@@ -771,7 +778,9 @@
|
||||
,
|
||||
AC_MSG_RESULT(no)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_DEFINE(HAVE_TERMIOS)
|
||||
+ PTY_TYPE=termios
|
||||
+ AC_MSG_RESULT(yes)
|
||||
)
|
||||
fi
|
||||
|
||||
@@ -794,7 +803,7 @@
|
||||
,
|
||||
AC_MSG_RESULT(no)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_MSG_RESULT(no)
|
||||
)
|
||||
|
||||
AC_MSG_CHECKING([if TIOCGWINSZ in termios.h])
|
||||
@@ -816,7 +825,7 @@
|
||||
,
|
||||
AC_MSG_RESULT(no)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_MSG_RESULT(no)
|
||||
)
|
||||
|
||||
# finally check for Cray style ttys
|
||||
@@ -837,7 +846,7 @@
|
||||
,
|
||||
AC_MSG_RESULT(no)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_MSG_RESULT(no)
|
||||
)
|
||||
|
||||
#
|
||||
@@ -889,7 +898,8 @@
|
||||
AC_MSG_RESULT(yes),
|
||||
AC_MSG_RESULT(no)
|
||||
,
|
||||
- AC_MSG_ERROR([Expect can't be cross compiled])
|
||||
+ AC_DEFINE(HAVE_SV_TIMEZONE)
|
||||
+ AC_MSG_RESULT(yes),
|
||||
)
|
||||
|
||||
|
||||
17
meta/recipes-devtools/expect/expect/0002-tcl.m4.patch
Normal file
17
meta/recipes-devtools/expect/expect/0002-tcl.m4.patch
Normal file
@@ -0,0 +1,17 @@
|
||||
Use proper -L path when cross compiling.
|
||||
|
||||
Signed-off-by: Anders Roxell <anders.roxell@enea.com>
|
||||
Upstream-Status: Pending
|
||||
---
|
||||
diff -uNr a/tclconfig/tcl.m4 b/tclconfig/tcl.m4
|
||||
--- a/tclconfig/tcl.m4 2012-12-14 09:16:58.789861281 +0100
|
||||
+++ b/tclconfig/tcl.m4 2012-12-14 10:55:43.542297010 +0100
|
||||
@@ -371,7 +371,7 @@
|
||||
# of TCL_BUILD_LIB_SPEC. An extension should make use of TCL_LIB_SPEC
|
||||
# instead of TCL_BUILD_LIB_SPEC since it will work with both an
|
||||
# installed and uninstalled version of Tcl.
|
||||
- if test -f "${TCL_BIN_DIR}/Makefile" ; then
|
||||
+ if test -f "${TCL_BIN_DIR}/Makefile" || test "$cross_compiling" = yes; then
|
||||
TCL_LIB_SPEC="${TCL_BUILD_LIB_SPEC}"
|
||||
TCL_STUB_LIB_SPEC="${TCL_BUILD_STUB_LIB_SPEC}"
|
||||
TCL_STUB_LIB_PATH="${TCL_BUILD_STUB_LIB_PATH}"
|
||||
144
meta/recipes-devtools/expect/expect/01-example-shebang.patch
Normal file
144
meta/recipes-devtools/expect/expect/01-example-shebang.patch
Normal file
@@ -0,0 +1,144 @@
|
||||
Author: Mike Markley <mike@markley.org>
|
||||
Author: Sergei Golovan <sgolovan@debian.org>
|
||||
Description: Fixes shebangs in examples (Closes: #152367).
|
||||
|
||||
Backported from Debian
|
||||
|
||||
Upstream-Status: Pending
|
||||
Index: expect5.45/example/beer.exp
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/beer.exp 2006-01-25 13:51:39.000000000 -0800
|
||||
+++ expect5.45/example/beer.exp 2013-11-01 17:35:19.817318341 -0700
|
||||
@@ -1,4 +1,9 @@
|
||||
-#!/depot/path/expect -f
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec tclsh "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
|
||||
# 99 bottles of beer on the wall, Expect-style
|
||||
# Author: Don Libes <libes@nist.gov>
|
||||
Index: expect5.45/example/expectd.proto
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/expectd.proto 2010-07-02 09:03:31.000000000 -0700
|
||||
+++ expect5.45/example/expectd.proto 2013-11-01 17:35:19.821318341 -0700
|
||||
@@ -1,4 +1,10 @@
|
||||
-#!/depot/tcl/src/expect/e --
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec tclsh "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
+
|
||||
# Description: Simple fragment to begin a telnet daemon
|
||||
# For more information, see Chapter 17 of "Exploring Expect"
|
||||
# Author: Don Libes, NIST
|
||||
Index: expect5.45/example/irsh
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/irsh 2010-07-02 09:03:31.000000000 -0700
|
||||
+++ expect5.45/example/irsh 2013-11-01 17:35:19.821318341 -0700
|
||||
@@ -1,4 +1,9 @@
|
||||
-#!/depot/path/expect --
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec tclsh "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
|
||||
# Do rsh interactively. For example, consider the following command:
|
||||
# rsh <remote> ls -l "|" more
|
||||
Index: expect5.45/example/passwd.cgi
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/passwd.cgi 2000-01-06 15:22:07.000000000 -0800
|
||||
+++ expect5.45/example/passwd.cgi 2013-11-01 17:35:19.821318341 -0700
|
||||
@@ -1,4 +1,9 @@
|
||||
-#!/depot/path/expect --
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec tclsh "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
|
||||
# This is a CGI script to process requests created by the accompanying
|
||||
# passwd.html form. This script is pretty basic, although it is
|
||||
Index: expect5.45/example/passwdprompt
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/passwdprompt 2003-09-05 12:01:59.000000000 -0700
|
||||
+++ expect5.45/example/passwdprompt 2013-11-01 17:35:19.821318341 -0700
|
||||
@@ -1,4 +1,9 @@
|
||||
-#!/depot/path/expect
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec tclsh "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
|
||||
# This script prompts for a passwd from stdin while echoing *'s
|
||||
|
||||
Index: expect5.45/example/reprompt
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/reprompt 2000-01-06 15:22:07.000000000 -0800
|
||||
+++ expect5.45/example/reprompt 2013-11-01 17:35:19.821318341 -0700
|
||||
@@ -1,4 +1,9 @@
|
||||
-#!/depot/path/expect --
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec tclsh "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
|
||||
# Name: reprompt
|
||||
# Description: reprompt every so often until user enters something
|
||||
Index: expect5.45/example/term_expect
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/term_expect 2005-02-15 10:11:31.000000000 -0800
|
||||
+++ expect5.45/example/term_expect 2013-11-01 17:35:19.821318341 -0700
|
||||
@@ -1,4 +1,9 @@
|
||||
-#!/depot/path/expectk
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec wish "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
|
||||
# Name: tkterm - terminal emulator using Expect and Tk text widget, v3.0
|
||||
# Author: Don Libes, July '94
|
||||
Index: expect5.45/example/vrfy
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/vrfy 2010-07-02 09:03:31.000000000 -0700
|
||||
+++ expect5.45/example/vrfy 2013-11-01 17:35:19.821318341 -0700
|
||||
@@ -1,4 +1,9 @@
|
||||
-#!/depot/path/expect -f
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec tclsh "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
|
||||
|
||||
# separate address into user and host
|
||||
Index: expect5.45/example/xrlogin
|
||||
===================================================================
|
||||
--- expect5.45.orig/example/xrlogin 2000-01-06 15:22:08.000000000 -0800
|
||||
+++ expect5.45/example/xrlogin 2013-11-01 17:35:19.821318341 -0700
|
||||
@@ -1,4 +1,10 @@
|
||||
-#!/depot/path/expect --
|
||||
+#!/bin/sh
|
||||
+# -*- tcl -*-
|
||||
+# The next line is executed by /bin/sh, but not tcl \
|
||||
+exec tclsh "$0" ${1+"$@"}
|
||||
+
|
||||
+package require Expect
|
||||
+
|
||||
# xrlogin - rlogin but with current DISPLAY
|
||||
#
|
||||
# You can extend this idea to save any arbitrary information across rlogin
|
||||
61
meta/recipes-devtools/expect/expect_5.45.bb
Normal file
61
meta/recipes-devtools/expect/expect_5.45.bb
Normal file
@@ -0,0 +1,61 @@
|
||||
SUMMARY = "tool for automating interactive applications according to a script"
|
||||
DESCRIPTION = "Expect is a tool for automating interactive applications according to a script. \
|
||||
Following the script, Expect knows what can be expected from a program and what \
|
||||
the correct response should be. Expect is also useful for testing these same \
|
||||
applications. And by adding Tk, you can also wrap interactive applications in \
|
||||
X11 GUIs. An interpreted language provides branching and high-level control \
|
||||
structures to direct the dialogue. In addition, the user can take control and \
|
||||
interact directly when desired, afterward returning control to the script. \
|
||||
"
|
||||
HOMEPAGE = "http://sourceforge.net/projects/expect/"
|
||||
LICENSE="PD"
|
||||
SECTION = "devel"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://license.terms;md5=fbf2de7e9102505b1439db06fc36ce5c"
|
||||
|
||||
DEPENDS += "tcl"
|
||||
RDEPENDS_${PN} = "tcl"
|
||||
|
||||
inherit autotools
|
||||
|
||||
SRC_URI = "${SOURCEFORGE_MIRROR}/expect/Expect/${PV}/${BPN}${PV}.tar.gz \
|
||||
file://0001-configure.in.patch \
|
||||
file://0002-tcl.m4.patch \
|
||||
file://01-example-shebang.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "44e1a4f4c877e9ddc5a542dfa7ecc92b"
|
||||
SRC_URI[sha256sum] = "b28dca90428a3b30e650525cdc16255d76bb6ccd65d448be53e620d95d5cc040"
|
||||
|
||||
S = "${WORKDIR}/${BPN}${PV}"
|
||||
|
||||
do_install_append() {
|
||||
install -d ${D}${libdir}
|
||||
install -m 0755 ${D}${libdir}/expect${PV}/libexpect*.so ${D}${libdir}/
|
||||
install -m 0755 ${S}/fixline1 ${D}${libdir}/expect${PV}/
|
||||
install -m 0755 ${S}/example/* ${D}${libdir}/expect${PV}/
|
||||
rm ${D}${libdir}/expect${PV}/libexpect*.so
|
||||
}
|
||||
|
||||
EXTRA_OECONF += "--includedir=${STAGING_INCDIR} \
|
||||
--with-tcl=${STAGING_LIBDIR} \
|
||||
--with-tclinclude=${STAGING_INCDIR}/tcl8.6 \
|
||||
--enable-shared \
|
||||
--enable-threads \
|
||||
--disable-rpath \
|
||||
"
|
||||
EXTRA_OEMAKE_install = " 'SCRIPTS=' "
|
||||
|
||||
FILES_${PN}-dbg += "${libdir}/${BPN}${PV}/.debug \
|
||||
${libdir}/.debug \
|
||||
"
|
||||
FILES_${PN}-dev = "${libdir_native}/expect${PV}/libexpect*.so \
|
||||
${STAGING_INCDIR}/expect.h \
|
||||
${STAGING_INCDIR}/expect_tcl.h \
|
||||
${STAGING_INCDIR}/expect_comm.h \
|
||||
${STAGING_INCDIR}/tcldbg.h \
|
||||
${includedir}/*.h \
|
||||
"
|
||||
|
||||
FILES_${PN} += "${libdir}/libexpect${PV}.so \
|
||||
${libdir}/expect${PV}/* \
|
||||
"
|
||||
Reference in New Issue
Block a user