diff options
| author | Ross Burton <ross.burton@arm.com> | 2024-06-18 11:14:13 +0000 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2024-06-24 12:43:40 +0100 |
| commit | 757d04f8ec582f32de1f0ae61336ffa7ee2390d0 (patch) | |
| tree | 4f36de2cd903f344c6b607e3f1719a2b1e438c62 /meta/recipes-devtools/expect | |
| parent | 3eebf71549eff321f7c18b99b2d0e8daa2d7412b (diff) | |
| download | poky-757d04f8ec582f32de1f0ae61336ffa7ee2390d0.tar.gz | |
expect: update code for Tcl channel implementation
Tcl 8.4.0 changed the channel implementation, take a patch submitted
upstream to update the code for the new interface and remove the silencing
of the incompatible assignment error which was due to this issue.
(From OE-Core rev: a56ca08159fbdbc27511376f45720bb8ea068fc4)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/expect')
| -rw-r--r-- | meta/recipes-devtools/expect/expect/tcl840.patch | 27 | ||||
| -rw-r--r-- | meta/recipes-devtools/expect/expect_5.45.4.bb | 5 |
2 files changed, 28 insertions, 4 deletions
diff --git a/meta/recipes-devtools/expect/expect/tcl840.patch b/meta/recipes-devtools/expect/expect/tcl840.patch new file mode 100644 index 0000000000..8c7b0e7a7f --- /dev/null +++ b/meta/recipes-devtools/expect/expect/tcl840.patch | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | Adjustments for compatibility with the currrent (Tcl 8.4.0+) channel | ||
| 2 | implementation. | ||
| 3 | |||
| 4 | Upstream-Status: Submitted [https://sourceforge.net/p/expect/patches/24/] | ||
| 5 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
| 6 | |||
| 7 | diff --git a/exp_chan.c b/exp_chan.c | ||
| 8 | index c92e26b6fbd02305..944200a63b102672 100644 | ||
| 9 | --- a/exp_chan.c | ||
| 10 | +++ b/exp_chan.c | ||
| 11 | @@ -60,7 +60,7 @@ void exp_background_channelhandler _ANSI_ARGS_((ClientData, | ||
| 12 | |||
| 13 | Tcl_ChannelType expChannelType = { | ||
| 14 | "exp", /* Type name. */ | ||
| 15 | - ExpBlockModeProc, /* Set blocking/nonblocking mode.*/ | ||
| 16 | + TCL_CHANNEL_VERSION_2, | ||
| 17 | ExpCloseProc, /* Close proc. */ | ||
| 18 | ExpInputProc, /* Input proc. */ | ||
| 19 | ExpOutputProc, /* Output proc. */ | ||
| 20 | @@ -70,6 +70,7 @@ Tcl_ChannelType expChannelType = { | ||
| 21 | ExpWatchProc, /* Initialize notifier. */ | ||
| 22 | ExpGetHandleProc, /* Get OS handles out of channel. */ | ||
| 23 | NULL, /* Close2 proc */ | ||
| 24 | + ExpBlockModeProc, /* Set blocking/nonblocking mode.*/ | ||
| 25 | }; | ||
| 26 | |||
| 27 | typedef struct ThreadSpecificData { | ||
diff --git a/meta/recipes-devtools/expect/expect_5.45.4.bb b/meta/recipes-devtools/expect/expect_5.45.4.bb index 174b35ec73..461a2c093a 100644 --- a/meta/recipes-devtools/expect/expect_5.45.4.bb +++ b/meta/recipes-devtools/expect/expect_5.45.4.bb | |||
| @@ -28,6 +28,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/expect/Expect/${PV}/${BPN}${PV}.tar.gz \ | |||
| 28 | file://0001-fixline1-fix-line-1.patch \ | 28 | file://0001-fixline1-fix-line-1.patch \ |
| 29 | file://0001-Add-prototype-to-function-definitions.patch \ | 29 | file://0001-Add-prototype-to-function-definitions.patch \ |
| 30 | file://expect-configure-c99.patch \ | 30 | file://expect-configure-c99.patch \ |
| 31 | file://tcl840.patch \ | ||
| 31 | file://run-ptest \ | 32 | file://run-ptest \ |
| 32 | " | 33 | " |
| 33 | SRC_URI[md5sum] = "00fce8de158422f5ccd2666512329bd2" | 34 | SRC_URI[md5sum] = "00fce8de158422f5ccd2666512329bd2" |
| @@ -82,7 +83,3 @@ FILES:${PN} += "${libdir}/libexpect${PV}.so \ | |||
| 82 | " | 83 | " |
| 83 | 84 | ||
| 84 | BBCLASSEXTEND = "native nativesdk" | 85 | BBCLASSEXTEND = "native nativesdk" |
| 85 | |||
| 86 | # http://errors.yoctoproject.org/Errors/Details/766950/ | ||
| 87 | # expect5.45.4/exp_chan.c:62:5: error: initialization of 'struct Tcl_ChannelTypeVersion_ *' from incompatible pointer type 'int (*)(void *, int)' [-Wincompatible-pointer-types] | ||
| 88 | CFLAGS += "-Wno-error=incompatible-pointer-types" | ||
