llvm-project
2d95de04 - [llvm-shlib] Fix parallel build failure in gen-msvc-exports.py on Windows (#197190)

Commit
134 days ago
[llvm-shlib] Fix parallel build failure in gen-msvc-exports.py on Windows (#197190) The script was failing with OSError [Errno 22] Invalid argument when opening a temp file during parallel Windows builds. The root cause is that mkstemp() creates and closes a file descriptor, then the script re-opens it by path in a loop. On Windows, between the close and re-open, antivirus software or filesystem contention from parallel build processes can briefly lock the file, causing the subsequent open() to fail with EINVAL. Fix by replacing the temp-file-based approach with subprocess.check_output(), which captures nm's stdout directly in memory. This eliminates the temp file entirely, removing the race condition and simplifying the code (removing the unused mkstemp, contextmanager, and os imports along with the helper functions).
Author
Parents
Loading