info-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Newbie question : common/shared objects


From: Todd Denniston
Subject: Re: Newbie question : common/shared objects
Date: Thu, 26 Sep 2002 10:28:38 -0500

Jay Yarbrough wrote:
> 
> I'm quite new to using CVS.
> 
> Our applications rely on common source, and built products alike.
> 
> Some of these are 3rd party (dlls, jars, source, etc.) and some are 
> internally developed.
> 
> For instance, to build release 1.2 of product X, I need release 3.4 of 
> product A, release 5.4 of product B, and release 1.1 of product C.
> 
> To build release 2.1 of Product Y, I will use release 3.4 of product A, 
> release 5.3 of product B, and release 2.0 of product D.
> 
> How is this typically handled within CVS?
> 
> TIA,
> Jay
>
Two ways I see.
1. for the crowd who believe 0 binary files should be stored in CVS
a) put everything you have source for under cvs, probably good to have a
separate module for each of the 3rd party sources.
b) store all binaries in an accessible directory (use naming to indicate binary
version).
c) build either a file describing which binaries go with the version, or build
a makefile (or your build tool of choice) which will get the binaries needed
for the version.
d) check the makefile/binary description file into the repository.
e) use cvs tag or cvs rtag to apply the same tag to the whole set of cvs
modules for the version, including the makefile/binary description file.

to retrieve a version
a) cvs checkout -r $TAGNAME all_modules
b) use makefile/binary description file to recover needed binary files.
c) build

2. for the crowd that tolerates binary files in CVS, and understands that the
',v' files will get big quick.
a) put everything you have source for under cvs, probably good to have a
separate module for each of the 3rd party sources.
b) put binaries you do not have source for under cvs (don't forget `-kb')
   http://www.cvshome.org/docs/manual/cvs_9.html#SEC80
c) use cvs tag or cvs rtag to apply the same tag to the whole set of cvs
modules for the version. Remember to omit ones not needed.

to retrieve a version
a) cvs checkout -r $TAGNAME all_modules
b) build

-- 
I'd crawl over an acre of 'Visual This++' and 'Integrated Development
That' to get to gcc, Emacs, and gdb.  Thank you.
        -- Vance Petree, Virginia Power




reply via email to

[Prev in Thread] Current Thread [Next in Thread]