Skip to content

BSD CI probe (verification run, do not merge) - #1

Closed
neilpang wants to merge 2 commits into
masterfrom
ci/bsd
Closed

BSD CI probe (verification run, do not merge)#1
neilpang wants to merge 2 commits into
masterfrom
ci/bsd

Conversation

@neilpang

Copy link
Copy Markdown
Owner

Fork-internal run to exercise the new BSD workflow on real GitHub Actions. Not for upstream.

Copilot AI review requested due to automatic review settings July 28, 2026 11:52

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new GitHub Actions workflow intended to build and test stackman on BSD variants using VM-based runners, to validate portability beyond the existing Linux/Windows CI.

Changes:

  • Introduces a buildbsd.yml workflow with jobs for FreeBSD, OpenBSD, and NetBSD.
  • Each BSD job installs gmake via the platform package manager and runs gmake abiname, gmake all, and gmake test.
Comments suppressed due to low confidence (2)

.github/workflows/buildbsd.yml:39

  • steps: is incorrectly indented for the OpenBSD job. The - uses / - name entries need to be nested under steps: for valid YAML.
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v6.0.2
    - name: build and test
      uses: vmactions/openbsd-vm@v1

.github/workflows/buildbsd.yml:61

  • steps: is incorrectly indented for the NetBSD job. As written, the workflow YAML is invalid and GitHub Actions will reject it.
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v6.0.2
    - name: build and test
      uses: vmactions/netbsd-vm@v1

Comment on lines +13 to +17
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6.0.2
- name: build and test
uses: vmactions/freebsd-vm@v1
Comment on lines +3 to +8
on:
push:
branches: [ master, dev ]

pull_request:
branches: [ master ]
neilpang added 2 commits July 28, 2026 20:03
tools/abiname.sh created its temporary file with a three-X mktemp
template.  GNU mktemp accepts that, but BSD mktemp(1) requires at
least six Xs and fails with "insufficient number of Xs in template",
which made the Makefile abort with "Could not determine platform".

Use a six-X template, which is valid for both.
Add a separate workflow that builds the library and runs the full test
suite on the three BSDs in a real VM, using the vmactions VM actions on
the ubuntu-latest runner.  The existing workflow is left untouched.

No new ABI, assembly file or platform.h branch is needed: the BSDs on
amd64 use the same sysv_amd64 ABI as Linux, and the existing ELF paths
in the assembly sources apply unchanged.  Consequently the jobs do not
upload a library artifact, which would only duplicate the Linux one.

GNU make is installed in the prepare step because the Makefile uses GNU
make syntax while the BSD base system make is bmake.

Closes stackless-dev#15
@neilpang

Copy link
Copy Markdown
Owner Author

Fork-internal verification run only: this existed to exercise the new BSD workflow on real GitHub Actions before proposing it. The work is now upstream in stackless-dev#20.

@neilpang neilpang closed this Jul 28, 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.

2 participants