diff options
| author | xxanqw <[email protected]> | 2025-07-01 20:27:31 +0300 |
|---|---|---|
| committer | xxanqw <[email protected]> | 2025-07-01 20:27:31 +0300 |
| commit | 5d12a408039d90a5ae35d7d9ca3d42be843bbc1c (patch) | |
| tree | d0303d2948ca6dcd9b9a073a62e06c2e1b4e6e5d /.github/workflows/build.yml | |
| parent | fabe84c4e3c695f7e9f50faa3c8c2bb78f2182cc (diff) | |
| download | mikusays-c-5d12a408039d90a5ae35d7d9ca3d42be843bbc1c.tar.gz mikusays-c-5d12a408039d90a5ae35d7d9ca3d42be843bbc1c.zip | |
Workflow Fixes
Diffstat (limited to '.github/workflows/build.yml')
| -rw-r--r-- | .github/workflows/build.yml | 182 |
1 files changed, 0 insertions, 182 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index 788f7e8..0000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,182 +0,0 @@ -name: Build and Release - -on: - push: - branches: [ main, master ] - tags: [ 'v*' ] - pull_request: - branches: [ main, master ] - -env: - CARGO_TERM_COLOR: always - -jobs: - build: - name: Build ${{ matrix.target }} - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - include: - # Windows - - target: x86_64-pc-windows-msvc - os: windows-latest - ext: .exe - name: mikusays-windows-x64.exe - - target: i686-pc-windows-msvc - os: windows-latest - ext: .exe - name: mikusays-windows-x86.exe - - target: aarch64-pc-windows-msvc - os: windows-latest - ext: .exe - name: mikusays-windows-arm64.exe - - # Linux - - target: x86_64-unknown-linux-gnu - os: ubuntu-latest - ext: "" - name: mikusays-linux-x64 - - target: i686-unknown-linux-gnu - os: ubuntu-latest - ext: "" - name: mikusays-linux-x86 - - target: aarch64-unknown-linux-gnu - os: ubuntu-latest - ext: "" - name: mikusays-linux-arm64 - - target: armv7-unknown-linux-gnueabihf - os: ubuntu-latest - ext: "" - name: mikusays-linux-armv7 - - # macOS - - target: x86_64-apple-darwin - os: macos-latest - ext: "" - name: mikusays-macos-x64 - - target: aarch64-apple-darwin - os: macos-latest - ext: "" - name: mikusays-macos-arm64 - - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Install Rust - uses: dtolnay/rust-toolchain@stable - with: - targets: ${{ matrix.target }} - - - name: Install cross-compilation tools (Linux) - if: matrix.os == 'ubuntu-latest' - run: | - sudo apt-get update - sudo apt-get install -y gcc-multilib - if [[ "${{ matrix.target }}" == "aarch64-unknown-linux-gnu" ]]; then - sudo apt-get install -y gcc-aarch64-linux-gnu - fi - if [[ "${{ matrix.target }}" == "armv7-unknown-linux-gnueabihf" ]]; then - sudo apt-get install -y gcc-arm-linux-gnueabihf - fi - if [[ "${{ matrix.target }}" == "i686-unknown-linux-gnu" ]]; then - sudo apt-get install -y gcc-multilib - fi - - - name: Cache cargo registry - uses: actions/cache@v3 - with: - path: ~/.cargo/registry - key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }} - - - name: Cache cargo index - uses: actions/cache@v3 - with: - path: ~/.cargo/git - key: ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }} - - - name: Cache cargo build - uses: actions/cache@v3 - with: - path: target - key: ${{ runner.os }}-cargo-build-target-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }} - - - name: Configure cross-compilation environment - shell: bash - run: | - case "${{ matrix.target }}" in - aarch64-unknown-linux-gnu) - echo "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc" >> $GITHUB_ENV - ;; - armv7-unknown-linux-gnueabihf) - echo "CARGO_TARGET_ARMV7_UNKNOWN_LINUX_GNUEABIHF_LINKER=arm-linux-gnueabihf-gcc" >> $GITHUB_ENV - ;; - esac - - - name: Build - run: cargo build --release --target ${{ matrix.target }} - - - name: Strip binary (Unix) - if: matrix.os != 'windows-latest' - run: | - case "${{ matrix.target }}" in - aarch64-unknown-linux-gnu) - aarch64-linux-gnu-strip target/${{ matrix.target }}/release/mikusays - ;; - armv7-unknown-linux-gnueabihf) - arm-linux-gnueabihf-strip target/${{ matrix.target }}/release/mikusays - ;; - *) - strip target/${{ matrix.target }}/release/mikusays - ;; - esac - - - name: Prepare artifact - shell: bash - run: | - mkdir -p artifacts - if [[ "${{ matrix.os }}" == "windows-latest" ]]; then - cp target/${{ matrix.target }}/release/mikusays.exe artifacts/${{ matrix.name }} - else - cp target/${{ matrix.target }}/release/mikusays artifacts/${{ matrix.name }} - fi - - - name: Upload artifact - uses: actions/upload-artifact@v3 - with: - name: ${{ matrix.name }} - path: artifacts/${{ matrix.name }} - - release: - name: Create Release - runs-on: ubuntu-latest - needs: build - if: startsWith(github.ref, 'refs/tags/') - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Download all artifacts - uses: actions/download-artifact@v3 - with: - path: artifacts - - - name: Prepare release assets - run: | - mkdir -p release-assets - find artifacts -type f -executable -o -name "*.exe" | while read file; do - cp "$file" release-assets/ - done - # List files for debugging - ls -la release-assets/ - - - name: Create Release - uses: softprops/action-gh-release@v1 - with: - files: release-assets/* - draft: false - prerelease: false - generate_release_notes: true - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
