ci: add macOS jobs to GitLab CI
commit56090a35ab20c21ef577bd1ed2d9d5b63eb5f649
authorPatrick Steinhardt <ps@pks.im>
Thu, 18 Jan 2024 10:23:02 +0000 (18 11:23 +0100)
committerJunio C Hamano <gitster@pobox.com>
Thu, 18 Jan 2024 19:53:17 +0000 (18 11:53 -0800)
tree4029353a514e98fa6987ea344963e983edfdd06e
parentc4b84b137ae7f18ac0fe30e2566725567b90ecca
ci: add macOS jobs to GitLab CI

Add a job to GitLab CI which runs tests on macOS, which matches the
equivalent "osx-clang" job that we have for GitHub Workflows. One
significant difference though is that this new job runs on Apple M1
machines and thus uses the "arm64" architecture. As GCC does not yet
support this comparatively new architecture we cannot easily include an
equivalent for the "osx-gcc" job that exists in GitHub Workflows.

Note that one test marked as `test_must_fail` is surprisingly passing:

  t7815-grep-binary.sh                             (Wstat: 0 Tests: 22 Failed: 0)
    TODO passed:   12

This seems to boil down to an unexpected difference in how regcomp(3P)
works when matching NUL bytes. Cross-checking with the respective GitHub
job shows that this is not an issue unique to the GitLab CI job as it
passes in the same way there.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
.gitlab-ci.yml
ci/lib.sh