|
From: | John E. Malmberg |
Subject: | Re: [bug #41758] VMS Make incorrectly reports archives support present. |
Date: | Fri, 02 May 2014 08:17:38 -0500 |
User-agent: | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 |
On 5/2/2014 5:22 AM, h.becker wrote:
On 05/02/2014 05:44 AM, John Malmberg wrote:Follow-up Comment #3, bug #41758 (project make): Updated default.c patch with fixed shared image library rule.That's not a complete fix. It still has the wrong target. The suffix of such a library is ".olb", not ".exe". The suffix is identical to the suffix of an object module library. With this implementation it seems to be enough to also check for a suffix ".exe" in $<. The check for an image library is done before the check for an object module library, so in this implementation there is no need to change the latter check for an additional ".obj".
Sounds reasonable. I have not used image libraries in user mode code so was not aware that they were also .olb.
That raises questions about the suggestion to merge/mix VMS and Posix/Unix suffixes: can and should a .o be added to a .olb and a .obj to a .a? Can and should a .so be added to an image library? OK, .so is not (yet?) in $(SUFFIXES).
.o and .obj should be handled the same. .so should be added to an image library and added to $(SUFFIXES)
With this implementation a couple of processes are created just to do the suffix checks and, depending on these checks, possibly do the creation of the corresponding library. It seems that the checks can (and in my opinion should) be handled within make. I have some ideas how to implement it, but didn't try to, so far. I would like to see only one additional action routine (process) for all kind of libraries with a check whether the corresponding file exists and create it, if it doesn't exist.
Current plan is to prototype using DCL and get tests for all VMS specific features that are not covered by other tests.
Then after the tests are working correctly, to use built-ins where appropriate to speed things up. A one-shell implementation will also help.
Currently I have found 3 bugs in the VMS specific ar_scan code from code inspection. One of them may explain the vpath issue, but I have not found the cause of the wildcards not working yet.
It should also be possible to get the touch feature working for VMS libraries.
Regards, -John
[Prev in Thread] | Current Thread | [Next in Thread] |