Skip to content

Ci Runners for Windows & Mac #181

Ci Runners for Windows & Mac

Ci Runners for Windows & Mac #181

Workflow file for this run

name: CI
on:
push:
pull_request:
jobs:
build-on-ubuntu:
runs-on: ubuntu-latest
steps:
- name: Setup cmake
uses: jwlawson/actions-setup-cmake@v2
with:
cmake-version: '3.24.x'
- name: Test cmake version
run: cmake --version
- name: Install OS dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
build-essential \
freeglut3-dev \
g++ \
libcurl4-openssl-dev \
libfontconfig-dev \
libgl1-mesa-dev \
libgtk2.0-dev \
mesa-common-dev \
unzip
- name: Get GCC version
run: gcc --version
- name: Get libc version
run: ldd --version
- name: Install wxWidgets
run: |
curl -L https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.3/wxWidgets-3.2.3.tar.bz2 -o wxWidgets-3.2.3.tar.bz2
tar jxf wxWidgets-3.2.3.tar.bz2
cd wxWidgets-3.2.3
./configure --prefix=$GITHUB_WORKSPACE/wx-3.2.3 --enable-stl=yes --enable-shared=no --disable-debug_flag --with-cocoa --enable-universal_binary=x86_64,arm64 --enable-unicode --enable-webview --disable-mediactrl --with-cxx=11 --with-macosx-version-min=10.15 --with-libjpeg=builtin --with-libpng=builtin --with-regex=builtin --with-libtiff=builtin --with-zlib=builtin --with-expat=builtin
make
make install
sudo ln -s $GITHUB_WORKSPACE/wx-3.2.3/bin/wx-config /usr/local/bin/wx-config-3
wx-config-3 --cflags
echo ${GITHUB_WORKSPACE}/wx-3.2.3/bin >> $GITHUB_PATH
- name: Make wxWidgets archive
run: |
7z a wx3.2.3.7z wx-3.2.3
- name: Save wxWidgets build
uses: actions/upload-artifact@v2
with:
name: wxWidgets-${{ env.RUNS_ON }}
path: |
wx3.2.3.7z
- name: Checkout
uses: actions/checkout@v2
- name: Build LK
run: |
cmake -Bbuild_linux -DCMAKE_BUILD_TYPE=Debug
cmake --build build_linux -- -j
- name: Save static lib & lksandbox
uses: actions/upload-artifact@v2
with:
name: LK-${{ env.RUNS_ON }}-x86_64
path: |
build_linux/lk_sandbox*
build_linux/lk*.a
build-on-windows:
runs-on: windows-latest
steps:
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v2
- name: Checkout
uses: actions/checkout@v2
- name: Download wxWidgets
shell: bash
run: |
curl -L https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.3/wxWidgets-3.2.3.tar.bz2 -o wxWidgets-3.2.3.tar.bz2
ls
tar jxf wxWidgets-3.2.3.tar.bz2
- name: Install wxWidgets
run: |
cd wxWidgets-3.2.3
msbuild build/msw/wx_vc17.sln /t:Build /p:Configuration=Release
- name: Make wxWidgets archive
shell: bash
run: |
cd
7z a wx3.2.3.7z wx-3.2.3
- name: Save wxWidgets build
uses: actions/upload-artifact@v2
with:
name: wxWidgets-${{ env.RUNS_ON }}
path: |
wx3.2.3.7z
- name: Setup cmake
uses: jwlawson/actions-setup-cmake@v2
with:
cmake-version: '3.24.x'
- name: Build LK
run: |
mkdir build
cd build
cmake -G "Visual Studio 17 2022" -DCMAKE_CONFIGURATION_TYPES="Release" -DCMAKE_SYSTEM_VERSION=10.0 ..
MSBuild.exe .\lk.sln /t:Build /p:Configuration=Release
- name: Save static lib & lksandbox
uses: actions/upload-artifact@v2
with:
name: LK-${{ env.RUNS_ON }}-x86_64
path: |
build/Release/lk_sandbox*
build/Release/lk*.a
build-on-mac:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-14-large, macos-latest]
steps:
- name: Install wxWidgets
run: |
curl -L https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.3/wxWidgets-3.2.3.tar.bz2 -o wxWidgets-3.2.3.tar.bz2
tar jxf wxWidgets-3.2.3.tar.bz2
cd wxWidgets-3.2.3
./configure --prefix=$GITHUB_WORKSPACE/wx-3.2.3 --enable-stl=yes --enable-shared=no --disable-debug_flag --with-cocoa --enable-universal_binary=x86_64,arm64 --enable-unicode --enable-webview --disable-mediactrl --with-cxx=11 --with-macosx-version-min=10.15 --with-libjpeg=builtin --with-libpng=builtin --with-regex=builtin --with-libtiff=builtin --with-zlib=builtin --with-expat=builtin
make
make install
sudo ln -s $GITHUB_WORKSPACE/wx-3.2.3/bin/wx-config /usr/local/bin/wx-config-3
wx-config-3 --cflags
echo ${GITHUB_WORKSPACE}/wx-3.2.3/bin >> $GITHUB_PATH
- name: Make wxWidgets archive
run: |
7z a wx3.2.3.7z wx-3.2.3
- name: Save wxWidgets build
uses: actions/upload-artifact@v2
with:
name: wxWidgets-${{ env.RUNS_ON }}
path: |
wx3.2.3.7z
- name: Setup cmake
uses: jwlawson/actions-setup-cmake@v2
with:
cmake-version: '3.24.x'
- name: Checkout
uses: actions/checkout@v2
- name: Build LK
run: |
cmake -Bbuild -DCMAKE_BUILD_TYPE=Release
cmake --build build -- -j
- name: Save static lib & lksandbox
uses: actions/upload-artifact@v2
with:
name: LK-${{ env.RUNS_ON }}-x86_64
path: |
build/lk_sandbox*
build/lk*.a
- name: Save wxWidgets build
uses: actions/upload-artifact@v2
with:
name: LK-${{ env.RUNS_ON }}-x86_64
path: |
build/lk_sandbox*
build/lk*.a