diff --git a/Source/cmFileCopier.cxx b/Source/cmFileCopier.cxx index 70e6089add..ef55abfd14 100644 --- a/Source/cmFileCopier.cxx +++ b/Source/cmFileCopier.cxx @@ -647,7 +647,10 @@ bool cmFileCopier::InstallDirectory(const std::string& source, { // Inform the user about this directory installation. this->ReportCopy(destination, TypeDir, - !cmSystemTools::FileIsDirectory(destination)); + !( // Report "Up-to-date:" for existing directories, + // but not symlinks to them. + cmSystemTools::FileIsDirectory(destination) && + !cmSystemTools::FileIsSymlink(destination))); // check if default dir creation permissions were set mode_t default_dir_mode_v = 0; diff --git a/Tests/RunCMake/install/DIRECTORY-symlink-clobber-all-stdout.txt b/Tests/RunCMake/install/DIRECTORY-symlink-clobber-all-stdout.txt index e69ef02bc2..db8ca1086a 100644 --- a/Tests/RunCMake/install/DIRECTORY-symlink-clobber-all-stdout.txt +++ b/Tests/RunCMake/install/DIRECTORY-symlink-clobber-all-stdout.txt @@ -4,7 +4,7 @@ ]*/Tests/RunCMake/install/DIRECTORY-symlink-clobber-build/root-all/dest/dir/file -- Installing: [^ ]*/Tests/RunCMake/install/DIRECTORY-symlink-clobber-build/root-all/dest/lnk --- Up-to-date: [^ +-- Installing: [^ ]*/Tests/RunCMake/install/DIRECTORY-symlink-clobber-build/root-all/dest/lnk -- Up-to-date: [^ ]*/Tests/RunCMake/install/DIRECTORY-symlink-clobber-build/root-all/dest/lnk/file