Bug 4037 - Add support for features with mwb files
Summary: Add support for features with mwb files
Status: NEW
Alias: None
Product: MPC
Classification: Unclassified
Component: MPC (show other bugs)
Version: unspecified
Hardware: All Linux
: P3 normal
Assignee: Adam Mitz
URL:
Depends on:
Blocks:
 
Reported: 2012-05-31 12:26 CDT by Johnny Willemsen
Modified: 2012-07-30 09:11 CDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Johnny Willemsen 2012-05-31 12:26:33 CDT
The following idea would be very useful in MPC so that we can add a workspace that automatically includes opendds when dds4ccm_opendds has been enabled.

There is a little-used functionality in MPC: mwb files.  I don't know if they work with features like mpb files do.  If it doesn't work we may be able to add it to MPC.

opendds_tao_optional.mwb
---------
feature(dds4ccm_opendds) {
  $(DDS_ROOT)/DDS_TAOv2.mwc
}

foo.mwc
---------
workspace : opendds_tao_optional {
  $(ACE_ROOT)/ace
  connectors/dds4ccm/tools
}
Comment 1 Adam Mitz 2012-05-31 12:52:14 CDT
Notes from Chad:

Factor code out of ProjectCreator into Creator and have the ProjectCreator and WorkspaceCreator implement a couple of functions to handle the specifics of supporting features. 
Comment 2 Johnny Willemsen 2012-06-12 09:42:34 CDT
Any idea if we can get this added the next week or so? Else we have to remove the workspaces again from trunk
Comment 3 Adam Mitz 2012-06-12 10:17:37 CDT
(In reply to comment #2)
> Any idea if we can get this added the next week or so? Else we have to remove
> the workspaces again from trunk
> 

I don't think it will be in the next week.  For now, could you have two different workspaces, one with OpenDDS and one without?
Comment 4 Johnny Willemsen 2012-06-12 10:54:14 CDT
(In reply to comment #3)
> I don't think it will be in the next week.  For now, could you have two
> different workspaces, one with OpenDDS and one without?

We have now two, but the one with opendds is now always picked up when using the -recurse option which is used by several msvc builds, but also the release script 

Comment 5 Johnny Willemsen 2012-06-12 10:54:34 CDT
probably than the easiest is to exclude the new workspaces in the release script
Comment 6 Adam Mitz 2012-06-12 10:58:06 CDT
(In reply to comment #5)
> probably than the easiest is to exclude the new workspaces in the release
> script
> 

Yes, I agree that adding -exclude is the best short-term option.  Eventually we should be able to do the MPC change, but probably not in time for this next release.
Comment 7 Johnny Willemsen 2012-07-26 03:25:14 CDT
Using -exclude didn't work because of the usage of -recurse. Removed the problematic workspaces from the tree before packaging the release which at least make sure the x.1.3 gets out.
Comment 8 Adam Mitz 2012-07-27 16:03:31 CDT
(In reply to comment #7)
> Using -exclude didn't work because of the usage of -recurse. Removed the
> problematic workspaces from the tree before packaging the release which at
> least make sure the x.1.3 gets out.
> 

-exclude is the way to limit the search of -recurse.  For example, you can run mwc.pl -type gnuace -recurse -exclude a/b/c.mwc,d/e,f/g.mwc
Comment 9 Johnny Willemsen 2012-07-27 16:15:38 CDT
Will regest this, the gemeration failed with vc10 as type
Comment 10 Johnny Willemsen 2012-07-28 14:20:59 CDT
Wildcard is the problem, this fails:

perl $ACE_ROOT/bin/mwc.pl -type vc10 -recurse -exclude CIAO/CIAO_*_OpenDDS.mwc
Comment 11 Adam Mitz 2012-07-30 09:11:43 CDT
(In reply to comment #10)
> Wildcard is the problem, this fails:
> 
> perl $ACE_ROOT/bin/mwc.pl -type vc10 -recurse -exclude CIAO/CIAO_*_OpenDDS.mwc
> 

Was the * expanded by the shell before MPC got a chance to see it?