Skip to content

Commit acf457e

Browse files
authored
Merge pull request #1715 from talregev/TalR/support_multi_vcvars_versions
Support msvc 2022 along 2019
2 parents eeb092e + 5a81dc0 commit acf457e

File tree

4 files changed

+31
-14
lines changed

4 files changed

+31
-14
lines changed

.github/workflows/build-python.yml

+9-3
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
ubuntu-20.04-gcc-9-tbb,
3333
ubuntu-20.04-clang-9,
3434
macOS-11-xcode-13.4.1,
35-
windows-2019-msbuild,
35+
windows-2022-msbuild,
3636
]
3737

3838
build_type: [Release]
@@ -59,8 +59,8 @@ jobs:
5959
compiler: xcode
6060
version: "13.4.1"
6161

62-
- name: windows-2019-msbuild
63-
os: windows-2019
62+
- name: windows-2022-msbuild
63+
os: windows-2022
6464
platform: 64
6565

6666
steps:
@@ -109,6 +109,12 @@ jobs:
109109
uses: ilammy/msvc-dev-cmd@v1
110110
with:
111111
arch: x${{matrix.platform}}
112+
toolset: 14.38
113+
114+
- name: cl version (Windows)
115+
if: runner.os == 'Windows'
116+
shell: cmd
117+
run: cl
112118

113119
- name: Setup python (Windows)
114120
uses: actions/setup-python@v4

.github/workflows/build-windows.yml

+16-11
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
# Github Actions requires a single row to be added to the build matrix.
2828
# See https://help.github.com/en/articles/workflow-syntax-for-github-actions.
2929
name: [
30-
windows-2019-cl,
30+
windows-2022-cl,
3131
]
3232

3333
build_type: [
@@ -37,12 +37,25 @@ jobs:
3737

3838
build_unstable: [ON]
3939
include:
40-
- name: windows-2019-cl
41-
os: windows-2019
40+
- name: windows-2022-cl
41+
os: windows-2022
4242
compiler: cl
4343
platform: 64
4444

4545
steps:
46+
- name: Checkout
47+
uses: actions/checkout@v3
48+
49+
- name: Setup msbuild
50+
uses: ilammy/msvc-dev-cmd@v1
51+
with:
52+
arch: x${{ matrix.platform }}
53+
toolset: 14.38
54+
55+
- name: cl version
56+
shell: cmd
57+
run: cl
58+
4659
- name: Install Dependencies
4760
shell: powershell
4861
run: |
@@ -91,14 +104,6 @@ jobs:
91104
# Set the BOOST_ROOT variable
92105
echo "BOOST_ROOT=$BOOST_PATH" >> $env:GITHUB_ENV
93106
94-
- name: Checkout
95-
uses: actions/checkout@v3
96-
97-
- name: Setup msbuild
98-
uses: ilammy/msvc-dev-cmd@v1
99-
with:
100-
arch: x${{ matrix.platform }}
101-
102107
- name: Configuration
103108
shell: bash
104109
run: |

gtsam/geometry/CameraSet.h

+4
Original file line numberDiff line numberDiff line change
@@ -327,12 +327,16 @@ class CameraSet : public std::vector<CAMERA, Eigen::aligned_allocator<CAMERA>> {
327327
* g = F' * (b - E * P * E' * b)
328328
* Fixed size version
329329
*/
330+
#ifdef _WIN32
331+
#if _MSC_VER < 1937
330332
template <int N> // N = 2 or 3
331333
static SymmetricBlockMatrix SchurComplement(
332334
const FBlocks& Fs, const Matrix& E, const Eigen::Matrix<double, N, N>& P,
333335
const Vector& b) {
334336
return SchurComplement<N, D>(Fs, E, P, b);
335337
}
338+
#endif
339+
#endif
336340

337341
/// Computes Point Covariance P, with lambda parameter
338342
template <int N> // N = 2 or 3 (point dimension)

gtsam/nonlinear/Values-inl.h

+2
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ namespace gtsam {
200200
// Added this section for compile gtsam python on windows.
201201
// msvc don't deduct the template arguments correctly, due possible bug in msvc.
202202
#ifdef _WIN32
203+
#if _MSC_VER < 1937
203204
// Handle dynamic matrices
204205
template <int M, int N>
205206
struct handle_matrix<Eigen::Matrix<double, M, N, 0, M, N>, true> {
@@ -250,6 +251,7 @@ namespace gtsam {
250251
(M == Eigen::Dynamic || N == Eigen::Dynamic)>()(j, pointer);
251252
}
252253
};
254+
#endif // #if _MSC_VER < 1937
253255
#endif // #ifdef _WIN32
254256

255257
} // internal

0 commit comments

Comments
 (0)