Skip to content

Commit 0c78c47

Browse files
committed
ccache: support MSVC by using /Z7 via MSVC_DEBUG_INFORMATION_FORMAT
1 parent ad6332f commit 0c78c47

File tree

3 files changed

+23
-4
lines changed

3 files changed

+23
-4
lines changed

.evergreen/scripts/compile-libmongocrypt.sh

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,13 @@ compile_libmongocrypt() {
2020
"-DBUILD_VERSION=1.12.0"
2121
)
2222

23+
if [[ "${OSTYPE:?}" == cygwin ]]; then
24+
crypt_cmake_flags+=(
25+
"-DCMAKE_POLICY_DEFAULT_CMP0141=NEW"
26+
"-DCMAKE_MSVC_DEBUG_INFORMATION_FORMAT=Embedded"
27+
)
28+
fi
29+
2330
env \
2431
DEBUG="0" \
2532
CMAKE_EXE="${cmake_binary}" \

.evergreen/scripts/compile-std.sh

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -131,12 +131,16 @@ echo "Installing libmongocrypt..."
131131
}
132132
echo "Installing libmongocrypt... done."
133133

134-
echo "CFLAGS: ${CFLAGS}"
135-
echo "configure_flags: ${configure_flags[*]}"
136-
137134
# Use ccache if able.
138135
. "${script_dir:?}/find-ccache.sh"
139136
find_ccache_and_export_vars "$(pwd)" || true
137+
if [[ "${OSTYPE:?}" == cygwin ]]; then
138+
configure_flags_append "-DCMAKE_POLICY_DEFAULT_CMP0141=NEW"
139+
configure_flags_append "-DCMAKE_MSVC_DEBUG_INFORMATION_FORMAT=$<$<CONFIG:Debug,RelWithDebInfo>:Embedded>"
140+
fi
141+
142+
echo "CFLAGS: ${CFLAGS}"
143+
echo "configure_flags: ${configure_flags[*]}"
140144

141145
"${cmake_binary}" "${configure_flags[@]}" .
142146
"${cmake_binary}" --build .

.evergreen/scripts/compile-windows.sh

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,14 @@ if [ "${COMPILE_LIBMONGOCRYPT}" = "ON" ]; then
134134
configure_flags_append "-DENABLE_CLIENT_SIDE_ENCRYPTION=ON"
135135
fi
136136

137+
# Use ccache if able.
138+
. "${script_dir:?}/find-ccache.sh"
139+
find_ccache_and_export_vars "$(pwd)" || true
140+
if [[ "${OSTYPE:?}" == cygwin ]]; then
141+
configure_flags_append "-DCMAKE_POLICY_DEFAULT_CMP0141=NEW"
142+
configure_flags_append "-DCMAKE_MSVC_DEBUG_INFORMATION_FORMAT=$<$<CONFIG:Debug,RelWithDebInfo>:Embedded>"
143+
fi
144+
137145
"${cmake_binary:?}" -S . -B "${build_dir:?}" -G "$CC" "${configure_flags[@]}" "${extra_configure_flags[@]}"
138146
"${cmake_binary:?}" --build "${build_dir:?}" --config "${build_config:?}"
139147
"${cmake_binary:?}" --install "${build_dir:?}" --config "${build_config:?}"
@@ -147,4 +155,4 @@ fi
147155
if [[ "$EXTRA_CONFIGURE_FLAGS" != *"ENABLE_MONGOC=OFF"* ]]; then
148156
# Check public headers for extra warnings.
149157
"${cmake_binary:?}" --build "${build_dir:?}" --config "${build_config:?}" --target public-header-warnings
150-
fi
158+
fi

0 commit comments

Comments
 (0)