name: Linux on: [push, pull_request] jobs: linux_build: name: Build MeshLab (Linux) runs-on: ubuntu-16.04 #in order to deploy, need to use oldest supported version strategy: matrix: precision: [single_precision, double_precision] steps: - uses: actions/checkout@v2 with: submodules: true - name: Install Qt uses: jurplel/install-qt-action@v2 - name: Install dependencies run: | sudo apt-get install -y mesa-common-dev libglu1-mesa-dev libgmp-dev - name: Setup env variables id: envs shell: bash run: | if [ "${{matrix.precision}}" == "double_precision" ]; then echo ::set-output name=version::"$(cat ML_VERSION)d" echo ::set-output name=artifact_suffix::"_double" else echo ::set-output name=version::"$(cat ML_VERSION)" echo ::set-output name=artifact_suffix::"" fi - name: Configure and Build run: | sh scripts/${{ runner.os }}/1_build.sh --${{ matrix.precision }} - name: Deploy run: | sh scripts/${{ runner.os }}/2_deploy.sh - name: Build MeshLab AppImage run : | sh scripts/${{ runner.os }}/3_appimage.sh --${{ matrix.precision }} - name: Upload Meshlab Portable uses: actions/upload-artifact@v1 with: name: meshlab_linux_portable${{steps.envs.outputs.artifact_suffix}} path: src/install/ - name: Upload Meshlab AppImage uses: actions/upload-artifact@v1 with: name: meshlab_linux_appimage${{steps.envs.outputs.artifact_suffix}} path: src/MeshLab${{steps.envs.outputs.version}}-linux.AppImage