[CMake] Secret precompiled header support?
Bill Hoffman
bill.hoffman at kitware.com
Wed May 16 21:47:54 EDT 2012
On 5/16/2012 3:49 PM, Robert Dailey wrote:
> > involved with CMake will help push Kitware to realize how serious
> people are
> > taking their products and maybe they'll make a move to "professionalize"
> > them.
So, I do take offense to this language.
Kitware does take CMake seriously and we are always "moving" to make it
better. However, since it is an open source project, we do not get any
direct revenue from CMake. We do of course receive revenue from
companies and agencies willing to hire us to implement features or
develop CMake build systems for them. If your company wants generic
pre-compiled header support, we would love for you to hire Kitware to
implement it. If you are working on an open source project and you
would like to contribute pch support that would be great as well.
I think the fact that you are able to do what you need to do, even with
a bit of extra work speaks to the "professionalism" and flexibility of
CMake. If you were unable to create a working build system that
supported PCH and the other features you found missing in CMake, that
would be a failure of CMake. If at the moment CMake does not have an
elegant way to achieve a particular goal, I don't think that makes it an
"unprofessional" software tool.
> I was using the word "serious" here as more of a verb, not an
> adjective. I'm saying that boost considering CMake is an indication
> of how people are taking CMake seriously. In other words, popular
> communities are depending on CMake (or gathering interest in) which
> makes CMake a tool taken more seriously. Understand now?
Not really... KDE (one of the world's largest open source projects)
adopted CMake in 2006, and they have been a great community to work
with. We have, when KDE goals have intersected with some of our paying
customers, been able to implement features for them. They have also
contributed a ton of code back to the CMake. So, I would love to see
Boost use CMake as a build system. I would expect the same type of
community interaction that we have had with KDE.
Over time, I am sure if PCH headers become a big enough issue for
someone they will be implemented in CMake with a cleaner interface.
CMake is far from a static project and has plenty of contributors inside
and outside of Kitware. Like any software project, there is always more
to do. I can say Kitware is committed to shepherding the CMake project
and will be developing new features and fixing bugs into the foreseeable
future. If Boost adopts CMake, I would welcome the contributions that
would come from that community, and I am sure both projects would be
better for it in the future.
So, I don't think it is fair to judge the CMake project on what it does
not do elegantly, but rather to judge it on what it does well. Which, I
think is a great deal of very useful cross platform build features
allowing very large open and closed source projects to build on a
variety of platforms.
I am not sure exactly what you were trying to achieve with your email,
but it was somewhat of an insult to at least one CMake developer
(myself). I and the rest of the CMake team take pride in what we have
achieved, and to say that we did not do a professional job, and don't
take every user seriously is an insult.
If you have suggestions or ideas on how PCHs or any other feature could
be implemented in CMake, please bring the discussion to the
cmake-developers list. Even if it is not implemented right away, if you
have the time to discuss what that implementation would look like, that
would be a welcomed contribution. However, lets try to steer this
conversation back to the technical issues and away from non-technical
issues.
I suppose this is enough said, and most likely too much said... :)
-Bill
More information about the CMake
mailing list