diff --git a/.github/workflows/gui.yml b/.github/workflows/gui.yml deleted file mode 100644 index 8b92623..0000000 --- a/.github/workflows/gui.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: gui - -on: - workflow_dispatch: - -jobs: - build: - strategy: - fail-fast: false - matrix: - os: [ ubuntu, macos, windows ] - build_type: [ Debug, Release ] - - runs-on: ${{ matrix.os }}-latest - - steps: - - uses: actions/checkout@v3 - - - if: matrix.os == 'ubuntu' - name: Install Dependencies - run: | - sudo apt-get update - sudo apt-get install -y xorg-dev freeglut3-dev - - - name: Configure CMake - run: cmake -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DPICROSS_BUILD_CLI=ON -DPICROSS_BUILD_APP=ON - - - name: Build - working-directory: ${{ github.workspace }}/build - run: cmake --build . --config ${{ matrix.build_type }} - - - name: Version - working-directory: ${{ github.workspace }}/build - run: cmake --build . --target picross_cli_version --config ${{ matrix.build_type }} diff --git a/.github/workflows/packaging.yml b/.github/workflows/packaging.yml new file mode 100644 index 0000000..53d8e84 --- /dev/null +++ b/.github/workflows/packaging.yml @@ -0,0 +1,54 @@ +name: packaging + +on: + # This workflow is manually triggered + workflow_dispatch: + +jobs: + build: + strategy: + fail-fast: false + matrix: + os: [ ubuntu, macos, windows ] + build_type: [ Debug, Release ] + arch: [ x86_64 ] + include: + - os: macos + arch: arm64 + + runs-on: ${{ matrix.os }}-latest + + env: + CMAKE_CONFIG_EXTRA: ${{ matrix.os == 'macos' && format('-DCMAKE_OSX_ARCHITECTURES={0}', matrix.arch) || '' }} + + steps: + - uses: actions/checkout@v3 + + - if: matrix.os == 'ubuntu' + name: Install Dependencies + run: | + sudo apt-get update + sudo apt-get install -y xorg-dev libgl1-mesa-dev + + - name: Configure CMake + run: cmake -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DPICROSS_BUILD_CLI=ON -DPICROSS_BUILD_APP=ON ${{ env.CMAKE_CONFIG_EXTRA }} + + - name: Build + working-directory: ${{ github.workspace }}/build + run: cmake --build . --config ${{ matrix.build_type }} + + - if: matrix.arch == 'x86_64' + name: Version + working-directory: ${{ github.workspace }}/build + run: cmake --build . --target picross_cli_version --config ${{ matrix.build_type }} + + - name: Install + working-directory: ${{ github.workspace }}/build + run: cmake --install . --config ${{ matrix.build_type }} --prefix install + + - name: Upload + uses: actions/upload-artifact@v3 + with: + name: package-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.build_type }} + path: ${{ github.workspace }}/build/install + retention-days: 6