The CopyFileIfDifferent, CopyFileAlways, CopyAFile and CopyADirectory
methods should always copy permissions. The special cases in which a
caller would pass copyPermissions=false should be handled at the call
site. The parameter needlessly complicates the interface and semantics
of these methods.
On Windows 7 the file size reported by 'stat' on a new file sometimes
reports zero even though the real size is correct. This causes our
CopyFileAlways method to falsely detect copy failure. Work around the
problem by trusting the state of ofstream after writing the file.
Commit 0fafdb7e (Do not copy permissions of files when making the copy
in an install rule, 2008-12-18) added special behavior to KWSys file
copy methods for this special case. Use a local solution to avoid use
of the special behavior so it can be removed later.
Map to the platform and compiler information for GNU because the
compilers are command-line compatible for common operations. Later we
can add Clang-specific features as necessary. We honor the preferred
capitalization is "Clang", not the common mis-spelling "CLang".
Merge the release branch into master to get its version number, tags,
and ChangeLog. Revert the version on master from 2.9 back to 2.8.
Future releases will be prepared directly in master.
This is the starting point for a branchy workflow based on one described
by the "git help workflows" man page. New development will be done on
local topic branches. Topics will be published by merging them into one
of the integration branches:
maint = Maintenance of previous release
master = Preparation of future release
next = Development of features ("next" to be merged into master)
In order to bootstrap the topic-based workflow from here, all changes in
master since the 2.8 release branch started will either be included in
the next release or reverted and recreated on a topic branch.
Only generate .filters files if they are different than the last time
they were generated. This should prevent the unnecessary reloads
being triggered with Visual Studio 2010 builds.
Commit f90bdaf3 ("BUG #10209: Fixed FindwxWidget CXX flags parsing
error.", 2010-05-09) was accidentally based on a "nightly start time"
merge branch and then rebased on commit e30279e7 ("KWSys Nightly Date
Stamp", 2010-05-10) by "hg-git". The rebase brought the whole nightly
merge branch along as empty commits, but the committer times were not
updated during the rebase.
The above led to a series of commit objects whose recorded committer
time predates their parent commits. This confuses Git's date-based
revision selection (like --since="$date") which assumes that commit
object times are always newer than their parents.
We resolved the problem by rebasing history since f90bdaf3 onto
e30279e7. This merge commit combines the two versions of history to
allow branches to fast-forward through here from the original history.
The first parent of this commit is the fixed history and the second
parent is the original history. Now date-based revision selection works
correctly because it can walk through the left of this merge.