[MacPorts] #61253: configuring base requires working tclsh

MacPorts noreply at macports.org
Wed Sep 30 22:24:15 UTC 2020


#61253: configuring base requires working tclsh
------------------------+--------------------
 Reporter:  ryandesign  |      Owner:  (none)
     Type:  defect      |     Status:  new
 Priority:  Normal      |  Milestone:
Component:  base        |    Version:  2.6.99
 Keywords:              |       Port:
------------------------+--------------------
 It was a surprise to me to discover that tcllib's configure script, which
 our configure script runs, requires a working tclsh, and that if
 ${prefix}/libexec/macports/bin/tclsh8.5 exists, it will choose that one.
 This is a problem when ${prefix}/libexec/macports/bin/tclsh8.5 exists but
 is broken, which was the case on my system and was one of the reasons why
 I was trying to rebuild from source.

 The symptom was:

 {{{
 Installing Tcllib 1.18
 You have chosen the following configuration ...

 Packages:      /Users/rschmidt/macports-base/vendor/vendor-
 destroot/opt/local/libexec/macports/lib/.
 Applications:  Not installed.
 Examples:      Not installed.
 Documentation: Not installed.
 [snip]
 chmod: /Users/rschmidt/macports-base/vendor/vendor-
 destroot/opt/local/libexec/macports/lib/tcllib*: No such file or directory
 }}}

 The packages path is wrong! It should not end with `lib/.`; it should end
 with `lib/tcllib1.18`.

 tcllib's configure script uses a script called sak.tcl to replace
 placeholder strings `@PACKAGE@` and `@VERSION@` with values taken from
 elsewhere. The version was further broken down into a major version, then
 a literal dot, then the minor version. Since in my case tclsh did not
 work, the package, major and minor version strings were empty, leaving
 only the literal dot.

 Apple has announced that scripting languages like tclsh won't necessarily
 be includes in future versions of macOS. We should modify our build
 process so that we first build tclsh, and only then do we configure tcllib
 and point it at the tclsh that we built.

-- 
Ticket URL: <https://trac.macports.org/ticket/61253>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list