From dd33dc2d68b450f16126439fd3151275b2e283a0 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 28 Aug 2021 23:38:53 +0200 Subject: [PATCH] Move wxMac and wxiOS builds to Mac CI workflow Still run them on GitHub runners, but do it using the same steps as for our own builds, as there should be no reason to have any difference in the build steps independently of where exactly they run. Also remove checks for matrix.skip_testing from the Unix CI workflow as they are not needed there any more because the tests are always run. This commit is best viewed with --color-moved git option. --- .github/workflows/ci.yml | 23 ++--------------------- .github/workflows/ci_mac.yml | 29 +++++++++++++++++++++++++---- 2 files changed, 27 insertions(+), 25 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c95c7c202c..f2342ecc3e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -98,16 +98,6 @@ jobs: runner: ubuntu-18.04 configure_flags: --with-qt --enable-pch --without-opengl skip_samples: true - - name: macOS 10.15 wxMac - runner: macos-10.15 - configure_flags: --disable-sys-libs - - name: macOS 10.15 wxiOS - runner: macos-10.15 - configure_flags: --with-osx_iphone --enable-monolithic --disable-sys-libs --host=i686-apple-darwin_sim --build=x86_64-apple-darwin17.7.0 - xcode_sdk: iphonesimulator - skip_samples: true - skip_testing: true - allow_warnings: true env: wxGTK_VERSION: ${{ matrix.gtk_version && matrix.gtk_version || 3 }} @@ -170,11 +160,6 @@ jobs: wxCONFIGURE_OPTIONS="--with-gtk=${{ matrix.gtk_version }} $wxCONFIGURE_OPTIONS" fi - if [ -n "${{ matrix.xcode_sdk }}" ]; then - sdk_path=`xcrun --sdk ${{ matrix.xcode_sdk }} --show-sdk-path` - wxCONFIGURE_OPTIONS="--with-macosx-sdk=$sdk_path $wxCONFIGURE_OPTIONS" - fi - if [ ${{ matrix.use_asan }} ]; then wxASAN_CFLAGS="-fsanitize=address -fno-omit-frame-pointer" wxASAN_CXXFLAGS=$wxASAN_CFLAGS @@ -198,7 +183,6 @@ jobs: make -k $wxBUILD_ARGS "CXXFLAGS=$wxMAKEFILE_ERROR_CXXFLAGS" - name: Building tests - if: matrix.skip_testing != true working-directory: tests run: | if [ !${{ matrix.skip_gui }} ]; then @@ -207,7 +191,6 @@ jobs: make -k $wxBUILD_ARGS "CXXFLAGS=$wxMAKEFILE_CXXFLAGS" "LDFLAGS=$wxMAKEFILE_LDFLAGS" - name: Testing - if: matrix.skip_testing != true working-directory: tests run: | . ../build/tools/httpbin.sh @@ -234,7 +217,7 @@ jobs: fi - name: Testing GUI using Xvfb - if: matrix.skip_testing != true && matrix.skip_gui != true && matrix.use_xvfb + if: matrix.skip_gui != true && matrix.use_xvfb working-directory: tests run: | if [ ${{ matrix.use_asan }} ]; then @@ -264,17 +247,15 @@ jobs: fi - name: Building samples - if: matrix.skip_testing != true && matrix.skip_gui != true && matrix.skip_samples != true + if: matrix.skip_gui != true && matrix.skip_samples != true run: | make -k $wxBUILD_ARGS "CXXFLAGS=$wxMAKEFILE_CXXFLAGS" "LDFLAGS=$wxMAKEFILE_LDFLAGS" samples - name: Installing - if: matrix.skip_testing != true run: | sudo make install - name: Testing installation - if: matrix.skip_testing != true run: | make -C samples/minimal -f makefile.unx clean make -C samples/minimal -f makefile.unx $wxBUILD_ARGS "CXXFLAGS=$wxMAKEFILE_CXXFLAGS" "LDFLAGS=$wxMAKEFILE_LDFLAGS" diff --git a/.github/workflows/ci_mac.yml b/.github/workflows/ci_mac.yml index f62e9f4c0f..02c0c5994a 100644 --- a/.github/workflows/ci_mac.yml +++ b/.github/workflows/ci_mac.yml @@ -65,7 +65,7 @@ jobs: run: shell: /usr/bin/arch -arch ${{ matrix.arch }} /bin/bash -l {0} - runs-on: self-hosted + runs-on: ${{ matrix.runner }} name: ${{ matrix.name }} @@ -73,16 +73,31 @@ jobs: fail-fast: false matrix: include: - - name: ARM C++11 + - name: wxMac ARM C++11 + runner: self-hosted arch: arm64 configure_flags: --with-cxx=11 use_asan: true - - name: Intel C++17 + - name: wxMac Intel C++17 + runner: self-hosted arch: x86_64 configure_flags: --with-cxx=17 --with-macosx-version-min=10.12 --enable-debug - - name: Universal C++14 + - name: wxMac Universal C++14 + runner: self-hosted arch: arm64 configure_flags: --with-cxx=14 --enable-universal_binary=arm64,x86_64 --disable-shared --disable-debug --enable-optimise + - name: wxMac macOS 10.15 + runner: macos-10.15 + arch: x86_64 + configure_flags: --disable-sys-libs + - name: wxiOS + runner: macos-10.15 + arch: x86_64 + configure_flags: --with-osx_iphone --enable-monolithic --disable-sys-libs --host=i686-apple-darwin_sim --build=x86_64-apple-darwin17.7.0 + xcode_sdk: iphonesimulator + skip_samples: true + skip_testing: true + allow_warnings: true env: wxCONFIGURE_FLAGS: --disable-sys-libs --without-liblzma ${{ matrix.configure_flags }} --prefix=${{ github.workspace }}/localbin_${{ matrix.arch }} @@ -137,6 +152,12 @@ jobs: - name: Configuring run: | wxCONFIGURE_OPTIONS="--disable-optimise $wxCONFIGURE_FLAGS" + + if [ -n "${{ matrix.xcode_sdk }}" ]; then + sdk_path=`xcrun --sdk ${{ matrix.xcode_sdk }} --show-sdk-path` + wxCONFIGURE_OPTIONS="--with-macosx-sdk=$sdk_path $wxCONFIGURE_OPTIONS" + fi + ./configure $wxCONFIGURE_OPTIONS --disable-debug_info || rc=$? if [ ${{ matrix.use_asan }} ]; then wxASAN_CFLAGS="-fsanitize=address -fno-omit-frame-pointer"