On Tuesday, May 17, 2016 at 11:04:34 AM UTC-5, Klaim - Joël Lamotte wrote:
On 17 May 2016 at 17:57, Thijs (M.A.) van den Berg
javascript:> wrote: On 17 May 2016, at 17:35, Andrey Semashev
wrote:
On Tuesday, 17 May 2016 18:24:36 MSK Sam Kellett wrote:
On 17 May 2016 at 16:05, Andrey Semashev
javascript:> wrote: I should say that many opensource projects practice a separate directory for build-related stuff and it doesn't hurt anyone (quite the contrary, I'd say).
which ones?
From the ones I have locally: TBB, openh264, webrtc, libvpx, libresiprocate. Well, ok, some of them have a configure script or a single Makefile at the root directory, but most of the build stuff is
put in
a subdirectory.
The way I use CMake and see other use it is indeed to have a single CMakeFiles.txt config file in the root, and then do "out of source" building.
One example of project that provide CMake support among other things without having CMake scripts in it's root directory is the recent versions of protobuf: https://github.com/google/protobuf
And this is a perfect example of why we want to put the cmake in the top- level, as it is entirely confusing to know how to build protobuf using cmake.
I didn't see any problem so far with this setup. I don't understand why it's problematic to have cmake scripts outside the root dir. I think any build system that impose a particular layout is a problem.
Cmake doesn't impose a layout, and that's the whole point. I clone hana and then call `cmake hana` to build it using cmake. Imposing a layout such as hiding it in some unknown directory just causes confusion.