ca4db68006
Avoid spurious rebuilds when modifying CircleCI config files. See #23405. (cherry picked from commit 04326551fd05fcc97b77ff954501e871f3e8c1c5)
128 lines
3.3 KiB
YAML
128 lines
3.3 KiB
YAML
name: Mac Xcode builds
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches: [ master ]
|
|
paths-ignore:
|
|
- '.circleci/**'
|
|
- '.github/ISSUE_TEMPLATE/**'
|
|
- '.github/workflows/ci.yml'
|
|
- '.github/workflows/ci_cmake.yml'
|
|
- '.github/workflows/ci_msw.yml'
|
|
- '.github/workflows/ci_msw_cross.yml'
|
|
- '.github/workflows/docs_update.yml'
|
|
- 'build/cmake/**'
|
|
- 'build/tools/appveyor*.bat'
|
|
- 'distrib/**'
|
|
- 'docs/**'
|
|
- 'interface/**'
|
|
- 'include/msvc/**'
|
|
- 'include/wx/dfb/**'
|
|
- 'include/wx/gtk/**'
|
|
- 'include/wx/gtk1/**'
|
|
- 'include/wx/motif/**'
|
|
- 'include/wx/msw/**'
|
|
- 'include/wx/x11/**'
|
|
- 'locale/**'
|
|
- 'src/dfb/**'
|
|
- 'src/gtk/**'
|
|
- 'src/gtk1/**'
|
|
- 'src/motif/**'
|
|
- 'src/msw/**'
|
|
- 'src/x11/**'
|
|
- '*.md'
|
|
- '*.yml'
|
|
- 'CMakeLists.txt'
|
|
- 'wxwidgets.props'
|
|
pull_request:
|
|
branches: [ master ]
|
|
paths-ignore:
|
|
- '.circleci/**'
|
|
- '.github/ISSUE_TEMPLATE/**'
|
|
- '.github/workflows/ci.yml'
|
|
- '.github/workflows/ci_cmake.yml'
|
|
- '.github/workflows/ci_msw.yml'
|
|
- '.github/workflows/ci_msw_cross.yml'
|
|
- '.github/workflows/docs_update.yml'
|
|
- 'build/cmake/**'
|
|
- 'build/tools/appveyor*.bat'
|
|
- 'distrib/**'
|
|
- 'docs/**'
|
|
- 'interface/**'
|
|
- 'include/msvc/**'
|
|
- 'include/wx/dfb/**'
|
|
- 'include/wx/gtk/**'
|
|
- 'include/wx/gtk1/**'
|
|
- 'include/wx/motif/**'
|
|
- 'include/wx/msw/**'
|
|
- 'include/wx/x11/**'
|
|
- 'locale/**'
|
|
- 'src/dfb/**'
|
|
- 'src/gtk/**'
|
|
- 'src/gtk1/**'
|
|
- 'src/motif/**'
|
|
- 'src/msw/**'
|
|
- 'src/x11/**'
|
|
- '*.md'
|
|
- '*.yml'
|
|
- 'CMakeLists.txt'
|
|
- 'wxwidgets.props'
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
build-and-test:
|
|
defaults:
|
|
run:
|
|
shell: /usr/bin/arch -arch ${{ matrix.arch }} /bin/bash --noprofile --norc -eo pipefail {0}
|
|
|
|
runs-on: ${{ matrix.runner }}
|
|
|
|
name: ${{ matrix.name }}
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- name: macOS dynamic Release
|
|
runner: self-hosted
|
|
scheme: 'app-dynamic'
|
|
destination: 'generic/platform=macOS'
|
|
arch: x86_64
|
|
configuration: 'Release'
|
|
project: samples/minimal/minimal_cocoa.xcodeproj
|
|
- name: iOS static Debug
|
|
runner: macos-latest
|
|
scheme: 'static'
|
|
destination: 'generic/platform=iOS'
|
|
arch: x86_64
|
|
configuration: 'Debug'
|
|
project: build/osx/wxiphone.xcodeproj
|
|
- name: iOS Simulator static
|
|
runner: macos-latest
|
|
scheme: 'app-static'
|
|
destination: 'generic/platform=iOS Simulator'
|
|
arch: x86_64
|
|
configuration: 'Release'
|
|
project: samples/minimal/minimal_iphone.xcodeproj
|
|
|
|
env:
|
|
DEVELOPER_DIR: /Applications/Xcode.app/Contents/Developer
|
|
NSUnbufferedIO: YES
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Build
|
|
run: |
|
|
xcodebuild clean build ONLY_ACTIVE_ARCH=NO \
|
|
CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO \
|
|
-project '${{github.workspace}}/${{ matrix.project }}' \
|
|
-scheme '${{ matrix.scheme }}' -configuration '${{ matrix.configuration}}' \
|
|
-destination '${{ matrix.destination }}' | xcpretty --color --simple
|