name: autobuild on: release: types: [published] jobs: win64-gui: runs-on: windows-2016 defaults: run: shell: msys2 {0} steps: - uses: msys2/setup-msys2@v2 with: msystem: MINGW64 update: false install: git diffutils make pkg-config mingw-w64-x86_64-gtk2 mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc mingw-w64-x86_64-ghostscript mingw-w64-x86_64-jq mingw-w64-x86_64-ntldd-git man zip - run: git config --global core.autocrlf input shell: bash - uses: actions/checkout@v2 - name: configure run: ./configure - name: make run: nproc && make -j$(nproc) - name: check executable run: | ./dvdisaster.exe --version file dvdisaster.exe ./dvdisaster.exe --version | grep -q -e dirty -e NOGUI && exit 1 file dvdisaster.exe | grep -q 'x86-64, for MS Windows' - name: prepare dist run: ./.github/workflows/make-dist.sh ${{ github.ref }} id: dist - name: check executability of dist from cmd.exe shell: cmd run: | cd dist dvdisaster.exe --version - name: Upload Release Asset id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.dist.outputs.upload_url }} asset_path: ./${{ steps.dist.outputs.archive }} asset_name: ${{ steps.dist.outputs.archive }} asset_content_type: application/zip win32-gui: runs-on: windows-2016 defaults: run: shell: msys2 {0} steps: - uses: msys2/setup-msys2@v2 with: msystem: MINGW32 update: false install: git diffutils make pkg-config mingw-w64-i686-gtk2 mingw-w64-i686-glib2 mingw-w64-i686-gcc mingw-w64-i686-ghostscript mingw-w64-i686-jq mingw-w64-i686-ntldd-git man zip - run: git config --global core.autocrlf input shell: bash - uses: actions/checkout@v2 - name: configure run: ./configure - name: make run: nproc && make -j$(nproc) - name: check executable run: | ./dvdisaster.exe --version file dvdisaster.exe ./dvdisaster.exe --version | grep -q -e dirty -e NOGUI && exit 1 file dvdisaster.exe | grep -q '386, for MS Windows' - name: prepare dist run: ./.github/workflows/make-dist.sh ${{ github.ref }} id: dist - name: check executability of dist from cmd.exe shell: cmd run: | cd dist dvdisaster.exe --version - name: Upload Release Asset id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.dist.outputs.upload_url }} asset_path: ./${{ steps.dist.outputs.archive }} asset_name: ${{ steps.dist.outputs.archive }} asset_content_type: application/zip win64-cli: runs-on: windows-2016 defaults: run: shell: msys2 {0} steps: - uses: msys2/setup-msys2@v2 with: msystem: MINGW64 update: false install: git diffutils make pkg-config mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc mingw-w64-x86_64-ghostscript mingw-w64-x86_64-jq mingw-w64-x86_64-ntldd-git man zip - run: git config --global core.autocrlf input shell: bash - uses: actions/checkout@v2 - name: configure run: env CLI_ONLY=1 ./configure - name: make run: nproc && make -j$(nproc) - name: check executable run: | ./dvdisaster.exe --version file dvdisaster.exe ./dvdisaster.exe --version | grep -q -e dirty && exit 1 ./dvdisaster.exe --version | grep -q NOGUI file dvdisaster.exe | grep -q 'x86-64, for MS Windows' - name: prepare dist run: ./.github/workflows/make-dist.sh ${{ github.ref }} id: dist - name: check executability of dist from cmd.exe shell: cmd run: | cd dist dvdisaster.exe --version - name: Upload Release Asset id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.dist.outputs.upload_url }} asset_path: ./${{ steps.dist.outputs.archive }} asset_name: ${{ steps.dist.outputs.archive }} asset_content_type: application/zip win32-cli: runs-on: windows-2016 defaults: run: shell: msys2 {0} steps: - uses: msys2/setup-msys2@v2 with: msystem: MINGW32 update: false install: git diffutils make pkg-config mingw-w64-i686-glib2 mingw-w64-i686-gcc mingw-w64-i686-ghostscript mingw-w64-i686-jq mingw-w64-i686-ntldd-git man zip - run: git config --global core.autocrlf input shell: bash - uses: actions/checkout@v2 - name: configure run: env CLI_ONLY=1 ./configure - name: make run: nproc && make -j$(nproc) - name: check executable run: | ./dvdisaster.exe --version file dvdisaster.exe ./dvdisaster.exe --version | grep -q -e dirty && exit 1 ./dvdisaster.exe --version | grep -q NOGUI file dvdisaster.exe | grep -q '386, for MS Windows' - name: prepare dist run: ./.github/workflows/make-dist.sh ${{ github.ref }} id: dist - name: check executability of dist from cmd.exe shell: cmd run: | cd dist dvdisaster.exe --version - name: Upload Release Asset id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.dist.outputs.upload_url }} asset_path: ./${{ steps.dist.outputs.archive }} asset_name: ${{ steps.dist.outputs.archive }} asset_content_type: application/zip linux64-cli: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: install prerequisites run: sudo apt update && sudo apt install -y libglib2.0-dev ghostscript man jq - name: configure run: env CLI_ONLY=1 ./configure - name: make run: nproc && make -j$(nproc) && make static && mv -f dvdisaster-static dvdisaster - name: check executable run: | ./dvdisaster --version && ./dvdisaster --version | grep -q dirty || true file dvdisaster && file dvdisaster | grep -q 'ELF 64' && file dvdisaster | grep -q 'statically linked' - name: build dist run: ./.github/workflows/make-dist.sh ${{ github.ref }} id: dist - name: Upload Release Asset id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.dist.outputs.upload_url }} asset_path: ./${{ steps.dist.outputs.archive }} asset_name: ${{ steps.dist.outputs.archive }} asset_content_type: application/zip