Skip to content

ci: add native Windows build workflow to verify documented prerequisites#19074

Closed
anacrolix wants to merge 7 commits intomainfrom
anacrolix/native-windows-build
Closed

ci: add native Windows build workflow to verify documented prerequisites#19074
anacrolix wants to merge 7 commits intomainfrom
anacrolix/native-windows-build

Conversation

@anacrolix
Copy link
Contributor

Summary

  • Adds a new CI workflow that verifies the documented prerequisites are sufficient to build erigon on Windows
  • Restricts PATH to only Go, Git for Windows (MSYS2 utils), and chocolatey-installed cmake/make/mingw
  • Builds erigon, verifies the binary, builds all targets, and runs short tests

Test plan

  • The new Native Windows build (docs verification) workflow passes
  • If it fails, the error identifies which undocumented tool is missing

🤖 Generated with Claude Code

Adds a workflow that restricts PATH to only tools from the documented
prerequisites (Go, Git for Windows, chocolatey cmake/make/mingw) to
verify that the docs are sufficient for building on a fresh Windows
install.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@anacrolix anacrolix marked this pull request as draft February 10, 2026 11:21
The chocolatey mingw package installs gcc to C:\ProgramData\mingw64\
rather than the expected choco lib path. Use `which` to discover actual
binary locations before restricting PATH. Also fix Git for Windows
paths: use /usr/bin and /mingw64/bin directly instead of computing
from `which git` (which returns an MSYS2-internal path).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@anacrolix anacrolix marked this pull request as ready for review February 10, 2026 11:29
Rewrite the PATH restriction in the native Windows build workflow to use
cygpath -w for Windows-native paths (semicolon-separated, C:\... style).
MSYS2 bash auto-translates these, so existing bash steps are unaffected.

Add a PowerShell build step (shell: pwsh) to verify that make erigon works
from the default Windows shell experience.
@anacrolix anacrolix marked this pull request as draft February 10, 2026 12:59
Install cmake and mingw alongside make, add mingw to PATH, verify tool
availability, and build erigon individually before make all. This brings
the main CI Windows job in line with the dedicated native build workflow.
@anacrolix
Copy link
Contributor Author

I can't actually tell if this is identifying the issue that @bloxster reported to me. I'll leave it in draft while I am tracking down the issues.

@anacrolix anacrolix self-assigned this Feb 13, 2026
@anacrolix anacrolix requested a review from bloxster February 13, 2026 04:05
@bloxster
Copy link
Collaborator

Git-Bash_full_log.txt
This is the same error I get both in my Windows 11 VM and full installation. Would be nice to remove all warnings.

No warning at all if compiling wmake.ps1 in file explorer or Powershell (old method).

@anacrolix
Copy link
Contributor Author

Git-Bash_full_log.txt This is the same error I get both in my Windows 11 VM and full installation. Would be nice to remove all warnings.

No warning at all if compiling wmake.ps1 in file explorer or Powershell (old method).

See also #17214.

@anacrolix
Copy link
Contributor Author

@copilot rebase to main

Copy link
Contributor

Copilot AI commented Feb 13, 2026

@anacrolix I've opened a new pull request, #19169, to work on those changes. Once the pull request is ready, I'll request review from you.

AskAlexSharov pushed a commit that referenced this pull request Feb 15, 2026
Fixes warning in log at
#19074 (comment)

Fixes #17214 (GCC most
likely).

I'm expecting the strlen warning to be fixed, and if the top-level
warning thing for cc1 still exists, I'll add a fix for that in this PR.

Need to read the build log for a Windows workflow to confirm.
@anacrolix
Copy link
Contributor Author

I don't like the direction this workflow is going, I think it's too complicated. Also the source of the warning is probably fixed, so I made #19201.

@anacrolix anacrolix closed this Feb 16, 2026
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.

3 participants