Organization Of ESRG Product Source Code On
*nix And Windows® Computers
All product source code and other materials (if one wishes to rebuild
products) must have a canonical location and arrangement on the computer used
to build the products. This arrangement is described here.
- On a *nix machine, where relative paths are the norm, all of the ESRG
materials may placed anywhere in the directory structure of the *nix
machine so long as they preserve the same directory hierarchy as the CVS
archives. This is generally achieved by checking out all CVS modules
from the same location (and usually at the same time). For example,
the following command:
cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/esrg checkout esrgdocs esrgdstb esrgnxpj esrgpcpj esrgphpa esrgpubs esrgubka esrgweba
could be executed in any directory on a *nix system and would arrange all
the CVS modules correctly. (Note: the above command
assumes anonymous CVS access and also assumes the list of CVS modules that
are in existence as of April, 2003--the actual list may differ slightly by
the time you read this web page.)
- On a Windows® machine, the absolute path to each file must be exactly
the same on every machine used for development (this is a more stringent
requirement than for *nix machines). The reason for the more stringent
requirement is that some Windows applications (such as InstallShield
Express) are not designed to handle relative paths.
What this means in practice is that on a Windows® machine, all CVS
checkouts must be done while the current working directory is
"C:\" (for example, the example CVS command given above must be
executed from "C:\"). This ensures that each module occupies a directory
directly under "C:\". (By the way, all of the ESRG CVS
modules were named starting with "esrg" so that their origin would
be clear and so that they would not collide with any existing directories on
a Windows® machine.)
The requirements above can be phrased in an alternate and more compact way:
- On both *nix and Windows® machines, all ESRG CVS modules must have the
same relative relationship (they must be siblings in a root directory), and
- On a *nix machine, this root directory is arbitrary, but on a Windows®
machine, this root directory must be "C:\".
Particularly on Windows® machines, absolute paths are assumed.
For example, the file c:\esrgubka\svf.pdf must exist when building
the InstallShield Express distribution.
This
web page is maintained by David
T. Ashley.
$Header: /cvsroot/esrg/sfesrg/esrgweba/htdocs/devels/org_src_all_pforms/org_src_all_pforms.htm,v 1.4 2003/04/27 21:01:27 dtashley Exp $