From 547adf0fd8e6c983f53d6db1c85d3a2ef72bcfd9 Mon Sep 17 00:00:00 2001 From: HellAholic Date: Mon, 24 Nov 2025 08:52:24 +0100 Subject: [PATCH 1/2] Update CPython version and SIP build configuration Bumps CPython dependency from 3.12.2 to 3.12.7 and modifies SIP build tool configuration to use the full path to sip-build from the CPython Scripts directory for improved reliability. --- conanfile.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index 005794a..a26490a 100644 --- a/conanfile.py +++ b/conanfile.py @@ -72,7 +72,7 @@ def export_sources(self): def requirements(self): for req in self.conan_data["requirements"]: self.requires(req) - self.requires("cpython/3.12.2") + self.requires("cpython/3.12.7") def validate(self): if self.settings.compiler.cppstd: @@ -120,7 +120,9 @@ def generate(self): # Generate the Source code from SIP sip = self.python_requires["sipbuildtool"].module.SipBuildTool(self) - sip.configure() + # Use the full path to sip-build from the CPython Scripts directory + sip_build_path = os.path.join(self.dependencies["cpython"].cpp_info.bindirs[0], "Scripts", "sip-build.exe") + sip.configure(sip_install_executable=sip_build_path) sip.build() def layout(self): From d928dd92a297b6115c495818cedd9a4c7fbb6cd1 Mon Sep 17 00:00:00 2001 From: HellAholic Date: Tue, 2 Dec 2025 11:36:08 +0100 Subject: [PATCH 2/2] Improve sip-build path detection for cross-platform use Replaces hardcoded Windows-specific sip-build path with auto-detection using the CPython dependency, making the SIP build process cross-platform compatible. --- conanfile.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/conanfile.py b/conanfile.py index a26490a..47e636d 100644 --- a/conanfile.py +++ b/conanfile.py @@ -120,9 +120,8 @@ def generate(self): # Generate the Source code from SIP sip = self.python_requires["sipbuildtool"].module.SipBuildTool(self) - # Use the full path to sip-build from the CPython Scripts directory - sip_build_path = os.path.join(self.dependencies["cpython"].cpp_info.bindirs[0], "Scripts", "sip-build.exe") - sip.configure(sip_install_executable=sip_build_path) + # Auto-detect sip-build from CPython dependency (cross-platform) + sip.configure(cpython_dependency=self.dependencies["cpython"]) sip.build() def layout(self):