Merge pull request #90004 from romildo/buildenv

buildenv: paths to link resolving to the same absolute path is not a conflict
This commit is contained in:
José Romildo Malaquias 2020-06-11 12:50:31 -03:00 committed by GitHub
commit 87eb2f4342
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -129,6 +129,15 @@ sub findFiles {
return; return;
} }
# If target already exists and both targets resolves to the same path, skip
if (defined $oldTarget && $oldTarget ne "" && abs_path($target) eq abs_path($oldTarget)) {
# Prefer the target that is not a symlink, if any
if (-l $oldTarget && ! -l $target) {
$symlinks{$relName} = [$target, $priority];
}
return;
}
# If target already exists as a symlink to a file (not a # If target already exists as a symlink to a file (not a
# directory) in a higher-priority package, skip. # directory) in a higher-priority package, skip.
if (defined $oldTarget && $priority > $oldPriority && $oldTarget ne "" && ! -d $oldTarget) { if (defined $oldTarget && $priority > $oldPriority && $oldTarget ne "" && ! -d $oldTarget) {