Lines Matching refs:shell
7 # for an arbitrary tcl shell (tclsh, wish, ...). This is required by a
8 # repository as while the tcl shell executing packages uses the same
16 namespace eval ::platform::shell {}
21 # -- platform::shell::generic
23 proc ::platform::shell::generic {shell} {
24 # Argument is the path to a tcl shell.
26 CHECK $shell
40 set arch [RUN $shell [join $code \n]]
46 # -- platform::shell::identify
48 proc ::platform::shell::identify {shell} {
49 # Argument is the path to a tcl shell.
51 CHECK $shell
65 set arch [RUN $shell [join $code \n]]
71 # -- platform::shell::platform
73 proc ::platform::shell::platform {shell} {
74 # Argument is the path to a tcl shell.
76 CHECK $shell
82 return [RUN $shell [join $code \n]]
88 proc ::platform::shell::CHECK {shell} {
89 if {![file exists $shell]} {
90 return -code error "Shell \"$shell\" does not exist"
92 if {![file executable $shell]} {
93 return -code error "Shell \"$shell\" is not executable (permissions)"
98 proc ::platform::shell::LOCATE {bv ov} {
102 # shell. We are using package management to find it, whereever it
106 # where the spawned shell will be able to read it.
125 proc ::platform::shell::RUN {shell code} {
134 exec $shell $c 2> $e
142 return -code error "Shell \"$shell\" is not executable ($res)"
149 proc ::platform::shell::TEMP {} {
197 proc ::platform::shell::DIR {} {
241 package provide platform::shell 1.1.4