Fossil SCM

Explained "Why can't we use Jim Tcl for the test suite?" in the auto.def comment above the check for a suitable tclsh version. Basically, I tried it and then documented a few of the resulting failures.

wyoung 2018-09-02 21:00 tclsh-macos
Commit 91eaef6131e816bdcab192bfd800e87de02302a330fcba6ecba796d996444191
1 file changed +11 -2
+11 -2
--- auto.def
+++ auto.def
@@ -33,12 +33,21 @@
3333
}
3434
3535
# Use pread/pwrite system calls in place of seek + read/write if possible
3636
define USE_PREAD [cc-check-functions pread]
3737
38
-# Find tclsh for the test suite. We can't use jimsh for this: the test
39
-# suite uses features of Tcl that Jim doesn't support.
38
+# Find tclsh for the test suite.
39
+#
40
+# We can't use jimsh for this: the test suite uses features of Tcl that
41
+# Jim doesn't support, either statically or due to the way it's built by
42
+# autosetup. For example, Jim supports `file normalize`, but only if
43
+# you build it with HAVE_REALPATH, which won't ever be defined in this
44
+# context because autosetup doesn't try to discover platform-specific
45
+# details like that before it decides to build jimsh0. Besides which,
46
+# autosetup won't build jimsh0 at all if it can find tclsh itself.
47
+# Ironically, this means we may right now be running under either jimsh0
48
+# or a version of tclsh that we find unsuitable below!
4049
cc-check-progs tclsh
4150
set hbtd /usr/local/Cellar/tcl-tk
4251
if {[get-define TCLSH] != false} {
4352
set v [exec /bin/sh -c "echo 'puts \$tcl_version' | tclsh"]
4453
if {[expr $v >= 8.6]} {
4554
--- auto.def
+++ auto.def
@@ -33,12 +33,21 @@
33 }
34
35 # Use pread/pwrite system calls in place of seek + read/write if possible
36 define USE_PREAD [cc-check-functions pread]
37
38 # Find tclsh for the test suite. We can't use jimsh for this: the test
39 # suite uses features of Tcl that Jim doesn't support.
 
 
 
 
 
 
 
 
 
40 cc-check-progs tclsh
41 set hbtd /usr/local/Cellar/tcl-tk
42 if {[get-define TCLSH] != false} {
43 set v [exec /bin/sh -c "echo 'puts \$tcl_version' | tclsh"]
44 if {[expr $v >= 8.6]} {
45
--- auto.def
+++ auto.def
@@ -33,12 +33,21 @@
33 }
34
35 # Use pread/pwrite system calls in place of seek + read/write if possible
36 define USE_PREAD [cc-check-functions pread]
37
38 # Find tclsh for the test suite.
39 #
40 # We can't use jimsh for this: the test suite uses features of Tcl that
41 # Jim doesn't support, either statically or due to the way it's built by
42 # autosetup. For example, Jim supports `file normalize`, but only if
43 # you build it with HAVE_REALPATH, which won't ever be defined in this
44 # context because autosetup doesn't try to discover platform-specific
45 # details like that before it decides to build jimsh0. Besides which,
46 # autosetup won't build jimsh0 at all if it can find tclsh itself.
47 # Ironically, this means we may right now be running under either jimsh0
48 # or a version of tclsh that we find unsuitable below!
49 cc-check-progs tclsh
50 set hbtd /usr/local/Cellar/tcl-tk
51 if {[get-define TCLSH] != false} {
52 set v [exec /bin/sh -c "echo 'puts \$tcl_version' | tclsh"]
53 if {[expr $v >= 8.6]} {
54

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button