-
Notifications
You must be signed in to change notification settings - Fork 694
60 lines (56 loc) · 1.77 KB
/
Copy pathci_freebsd.yml
File metadata and controls
60 lines (56 loc) · 1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# SPDX-License-Identifier: BSD-3-Clause
# Copyright (c) Contributors to the OpenEXR Project.
#
# Build and test on FreeBSD using a community VM action.
# GitHub does not provide native FreeBSD runners; this uses vmactions/freebsd-vm.
# Validates the pthread fallback in internal_thread.h (issue #2299).
name: CI (FreeBSD)
on:
push:
paths:
- '**'
- '!**.md'
- '!website/**'
- '!bazel/**'
- '!src/wrappers/**'
- '!.github/workflows/**'
- '.github/workflows/ci_freebsd.yml'
pull_request:
paths:
- '**'
- '!**.md'
- '!website/**'
- '!bazel/**'
- '!src/wrappers/**'
- '!.github/workflows/**'
- '.github/workflows/ci_freebsd.yml'
permissions:
contents: read
jobs:
freebsd:
name: FreeBSD
runs-on: ubuntu-latest
steps:
- name: Build and test on FreeBSD
uses: vmactions/freebsd-vm@a6de9343ef5747433d9c25784c90e84998b9d69a # v1.4.6
with:
release: '15.0'
envs: GITHUB_REPOSITORY GITHUB_REF GITHUB_SHA
usesh: true
prepare: |
pkg install -y cmake ninja git
run: |
set -e
git clone --depth 1 "https://github.com/${GITHUB_REPOSITORY}.git" src
cd src
# shallow clone, only the commit that triggered the run, i.e. GITHUB_SHA
git fetch --depth 1 origin "${GITHUB_SHA}"
git checkout "${GITHUB_SHA}"
cmake -B _build -S . -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DOPENEXR_FORCE_INTERNAL_IMATH=ON \
-DOPENEXR_FORCE_INTERNAL_DEFLATE=ON \
-DOPENEXR_FORCE_INTERNAL_OPENJPH=ON \
-DBUILD_TESTING=ON
cmake --build _build
ctest --test-dir _build --output-on-failure