diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index e40b54c84..f684cab5a 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -14,6 +14,7 @@ jobs: cmake-args: -G "Unix Makefiles" build-args: --parallel package-file: DDNet-*-linux_x86_64.tar.xz + fancy: true env: CFLAGS: -Wdeclaration-after-statement -Werror CXXFLAGS: -Werror @@ -21,6 +22,7 @@ jobs: cmake-path: /usr/bin/ cmake-args: -G "Unix Makefiles" package-file: DDNet-*-linux_x86_64.tar.xz + fancy: false env: CFLAGS: -Wdeclaration-after-statement -Werror CXXFLAGS: -Werror @@ -28,12 +30,14 @@ jobs: cmake-args: -G "Unix Makefiles" build-args: --parallel package-file: DDNet-*-osx.dmg + fancy: false env: CFLAGS: -Wdeclaration-after-statement -Werror CXXFLAGS: -Werror - os: windows-latest cmake-args: -G "Visual Studio 16 2019" -A x64 package-file: DDNet-*-win64.zip + fancy: false env: CFLAGS: /WX CXXFLAGS: /WX @@ -54,6 +58,11 @@ jobs: sudo apt-get update -y sudo apt-get install pkg-config cmake libfreetype6-dev libnotify-dev libsdl2-dev -y + - name: Prepare Linux (fancy) + if: contains(matrix.os, 'ubuntu') && matrix.fancy + run: | + sudo apt-get install libboost-dev libmariadbclient-dev libmysqlcppconn-dev libwebsockets-dev -y + - name: Prepare MacOS if: contains(matrix.os, 'macOS') run: | @@ -88,6 +97,21 @@ jobs: ${{ matrix.cmake-path }}cmake --build . --config Release ${{ matrix.build-args }} --target run_tests ./DDNet-Server shutdown + - name: Build in release mode with debug info and all features on + if: matrix.fancy + env: ${{ matrix.env }} + run: | + mkdir fancy + cd fancy + ${{ matrix.cmake-path }}cmake ${{ matrix.cmake-args }} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DANTIBOT=ON -DMYSQL=ON -DWEBSOCKETS=ON .. + ${{ matrix.cmake-path }}cmake --build . --config RelWithDebInfo ${{ matrix.build-args }} --target everything + - name: Test fancy + if: matrix.fancy + run: | + cd release + ${{ matrix.cmake-path }}cmake --build . --config RelWithDebInfo ${{ matrix.build-args }} --target run_tests + ./DDNet-Server shutdown + - name: Package run: | cd release