Skip to content

Update toolchains for latest SDK; add CI - #61

Open
slipher wants to merge 13 commits into
masterfrom
slipher/ci
Open

Update toolchains for latest SDK; add CI#61
slipher wants to merge 13 commits into
masterfrom
slipher/ci

Conversation

@slipher

@slipher slipher commented Aug 10, 2026

Copy link
Copy Markdown
Member
  • Improve test timeout behavior to try to avoid hanging forever (would be especially annoying on the CI)
  • Update toolchains for latest Saigo release, including enabling GDB
  • Fix some tests on Windows
  • Add CI for running Scons builds and tests.

@slipher
slipher force-pushed the slipher/ci branch 2 times, most recently from aaf07a7 to 2a16835 Compare August 12, 2026 04:31
@slipher

slipher commented Aug 12, 2026

Copy link
Copy Markdown
Member Author

I added a commit moving the ARM build to the old version of the toolchain so that we can build NaCl stuff and run tests.

slipher and others added 12 commits August 12, 2026 19:59
On *nix platforms, try sending SIGINT first to a timed-out test process,
then send SIGKILL after 3 seconds. This gives the test the chance to do
cleanup, particularly of child processes. Contrary to the belief of a
prior author, killing a process does not ensure that descendants of that
process are also killed.
On Linux, GDB tests that got deadlocked (for example
run_gdb_break_continue_thread_test on ARM) would cause command_tester.py
to hang indefinitely because the GDB and sel_ldr processes continued to
live after the main test process (the child of command_tester) was
killed. Make the main test process respond to SIGINT by killing its
children.
illwieckz's latest toolchain build
https://github.com/DaemonEngine/saigo-nacl-sdk/releases/tag/v21.0-20260805
adds GDB and renames some binutils binaries. Update scons and run.py
accordingly. Also delete the code for finding GDB in a 2nd variant of
the NaCl toolchain.
But disable 2 tests on ARM that don't work without GDB speaking XML.
In 22bd955 I updated the expected
return code for run_ntdll_intercept_test but neglected to do the same
for run_ntdll_fallback_test.
I used the Azure Pipelines job skeleton from
#39. But CMake stuff
is replaced with Scons since that is the currently functional build
system.

All 64-bit platforms are running most tests. ARM Linux has the NaCl
mode disabled due to SDK defects, so it only runs a few tests. x86
32-bit platforms build everything but don't run tests.

Co-authored-by: Thomas Debesse <dev@illwieckz.net>
@illwieckz

Copy link
Copy Markdown
Member

Saigo 20260813 is out:

It includes the ARM nacl-arm-as (with Arm support, and built from the expected branch).
So you should be able to drop the old Google Saigo build and fully switch to Dæmon Saigo.

I renamed versions using a better scheme, the the old saigo download links are probably dead.

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