> On May 29, 2015, 3:39 p.m., Andrew Stitcher wrote: > > I unerstand the rationale for not depending on cmake for building proton, > > but I think it is a *very* bad idea. As Ken has noted you will then lose > > whatever cross platform/compiler abilities the cmake build has. But more > > importantly we will have a large subset of users that are running a version > > of the library that is not tested and is not the same as the developers are > > using and testing.
I agree it's not ideal. I'm not a fan myself of these. However, I do believe the benefits of this work are bigger than the drawbacks. As a first step forward, I've tried to be cautions with this change. That is, it'll only be possible to do this on linux and I could even limit it to 64 bits platforms (although I think it should be fairly simple to add support for 32 too). Support for future platforms and OSs can be added later on. It'll always be recommended to use the distro package and the setup.py doesn't build/install anything if there's already a version of proton-c installed. - Flavio ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/34809/#review85736 ----------------------------------------------------------- On May 29, 2015, 2:26 p.m., Kenneth Giusti wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/34809/ > ----------------------------------------------------------- > > (Updated May 29, 2015, 2:26 p.m.) > > > Review request for qpid, Andrew Stitcher, Dominic Evans, Gordon Sim, and > Rafael Schloming. > > > Bugs: proton-895 > https://issues.apache.org/jira/browse/proton-895 > > > Repository: qpid-proton-git > > > Description > ------- > > This change modifies the way setup.py builds and installs the Proton C > library should it not be present on the system. With this change, setup.py > builds the C library directly, rather than using cmake. The advantages to > this: > > 1) The resultant library is installed in the site-packages directory along > with proton. This allows non-root users properly install the C librarys when > doing a virtualenv or --user install. > 2) pip can be used to install/remove the entire proton stack > 3) only builds the C library - not the whole proton build > 4) no longer requires cmake, which is not part of a typical python environment > > > Diffs > ----- > > proton-c/bindings/python/setup.py 09fa76a0dd8d0f33a92f336c8d441f17748569aa > proton-c/bindings/python/setuputils/misc.py > 8978371e8ccf5e8ef5b3aa6ac99592ad8289d336 > > Diff: https://reviews.apache.org/r/34809/diff/ > > > Testing > ------- > > All python unit tests pass when run against the bindings and C library > installed with this patch. > > > Thanks, > > Kenneth Giusti > >
