Skip to content

Update ci.yml

Update ci.yml #158

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: |
sudo apt-get install -y libwxgtk*-dev
sudo ln -s $(which wx-config) /usr/local/bin/wx-config-3
wx-config-3 --cflags | grep I
- 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/wxMSW-3.2.3_vc14x_Dev.7z -o wxMSW-3.2.3_vc14x_Dev.7z
mkdir wxMSW-3.2.3_vc14x_Dev
7z x wxMSW-3.2.3_vc14x_Dev.7z -o$GITHUB_WORKSPACE/wxMSW-3.2.3_vc14x_Dev
curl -L https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.3/wxMSW-3.2.3_vc14x_ReleaseDLL.7z -o wxMSW-3.2.3_vc14x_ReleaseDLL.7z
7z x wxMSW-3.2.3_vc14x_ReleaseDLL.7z -o$GITHUB_WORKSPACE/wxMSW-3.2.3_vc14x_ReleaseDLL
mv $GITHUB_WORKSPACE/wxMSW-3.2.3_vc14x_ReleaseDLL/lib/vc14x_dll/* -o$GITHUB_WORKSPACE/wxMSW-3.2.3_vc14x_Dev/lib/vc14x_dll
curl -L https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.3/wxWidgets-3.2.3-headers.7z -o wxWidgets-3.2.3-headers.7z
7z x wxWidgets-3.2.3-headers.7z -o$GITHUB_WORKSPACE/wxMSW-3.2.3_vc14x_Dev
WXMSW3=$GITHUB_WORKSPACE\\wxMSW-3.2.3_vc14x_Dev
echo "WXMSW3=$WXMSW3" >> $GITHUB_ENV
WXWIN=$GITHUB_WORKSPACE\\wxMSW-3.2.3_vc14x_Dev
echo "WXWIN=$WXWIN" >> $GITHUB_ENV
- name: Setup cmake
uses: jwlawson/actions-setup-cmake@v2
with:
cmake-version: '3.24.x'
- name: Build LK
run: |
echo $env:WXMSW3
ls $env:WXMSW3
- name: Build LK
run: |
mkdir build
cd build
Rename-Item "$env:WXMSW3\lib\vc14x_dll" vc14x_x64_dll
dir $env:WXMSW3\lib
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: Set relative paths
shell: bash
run: |
WXMSW3=$GITHUB_WORKSPACE/wxWidgets-3.2.3
echo "WXMSW3=$WXMSW3" >> $GITHUB_ENV
- 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
ls
tar jxf wxWidgets-3.2.3.tar.bz2
cd wxWidgets-3.2.3
./configure --prefix=$HOME/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 $HOME/wx-3.2.3/bin/wx-config /usr/local/bin/wx-config-3
ls $HOME/wx-3.2.3/bin
wx-config-3 --cflags
echo ${HOME}/wx-3.2.3/bin >> $GITHUB_PATH
- 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 -j 4
- 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