What tools make it easy to maintain (or avoid!) the N versions of your CV? Academics need various forms of their CV, depending on what purpose it's being used for. In my case, here are reasons I've had to re-format or have a different version of my CV:


promotion and tenure, 
research proposals (each grant program requires a different format), 
program accreditation for engineering universities, 
my official web page at my university (with a French and English version).


It's a lot of busy work to maintain these CVs, especially as they evolve.

In Canada, there's a program in government-funded research to have a common format for CVs, called the Canadian Common CV. It's a great idea, but doesn't really solve the global problems. Not all funding organizations support it (or the same version of it). 

Can anyone recommend tools that help in preparing academic CVs in various formats? Probably this means centralizing the information in one place and having it output in customizable formats. Obviously, there needs to be some understanding of the elements of an academic CV: publications, students supervised, grants awarded, community service, courses taught, distinguished awards, etc.
In addition to using LaTeX with a makefile, I find that using the LaTeX package splitbib is very useful. It allows you to format your publications with different subtitles for different category of publications, and you can pick and choose which entries from your publications (which I maintain as a BiBTeX file) should be included. 

Since LaTeX allows you to include files, it's relatively easy to create separate files that contain the base material and then include them as needed in different formats.