Details
- Reviewers
Brecht Van Lommel (brecht) - Group Reviewers
Platform: macOS - Maniphest Tasks
- T86579: macOS: improve bpy build system support
- Commits
- rBad31b13f91e4: macOS/bpy: add support for OpenMP
Diff Detail
Event Timeline
This will link, but bpy will not launch import because it needs OpenMP at an appropriate place.
Will follow up with another patch for that.
Ok, so from what I understand it never worked and everyone has been building the bpy module without OpenMP on macOS. And so this is effectively adding OpenMP support for bpy.
To be able to import bpy without installing it in the python installation, will add a LC_LOAD_DYLIB entry containing @rpath and multiple LC_RPATH entries guessing where the lib might be.
| source/creator/CMakeLists.txt | ||
|---|---|---|
| 1009–1010 | What do you mean by multiple installations, like multiple bpy installations in a single site-packages? How would Python known which one to use on import bpy? I do think it would be good to put everything in a bpy/ folder if possible, but not sure how multiple versions can work. | |
| source/creator/CMakeLists.txt | ||
|---|---|---|
| 1009–1010 | I didn't think this through. I want to keep Blender version in sync with the OpenMP version suitable for that version. Will replace the multiple installation comment.
Do you want to change ../Resources to ./bpy ? That will need changes in the part that looks for fonts and scripts, not just a rename here and in D10664: macOS/bpy: install to site-packages I guess. | |
| source/creator/CMakeLists.txt | ||
|---|---|---|
| 1009–1010 | It doesn't have to be part of this patch, since ideally we do this for all platforms and it may not be so simple. But I imagine you'd modify appdir.c to disable the Resources exception when building as a Python module, and then have a layout like this: site-packages/bpy site-packages/bpy/__init__.so site-packages/bpy/2.92 site-packages/bpy/lib | |