For any programmer or team struggling with builds and maintenance, this book can save dozens of errors and hours of effort. It shows you how to structure a large project and keep your files and builds under control over many releases and platforms. The building blocks are simple: common-sense strategies, public-domain tools that you can obtain on a variety of systems, and special utilities developed by the author.
On two diskettes provided with the book, Jameson offers a complete system for managing directories, makefile templates, and source code revisions. Both free software and tools developed by the author are included.
The tools and ideas offered here are efficient enough to be used by one person working on a PC, but powerful enough to support entire teams of developers. They've been tested in practice on projects from 50 to 100,000 lines of code. And complete, documented source code is included, in case you need to modify or extend the tools.
In short, this book is an inexpensive, "one-stop-shopping" solution for code management problems. It can help you improve your personal software development process and can make it very easy for you to reuse and update shared code files.
Topics covered in this book include:
- Multi-platform directory structures for isolating and controlling platform dependent code.
- Automatic makefile generating tools to promote uniform, portable makefiles on your projects and to save you time.
- File sharing tools that make it easy to share the latest versions of files among multiple developers and software products, automatically. Since the sharing tools log all sharing operations, they can easily help you answer programming questions, such as, "Where did this file come from, and which programs will be affected if I modify it?"
- RCSDO, a tool that performs version control operations on entire trees of files at a time. (RCS v5.5 is included, too.) The source code provided runs on at least these 15 platforms: AIX, Amiga, Apollo Domain, Dell PC Unix (SVR4), HP-UX, Irix4, Linux, MS-DOS (Borland), MS-DOS (Microsoft), OS/2, NetBSD, NeXT, Solaris 1 (SunOS 413), Solaris 2, and Ultrix. The RCS v5.5 software has been specially modified for DOS-Unix network use and is known to run on MS-DOS (Borland), MS-DOS (Microsoft), and Solaris 1.0 (SunOS 413). The diskettes also contain precompiled binaries for MSDOS. Here is a sample of the tools included on the diskettes:
- cmi: copy a shared file from its public location to the directory where it can be used for builds
- cmx: copy a shared file from its source directory to a public location where other developers can get it
- makenode: make a directory structure to hold a product's source files in the form that the other tools can work with
- newmakes: generate makefiles throughout a product's directory structure
- rcsdo: do common activities on a group of RCS files in bulk
- twalker: generate a batch script that can traverse all files of a particular type in a directory tree
"synopsis" may belong to another edition of this title.