mirror of
https://github.com/wxWidgets/wxWidgets.git
synced 2026-08-17 17:02:51 +08:00
This can't be done for Ubuntu 18.04 because its libc version is too old for node20 to run there. Update version of all the actions we use to use node20 in them too. Closes #24377.
124 lines
3.2 KiB
YAML
124 lines
3.2 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/msw/**'
|
|
- 'include/wx/x11/**'
|
|
- 'locale/**'
|
|
- 'src/dfb/**'
|
|
- 'src/gtk/**'
|
|
- '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/msw/**'
|
|
- 'include/wx/x11/**'
|
|
- 'locale/**'
|
|
- 'src/dfb/**'
|
|
- 'src/gtk/**'
|
|
- 'src/msw/**'
|
|
- 'src/x11/**'
|
|
- '*.md'
|
|
- '*.yml'
|
|
- 'CMakeLists.txt'
|
|
- 'wxwidgets.props'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
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@v4
|
|
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
|