Re: cctbx debian package [HEADS UP]
Hi Radi, hi Frédéric,
I'm going to push my changes tomorrow, if the nightly build test runs well.
[HEADS UP] I made important changes to the files setup.py and
sconsutils.py. If you have any changes pending on those two files, it
might be good to push them now, so that I can handle the merge.
I made the following additions:
* a build_py command that can add the __future__ import in the python
files that need it
* a clean command, that is automatically called by dh, and also cleans
the scons build dir
* a test command, that runs the tests just after build. This last part
is still a bit buggy (see below)
* an install_data command that knows what to do with libtbx_env (using
Radi's modify_libtbx_env function), so that we don't need a temporary
file any more
I also made the following architectural changes:
* I moved the scons build dir inside the distutils temporary dir (I was
unconfortable with the idea of setup.py automatically cleaning a
directory it doesn't own)
* I moved the computation of PREFIX and BUILDDIR to be done at run time
in sconsutils.py (cleaner, and needed for the previous point)
I also made code changes for platform independence and consistency, and
fixed an embarassing bug in find_packages_and_extensions which prevented
the resulting python modules from working (inclusion of
Yeah, lots of work at once, but I worked on it in complete disorder, so
I couldn't push smaller parts.
The testing strategy as of now, is to test the modified python files in
build/lib.linux-x86_64-2.6 and the just-built executables in the scons
Problems with the tests remain:
* some of the tests (written either in Python or in Shell), which are
designed to be run from the source directory, are not part of a python
package. So they don't get installed to "build/lib.linux-x86_64-2.6".
This leads to "No such file or directory" errors when the test routine
tries to run them.
* some of the tests are really very long to run (at least on my machine)
* I don't know yet how to assess the success or failure of the tests.
I'm afraid we might have to grep the output
* the "setup.py test" command is not standard, therefore it doesn't get
automatically called by dh
For these reasons, the tests are not run yet from debian/rules.