To facilitate shipping the python bindings for USD a //few// changes how we are dealing with libs had to be made.
- Turn USD into a shared lib, so the python modules USD generates can depend on it
- Turn Boost into a shared lib, since static python:boost will not work for USD
- Turn TBB into a shared lib
- Turn OpenSubDiv into a shared lib (Linux only, windows only supports static here)
- Update a whole bunch of unrelated deps (ie OSL) that some of their deps are shared libs now.
- Enable the USD python bindings
- Install the shared libs with blender
- Install the USD python bindings with blender
Current state:
Has some issues, but it's ready for the other platform devs to start shaking their sticks at this, given this is a big one, plan accordingly.
Windows:
- Initial pass for release libs are done, build, links, installs and the [single helloworld.py USD script](https://github.com/PixarAnimationStudios/USD/blob/release/extras/usd/tutorials/helloWorld/helloWorld.py) runs ok
- Todo: Debug libs
- Todo: Deal with both old and new style lib folders nicely
- Fix: IDiff not working due to it not finding a dll, breaking a whole bunch of tests
Linux:
- Initial pass is done done on my centos VM, it builds, links, installs and the [single helloworld.py USD script](https://github.com/PixarAnimationStudios/USD/blob/release/extras/usd/tutorials/helloWorld/helloWorld.py) runs OK, had hans test my build on his workstation and ran ok there.
- I helped it along the way quite a bit, i think i fixed all issues i ran into, but unsure till i try a completely clean build
- Have not tried the tests yet
- not super confident on the rpath shenanigans, borrowed from a diff xavier and sergey were working on for ONEAPI
Mac:
- Nothing is done, but the windows/linux changes are likely a good starting point.