packageless modules == pure evil? Answer: No

Derek Parnell derek at nomail.afraid.org
Mon Feb 18 17:28:57 PST 2008


On Tue, 19 Feb 2008 10:05:38 +0900, Bill Baxter wrote:

> Derek Parnell wrote:
>> On Mon, 18 Feb 2008 15:13:44 +1100, Derek Parnell wrote:
>> 
>>> On Mon, 18 Feb 2008 12:40:02 +0900, Bill Baxter wrote:
>>>
>>>> Here's a version that causes the problem.  It actually seems to be an 
>>>> issue with build tools rather than DMD itself.
>>> I'm using BUD v3.05 and I can't get it to go wrong. It works as expected in
>>> all four conditions.
>>>
>>> PWD = packageless
>>> bud testitok
>>> bud b\testit
>>>
>>> PWD = packageless\b
>>> bud ..\testitok
>>> bud testit
>>>
>>> So I'm not sure what to do to help.
>> 
>> <DUH manifestation="slaps forehead"> Oh I know what I can do ... release
>> the version of Bud I'm using to the community.</DUH>
>> 
> 
> That would be great!  I know I've been eagerly waiting for the 
> environment variable support that you've supposedly had implemented for 
> about a year now.

Oh yeah ... I did do that. It now has a function called 'ExpandEnvVar'.

/*
 Function to replace tokens in the form ...
    %ENVNAME%
    $ENVNAME  ( Terminated by a non-alpha character )
    ${ENVNAME}
    $(ENVNAME)
 with environment data.

 Notes:
 (1) '%%' is replaced by a single '%'
 (2) '$$' is replaced by a single '$'
 (3) The forms $(...) and ${...} can be nested.
      eg. ${FOO${BAR}} - If 'BAR' is defined as "test" then this tries to
                         find out what 'FOOtest' is defined as.
 (4) The forms $(...) and ${...} can optionally have default values.
      eg. $(FOO=yes) - if 'FOO' not defined it is expanded to 'yes'
          $(BAR=${QWERTY}} - if 'BAR' not defined it is expanded to
                             whatever 'QWERTY' is defined as.
 (5) The form $(...) is expanded recursively.
      e.g. $(FOO) - if 'FOO' is defined as "${BAR}" then the result
                    is returned as whatever 'BAR' is defined as.
*/

-- 
Derek
(skype: derek.j.parnell)
Melbourne, Australia
19/02/2008 12:25:10 PM


More information about the Digitalmars-d-learn mailing list