Skip to content

plugins: make swiftCompilerModules optional #3735

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from

Conversation

compnerd
Copy link
Member

This is not always available, and is definitely not yet available on
Windows due to a completely broken build system. This optionalizes the
dependency to repair the Windows build.

This is not always available, and is definitely not yet available on
Windows due to a completely broken build system.  This optionalizes the
dependency to repair the Windows build.
@compnerd
Copy link
Member Author

@swift-ci please test

@compnerd
Copy link
Member Author

CC: @eeckstein @JDevlieghere

@eeckstein
Copy link

Why is this needed?
If bootstrapping=off, then swiftCompilerModules is aliased to swiftCompilerStub. So it should always be compilable, even if no swift modules are linked to the tool.

@compnerd
Copy link
Member Author

compnerd commented Dec 27, 2021

Interesting, well, something is definitely not working as expected on the Swift side as I'm seeing a bunch of failures in CI: https://ci-external.swift.org/job/swift-PR-windows/19527/consoleText

FAILED: bin/lldb-server.exe 
cmd.exe /C "cd . && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E vs_link_exe --intdir=tools\lldb-server\CMakeFiles\lldb-server.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\mt.exe --manifests  -- C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.300\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\lldb-server.rsp  /out:bin\lldb-server.exe /implib:lib\lldb-server.lib /pdb:bin\lldb-server.pdb /version:0.0 /INCREMENTAL:NO /STACK:10000000 /INCREMENTAL:NO /subsystem:console  && cd ."
LINK: command "C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.300\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\lldb-server.rsp /out:bin\lldb-server.exe /implib:lib\lldb-server.lib /pdb:bin\lldb-server.pdb /version:0.0 /INCREMENTAL:NO /STACK:10000000 /INCREMENTAL:NO /subsystem:console /MANIFEST /MANIFESTFILE:bin\lldb-server.exe.manifest" failed (exit code 1181) with the following output:
LINK : fatal error LNK1181: cannot open input file 'swiftCompilerModules.lib'

@eeckstein
Copy link

ok, I'm fine with this change. Can you please add a comment that this is only a workaround for this problem on windows?

@eeckstein
Copy link

Actually, it will fail without linking the stub, because it will need the initializeSwiftModules symbol

@compnerd
Copy link
Member Author

Seems that there is a dependency issue between the two that causes this. How do you expect the dependency to flow for this?

@eeckstein
Copy link

This is a bug: the initializeSwiftModules stub library is not added to the exported targets. The fix is here: swiftlang/swift#40712

@compnerd
Copy link
Member Author

compnerd commented Jan 4, 2022

Superseded by #3737.

@compnerd compnerd closed this Jan 4, 2022
@compnerd compnerd deleted the broken branch January 4, 2022 03:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants