Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to firstname.lastname@example.org.
"Bo Berglund" <bo.berglund at telia.com> wrote in message news:pva1e2pc6djo3s6disk994frqthcv7k0cc at 4ax.com... > On Mon, 14 Aug 2006 11:58:33 -0400, "Nick Duane" <nickdu at msn.com> > wrote: > >>Our project consists of several applications and several static libraries >>that most of these applications make use of. Currently when a release is >>done only the applications which have changes are built and released. I'm >>not sure if this is the best approach, as when I started working on >>cleaning >>up the build several applications no longer built because of changes that >>were made to the shared libraries. > > Welcome! THis is one of the reasons to use virtual modules instead! > We have many applications that we need to maintain all the time. They > have their own sources but they also use a lot of common code. > So what we have done is to create a virtual module (using the > CVSROOT/modules file) for each of tghese applications. > The sources needed are checked out to subfolders below the application > main folder using ampersand modules so we get a structure > approximately like this: > > application > |- source (main sources for the application) > |- common > | |- classxx > | |- classyy > | |- classzz > | |- utils > | |- libs > |- bin (where the executable go) > Along these same lines, I have a thirdParty module that contains thirdParty code (headers & libs from external sources). My current thinking is that I'll put this under each and every top level module as opposed to it being a top level module under the repository. The reason is that if someone updates any of these I don't want it to affect all modules. Each module should be able to upgrade to a third party version on their own timetable. And in order to confidently be able to say I can reproduce any past release it seems as if I should also put the development tools and sdk's (VS.NET, Platform SDK, etc.) under CVS control also. Is this what others do? Thanks, Nick