[PATCH] D63109: lld-link: Reject more than one resource .obj file
Nico Weber via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 8 07:47:13 PDT 2019
thakis added a comment.
In D63109#1558181 <https://reviews.llvm.org/D63109#1558181>, @mstorsjo wrote:
> In D63109#1557242 <https://reviews.llvm.org/D63109#1557242>, @thakis wrote:
>
> > I think all four combinations of {llvm-cvtres,cvtres.exe} x {llvm-link,link.exe} should have the same behavior. What does link.exe say to two windres outputs? What does GNU ld do with two cvtres.exe inputs?
>
>
> After a bit more testing, I have the following result matrix:
>
> windres .o cvtres .obj llvm-cvtres.obj .res
> GNU ld Both First First not supported
> link.exe First Error Error Both
> lld-link None Error Error Both
>
>
> Noted oddities:
>
> - When lld-link produces an error in these cases (faced with two resource obj files), the output exe file is still present on disk though, contrary to link.exe
> - lld-link seems to fail to use resources packaged by windres into object files. Will look into why.
> - lld-link also seems to have issues with object files produces by cvtres (tested with cvtres from both MSVC 2019 and MSVC2015), the resources aren't located at runtime - even when only given one single file, while files from llvm-cvtres works fine. Will also look into why for this case.
>
> Thus, for lld-link, neither windres nor cvtres object files work at the moment, only llvm-cvtres (and plain .res files).
Did this ever get sorted out? I saw D63837 <https://reviews.llvm.org/D63837> go by a while ago which from a distance looks related. Did that fix everything? Do all tools agree now?
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63109/new/
https://reviews.llvm.org/D63109
More information about the llvm-commits
mailing list