From c28f4533aec4fd5a54610d36b53b0cb97cc0120c Mon Sep 17 00:00:00 2001 From: Sergey Kvachonok Date: Tue, 21 Sep 2021 16:22:33 +0300 Subject: [PATCH] build-config: Always pass `abi3` flag to `default_lib_name_windows()` Hardcoding `false` here leads to an incorrect abi3 DLL name when cross-compiling to Windows. --- pyo3-build-config/src/impl_.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pyo3-build-config/src/impl_.rs b/pyo3-build-config/src/impl_.rs index 1bc0fb3d97b..a2689ae90a5 100644 --- a/pyo3-build-config/src/impl_.rs +++ b/pyo3-build-config/src/impl_.rs @@ -982,12 +982,14 @@ fn windows_hardcoded_cross_compile( let version = cross_compile_config.version.or_else(get_abi3_version) .ok_or("PYO3_CROSS_PYTHON_VERSION or an abi3-py3* feature must be specified when cross-compiling for Windows.")?; + let abi3 = is_abi3(); + Ok(InterpreterConfig { implementation: PythonImplementation::CPython, version, shared: true, - abi3: is_abi3(), - lib_name: Some(default_lib_name_windows(version, false, false)), + abi3, + lib_name: Some(default_lib_name_windows(version, abi3, false)), lib_dir: cross_compile_config.lib_dir.to_str().map(String::from), executable: None, pointer_width: None,