[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug #41813] Mult-line override define failing on VMS.
From: |
h.becker |
Subject: |
Re: [bug #41813] Mult-line override define failing on VMS. |
Date: |
Thu, 20 Mar 2014 23:57:50 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130519 Icedove/17.0.5 |
On 03/20/2014 11:32 PM, John E. Malmberg wrote:
>> The broken ECHO is one reason I flagged the fix "temporary". It seems,
>> there should be a builtin_echo for VMS. Shouldn't be too hard, but I
>> haven't looked at it. That way some old VMS makefile which make use of
>> ECHO will continue to work. The question is, whether one would want to
>> support DCL symbols within the to be echoed text.
>
> Another question is how much of the Unix environment should be simulated
> when running Gnu make from DCL?
In my local copy of the sources, I changed the ECHO variable defined in
default.c to builtin_echo, which I implemented in vmsjobs.c as a simple
wrapper for write sys$output. That way, whatever worked for VMS/DCL
users with $(ECHO) will work, even with multilines.
OK there are a few exceptions. If someone knew that there was a missing
double quote and coded $(ECHO) hello" the old output was hello and the
new output will be hello". Also, if someone wanted to use DCL
symbols/lexcials and knew that $(ECHO) "+f$$time() would get the wanted
result, the new code will give a %DCL-W-EXPSYN and the code has to
change to $(ECHO) "+f$$time()+ to get the wanted result.
I don't know of anything of a Unix environment which should be
simulated, here. But obviously there is no parity. In Unix you can have
a shell variable in the to be echoed text and - if defined - it will
show. As I showed in the above example, it's not that intuitive/easy for
VMS/DCL symbols.