On Tue, Jan 23, 2007 at 09:50:32AM -0500, Ken Murchison wrote: > Gary Mills wrote: > >I've noticed for some time that whenever I type `make' in the Cyrus > >source tree, it always recompiles something. A repeated make should > >evenually stop compiling but this one never does. The worst offenders > >are the various perl Makefiles which rebuild Makefile from Makefile.PL > >every time, instead of only doing it when it's out of date. This > > I'm not a Perl guy, so I don't know if this is necessary or not. The problem is that Makefile.PL is not really a Makefile. It's run by perl to create the Makefile. I suppose that that should be done by the configure step, not by the compile step. > >causes the perl modules to be recompiled. As well, imap/Makefile > >recreates xversion.h each time, resulting in more recompiles. > > We recreate xversion.h (and imapd as a result) so we get an accurate CVS > timestamp in imapd for version reporting. I'm not a CVS guy, but there must be a better way to accomplish this without causing a recompile. > >This behavior is annoying because I build the Cyrus software on a > >development server but then install it on other servers where there > >is no compiler and the source tree is mounted read-only. This breaks > >`make install', which should only install things, not recompile them. > >Can this be fixed, or am I condemned to hack Makefiles myself? > > A 'make install' shouldn't compile anything if all of the generated > files already exist. I would consider this a bug and would gladly > accept a patch which fixes this behavior. Is there a release coming soon, perhaps to fix the core dump that we heard about? If so, I'll use that distribution to work on a patch. -- -Gary Mills- -Unix Support- -U of M Academic Computing and Networking- ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html