Olexiy Buyanskyy <invalid.nore...@gnu.org> writes: > Issue is really critical for our company.
Criticality is subjective. > We have 20000 C/C++ source files and have several central common > libraries. So, a relatively small project. Okay. > Every patch goes on separate release branch that eventually is merging > to HEAD (production) code. During merge we use > > cvs -q upd -kk -j tag_HEAD_start_point -j br_REL_BRANCH folder_name > > During merge cvs apply properly patches to some files changed on > release branch, but it also change timestamp of other files. Well, it would only do that on any file which changes the -k option flag in use... probably all of them. > We use GNU make to compile our code and make uses timestamp. Lots of folks use some version of make to build their code. If the file changes, it is good to force a recompile. > Because cvs changed timestamp of all files this really triggers make > to recompile sources those were not really changed. First, it is only going to change the timestamp of files that are updated.... However the -kk option will probably change them all unless that is the normal situation you have in your checked out tree. There is a real difference between having keywords expanded and not having them expanded. > So question why CVS change timestamp of all files. Because it is the correct thing to do in 99.99% of the cases. I suggest you may find efficiencies in your build process by considering the use of ccache (see http://ccache.samba.org/). If the CPP output of the source files are the same, then ccache can give you a fair amount of performance boot by not needing to do a full compile of the sources to get the same .o files out of them... as likely happens if all of the CVS keywords are in comments rather than in the source itself. > Can this be fixed or new option introduced for merge process? If you want to work on it, feel free to do so. You have the sources, go ahead and use them to make any changes you feel may be useful to you. Feel free to share any patches you produce if you wish. Enjoy! -- Mark
pgpZQEEwC5hyP.pgp
Description: PGP signature
_______________________________________________ Bug-cvs mailing list Bug-cvs@nongnu.org http://lists.nongnu.org/mailman/listinfo/bug-cvs