depot/third_party/nixpkgs/pkgs/build-support/dotnet/dotnetbuildhelpers/remove-duplicated-dlls.sh
Default email 792b51d22f Project import generated by Copybara.
GitOrigin-RevId: d5f237872975e6fb6f76eef1368b5634ffcd266f
2022-02-20 05:27:41 +00:00

22 lines
573 B
Bash

#!/usr/bin/env bash
IFS="
"
for dll in $(find -iname \*.dll)
do
baseName="$(basename "$dll" | sed "s/.dll$//i")"
if pkg-config "$baseName"
then
candidateDll="$(pkg-config "$baseName" --variable=Libraries)"
if diff "$dll" "$candidateDll" >/dev/null
then
echo "$dll is identical to $candidateDll. Substituting..."
rm -vf "$dll"
ln -sv "$candidateDll" "$dll"
else
echo "$dll and $candidateDll share the same name but have different contents, leaving alone."
fi
fi
done