Created attachment 157230 [details] Add dependency on devel/tcl-trf The critcl-executable needs a functional MD5-implementation -- and searches for different ones at startup. Its first (and the most logical) choice is what's provided by the Trf-package installed by the devel/tcl-trf port. The attached patch adds the RUN-dependency. It also adds the license-terms (copied from tcllib) and bumps PORTREVISION. Note, that at this time, the upstream has released a new version 3.1.14, but, unfortunately, it has numerous test-failures and we may be better off waiting for those to be addressed first. Note, that the missing MD5 implementation currently keeps the official builds of tcllib broken -- because tcllib now uses critcl. Please, commit the fix or allow me to. Thank you.
Please go ahead. If it was me, I'd make the compiled versions of the modules optional in tcllib, but I'll leave it up to you to decide. Thank you!
Please beware also that tcl-trf requires tcl-memchan, which in turn depends on tcllib to build documentation. By adding a dependency on tcl-trf to tcllib you would introduce a circular dependency. Not sure how you'll want to sort this. At this point, I'd back out the compiled part of tcllib and make it buildable again, for the time being.
Maybe splitting the tcllib port into a pure-tcl (as it was) and a compiled version would help in managing these dependencies.
Created attachment 157278 [details] Remove memchan-dependency from tcl-trf (In reply to Pietro Cerutti from comment #2) > Please beware also that tcl-trf requires tcl-memchan Excellent point... However, Trf only needs Memchan to run tests, so I can remove the dependency and check for memchan's presence in the test-target and stop automatically invoking the tests after build, leaving it up to the user. What do you think?
A commit references this bug: Author: mi Date: Sat May 30 17:02:43 UTC 2015 New revision: 387973 URL: https://svnweb.freebsd.org/changeset/ports/387973 Log: Do not automatically run tests post-build. Remove dependency on memchan -- the package is only needed for testing. This will avoid the tcllib->critcil->tcl-trf->tcl-memchan->tcllib circular dependency discussed in PR: 200498 Changes: head/devel/tcl-trf/Makefile
A commit references this bug: Author: mi Date: Mon Jun 1 01:47:58 UTC 2015 New revision: 388198 URL: https://svnweb.freebsd.org/changeset/ports/388198 Log: Critcl needs an MD5-implementation at runtime and starts its search with the Trf, so make Trf the run-time dependency. PR: 200498 Approved by: gahr (blanket) Changes: head/devel/critcl/Makefile
(In reply to Pietro Cerutti from comment #3) > Maybe splitting the tcllib port into a pure-tcl (as it was) and > a compiled version would help in managing these dependencies. This is not about tcllib -- critcl needs an MD5-implementation to be usable, tcllib or no. Trf provides the best MD5-implementation for Tcl (compiled) and is the first one, that critcl tries to find...