Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
3e293d2
win: add _ITERATOR_DEBUG_LEVEL=2 distro
MaxRayskiy Feb 17, 2026
ef65890
test run: build with new matrix
MaxRayskiy Feb 19, 2026
b5082e9
test
MaxRayskiy Feb 19, 2026
8aec036
test vcpkg mirror for msys
MaxRayskiy Feb 19, 2026
a2a3d28
replace mirror files with vcpkg cache
MaxRayskiy Feb 23, 2026
a623548
Allow setting the vcpkg triplet for `generate.mk`.
adalisk-emikhaylov Feb 25, 2026
e55f3c2
add missing msys2 files
MaxRayskiy Mar 1, 2026
96bd532
Merge branch 'mrbind-choosing-vcpkg-triplet' into feature/7075_iterat…
MaxRayskiy Mar 1, 2026
a455fee
use vcpkg_triplet as job-level env
MaxRayskiy Mar 1, 2026
ad10f20
add getopt
MaxRayskiy Mar 14, 2026
3982db8
force v142 vc toolset
MaxRayskiy Mar 17, 2026
677ae97
use s3 mirror for missing files
MaxRayskiy Mar 17, 2026
59bbb79
test x-script for X_VCPKG_ASSET_SOURCES
MaxRayskiy Mar 17, 2026
f114d66
use s3 as assets provider
MaxRayskiy Mar 27, 2026
4ffa831
Merge branch 'master' into feature/7075_iterator-debug-level2
MaxRayskiy Mar 27, 2026
a2c2ae1
use use_s3_assets-provider
MaxRayskiy Mar 27, 2026
7d29560
trigger build
MaxRayskiy Mar 27, 2026
8d784a4
fix typo
MaxRayskiy Mar 27, 2026
8b17df6
fix s3 dest
MaxRayskiy Mar 27, 2026
ac6d113
use original url to fetch downloads first
MaxRayskiy Mar 28, 2026
bd05f4d
update arg parsing in asset-provider
MaxRayskiy Mar 28, 2026
d623d57
test disable python build
MaxRayskiy Mar 28, 2026
0163848
skip Release build
MaxRayskiy Mar 28, 2026
c4e467a
skip bindings for new triplet
MaxRayskiy Mar 28, 2026
c84ff8f
Merge branch 'master' into feature/7075_iterator-debug-level2
Fedr Apr 1, 2026
c662b29
Python tests if matrix.vcpkg_triplet != 'x64-windows-meshlib-iterator…
Fedr Apr 1, 2026
edb8f86
Merge branch 'master' into feature/7075_iterator-debug-level2
MaxRayskiy Apr 14, 2026
b5b794d
codereview
MaxRayskiy Apr 15, 2026
f343128
fix vcpkg_triplet var
MaxRayskiy Apr 15, 2026
85a8819
condition extraction
MaxRayskiy Apr 15, 2026
5384ec0
updare example plugin compile
MaxRayskiy Apr 15, 2026
c6de7c1
fix WindowsArchive cleanup
MaxRayskiy Apr 15, 2026
4f736e8
addf itterator debug config for full ci and standart builds
MaxRayskiy Apr 16, 2026
97e7210
update distr test
MaxRayskiy Apr 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 16 additions & 12 deletions .github/workflows/build-test-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ jobs:
env:
BUILD_C_SHARP: ${{ matrix.cxx_compiler == 'msvc-2022' && matrix.build_system == 'CMake' }}
PYTEST_C_SHARP_ARGS: --run-c-sharp-samples --csharp-sample-dir=..\source\x64\${{ matrix.config }}
VCPKG_DEFAULT_TRIPLET: ${{ matrix.vcpkg_triplet || 'x64-windows-meshlib' }}

steps:
- name: Checkout
Expand Down Expand Up @@ -91,7 +92,7 @@ jobs:
uses: actions/cache@v5
id: vcpkg-cache
with:
key: vcpkg-cache-${{ matrix.vcpkg-version }}
key: vcpkg-cache-${{ matrix.vcpkg-version }}-${{ matrix.vcpkg_triplet || 'x64-windows-meshlib' }}
path: |
C:\vcpkg\*

Expand All @@ -104,7 +105,7 @@ jobs:

- name: Update vcpkg packages
run: |
.\thirdparty\install.bat --write-s3
.\thirdparty\install.bat --write-s3 --use-s3-asset-provider

- name: Vcpkg integrate install
working-directory: C:\vcpkg
Expand Down Expand Up @@ -188,13 +189,14 @@ jobs:
env:
GETTEXT_ROOT: C:\msys64_meshlib_mrbind\clang64
VCPKG_ROOT: C:\vcpkg
VCPKG_TARGET_TRIPLET: ${{ matrix.vcpkg_triplet || 'x64-windows-meshlib' }}
run: |
if ${{ fromJSON('["1==0", "1==1"]')[matrix.build_system == 'CMake'] }} (
call "${{matrix.vc-path}}\Common7\Tools\VsDevCmd.bat" -arch=amd64 ${{ fromJSON('["", "-vcvars_ver=14.2"]')[matrix.cxx_compiler == 'msvc-2019'] }}
if errorlevel 1 exit 1
cmake --version
if errorlevel 1 exit 1
cmake -B source\TempOutput -GNinja -DCMAKE_BUILD_TYPE=${{matrix.config}} -DMESHLIB_BUILD_GENERATED_C_BINDINGS=${{ fromJSON('["OFF", "ON"]')[inputs.mrbind_c] }}
cmake -B source\TempOutput -GNinja -DCMAKE_BUILD_TYPE=${{matrix.config}} -DVCPKG_TARGET_TRIPLET=%VCPKG_TARGET_TRIPLET% -DMESHLIB_BUILD_GENERATED_C_BINDINGS=${{ fromJSON('["OFF", "ON"]')[inputs.mrbind_c] }}
if errorlevel 1 exit 1
cmake --build source\TempOutput -j
if errorlevel 1 exit 1
Expand All @@ -203,12 +205,12 @@ jobs:
xcopy source\TempOutput\bin\* source\x64\${{matrix.config}}\* /s /e /i /Y
if errorlevel 1 exit 1
) else (
msbuild -m source\MeshLib.sln -p:Configuration=${{ matrix.config }}${{ fromJSON('["", ";PlatformToolset=v142"]')[matrix.cxx_compiler == 'msvc-2019'] }}
msbuild -m source\MeshLib.sln -p:Configuration=${{ matrix.config }} -p:VcpkgTriplet=%VCPKG_TARGET_TRIPLET%${{ fromJSON('["", ";PlatformToolset=v142"]')[matrix.cxx_compiler == 'msvc-2019'] }}
if errorlevel 1 exit 1
)

- name: Generate and build Python bindings
if: ${{inputs.mrbind}}
if: ${{inputs.mrbind && matrix.vcpkg_triplet != 'x64-windows-meshlib-iterator-debug'}}
shell: cmd
# Note that `\` doesn't work here as a line continuation, and will lead to weird errors.
run: |
Expand Down Expand Up @@ -242,12 +244,13 @@ jobs:
$xslt.Transform("_report_nunit.xml", "unit_tests_report_nunit.xml")

- name: Python Sanity Tests
if: ${{matrix.vcpkg_triplet != 'x64-windows-meshlib-iterator-debug'}}
timeout-minutes: 8
working-directory: source\x64\${{ matrix.config }}
run: py -3 ..\..\..\scripts\run_python_test_script.py -d '..\test_python' -a ' --junit-xml=../unit_tests_report_pytest.xml'

- name: Python Regression Tests
if: ${{ inputs.internal_build }}
if: ${{inputs.internal_build && matrix.vcpkg_triplet != 'x64-windows-meshlib-iterator-debug'}}
uses: ./.github/actions/python-regression-tests
with:
build_config: ${{ matrix.config }}
Expand Down Expand Up @@ -287,12 +290,13 @@ jobs:
if: ${{ matrix.config == 'Release' }} # debug builds not supported due to missing file 'tbb12_debug.lib'
env:
VCPKG_ROOT: C:\vcpkg
VCPKG_TARGET_TRIPLET: ${{ matrix.vcpkg_triplet || 'x64-windows-meshlib' }}
run: |
& $env:CMAKE_EXE `
-S examples/cpp-examples `
-B cpp-examples-build `
-D MESHLIB_INCLUDE_DIRS="$pwd/source;$pwd/thirdparty/parallel-hashmap;$env:VCPKG_ROOT/installed/x64-windows-meshlib/include;$env:VCPKG_ROOT/installed/x64-windows-meshlib/include/eigen3" `
-D MESHLIB_LIB_DIRS="$pwd/source/x64/${{ matrix.config }};$env:VCPKG_ROOT/installed/x64-windows-meshlib/lib"
-D MESHLIB_INCLUDE_DIRS="$pwd/source;$pwd/thirdparty/parallel-hashmap;$env:VCPKG_ROOT/installed/$env:VCPKG_TARGET_TRIPLET/include;$env:VCPKG_ROOT/installed/$env:VCPKG_TARGET_TRIPLET/include/eigen3" `
-D MESHLIB_LIB_DIRS="$pwd/source/x64/${{ matrix.config }};$env:VCPKG_ROOT/installed/$env:VCPKG_TARGET_TRIPLET/lib"
& $env:CMAKE_EXE `
--build cpp-examples-build `
--config ${{ matrix.config }} `
Expand All @@ -314,7 +318,7 @@ jobs:
# https://github.com/actions/download-artifact#maintaining-file-permissions-and-case-sensitive-files
- name: Archive files
if: ${{ inputs.upload_artifacts && matrix.cxx_compiler == 'msvc-2019' && matrix.build_system == 'CMake' }}
run: tar -a -c -f MREDist_${{ matrix.config }}.zip ./source/x64/${{matrix.config}}
run: tar -a -c -f MREDist_${{ matrix.upload_name || matrix.config }}.zip ./source/x64/${{ matrix.config }}

- name: Archive generated C headers
if: ${{ inputs.upload_artifacts && matrix.cxx_compiler == 'msvc-2019' && matrix.build_system == 'CMake' && matrix.config == 'Release' && inputs.mrbind_c }}
Expand All @@ -324,8 +328,8 @@ jobs:
if: ${{ inputs.upload_artifacts && matrix.cxx_compiler == 'msvc-2019' && matrix.build_system == 'CMake' }}
uses: actions/upload-artifact@v7
with:
name: WindowsArchive_${{matrix.config}}
path: MREDist_${{matrix.config}}.zip
name: WindowsArchive_${{ matrix.upload_name || matrix.config }}
path: MREDist_${{ matrix.upload_name || matrix.config }}.zip
retention-days: 1

- name: Collect artifact stats
Expand All @@ -334,7 +338,7 @@ jobs:
uses: ./.github/actions/collect-artifact-stats
with:
artifact_path: ${{ github.workspace }}
artifact_glob: MREDist_${{matrix.config}}.zip
artifact_glob: MREDist_${{ matrix.upload_name || matrix.config }}.zip
stats_file_suffix: -${{ steps.collect-runner-stats.outputs.job_id }}

- name: Upload MeshLibC2 headers archive
Expand Down
16 changes: 16 additions & 0 deletions .github/workflows/matrix/windows-finalize-release-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"config": "Debug",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
Expand All @@ -17,12 +18,27 @@
"config": "Release",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
"CUDA-MAJOR": "11",
"CUDA-MINOR": "4",
"test_artifacts_path": "windows/windows-2019/Release"
},
{
"cxx_compiler": "msvc-2019",
"config": "Debug",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib-iterator-debug",
"upload_name": "Debug-IteratorDebug",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
"CUDA-MAJOR": "11",
"CUDA-MINOR": "4",
"test_artifacts_path": "windows/windows-2019/Debug-IteratorDebug"
}
]
}
22 changes: 22 additions & 0 deletions .github/workflows/matrix/windows-full-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"config": "Debug",
"build_system": "MSBuild",
"vcpkg-version": "__VCPKG_VERSION_VS22__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "12.0.1.52833",
Expand All @@ -17,6 +18,7 @@
"config": "Release",
"build_system": "MSBuild",
"vcpkg-version": "__VCPKG_VERSION_VS22__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "12.0.1.52833",
Expand All @@ -29,6 +31,7 @@
"config": "Debug",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS22__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "12.0.1.52833",
Expand All @@ -41,6 +44,7 @@
"config": "Release",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS22__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "12.0.1.52833",
Expand All @@ -53,6 +57,7 @@
"config": "Debug",
"build_system": "MSBuild",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
Expand All @@ -65,6 +70,7 @@
"config": "Release",
"build_system": "MSBuild",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
Expand All @@ -77,6 +83,7 @@
"config": "Debug",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
Expand All @@ -89,12 +96,27 @@
"config": "Release",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
"CUDA-MAJOR": "11",
"CUDA-MINOR": "4",
"test_artifacts_path": "windows/windows-2019/Release"
},
{
"cxx_compiler": "msvc-2019",
"config": "Debug",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib-iterator-debug",
"upload_name": "Debug-IteratorDebug",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
"CUDA-MAJOR": "11",
"CUDA-MINOR": "4",
"test_artifacts_path": "windows/windows-2019/Debug-IteratorDebug"
}
]
}
17 changes: 17 additions & 0 deletions .github/workflows/matrix/windows-minimal-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"config": "Release",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
Expand All @@ -17,6 +18,7 @@
"config": "Debug",
"build_system": "MSBuild",
"vcpkg-version": "__VCPKG_VERSION_VS22__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "12.0.1.52833",
Expand All @@ -29,12 +31,27 @@
"config": "Release",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS22__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "12.0.1.52833",
"CUDA-MAJOR": "12",
"CUDA-MINOR": "0",
"test_artifacts_path": "windows/windows-2022/Debug"
},
{
"cxx_compiler": "msvc-2019",
"config": "Debug",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib-iterator-debug",
"upload_name": "Debug-IteratorDebug",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
"CUDA-MAJOR": "11",
"CUDA-MINOR": "4",
"test_artifacts_path": "windows/windows-2019/Debug-IteratorDebug"
}
]
}
18 changes: 18 additions & 0 deletions .github/workflows/matrix/windows-standard-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"config": "Debug",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
Expand All @@ -17,6 +18,7 @@
"config": "Release",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
Expand All @@ -29,6 +31,7 @@
"config": "Release",
"build_system": "MSBuild",
"vcpkg-version": "__VCPKG_VERSION_VS22__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "12.0.1.52833",
Expand All @@ -41,12 +44,27 @@
"config": "Release",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS22__",
"vcpkg_triplet": "x64-windows-meshlib",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "12.0.1.52833",
"CUDA-MAJOR": "12",
"CUDA-MINOR": "0",
"test_artifacts_path": "windows/windows-2022/Release"
},
{
"cxx_compiler": "msvc-2019",
"config": "Debug",
"build_system": "CMake",
"vcpkg-version": "__VCPKG_VERSION_VS19__",
"vcpkg_triplet": "x64-windows-meshlib-iterator-debug",
"upload_name": "Debug-IteratorDebug",
"runner": ["windows-2025"],
"vc-path": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
"CUDA-VERSION": "11.4.2.47141",
"CUDA-MAJOR": "11",
"CUDA-MINOR": "4",
"test_artifacts_path": "windows/windows-2019/Debug-IteratorDebug"
}
]
}
15 changes: 12 additions & 3 deletions .github/workflows/prepare-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,10 +147,16 @@ jobs:
strategy:
fail-fast: false
matrix:
runner: [ windows-2025 ]
vs: [ vs2019, vs2022 ]
include:
- runner: windows-2025
- vs: vs2022
runner: windows-2025
vcpkg-version: ${{ inputs.vs22_vcpkg_version }}
vcpkg_triplet: x64-windows-meshlib
- vs: vs2019
runner: windows-2025
vcpkg-version: ${{ inputs.vs19_vcpkg_version }}
vcpkg_triplet: x64-windows-meshlib-iterator-debug
steps:
- name: Setup vcpkg
working-directory: C:\vcpkg
Expand All @@ -173,4 +179,7 @@ jobs:
aws-region: us-east-1

- name: Build and cache vcpkg
run: .\thirdparty\install.bat --write-s3
env:
VCPKG_DEFAULT_TRIPLET: ${{ matrix.vcpkg_triplet || 'x64-windows-meshlib' }}
run: |
.\thirdparty\install.bat --write-s3 --use-s3-asset-provider
Loading
Loading