More CVS learning: When updating sourcing with import (which seems to be the preferred way of doing it), some files might be obsolete and not in the newly imported sources, which can sometimes cause Makefiles to break. So, after importing the new sources, do a merge between the two versions:
cvs co -j OLDTAG -j NEWTAG module
I updated PAM like this, however, and now a locally-added definition file is dead. Haven't been able to resurrect it. Re-adding didn't seem to work as it did with man. I think I know how to do it; I just have to try it.
BTW, I've been reading the CVS book Open Source Development with CVS, some of which is available on the web. It's helping me greatly to understand the problems I've been having. I purchased a dead-tree version and have been reading it on the bus--it helps so much to learn things in just-in-case style, rather than just-in-time--hunting around through the on-line docs trying to understand why what I just did didn't work.
Discovered more about make too. Found out that ifdefs and ifndefs are line-oriented, so I cannot use them within a single-line expression. Found out I also shouldn't pass $(MAKEFLAGS) on sub-invocations of make.
I wish there were a more thorough make book available. I read O'Reilly book, Managing Projects with make, and while it is a good book, it just doesn't go into enough detail and examples. I've been trying to read the GNU info manual (with help from texi2html), but it's a reference, not a tutorial, and somewhat sparse on examples.