[cctbxbb] Debian Package

Radostan Riedel raybuntu at googlemail.com
Tue Aug 7 11:19:48 PDT 2012


Dear CCTBX Maintainers,

Maybe some of you remember me last year asking on this mailing list[1].
I was asked by the Debian Science Team[2] to contribute my former work to get
cctbx finally packaged in Debian. 
The last month I was working with Baptiste Carvello and Picca Frédéric-Emmanuel
to get this done. Our packaging efforts + patches can be found in our git[3].
We organize our packaging efforts in a wiki[4].

But we don't want to overlook you and give some of our work back into the main
project.

We have a few patches to give back upstream that would really help us and
hopefully help to increase the cctbx user community.

To explain a little bit what we've done. First of all we tried respectfully not 
to change too much about your build system. We integrated a few options
in libtbx/env_config which shouldn't break anything.
The primary changes are:
* Option to check and use system libraries (in case any library is already
installed no need to compile the bundled shlib)
* Install targets for headers and shlibs and binaries: calling "scons install"
* Shlib versioning: This is achieved by utilizing libtool (the GNU standard)
* --install-prefix, --install-destdir and --libdir option
* support for LD_FLAGS in --use_environment_flags option
* Fallback to avoid using "LIBTBX_BUILD" env variable after install
* Full integration of your scons build system in distutils: setup.py and
  sconsutils.py. You can just call 'python setup.py install'
* Adaption of your test system to be called by distutils
* Autogenerate pkg-config files for shlibs

What we now need to know is if our changes are appreciated or if we need to spend 
more work on this. Keep in mind that our work is still work in progress!
One big concern is always the ABI/API stability.
But if we can count on the shlib versioning as mentioned here[5] it would help
us and other developers a lot. Libtool should be available on most systems,
works with common compilers and it provides the quasi standard for versioning 
shlibs.

We have other issues too but I guess I won't overkill this mail to much for now.
I hope we can discuss and work on this together.

Please tell us your honest opinion and critics.

kind regards
Radostan Riedel

P.S: This work is intended to work on other distributions too. We also hope that
Fedora, openSUSE, Gentoo etc. can benefit from it too.

[1] http://phenix-online.org/pipermail/cctbxbb/2011-June/000192.html
[2] http://wiki.debian.org/DebianScience
[3] http://anonscm.debian.org/gitweb/?p=debian-science/packages/cctbx.git;a=summary
[4] http://wiki.debian.org/DebianScience/cctbx
[5] http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html


More information about the cctbxbb mailing list