On Thu, 26. Jul 21:33, Baptiste Carvello wrote:
> Radi can probably explain this better than me. Basically, at runtime,
> libtbx makes use of a serialized copy of the build environment. We need
> to modify this environment to correct the modules install paths.
OK I try to explain. What they are doing is setting options (compiler flags,
paths, dispatcher scripts etc.) into an object called "environment" in
libtbx.env_config. But they need to "pickle" that object to use that options.
They save it into BUILDDIR/libtbx_env. They find it with LIBTBX env variable.
If you check patch 0001 you'll see that I already changed the unpickle method to
look into a systems path. Now the tricky thing is that cctbx needs this object
at runtime. I haven't entirely investigated why and where but you can't import
any of the modules without this object.

So I wrote a method in sconsutils.py to alternate the object to change the
path's to our final paths. Then the object is going to be installed into
/usr/share/cctbx/python*.*/libtbx_env
This way we can also reuse their build system if we need to install any other
packages that depend on their build system.
libtbx is just a wrapper for scons. 

But I could also investigate more why this is needed at runtime and try to patch
it out.

regards
Radi


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Reply via email to