AAAAAAAAAAAAAAA #185
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
--- | |
name: Build | |
on: | |
push: | |
branches: | |
- master | |
- "bugfix-release/*" | |
- "release/*" | |
pull_request: | |
workflow_dispatch: | |
merge_group: | |
concurrency: | |
group: build-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
C2_ENABLE_LTO: ${{ github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/heads/bugfix-release/') || startsWith(github.ref, 'refs/heads/release/') }} | |
CHATTERINO_REQUIRE_CLEAN_GIT: On | |
C2_BUILD_WITH_QT6: Off | |
# Last known good conan version | |
# 2.0.3 has a bug on Windows (conan-io/conan#13606) | |
CONAN_VERSION: 2.0.2 | |
jobs: | |
build-ubuntu-docker: | |
name: "Build Ubuntu in Docker" | |
runs-on: ubuntu-latest | |
container: ${{ matrix.container }} | |
strategy: | |
matrix: | |
include: | |
- os: Linux | |
container: ghcr.io/chatterino/chatterino2-build-ubuntu-22.04:latest | |
qt-version: 6.7.2 | |
force-lto: false | |
plugins: true | |
skip-artifact: false | |
skip-crashpad: false | |
build-appimage: true | |
build-deb: true | |
env: | |
C2_ENABLE_LTO: ${{ matrix.force-lto }} | |
C2_PLUGINS: ${{ matrix.plugins }} | |
C2_ENABLE_CRASHPAD: ${{ matrix.skip-crashpad == false }} | |
C2_BUILD_WITH_QT6: ${{ startsWith(matrix.qt-version, '6.') }} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
fetch-depth: 0 # allows for tags access | |
- name: Fix git permission error | |
run: | | |
git config --global --add safe.directory '*' | |
- name: Build | |
run: | | |
mkdir build | |
cd build | |
CXXFLAGS=-fno-sized-deallocation cmake \ | |
-DCMAKE_INSTALL_PREFIX=appdir/usr/ \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DPAJLADA_SETTINGS_USE_BOOST_FILESYSTEM=On \ | |
-DUSE_PRECOMPILED_HEADERS=OFF \ | |
-DCMAKE_EXPORT_COMPILE_COMMANDS=On \ | |
-DCHATTERINO_LTO="$C2_ENABLE_LTO" \ | |
-DCHATTERINO_PLUGINS="$C2_PLUGINS" \ | |
-DCMAKE_PREFIX_PATH="$Qt6_DIR/lib/cmake" \ | |
-DBUILD_WITH_QT6="$C2_BUILD_WITH_QT6" \ | |
-DCHATTERINO_STATIC_QT_BUILD=On \ | |
.. | |
make -j"$(nproc)" | |
- name: Package - AppImage (Ubuntu) | |
if: matrix.build-appimage | |
run: | | |
cd build | |
sh ./../.CI/CreateAppImage.sh | |
- name: Upload artifact - AppImage (Ubuntu) | |
if: matrix.build-appimage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Chatterino-x86_64-Qt-${{ matrix.qt-version }}.AppImage | |
path: build/Chatterino-x86_64.AppImage | |
- name: Package - .deb (Ubuntu) | |
if: matrix.build-deb | |
run: | | |
cd build | |
sh ./../.CI/CreateUbuntuDeb.sh | |
- name: Upload artifact - .deb (Ubuntu) | |
if: matrix.build-deb | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Chatterino-${{ matrix.os }}-Qt-${{ matrix.qt-version }}.deb | |
path: build/Chatterino-${{ matrix.os }}-x86_64.deb |