RESOLVED FIXED Bug 204831
[Win] lld-link: error: /manifestdependency: is not allowed in .drectve
https://bugs.webkit.org/show_bug.cgi?id=204831
Summary [Win] lld-link: error: /manifestdependency: is not allowed in .drectve
Fujii Hironori
Reported 2019-12-03 18:35:38 PST
[Win] lld-link: error: /manifestdependency: is not allowed in .drectve I tried LLVM-9.0.0-r363781-win64.exe to build WinCairo today, and see the following linkage errors. > [1696/5123] Linking CXX executable bin64\testRegExp.exe > FAILED: bin64/testRegExp.exe > cmd.exe /C "cd . && "C:\Program Files\CMake\bin\cmake.exe" -E vs_link_exe --intdir=Source\JavaScriptCore\shell\CMakeFiles\testRegExp.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\tools\llvm\bin\lld-link.exe /nologo Source\JavaScriptCore\shell\CMakeFiles\testRegExp.dir\DLLLauncherMain.cpp.obj /out:bin64\testRegExp.exe /implib:lib64\testRegExp.lib /pdb:bin64\testRegExp.pdb /version:0.0 /machine:x64 /DEBUG /OPT:ICF /OPT:REF /OPT:NOREF /OPT:NOICF /INCREMENTAL:NO /debug /INCREMENTAL /INCREMENTAL:NO /subsystem:console -LIBPATH:C:\webkit\gb\WebKitBuild\Debug\lib64 -LIBPATH:C:\webkit\gb\WebKitLibraries\win\lib64 shlwapi.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cd ." > LINK Pass 1: command "C:\tools\llvm\bin\lld-link.exe /nologo Source\JavaScriptCore\shell\CMakeFiles\testRegExp.dir\DLLLauncherMain.cpp.obj /out:bin64\testRegExp.exe /implib:lib64\testRegExp.lib /pdb:bin64\testRegExp.pdb /version:0.0 /machine:x64 /DEBUG /OPT:ICF /OPT:REF /OPT:NOREF /OPT:NOICF /INCREMENTAL:NO /debug /INCREMENTAL /INCREMENTAL:NO /subsystem:console -LIBPATH:C:\webkit\gb\WebKitBuild\Debug\lib64 -LIBPATH:C:\webkit\gb\WebKitLibraries\win\lib64 shlwapi.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:Source\JavaScriptCore\shell\CMakeFiles\testRegExp.dir/intermediate.manifest Source\JavaScriptCore\shell\CMakeFiles\testRegExp.dir/manifest.res" failed (exit code 1) with the following output: > lld-link: error: /manifestdependency: is not allowed in .drectve
Attachments
Patch (6.15 KB, patch)
2020-03-25 17:26 PDT, Fujii Hironori
no flags
Patch (9.32 KB, patch)
2020-03-26 19:52 PDT, Fujii Hironori
no flags
Patch (5.68 KB, patch)
2020-03-26 19:55 PDT, Fujii Hironori
no flags
Fujii Hironori
Comment 1 2019-12-03 18:35:47 PST
The following files has /manifestdependency. Tools/TestWebKitAPI/win/main.cpp Source/JavaScriptCore/shell/DLLLauncherMain.cpp Tools/win/DLLLauncher/DLLLauncherMain.cpp > #pragma comment(linker, "/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='" PROCESSORARCHITECTURE "' publicKeyToken='6595b64144ccf1df' language='*'\"")
Fujii Hironori
Comment 2 2019-12-03 18:36:00 PST
LLVM bug ticket: 38797 – lld-link compatibility: reading manifestdependency from .drectve https://bugs.llvm.org/show_bug.cgi?id=38797
Fujii Hironori
Comment 3 2019-12-03 19:03:59 PST
(In reply to Fujii Hironori from comment #0) > I tried LLVM-9.0.0-r363781-win64.exe to build WinCairo today, and see the LLVM-9.0.0-r363781-win64.exe is too old. I tried LLVM-10.0.0-r375090-win64.exe, and observed the issue still happen.
Fujii Hironori
Comment 4 2019-12-03 19:41:46 PST
CMake prefers lld-link over link.exe if Clang is used. https://gitlab.kitware.com/cmake/cmake/commit/079b8e29168dc081f37f79f3577a5c0690bb7051 I need to remove lld-link.exe in my PATH to make CMake choose link.exe.
Fujii Hironori
Comment 5 2020-03-25 17:26:16 PDT
Ross Kirsling
Comment 6 2020-03-25 19:23:28 PDT
Comment on attachment 394563 [details] Patch Nice. I take it we don't care about ia64, whatever that is?
Fujii Hironori
Comment 7 2020-03-25 23:44:54 PDT
Comment on attachment 394563 [details] Patch Clearing flags on attachment: 394563 Committed r259035: <https://trac.webkit.org/changeset/259035>
Fujii Hironori
Comment 8 2020-03-25 23:44:58 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 9 2020-03-25 23:45:16 PDT
WebKit Commit Bot
Comment 10 2020-03-26 07:29:10 PDT
Re-opened since this is blocked by bug 209597
Fujii Hironori
Comment 11 2020-03-26 19:52:32 PDT
Fujii Hironori
Comment 12 2020-03-26 19:55:19 PDT
Fujii Hironori
Comment 13 2020-03-26 21:14:58 PDT
Comment on attachment 394695 [details] Patch Clearing flags on attachment: 394695 Committed r259102: <https://trac.webkit.org/changeset/259102>
Fujii Hironori
Comment 14 2020-03-26 21:15:02 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.