cool! On Jul 23, 2015 5:12 AM, "Alex Clemmer" <[email protected]> wrote:
> Hey folks. > > For some time there has been vestigial interest in a CMake[1]-based > alternative to the autotools-based build system that Mesos currently > depends on (cf. MESOS-898[2]). In the near future we expect to start > thinking about supporting little-known platforms such as "Windows", > (where a fully cross-platform build system is table stakes). > > To facilitate this, we implemented and recently committed an > experimental MVP CMake-based build system that allows us to build the > process library, as well as the tests for the process and stout > libraries. Currently we have only seriously tested that this works > Linux (specifically, we have asked CMake to compile the build spec to > a standard make/gcc combination, much like autotools), but we expect > this to anchor our thoughts on cross-platform support as we continue > to think about our real x-plat story. > > The community can track completed and outstanding the work on MESOS-898[2]. > > In the immediate term, we're hoping the community will help us work > out the kinks by voicing their questions, concerns, proposing changes > to our plan, or even (hopefully) attempting to build on their favorite > flavor of Linux, and reporting bugs or irregularities. > > Finally, to get the ball rolling, I'd like to end with some FAQs: > > Q: Will autotools be deprecated soon? > A: EMPHATIC NO. The CMake-based build system is an experimental work > that we expect to inform the Mesos community's thoughts as we start to > think about more robustly expanding support other platforms. If there > are serious benefits, then the community may choose to standardize on > this solution in the future, but that is a discussion to have far down > the road. > > Q: Can I use this now? > A: NO. You can use it to build the process library, the process > library tests, and the stout tests. You cannot yet use it to > completely build Mesos. That's intentional -- before we get too far > down the road, we are hoping to get some early feedback. > > Q: How does CMake help the goal of cross-platform support? > A: CMake seamlessly compiles to a variety of toolchains and build > systems. This includes both Linux favorites like gcc and make, but > also more exotic options like Eclipse, or even Visual Studio and MSVC. > Additionally, CMake has fairly robust function and macro systems, > which allows us to do things like support finding or building > third-party dependencies on very heterogeneous systems > > Thanks a lot, and we look forward to hearing your feedback! > > [1] http://www.cmake.org/ > [2] https://issues.apache.org/jira/browse/MESOS-898 > > > -- > Alex > > Theory is the first term in the Taylor series of practice. -- Thomas M > Cover (1992) >
