|
- name: Build
-
- on:
- push:
- tags:
- - 'v*'
-
- env:
- BUILD_TYPE: Release
-
- jobs:
- prepare_release:
- runs-on: ubuntu-latest
- outputs:
- upload_url: ${{ steps.create_release.outputs.upload_url }}
-
- steps:
- - name: Create Release
- uses: actions/create-release@v1
- id: create_release
- with:
- tag_name: ${{ github.ref }}
- release_name: Release ${{ github.ref }}
- body: A release wow
- draft: false
- prerelease: false
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
- build_linux:
- runs-on: ubuntu-latest
- needs: [prepare_release]
-
- steps:
- - uses: actions/checkout@v2
-
- - name: Install dependencies
- # The user does not run as root
- run: sudo apt-get install cmake git gcc libsndfile-dev libpng-dev
-
- - name: Create Build Environment
- # Some projects don't allow in-source building, so create a separate build directory
- # We'll use this as our working directory for all subsequent commands
- run: cmake -E make_directory ${{runner.workspace}}/build
-
- - name: Configure CMake
- # Use a bash shell so we can use the same syntax for environment variable
- # access regardless of the host operating system
- shell: bash
- working-directory: ${{runner.workspace}}/build
- # Note the current convention is to use the -S and -B options here to specify source
- # and build directories, but this is only available with CMake 3.13 and higher.
- # The CMake binaries on the Github Actions machines are (as of this writing) 3.12
- run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE
-
- - name: Build
- working-directory: ${{runner.workspace}}/build
- shell: bash
- # Execute the build. You can specify a specific target with "--target <NAME>"
- run: cmake --build . --config $BUILD_TYPE
-
- - name: Upload binary
- uses: actions/upload-release-asset@v1
- with:
- upload_url: ${{ needs.prepare_release.outputs.upload_url }}
- asset_path: ./${{runner.workspace}}/aptdec/build/aptdec
- asset_name: aptdec_lin64
- asset_content_type: application/x-executable
- env:
- GITHUB_TOKEN: ${{ github.token }}
-
-
- build_windows:
- runs-on: ubuntu-latest
- needs: [prepare_release]
-
- steps:
- - uses: actions/checkout@v2
-
- - name: Install dependencies
- # The user does not run as root
- run: sudo apt install wget cmake make mingw-w64 git unzip libsndfile-dev
-
- - name: Run build script
- shell: bash
- working-directory: ${{runner.workspace}}
- run: cd $GITHUB_WORKSPACE && ./build_windows.sh $BUILD_TYPE
-
- - name: Upload zip
- uses: actions/upload-release-asset@v1
- with:
- upload_url: ${{ needs.prepare_release.outputs.upload_url }}
- asset_path: ./${{runner.workspace}}/aptdec/winbuild/aptdec-1.7.0.zip
- asset_name: aptdec_win64.zip
- asset_content_type: application/zip
- env:
- GITHUB_TOKEN: ${{ github.token }}
|