Skip to content

Rewritten CI from scratch#101

Open
xiaozhuai wants to merge 3 commits intomax0x7ba:masterfrom
xiaozhuai:dev-new-ci
Open

Rewritten CI from scratch#101
xiaozhuai wants to merge 3 commits intomax0x7ba:masterfrom
xiaozhuai:dev-new-ci

Conversation

@xiaozhuai
Copy link
Copy Markdown
Contributor

@xiaozhuai xiaozhuai commented Apr 17, 2026

Rewritten CI from scratch

  1. Support cmake, meson, makefile on ubuntu
  2. Support cmake, meson on macOS
  3. Support cmake on windows
  4. Fix an ci error on macOS
  5. Add a test for checking objective-c++ compatibility

@max0x7ba
Copy link
Copy Markdown
Owner

The changes must be as minimal as possible.

Add your CI without any unnecessary changes to existing code, please.

Do more with less.

@xiaozhuai
Copy link
Copy Markdown
Contributor Author

xiaozhuai commented Apr 17, 2026

The macOS with cmake fails as expected because of nil. Once #100 get merged, it will pass.

@xiaozhuai
Copy link
Copy Markdown
Contributor Author

xiaozhuai commented Apr 17, 2026

Do more with less.

I was planning to do that, but the current CI setup is quite complex, a refactoring is necessary.
All matrices in the original CI has been restored, and I added macos stuffs.

CI for makefile is copied from old file.
CI for cmake and meson has been rewritten.

@xiaozhuai xiaozhuai marked this pull request as draft April 17, 2026 15:24
@xiaozhuai xiaozhuai marked this pull request as ready for review April 17, 2026 15:24
@xiaozhuai
Copy link
Copy Markdown
Contributor Author

xiaozhuai commented Apr 17, 2026

One more important reason for me to make these changes is that the current division of CI based on the build system is not reasonable. If more platforms are added in the future, such as FreeBSD or MinGW, it will be very difficult to expand CI on the existing basis. The build system should be regarded as one dimension in the matrix.

@xiaozhuai
Copy link
Copy Markdown
Contributor Author

I forgot to update the badge link in the README. I will update this pr later. By the way, compared to showing the CI status under different build systems, it is obviously more reasonable to display the build status of different platforms.

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