[BRLTTY] Tcl 8.6.15 and newer uses colon as the separator in the TCL_PACKAGE_PATH
Dave Mielke
Dave at mielke.cc
Mon Dec 9 21:42:52 UTC 2024
[quoted lines by Jaroslav Škarvada on 2024/12/09 at 18:21 +0100]
>the change was introduced by [1], bug report [2]. As a result the
>brltty m4 Tcl binding macro needs to be changed. Attached is the patch
>we used in Fedora, but it's bash specific and doesn't handle paths
>with embedded spaces which are now supported
Please verify that the (updated) patch attached to this message works. It should now support blanks within a directory's path if the (newer) colon paradigm is being used.
--
I believe the Bible to be the very Word of God: http://Mielke.cc/bible/
Dave Mielke | 2213 Fox Crescent | WebHome: http://Mielke.cc/
EMail: Dave at Mielke.cc | Ottawa, Ontario | Twitter: @Dave_Mielke
Phone: +1 613 726 0014 | Canada K2A 1H7 |
http://mielke.cc/xmother.html (Letter from a Feminist ex-Mother)
-------------- next part --------------
diff --git a/Bindings/Tcl/bindings.m4 b/Bindings/Tcl/bindings.m4
index edb59a72e..e5563c483 100644
--- a/Bindings/Tcl/bindings.m4
+++ b/Bindings/Tcl/bindings.m4
@@ -51,8 +51,20 @@ fi
${TCL_OK} && {
test -n "${TCL_PACKAGE_PATH}" && {
- for directory in ${TCL_PACKAGE_PATH}
+ directories="${TCL_PACKAGE_PATH}"
+
+ test "${directories#*:}" = "${directories}" && {
+ # There's no colon so it's an old-style (pre tcl-) path.
+ # Replace each sequence of one or more spaces with a single colon.
+ directories="${directories// /:}"
+ }
+
+ while test "${#directories}" -gt 0
do
+ directory="${directories%%:*}"
+ directories="${directories#*:}"
+ test "${#directory}" -eq 0 && continue
+
test `expr "${directory}" : '.*/lib'` -eq 0 || {
TCL_DIR="${directory}"
break
More information about the BRLTTY
mailing list