Implement Screen Change #278
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: | |
push: | |
branches: | |
- master # Set a branch to deploy | |
jobs: | |
build: | |
runs-on: ${{ matrix.operating-system }} | |
strategy: | |
matrix: | |
operating-system: [windows-latest,ubuntu-latest,macos-latest] | |
lazarus-versions: [stable] | |
steps: | |
- name: Checkout Source Code | |
uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Install Lazarus | |
uses: reckel-jm/setup-lazarus@2ce1ec911be77d36525d79bfd492ad2c305235c5 | |
with: | |
lazarus-version: ${{ matrix.lazarus-versions }} | |
with-cache: false | |
- name: Build the Windows Application | |
if: ${{ matrix.operating-system == 'windows-latest' }} | |
run: lazbuild -B src/bgrabitmap/bgrabitmap/bgrabitmappack.lpk; lazbuild -B src/Cantara.lpi | |
- name: Install libqt6pas dependency under Ubuntu | |
if: ${{ matrix.operating-system == 'ubuntu-latest' }} | |
run: wget https://github.com/davidbannon/libqt6pas/releases/download/v6.2.7/libqt6pas6-dev_6.2.7-1_amd64.deb; wget https://github.com/davidbannon/libqt6pas/releases/download/v6.2.7/libqt6pas6_6.2.7-1_amd64.deb; sudo apt install ./libqt6pas6_6.2.7-1_amd64.deb; sudo apt install ./libqt6pas6-dev_6.2.7-1_amd64.deb | |
- name: Build the Linux Application | |
if: ${{ matrix.operating-system == 'ubuntu-latest' }} | |
run: make | |
- name: Build the MacOS Application | |
if: ${{ matrix.operating-system == 'macos-latest' }} | |
run: lazbuild -B src/bgrabitmap/bgrabitmap/bgrabitmappack.lpk && lazbuild -B src/Cantara.lpi | |
- name: Run all Tests on Ubuntu | |
if: ${{ matrix.operating-system == 'ubuntu-latest' }} | |
run: lazbuild src/fpccantaraclitest.lpi && cd src && ./fpccantaraclitest -a --format=plain | |
- name: Artifacts (Linux) | |
if: ${{ matrix.operating-system == 'ubuntu-latest' }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: Compiled Linux Binary | |
path: | | |
cantara | |
src/languages | |
src/Cantara.ico | |
app.cantara.Cantara.desktop | |
app.cantara.Cantara.png | |
COPYING | |
- name: Artifacts (Windows) | |
if: ${{ matrix.operating-system == 'windows-latest' }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: Compiled Windows Binary | |
path: | | |
src/cantara.exe | |
src/languages | |
src/Cantara.ico | |
app.cantara.Cantara.desktop | |
app.cantara.Cantara.png | |
COPYING | |
- name: Artifacts (Apple) | |
if: ${{ matrix.operating-system == 'macos-latest' }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: Compiled Mac OS Binary | |
path: | | |
src/cantara.app | |
COPYING |