<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: MMS/CMS: What targets depend on a given source? in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967825#M35709</link>
    <description>what about using&lt;BR /&gt;MMS/NOACTION/LIST&lt;BR /&gt;to see what MMS would have done?</description>
    <pubDate>Fri, 23 Mar 2007 08:20:42 GMT</pubDate>
    <dc:creator>Ian Miller.</dc:creator>
    <dc:date>2007-03-23T08:20:42Z</dc:date>
    <item>
      <title>MMS/CMS: What targets depend on a given source?</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967824#M35708</link>
      <description>This question is one of those issues that I just assumed could be done, but, after trying to figure it out, it appears that I assumed wrong.&lt;BR /&gt;&lt;BR /&gt;The issue is with MMS and CMS.  Given an MMS descrip file with all the usual targets, source, dependencies, rules, etc, is there an easy way to determine which targets are dependent on a given source?  More directly, if I change source.c, which executables are affected?&lt;BR /&gt;&lt;BR /&gt;Let me explain:&lt;BR /&gt;&lt;BR /&gt;Assume this simple descrip file:&lt;BR /&gt;&lt;BR /&gt;***Begin DESCRIP file****&lt;BR /&gt;&lt;BR /&gt;ALL :  group1, group2&lt;BR /&gt;&lt;BR /&gt;group1 : a.exe,c.exe,&lt;BR /&gt;&lt;BR /&gt;group2 : b.exe,d.exe&lt;BR /&gt;&lt;BR /&gt;a.exe : src1.obj,src2.obj&lt;BR /&gt;&lt;BR /&gt;b.exe : src3.obj,src4.obj&lt;BR /&gt;&lt;BR /&gt;c.exe : src1.obj,src4.obj&lt;BR /&gt;&lt;BR /&gt;d.exe : src2.obj,src4.obj&lt;BR /&gt;&lt;BR /&gt;****End DESCRIP file*****&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;What I want to do is determine which targets need to get rebuilt if I change, for example, src1.c.&lt;BR /&gt;&lt;BR /&gt;MMS would build the affected executables if I had all the executables in my working directory or CMS, etc, but that is not an option in this situation.  &lt;BR /&gt;&lt;BR /&gt;As far as I can determine, there is no obvious, straight forward way to have MMS tell me that if I change src1.c, the affected targets are a.exe, c.exe, group1, and all.&lt;BR /&gt;&lt;BR /&gt;(What I really want to know is the .exe's affected, so, in the previous example I would eventually filter out the mnemonics group1 and all)&lt;BR /&gt;&lt;BR /&gt;I'll probably solve my problem by parsing the descrip file.  That won't be too difficult.  But, before I went to that trouble, I thought I'd ask just to be sure I wasn't missing something obvious in MMS or CMS.&lt;BR /&gt;</description>
      <pubDate>Fri, 23 Mar 2007 08:17:04 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967824#M35708</guid>
      <dc:creator>Brad McCusker</dc:creator>
      <dc:date>2007-03-23T08:17:04Z</dc:date>
    </item>
    <item>
      <title>Re: MMS/CMS: What targets depend on a given source?</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967825#M35709</link>
      <description>what about using&lt;BR /&gt;MMS/NOACTION/LIST&lt;BR /&gt;to see what MMS would have done?</description>
      <pubDate>Fri, 23 Mar 2007 08:20:42 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967825#M35709</guid>
      <dc:creator>Ian Miller.</dc:creator>
      <dc:date>2007-03-23T08:20:42Z</dc:date>
    </item>
    <item>
      <title>Re: MMS/CMS: What targets depend on a given source?</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967826#M35710</link>
      <description>I don't immediately see anything better than&lt;BR /&gt;that.  Of course, you might need to loop&lt;BR /&gt;through your list of targets and look at the&lt;BR /&gt;status to see if it was already happy or not.&lt;BR /&gt;&lt;BR /&gt;I think that you want to let MMS figure this&lt;BR /&gt;out, rather than "parsing the descrip file"&lt;BR /&gt;yourself, unless you're interested only in&lt;BR /&gt;very simple description files.&lt;BR /&gt;&lt;BR /&gt;Note also: MMS /CHANGED = [...]</description>
      <pubDate>Fri, 23 Mar 2007 09:12:49 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967826#M35710</guid>
      <dc:creator>Steven Schweda</dc:creator>
      <dc:date>2007-03-23T09:12:49Z</dc:date>
    </item>
    <item>
      <title>Re: MMS/CMS: What targets depend on a given source?</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967827#M35711</link>
      <description>There isn't a way that I'm aware of, short of the verification approach suggested.&lt;BR /&gt;&lt;BR /&gt;I've become quite fond of the brute-force application build. &lt;BR /&gt;&lt;BR /&gt;Dependency builds seem quite elegant, but unfortunately seem to be as much of a labor sink as a labor savings.  &lt;BR /&gt;&lt;BR /&gt;Errors in the dependency graph can be really nasty.  Throwing hardware at the problem can make this all go away -- there's a definite cost to the processor savings from an incremental build, and a fast processor and fast I/O can greatly reduce those benefits.&lt;BR /&gt;&lt;BR /&gt;The brute-force approach toward determining dependencies -- without involving MMS -- is to work backwards from the maps and the listings -- this is how an organization that shall remain nameless has traditionally maintained that sort of information.&lt;BR /&gt;&lt;BR /&gt;Stephen Hoffman&lt;BR /&gt;HoffmanLabs&lt;BR /&gt;</description>
      <pubDate>Fri, 23 Mar 2007 10:05:20 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967827#M35711</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2007-03-23T10:05:20Z</dc:date>
    </item>
    <item>
      <title>Re: MMS/CMS: What targets depend on a given source?</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967828#M35712</link>
      <description>Thanks for the help...&lt;BR /&gt;&lt;BR /&gt;Ian - the "/NOACTION/LIST" approach won't help because I still need to tell it to build something, i.e give it a target.  That's essentially what I'm trying to figure out.  Though, it might come in handy with SteveS's suggestion.&lt;BR /&gt;&lt;BR /&gt;StevenS - /CHANGED appears to be exactly what I want.  I don't know how I missed that, but, it sure looks like it's giving me what I want.  &lt;BR /&gt;&lt;BR /&gt;Hoff - In this case, it's not an issue of minimizing what we build.  We have plenty of horsepower.  The issue is, I want to *know* which images are affected by a source change so that we can make informed decision on what we build, test and put into production. We want exactly and only those images which are affected.  No more and no less.  The good news is, the system is relatively static, so, the risk of messing up dependencies and such is relatively low - they haven't changed in a long time.&lt;BR /&gt;&lt;BR /&gt;That "static" nature of things is also part of the problem.  We make a change to a module, put it into production in a given image because we "know" that image is affected, but, we don't realize there are other images affected.  Then, months later we sometimes get surprised when one of those other images unexpectedly picks up that change.&lt;BR /&gt;&lt;BR /&gt;Thanks gain folks!&lt;BR /&gt;&lt;BR /&gt;Brad McCusker&lt;BR /&gt;Software Concepts International</description>
      <pubDate>Fri, 23 Mar 2007 11:48:14 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967828#M35712</guid>
      <dc:creator>Brad McCusker</dc:creator>
      <dc:date>2007-03-23T11:48:14Z</dc:date>
    </item>
    <item>
      <title>Re: MMS/CMS: What targets depend on a given source?</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967829#M35713</link>
      <description>&amp;gt;&amp;gt;&amp;gt;&lt;BR /&gt;That "static" nature of things is also part of the problem. We make a change to a module, put it into production in a given image because we "know" that image is affected, but, we don't realize there are other images affected. Then, months later we sometimes get surprised when one of those other images unexpectedly picks up that change.&lt;BR /&gt;&amp;lt;&amp;lt;&amp;lt;&lt;BR /&gt;&lt;BR /&gt;I've certainly encountered that case.&lt;BR /&gt;&lt;BR /&gt;The fix is to run the full build and at least a cursory regression test regularly, as to do otherwise means that cruft inevitably creeps in.  &lt;BR /&gt;&lt;BR /&gt;These things have a nasty habit of blowing up in odd and unexpected ways, even after you go to the effort of eye-balling the source code and the change.&lt;BR /&gt;&lt;BR /&gt;That, you'll want to preserve the full maps and full listings (with machine code) for everything you release.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 23 Mar 2007 15:13:50 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967829#M35713</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2007-03-23T15:13:50Z</dc:date>
    </item>
    <item>
      <title>Re: MMS/CMS: What targets depend on a given source?</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967830#M35714</link>
      <description>This might be a (partial) solution: &lt;BR /&gt;&lt;BR /&gt;If you specify the location (using logicals, of course) it would probably help:&lt;BR /&gt;&lt;BR /&gt;Group1: a.exe, c.exe&lt;BR /&gt;group2: b.exe, d.exe&lt;BR /&gt;&lt;BR /&gt;a.exe: obj:src1.obj, obj:src2.obj&lt;BR /&gt;b.exe: obj:src3.obj, obj:src4.obj&lt;BR /&gt;&lt;BR /&gt;Define/job obj as a searchlist referring the expected locations, it will locate the files.&lt;BR /&gt;&lt;BR /&gt;WG</description>
      <pubDate>Mon, 26 Mar 2007 10:08:58 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/mms-cms-what-targets-depend-on-a-given-source/m-p/3967830#M35714</guid>
      <dc:creator>Willem Grooters</dc:creator>
      <dc:date>2007-03-26T10:08:58Z</dc:date>
    </item>
  </channel>
</rss>

