|
Mark, >1) All compiler options s/b able to be put into a source. While the H >spec allows most, it does not allow all. So why not just code a utility to do it? It's not a big deal -- I did it years ago, long before you could put compile parameters in H specs. What I did was by no means a real MAKE utility, but it was trivial to write and takes care of the vast majority of all the stuff you typically run into in recreating objects. All I do is use comments embedded in the source member with special prefixes, and invoke a user-defined PDM command instead of 14 / 15 to create objects. My command looks at the member type to determine the syntax style for comments, so that I can support RPG, DDS, CL, UIM or whatever (ILE or not). One prefix just denotes CRTxxx command parameters and overrides. The majority of my source members only need this one style of comment, and the utility decides what CRTxxx command to use based on the source type. It then adds whatever keywords and values are identified. This allowed me to embed keywords back on CISC releases which do not support the H spec values. And it works on display or print files, physical or logical files, CL programs, commands, etc. Other prefixes allow you to embed commands to run either before or after the compile (or both), and whether or not to ignore errors vs consider the termination abnormal. A typical use here might be to issue an OVRxxx command prior to the CRTxxx command, and a DLTOVR after it. It is pretty easy to add comments which prepare the environment for the compile, when necessary. Or to add some CRTPGM / UPDPGM statements following a module creation. Or any number of other things. It is not near as intelligent as a real MAKE, but on a RISC machine (even a small one), the commands usually run so fast it is not a big deal. I just ensure the object(s) can be correctly (re)created by simply using the user-defined PDM option. I never use option 14 or 15. Then I can use FNDSTRPDM to, for example, recompile every program which references a given PF or LF. Or any program which has a /copy for the prototypes for a given service program. Or whatever. A real poor-man's tool for sure, but very effective anyway. I never run compiles interactively since I don't have to issue overrides first. I never forget to name some keyword while recreating anything, be it a program or a command or a print file or whatever. And it works on CISC boxes. It was also no big deal to write. Why do people complain about something for years rather than just write some simple code to deal with it? >2) Both binding by copy and reference require a 2 step process, if you've >changed the module. Not a problem for me. (See above) >3) In cases where there's a circular reference, ... Not a problem for me. (See above) >4) ... there s/b some hierarchical display to show that relationship. Perhaps. But I've never had a real need for it. Doug
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.