diff options
author | Alexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com> | 2022-11-06 23:03:35 +0300 |
---|---|---|
committer | Alexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com> | 2022-11-06 23:03:35 +0300 |
commit | 5301f044d60dbdd4b55a6175d696af84da9cfee3 (patch) | |
tree | 681112f1cf28cc014abb8ab5eedb2ffd74bbb76a | |
parent | 4c25238b1bae461d85ae2820ab3d58abaf8c162e (diff) |
self-contained versions
-rw-r--r-- | .github/workflows/build.yaml | 59 |
1 files changed, 44 insertions, 15 deletions
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index f6d6c41..091653a 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -10,6 +10,9 @@ on: jobs: build-linux: + strategy: + matrix: + sc: [no-self-contained, self-contained] runs-on: ubuntu-latest env: APP_NAME: coolgirl-multirom-builder @@ -31,9 +34,13 @@ jobs: mkdir -p ${{ env.OUTPUT_DIR }} && cp -fR *.asm Makefile LICENSE README.md configs spec demos games homebrew images output - name: Build CoolgirlCombiner for Linux-x64 - run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r linux-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r linux-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build NesTiler for Linux-x64 - run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r linux-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r linux-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build nesasm for Linux-x64 run: make -C tools_sources/nesasm/source EXEDIR=../../../${{ env.TOOLS_DIR }} - name: Remove unnecessary files @@ -41,16 +48,20 @@ jobs: - name: Upload artifact for Linux-x64 uses: actions/upload-artifact@v3 with: - name: ${{ env.APP_NAME }}-linux-x64 + name: ${{ env.APP_NAME }}-linux-x64-${{ matrix.sc }} path: ${{ env.OUTPUT_DIR }} - name: Clean run: >- rm -f ${{ env.TOOLS_DIR }}/* && make -C tools_sources/nesasm/source clean - name: Build CoolgirlCombiner for Linux-ARM32 - run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r linux-arm --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r linux-arm --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build NesTiler for Linux-ARM32 - run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r linux-arm --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r linux-arm --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build nesasm for Linux-ARM32 run: make -C tools_sources/nesasm/source EXEDIR=../../../${{ env.TOOLS_DIR }} CC=arm-linux-gnueabihf-gcc - name: Remove unnecessary files @@ -58,16 +69,20 @@ jobs: - name: Upload artifact for Linux-ARM32 uses: actions/upload-artifact@v3 with: - name: ${{ env.APP_NAME }}-linux-arm32 + name: ${{ env.APP_NAME }}-linux-arm32-${{ matrix.sc }} path: ${{ env.OUTPUT_DIR }} - name: Clean run: >- rm -f ${{ env.TOOLS_DIR }}/* && make -C tools_sources/nesasm/source clean - name: Build CoolgirlCombiner for Linux-ARM64 - run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r linux-arm64 --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r linux-arm64 --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build NesTiler for Linux-ARM64 - run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r linux-arm64 --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r linux-arm64 --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build nesasm for Linux-ARM64 run: make -C tools_sources/nesasm/source EXEDIR=../../../${{ env.TOOLS_DIR }} CC=aarch64-linux-gnu-gcc - name: Remove unnecessary files @@ -75,10 +90,13 @@ jobs: - name: Upload artifact for Linux-ARM64 uses: actions/upload-artifact@v3 with: - name: ${{ env.APP_NAME }}-linux-arm64 + name: ${{ env.APP_NAME }}-linux-arm64-${{ matrix.sc }} path: ${{ env.OUTPUT_DIR }} build-macos: + strategy: + matrix: + sc: [no-self-contained, self-contained] runs-on: macos-latest env: APP_NAME: coolgirl-multirom-builder @@ -100,9 +118,13 @@ jobs: mkdir -p ${{ env.OUTPUT_DIR }} && cp -fR *.asm Makefile LICENSE README.md configs spec demos games homebrew images output - name: Build CoolgirlCombiner for MacOS-x64 - run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r osx-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r osx-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build NesTiler for MacOS-x64 - run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r osx-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r osx-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build nesasm for MacOS-x64 run: make -C tools_sources/nesasm/source EXEDIR=../../../${{ env.TOOLS_DIR }} - name: Remove unnecessary files @@ -110,10 +132,13 @@ jobs: - name: Upload artifact for MacOS-x64 uses: actions/upload-artifact@v3 with: - name: ${{ env.APP_NAME }}-osx-x64 + name: ${{ env.APP_NAME }}-osx-x64-${{ matrix.sc }} path: ${{ env.OUTPUT_DIR }} build-windows: + strategy: + matrix: + sc: [no-self-contained, self-contained] runs-on: windows-latest env: APP_NAME: coolgirl-multirom-builder @@ -143,9 +168,13 @@ jobs: mkdir -p ${{ env.OUTPUT_DIR }} && cp -fR *.asm Makefile LICENSE README.md configs spec demos games homebrew images output - name: Build CoolgirlCombiner for Win-x64 - run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r win-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/CoolgirlCombiner -c Release -r win-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Build NesTiler for Win-x64 - run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r win-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} + env: + SC_OPS: ${{ matrix.sc == 'self-contained' && '--self-contained true' || '--no-self-contained' }} + run: dotnet publish tools_sources/NesTiler/NesTiler -c Release -r win-x64 --no-self-contained -o ${{ env.TOOLS_DIR }} ${{ env.SC_OPS }} - name: Remove unnecessary files shell: msys2 {0} run: rm -f ${{ env.TOOLS_DIR }}/*.md @@ -155,5 +184,5 @@ jobs: - name: Upload artifact for Win-x64 uses: actions/upload-artifact@v3 with: - name: ${{ env.APP_NAME }}-win-x64 + name: ${{ env.APP_NAME }}-win-x64-${{ matrix.sc }} path: ${{ env.OUTPUT_DIR }} |