[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] building projects prior to a launch

When building before launching, CDT tries to build not only the project reference in the launch configuration but also any projects that that project references (and so on down the chain). That just doesn't seem right to me, simply because the relationship between such projects is inadequately defined. The relationships are made possible by the platform[1] and the platform is clueless with regards to CDT's concept of build configurations. So while the platform lets us say that project A references project B, it doesn't allow us to say that {projectA, configuration 'Debug'} references {project B, configuration 'Debug'}. And without that sort of more detailed relationship, I think it's pointless to try to initiate a build of all projects referenced by A.  Doing so will initiate a build of B but it will build whatever configuration is active for that project, and it's luck if that happens to be the appropriate one.

So, my suggestion is to simply build the project referenced in the launch configuration, and specifically the build configuration specified in the launch configuration, and to hell with any projects that such project references :-) This until we come up with a way to more precisely tie two CDT projects.

A compromise may be to consider that all referenced projects might have configurations of the same name, and build the specified configuration where available, otherwise whichever one is active for the project. I really don't like this since it provides expected behavior for people who use consistent configuration names in all their projects, but different behavior for others.



[1] See project Properties > Project References