1- name : ' Full Flow '
1+ name : ' Build '
22
33env :
4- VERSION : 1.6.0
5- # PACKAGE_SUFFIX: '-pre.1'
6- PACKAGE_SUFFIX : ' '
4+ VERSION : 1.6.1
5+ PACKAGE_SUFFIX : ' -pre.1'
6+ # PACKAGE_SUFFIX: ''
77 ASM_VERSION : 1.0.0
88 BUILD_TYPE : Release
99 VCPKG_HASH : 0f88ecb8528605f91980b90a2c5bad88e3cb565f
10- # Indicates the location of the vcpkg as a Git submodule of the project repository.
11- # VCPKG_ROOT: ${{ github.workspace }}/vcpkg
12- # Tells vcpkg where binary packages are stored.
13- # VCPKG_DEFAULT_BINARY_CACHE: ${{ github.workspace }}/vcpkg/bincache
1410
1511on :
1612 push :
@@ -40,54 +36,50 @@ jobs:
4036 vcpkg_triplet : arm64-linux
4137 vcpkg_config : RelWithDebInfo
4238 dotnet_rid : linux-arm64
39+ no_native_tests : true
40+ cmake_options : -D CMAKE_SYSTEM_PROCESSOR=aarch64 -D CMAKE_C_COMPILER=$(which aarch64-linux-gnu-gcc) -D CMAKE_CXX_COMPILER=$(which aarch64-linux-gnu-g++)
4341 - os : windows-latest
4442 arch : x64
4543 vcpkg_triplet : x64-windows-static
4644 vcpkg_config : Release
4745 dotnet_rid : win-x64
46+ # Still can't make this build
47+ # - os: windows-latest
48+ # arch: x86
49+ # vcpkg_triplet: x86-windows-static
50+ # vcpkg_config: Release
51+ # dotnet_rid: win-x86
52+ # cmake_options: -D CMAKE_GENERATOR_PLATFORM=x86
4853 - os : macos-latest
4954 arch : arm64
5055 vcpkg_triplet : arm64-osx
5156 vcpkg_config : RelWithDebInfo
5257 dotnet_rid : osx-arm64
58+ cmake_options : -D CMAKE_OSX_ARCHITECTURES=arm64
5359
5460 fail-fast : false
5561 name : ' build: ${{ matrix.os }} (${{ matrix.arch }})'
5662
63+ env :
64+ VCPKG_DEFAULT_VCPKG_TRIPLET : ${{ matrix.vcpkg_triplet }}
65+ VCPKG_TRIPLET : ${{ matrix.vcpkg_triplet }}
66+ VCPKG_CONFIG : ${{ matrix.vcpkg_config }}
67+ DOTNET_RID : ${{ matrix.dotnet_rid }}
68+ NO_NATIVE_SNAPPY : ${{ matrix.no_native_snappy }}
69+ NO_NATIVE_ZSTD : ${{ matrix.no_native_zstd }}
70+ CMAKE_OPTIONS : ${{ matrix.cmake_options }}
71+
5772 steps :
5873
5974 - uses : actions/checkout@v4
6075 with :
6176 submodules : true
6277
63- - name : env (windows)
64- if : runner.os == 'Windows'
65- run : |
66- echo "VCPKG_DEFAULT_VCPKG_TRIPLET=${{ matrix.vcpkg_triplet }}" >> $env:GITHUB_ENV
67- echo "VCPKG_TRIPLET=${{ matrix.vcpkg_triplet }}" >> $env:GITHUB_ENV
68- echo "VCPKG_CONFIG=${{ matrix.vcpkg_config }}" >> $env:GITHUB_ENV
69- echo "DOTNET_RID=${{ matrix.dotnet_rid }}" >> $env:GITHUB_ENV
70-
71- - name : env
72- if : runner.os == 'Linux' || runner.os == 'macOS'
73- run : |
74- echo "VCPKG_DEFAULT_VCPKG_TRIPLET=${{ matrix.vcpkg_triplet }}" >> $GITHUB_ENV
75- echo "VCPKG_TRIPLET=${{ matrix.vcpkg_triplet }}" >> $GITHUB_ENV
76- echo "VCPKG_CONFIG=${{ matrix.vcpkg_config }}" >> $GITHUB_ENV
77- echo "DOTNET_RID=${{ matrix.dotnet_rid }}" >> $GITHUB_ENV
78-
7978 - name : Linux ARM
8079 if : runner.os == 'Linux' && matrix.arch == 'arm64'
8180 run : |
8281 sudo apt-get update
8382 sudo apt-get --yes install g++-aarch64-linux-gnu pkg-config-aarch64-linux-gnu
84- echo "CMAKE_OPTIONS=-D CMAKE_SYSTEM_PROCESSOR=aarch64 -D CMAKE_C_COMPILER=$(which aarch64-linux-gnu-gcc) -D CMAKE_CXX_COMPILER=$(which aarch64-linux-gnu-g++)" >> $GITHUB_ENV
85- echo "SUPPRESS_TEST=1" >> $GITHUB_ENV
86-
87- - name : OSX M1
88- if : runner.os == 'macOS' && matrix.arch == 'arm64'
89- run : |
90- echo "CMAKE_OPTIONS=-D CMAKE_OSX_ARCHITECTURES=arm64" >> $GITHUB_ENV
9183
9284 - uses : friendlyanon/setup-vcpkg@v1
9385 # seems like the absense of commit hash expects vcpkg submodule, i don't want that
9688 # set to false to clear any cache in case of build errors
9789 cache : false
9890
99- # - name: show cmake config
100- # run: cmake -h
101- # working-directory: native
102-
10391 - name : configure
10492 run : cmake -B build -S . -D CMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -D "CMAKE_TOOLCHAIN_FILE=${{ env.VCPKG_ROOT }}/scripts/buildsystems/vcpkg.cmake" -D "VCPKG_TARGET_TRIPLET=${{ env.VCPKG_TRIPLET }}" ${{ env.CMAKE_OPTIONS }}
10593 working-directory : native
@@ -110,7 +98,20 @@ jobs:
11098
11199 - name : debug
112100 run : ls -R
113- working-directory : native
101+ working-directory : native/build
102+
103+ - name : test
104+ if : runner.os != 'Windows' && !matrix.no_native_tests
105+ run : ctest
106+ working-directory : native/build
107+
108+ - name : test (windows .exe)
109+ if : runner.os == 'Windows' && !matrix.no_native_tests
110+ run : |
111+ ls -R
112+ pwd
113+ .\tests.exe
114+ working-directory : native/build/Release
114115
115116 - uses : actions/upload-artifact@v4
116117 name : Collect Artifacts
@@ -139,7 +140,9 @@ jobs:
139140 - uses : actions/upload-artifact@v4
140141 name : Collect Artifacts
141142 with :
142- name : native
143+ name : native-fat
144+ compression-level : 9
145+ if-no-files-found : error
143146 path : |
144147 native/ubin/**/*
145148
@@ -172,7 +175,7 @@ jobs:
172175
173176 - uses : actions/download-artifact@v4
174177 with :
175- name : native
178+ name : native-fat
176179 path : native/ubin/
177180
178181 - name : debug1
@@ -207,7 +210,7 @@ jobs:
207210
208211 - uses : actions/download-artifact@v4
209212 with :
210- name : native
213+ name : native-fat
211214 path : native/ubin/
212215
213216 - name : debug
@@ -228,30 +231,8 @@ jobs:
228231 name : Collect Artifacts
229232 with :
230233 name : managed
234+ compression-level : 9
235+ if-no-files-found : error
231236 path : |
232- managed/IronCompress/bin/Release/*
233-
234- publish :
235- needs : [test-managed, build-managed]
236- runs-on : ubuntu-latest
237- if : github.ref == 'refs/heads/master'
238- environment : nuget
239- steps :
240-
241- - uses : actions/download-artifact@v4
242- with :
243- name : managed
244- path : pub/managed/
245-
246- - name : push to nuget.org
247- run : dotnet nuget push pub/managed/*.nupkg --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate
248-
249- - name : create gh release
250- uses : softprops/action-gh-release@v1
251- if : github.ref == 'refs/heads/master'
252- with :
253- tag_name : ${{ env.VERSION }}
254- name : ${{ env.VERSION }}
255- files : " pub/managed/*.nupkg"
256- generate_release_notes : true
257-
237+ managed/IronCompress/bin/Release/**/*nupkg
238+ docs/release-notes.md
0 commit comments