On 10/20/14 17:39, Landry Breuil wrote:
> On Mon, Oct 20, 2014 at 05:12:32PM -0400, Stuart Cassoff wrote:
>> On 10/20/14 16:26, Landry Breuil wrote:
>>> On Sun, Oct 12, 2014 at 01:08:37PM -0400, Stuart Cassoff wrote:
>>>> On 09/26/14 10:46, Stuart Cassoff wrote:
>>>>> On 09/16/14 21:48, Stuart Cassoff wrote:
>>>>>> On 07/11/14 06:22, Stuart Henderson wrote:
>>>>>>> On 2014/07/10 23:44, Stuart Cassoff wrote:
>>>>>>>> eh? meh?
>>>>>>>
>>>>>>> You need a subst variable with the actual path not just the version
>>>>>>> number, otherwise you're still going to be hand modifying PLISTs all
>>>>>>> over the place.
>>>>>>>
>>>>>>> So something like:
>>>>>>>
>>>>>>> MODTCL_MINVERSION?=     8.5
>>>>>>> MODTCL_MODPATH=         lib/tcl/${MODTCL_MINVERSION}
>>>>>>> SUBST_VARS+=            MODTCL_MODPATH MODTCL_VERSION MODTCL_BIN
>>>>>>>
>>>>>>> It would help clarify things to show a diff with a port that has
>>>>>>> been modified to use this method, too.
>>>>>>>
>>>>>>
>>>>>> Here are diffs for everything concerned.
>>>>>> Added missing modtcl vars and did a bit of rearranging in port-modules.5.
>>>>>> Described MODTCL_MINVERSION and MODTCL_MODPATH.
>>>>>> Removed the rest package from tcllib; it needs tDOM which we don't 
>>>>>> currently have.
>>>>>> Saves installing 51 directories and 51 pkgIndex.tcl files.
>>>>>>
>>>>>
>>>>
>>>>> Another way to do this would be to change the Tcl module
>>>>> dirs to be like modules/85 instead of modules/8.5, then
>>>>> the MODTCL_MODPATH stuff wouldn't be needed.
>>>>>
>>>>
>>>> Here are the diffs for doint it this way. Simpler.
>>>> Also simplified the existing layout Tcl itself:
>>>> removes a couple of dirs, shortens module path.
>>>> Also a fix for TkCon.
>>>
>>> Can you remind me why you hardcode 85 for tcllib/tklib/tkcon ?
>>> Other than that, you know better than anyone how this stuff should be
>>> laid, so just move ahead, dont wait for months for someone to okay that..
>>>
>>
>> Great, thanks!
>>
>> The 85 is hardcoded for two reasons:
>> 1) Tcl modules should be installed so that they are
>>    available to the lowest Tcl version they'll work with.
>> 2) Using 8.5 will cause unwelcome PLIST substitutions
>>    that can apparently only be remedied by complicating
>>    things with more variables and explanations.
> 
> Yeah, i got that part - but does it mean that tcl 8.6 also looks for
> modules/85 in addition to modules/86 ?
> 

Yes, exactly.
Almost all modules will end up under 85 unless they're for Tcl 8.6 only.
$ echo 'puts [tcl::tm::path list]' | tclsh8.6
/usr/local/lib/tcl/modules/85 /usr/local/lib/tcl/modules/86 
/usr/local/lib/tcl/tcl8.6/modules


Stu


Reply via email to