@@ -90,192 +90,192 @@ jobs:
9090 # - name: Run tests under valgrind
9191 # run: ${{github.workspace}}/test/test_valgrind.sh ${{github.workspace}} ${{github.workspace}}/build ${{matrix.tool}}
9292
93- Windows-generators :
94- name : Windows ${{matrix.generator}} generator.
95- strategy :
96- matrix :
97- build_type : [Debug, Release]
98- compiler : [{c: cl, cxx: cl}]
99- shared_library : ['ON', 'OFF']
100- static_hwloc : ['ON', 'OFF']
101- generator : ['Unix Makefiles']
102- umfd_lib : ['ON', 'OFF']
103-
104- runs-on : windows-latest
105-
106- steps :
107- - name : Checkout
108- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
109- with :
110- fetch-depth : 0
111-
112- - name : Set VCPKG_PATH with hwloc
113- if : matrix.static_hwloc == 'OFF'
114- run : echo "VCPKG_PATH=${{github.workspace}}/build/vcpkg/packages/hwloc_x64-windows;${{github.workspace}}/build/vcpkg/packages/tbb_x64-windows;${{github.workspace}}/build/vcpkg/packages/jemalloc_x64-windows" >> $env:GITHUB_ENV
115-
116- - name : Set VCPKG_PATH without hwloc
117- if : matrix.static_hwloc == 'ON'
118- run : echo "VCPKG_PATH=${{github.workspace}}/build/vcpkg/packages/tbb_x64-windows;${{github.workspace}}/build/vcpkg/packages/jemalloc_x64-windows" >> $env:GITHUB_ENV
119-
120- - name : Initialize vcpkg
121- uses : lukka/run-vcpkg@5e0cab206a5ea620130caf672fce3e4a6b5666a1 # v11.5
122- env :
123- VCPKG_PATH : ${{env.VCPKG_PATH}}
124- with :
125- vcpkgGitCommitId : ea2a964f9303270322cf3f2d51c265ba146c422d # 1.04.2025
126- vcpkgDirectory : ${{env.BUILD_DIR}}/vcpkg
127- vcpkgJsonGlob : ' **/vcpkg.json'
128-
129- - name : Install dependencies
130- run : vcpkg install --triplet x64-windows
131-
132- - name : Install Ninja
133- if : matrix.generator == 'Ninja'
134- uses : seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6
135-
136- # - name: NMake Makefiles
137- # if: matrix.generator == 'Unix Makefiles'
138- # env:
139- # UMF_TESTS_FAIL_ON_SKIP: ON
140- # run: cmake -G "Unix Makefiles" -DUMF_TESTS_FAIL_ON_SKIP=ON
93+ # Windows-generators:
94+ # name: Windows ${{matrix.generator}} generator.
95+ # strategy:
96+ # matrix:
97+ # build_type: [Debug, Release]
98+ # compiler: [{c: cl, cxx: cl}]
99+ # shared_library: ['ON', 'OFF']
100+ # static_hwloc: ['ON', 'OFF']
101+ # generator: ['Unix Makefiles']
102+ # umfd_lib: ['ON', 'OFF']
103+
104+ # runs-on: windows-latest
105+
106+ # steps:
107+ # - name: Checkout
108+ # uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
109+ # with:
110+ # fetch-depth: 0
111+
112+ # - name: Set VCPKG_PATH with hwloc
113+ # if: matrix.static_hwloc == 'OFF'
114+ # run: echo "VCPKG_PATH=${{github.workspace}}/build/vcpkg/packages/hwloc_x64-windows;${{github.workspace}}/build/vcpkg/packages/tbb_x64-windows;${{github.workspace}}/build/vcpkg/packages/jemalloc_x64-windows" >> $env:GITHUB_ENV
115+
116+ # - name: Set VCPKG_PATH without hwloc
117+ # if: matrix.static_hwloc == 'ON'
118+ # run: echo "VCPKG_PATH=${{github.workspace}}/build/vcpkg/packages/tbb_x64-windows;${{github.workspace}}/build/vcpkg/packages/jemalloc_x64-windows" >> $env:GITHUB_ENV
119+
120+ # - name: Initialize vcpkg
121+ # uses: lukka/run-vcpkg@5e0cab206a5ea620130caf672fce3e4a6b5666a1 # v11.5
122+ # env:
123+ # VCPKG_PATH: ${{env.VCPKG_PATH}}
124+ # with:
125+ # vcpkgGitCommitId: ea2a964f9303270322cf3f2d51c265ba146c422d # 1.04.2025
126+ # vcpkgDirectory: ${{env.BUILD_DIR}}/vcpkg
127+ # vcpkgJsonGlob: '**/vcpkg.json'
128+
129+ # - name: Install dependencies
130+ # run: vcpkg install --triplet x64-windows
131+
132+ # - name: Install Ninja
133+ # if: matrix.generator == 'Ninja'
134+ # uses: seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6
135+
136+ # # - name: NMake Makefiles
137+ # # if: matrix.generator == 'Unix Makefiles'
138+ # # env:
139+ # # UMF_TESTS_FAIL_ON_SKIP: ON
140+ # # run: cmake -G "Unix Makefiles" -DUMF_TESTS_FAIL_ON_SKIP=ON
141141
142142
143143
144144
145- - name : Configure MSVC environment
146- uses : ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
147-
148- - name : Configure build
149- run : >
150- cmake
151- -B ${{env.BUILD_DIR}}
152- -DCMAKE_BUILD_TYPE=${{matrix.build_type}}
153- -DCMAKE_PREFIX_PATH="${{env.VCPKG_PATH}}"
154- -DCMAKE_C_COMPILER=${{matrix.compiler.c}}
155- -DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}}
156- -G "${{matrix.generator}}"
157- -DUMF_BUILD_SHARED_LIBRARY=${{matrix.shared_library}}
158- -DUMF_LINK_HWLOC_STATICALLY=${{matrix.static_hwloc}}
159- -DUMF_FORMAT_CODE_STYLE=OFF
160- -DUMF_DEVELOPER_MODE=ON
161- -DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
162- -DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON
163- -DUMF_BUILD_CUDA_PROVIDER=ON
164- -DUMF_TESTS_FAIL_ON_SKIP=ON
165- ${{ matrix.umfd_lib == 'ON' && '-DUMF_USE_DEBUG_POSTFIX=ON' || '' }}
166-
167- - name : Build UMF
168- shell : cmd
169- run : cmake --build ${{env.BUILD_DIR}} --config ${{matrix.build_type}} -j %NUMBER_OF_PROCESSORS%
170-
171- - name : Run tests
172- shell : cmd
173- working-directory : ${{env.BUILD_DIR}}
174- run : ctest -C ${{matrix.build_type}} --output-on-failure --test-dir test
175-
176- - name : Get UMF version
177- run : |
178- $version = (git describe --tags --abbrev=0 | Select-String -Pattern '\d+\.\d+\.\d+').Matches.Value
179- echo "UMF_VERSION=$version" >> $env:GITHUB_ENV
180- shell : pwsh
181-
182- - name : Test UMF installation and uninstallation
183- # The '--shared-library' parameter is added to the installation test when the UMF is built as a shared library
184- # The '--umfd-lib' parameter is added when the UMF is built with the umfd library
185- run : >
186- python3 ${{github.workspace}}/test/test_installation.py
187- --build-dir ${{env.BUILD_DIR}}
188- --install-dir ${{env.INSTALL_DIR}}
189- --build-type ${{matrix.build_type}}
190- --umf-version ${{env.UMF_VERSION}}
191- ${{ matrix.shared_library == 'ON' && '--proxy --shared-library' || '' }}
192- ${{ matrix.umfd_lib == 'ON' && '--umfd-lib' || ''}}
193- ${{ matrix.static_hwloc == 'ON' && '--hwloc' || '' }}
194-
195- # icx:
196- # name: ICX
197- # env:
198- # VCPKG_PATH: "${{github.workspace}}/build/vcpkg/packages/hwloc_x64-windows;${{github.workspace}}/build/vcpkg/packages/tbb_x64-windows;${{github.workspace}}/build/vcpkg/packages/jemalloc_x64-windows"
199- # strategy:
200- # matrix:
201- # os: ['windows-2019', 'windows-2022']
202- # build_type: [Debug]
203- # compiler: [{c: icx, cxx: icx}]
204- # shared_library: ['ON', 'OFF']
205- # include:
206- # - os: windows-2022
207- # build_type: Release
208- # compiler: {c: icx, cxx: icx}
209- # shared_library: 'ON'
145+ # - name: Configure MSVC environment
146+ # uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
147+
148+ # - name: Configure build
149+ # run: >
150+ # cmake
151+ # -B ${{env.BUILD_DIR}}
152+ # -DCMAKE_BUILD_TYPE=${{matrix.build_type}}
153+ # -DCMAKE_PREFIX_PATH="${{env.VCPKG_PATH}}"
154+ # -DCMAKE_C_COMPILER=${{matrix.compiler.c}}
155+ # -DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}}
156+ # -G "${{matrix.generator}}"
157+ # -DUMF_BUILD_SHARED_LIBRARY=${{matrix.shared_library}}
158+ # -DUMF_LINK_HWLOC_STATICALLY=${{matrix.static_hwloc}}
159+ # -DUMF_FORMAT_CODE_STYLE=OFF
160+ # -DUMF_DEVELOPER_MODE=ON
161+ # -DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
162+ # -DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON
163+ # -DUMF_BUILD_CUDA_PROVIDER=ON
164+ # -DUMF_TESTS_FAIL_ON_SKIP=ON
165+ # ${{ matrix.umfd_lib == 'ON' && '-DUMF_USE_DEBUG_POSTFIX=ON' || '' }}
166+
167+ # - name: Build UMF
168+ # shell: cmd
169+ # run: cmake --build ${{env.BUILD_DIR}} --config ${{matrix.build_type}} -j %NUMBER_OF_PROCESSORS%
170+
171+ # - name: Run tests
172+ # shell: cmd
173+ # working-directory: ${{env.BUILD_DIR}}
174+ # run: ctest -C ${{matrix.build_type}} --output-on-failure --test-dir test
175+
176+ # - name: Get UMF version
177+ # run: |
178+ # $version = (git describe --tags --abbrev=0 | Select-String -Pattern '\d+\.\d+\.\d+').Matches.Value
179+ # echo "UMF_VERSION=$version" >> $env:GITHUB_ENV
180+ # shell: pwsh
181+
182+ # - name: Test UMF installation and uninstallation
183+ # # The '--shared-library' parameter is added to the installation test when the UMF is built as a shared library
184+ # # The '--umfd-lib' parameter is added when the UMF is built with the umfd library
185+ # run: >
186+ # python3 ${{github.workspace}}/test/test_installation.py
187+ # --build-dir ${{env.BUILD_DIR}}
188+ # --install-dir ${{env.INSTALL_DIR}}
189+ # --build-type ${{matrix.build_type}}
190+ # --umf-version ${{env.UMF_VERSION}}
191+ # ${{ matrix.shared_library == 'ON' && '--proxy --shared-library' || '' }}
192+ # ${{ matrix.umfd_lib == 'ON' && '--umfd-lib' || ''}}
193+ # ${{ matrix.static_hwloc == 'ON' && '--hwloc' || '' }}
194+
195+ icx :
196+ name : ICX
197+ env :
198+ VCPKG_PATH : " ${{github.workspace}}/build/vcpkg/packages/hwloc_x64-windows;${{github.workspace}}/build/vcpkg/packages/tbb_x64-windows;${{github.workspace}}/build/vcpkg/packages/jemalloc_x64-windows"
199+ strategy :
200+ matrix :
201+ os : ['windows-2019', 'windows-2022']
202+ build_type : [Debug]
203+ compiler : [{c: icx, cxx: icx}]
204+ shared_library : ['ON', 'OFF']
205+ include :
206+ - os : windows-2022
207+ build_type : Release
208+ compiler : {c: icx, cxx: icx}
209+ shared_library : ' ON'
210210
211- # runs-on: ${{matrix.os}}
211+ runs-on : ${{matrix.os}}
212212
213- # steps:
214- # - name: Checkout
215- # uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
216- # with:
217- # fetch-depth: 0
213+ steps :
214+ - name : Checkout
215+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
216+ with :
217+ fetch-depth : 0
218218
219- # - name: Initialize vcpkg
220- # uses: lukka/run-vcpkg@5e0cab206a5ea620130caf672fce3e4a6b5666a1 # v11.5
221- # with:
222- # vcpkgGitCommitId: ea2a964f9303270322cf3f2d51c265ba146c422d # 1.04.2025
223- # vcpkgDirectory: ${{env.BUILD_DIR}}/vcpkg
224- # vcpkgJsonGlob: '**/vcpkg.json'
219+ - name : Initialize vcpkg
220+ uses : lukka/run-vcpkg@5e0cab206a5ea620130caf672fce3e4a6b5666a1 # v11.5
221+ with :
222+ vcpkgGitCommitId : ea2a964f9303270322cf3f2d51c265ba146c422d # 1.04.2025
223+ vcpkgDirectory : ${{env.BUILD_DIR}}/vcpkg
224+ vcpkgJsonGlob : ' **/vcpkg.json'
225225
226- # - name: Install dependencies
227- # run: vcpkg install --triplet x64-windows
226+ - name : Install dependencies
227+ run : vcpkg install --triplet x64-windows
228228
229- # - name: Install Ninja
230- # uses: seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6
229+ - name : Install Ninja
230+ uses : seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6
231231
232- # - name: Download icx compiler
233- # env:
234- # # Link source: https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler-download.html
235- # CMPLR_LINK: "https://registrationcenter-download.intel.com/akdlm/IRC_NAS/15a35578-2f9a-4f39-804b-3906e0a5f8fc/w_dpcpp-cpp-compiler_p_2024.2.1.83_offline.exe"
236- # run: |
237- # Invoke-WebRequest -Uri "${{ env.CMPLR_LINK }}" -OutFile compiler_install.exe
232+ - name : Download icx compiler
233+ env :
234+ # Link source: https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler-download.html
235+ CMPLR_LINK : " https://registrationcenter-download.intel.com/akdlm/IRC_NAS/15a35578-2f9a-4f39-804b-3906e0a5f8fc/w_dpcpp-cpp-compiler_p_2024.2.1.83_offline.exe"
236+ run : |
237+ Invoke-WebRequest -Uri "${{ env.CMPLR_LINK }}" -OutFile compiler_install.exe
238238
239- # - name: Install icx compiler
240- # shell: cmd
241- # run: |
242- # start /b /wait .\compiler_install.exe -s -x -f extracted --log extract.log
243- # extracted\bootstrapper.exe -s --action install --eula=accept -p=NEED_VS2017_INTEGRATION=0 ^
244- # -p=NEED_VS2019_INTEGRATION=0 -p=NEED_VS2022_INTEGRATION=0 --log-dir=.
239+ - name : Install icx compiler
240+ shell : cmd
241+ run : |
242+ start /b /wait .\compiler_install.exe -s -x -f extracted --log extract.log
243+ extracted\bootstrapper.exe -s --action install --eula=accept -p=NEED_VS2017_INTEGRATION=0 ^
244+ -p=NEED_VS2019_INTEGRATION=0 -p=NEED_VS2022_INTEGRATION=0 --log-dir=.
245245
246- # - name: Configure build
247- # shell: cmd
248- # run: |
249- # call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
250- # call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
251- # cmake ^
252- # -B ${{env.BUILD_DIR}} ^
253- # -DCMAKE_PREFIX_PATH="${{env.VCPKG_PATH}}" ^
254- # -DCMAKE_C_COMPILER=${{matrix.compiler.c}} ^
255- # -DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}} ^
256- # -G Ninja ^
257- # -DUMF_BUILD_SHARED_LIBRARY=${{matrix.shared_library}} ^
258- # -DUMF_FORMAT_CODE_STYLE=OFF ^
259- # -DUMF_DEVELOPER_MODE=ON ^
260- # -DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON ^
261- # -DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON ^
262- # -DUMF_BUILD_CUDA_PROVIDER=ON ^
263- # -DUMF_TESTS_FAIL_ON_SKIP=ON
246+ - name : Configure build
247+ shell : cmd
248+ run : |
249+ call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
250+ call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
251+ cmake ^
252+ -B ${{env.BUILD_DIR}} ^
253+ -DCMAKE_PREFIX_PATH="${{env.VCPKG_PATH}}" ^
254+ -DCMAKE_C_COMPILER=${{matrix.compiler.c}} ^
255+ -DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}} ^
256+ -G "Unix Makefiles" ^
257+ -DUMF_BUILD_SHARED_LIBRARY=${{matrix.shared_library}} ^
258+ -DUMF_FORMAT_CODE_STYLE=OFF ^
259+ -DUMF_DEVELOPER_MODE=ON ^
260+ -DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON ^
261+ -DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON ^
262+ -DUMF_BUILD_CUDA_PROVIDER=ON ^
263+ -DUMF_TESTS_FAIL_ON_SKIP=ON
264264
265- # - name: Build UMF
266- # shell: cmd
267- # run: |
268- # call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
269- # call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
270- # cmake --build ${{env.BUILD_DIR}} --config ${{matrix.build_type}} -j %NUMBER_OF_PROCESSORS%
265+ - name : Build UMF
266+ shell : cmd
267+ run : |
268+ call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
269+ call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
270+ cmake --build ${{env.BUILD_DIR}} --config ${{matrix.build_type}} -j %NUMBER_OF_PROCESSORS%
271271
272- # - name: Run tests
273- # shell: cmd
274- # working-directory: ${{env.BUILD_DIR}}
275- # run: |
276- # call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
277- # call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
278- # ctest -C ${{matrix.build_type}} --output-on-failure --test-dir test
272+ - name : Run tests
273+ shell : cmd
274+ working-directory : ${{env.BUILD_DIR}}
275+ run : |
276+ call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
277+ call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
278+ ctest -C ${{matrix.build_type}} --output-on-failure --test-dir test
279279
280280 # # Scenarios where UMF_LINK_HWLOC_STATICALLY is set to OFF and hwloc is not installed in the system
281281 # # The hwloc library is fetched implicitly
0 commit comments