Skip to content

Commit

Permalink
Add a CI job to build the Cygwin port
Browse files Browse the repository at this point in the history
  • Loading branch information
shym committed Sep 3, 2024
1 parent e937498 commit 815a2d3
Showing 1 changed file with 65 additions and 0 deletions.
65 changes: 65 additions & 0 deletions .github/workflows/build-cygwin.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Build

on:
push:
# branches:
# - '4.**'
# - '5.**'
# - 'trunk'
pull_request:

# Restrict the GITHUB_TOKEN
permissions: {}

env:
# List of test directories for the debug-s4096 and linux-O0 jobs. These
# directories are selected because of their tendencies to reach corner cases
# in the runtime system.
PARALLEL_TESTS: parallel callback gc-roots weak-ephe-final
# Fully print commands executed by Make
# MAKEFLAGS: V=1

# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#concurrency
# Concurrent workflows are grouped by the PR or branch that triggered them
# (github.ref) and the name of the workflow (github.workflow). The
# 'cancel-in-progress' option then make sure that only one workflow is running
# at a time. This doesn't prevent new jobs from running, rather it cancels
# already running jobs before scheduling new jobs.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name == 'pull_request' || github.sha }}
cancel-in-progress: true

jobs:
# This job will do the initial build of the compiler (on linux), with flambda on.
# We then upload the compiler tree as a build artifact to enable re-use in
# subsequent jobs.
cygwin:
runs-on: windows-latest
steps:
- name: Configure EOLs on Cygwin
run: |
# Ensure that .expected files are not modified by check out
# as, in Cygwin, the .expected should use LF line endings,
# rather than Windows’ CRLF
git config --global core.autocrlf input
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: true
- name: Install Cygwin
uses: cygwin/cygwin-install-action@v4
with:
packages: make,bash,gcc-core
install-dir: 'D:\cygwin'
- name: Configure the compiler
shell: bash
run: |
./configure --enable-ocamltest
- name: Build the compiler
shell: bash
run: |
make -j4
- name: Test suite
shell: bash
run: |
make tests

0 comments on commit 815a2d3

Please sign in to comment.