[build] SwigBinding: Add support for the Python binding with SWIG on Windows#1661
Merged
fabiencastan merged 10 commits intodevelopfrom Mar 14, 2025
Merged
[build] SwigBinding: Add support for the Python binding with SWIG on Windows#1661fabiencastan merged 10 commits intodevelopfrom
fabiencastan merged 10 commits intodevelopfrom
Conversation
22f53dc to
eda2e86
Compare
516df8a to
e33458c
Compare
e33458c to
59f1a2c
Compare
59f1a2c to
dfde348
Compare
e512958 to
680b0d5
Compare
199889a to
ac097e9
Compare
4dca4e7 to
e54ea1c
Compare
Member
|
Python binding moved to "bin" folder as the behavior of python as changed in 3.8 regarding dll search and PATH, see: |
e54ea1c to
f82bdb0
Compare
1799199 to
158a910
Compare
Correctly link the needed Python3 libraries and handle cases where the size of `long` is not 64 bits for some type definitions (such as `size_t`).
This allows to simplify the CMakeLists.txt for all the modules that are binded and removes all the CMake warnings during configuration.
This prevents from having undefined values when using the default constructor.
158a910 to
69e9cde
Compare
fabiencastan
approved these changes
Mar 14, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR adds support to build the Python binding introduced in #1647 on Windows.
In particular, the required Python3 libraries are now correctly linked to the binded modules, and platform-induced differences on
size_tare handled. Similarly, elements that were not initialized with the same values when using the default constructor depending on the platform are now explicitly set (e.g.Vec2andVec3inObservationandLandmarkobjects).The Python unit tests have also been updated to be compatible on both Linux and Windows platforms.
The binding, which used to be generated at the root folder, is now installed directly in the
bindirectory. The CI is updated accordingly to ensure that the Python unit tests keep on running.Finally, the Windows CI now enables the generation of the binding and runs the Python unit tests.