[CMake] faq update?
Juan Sanchez
Juan.Sanchez at amd.com
Thu Sep 13 17:48:06 EDT 2007
Hello Brandon,
At the end of the day. The question I answered was frequently asked on
the mailing list (according to google), and inaccurately answered in the
FAQ.
This issue is a concern for many people, and at least one other person
found it helpful.
While beyond my capabilities, I think a cmake macro which does the right
thing for all working platforms would be helpful. Barring, that, I
think I have presented a practical solution.
Regards,
Juan
Brandon Van Every wrote:
> On 9/13/07, KSpam <keesling_spam at cox.net> wrote:
>> What is the point of having a Wiki if not to document such things? Anyone can
>> figure out basic CMake usage from CMake docs. This is beyond the scope of
>> CMake docs; therefore, it belongs on the Wiki.
>
> It's not about what belongs in the wiki. It's about what belongs in
> the *FAQ*. The FAQ is an ambassador for CMake best practices. FAQs
> that sprawl are not very useful. We've got the entire wiki to put
> stuff on, it doesn't have to all go in the FAQ.
>
> "It might be a dealbreaker if we don't have this stuff in the FAQ" is
> also the wrong argument. CMake FAQs cannot solve fundamental problems
> of political will. If a committee is harping on this or that detail
> of a build system, without assigning responsibility for a pilot
> project, then they aren't serious. They are looking for reasons to
> avoid a decision, rather than getting on with producing results.
>
> I don't have a problem with these hacks / workarounds being in the FAQ
> if the limitations upon their use are well explained. Emphasis on
> *well* explained. New information for a specific corner case should
> not muddy the waters for the vast majority of CMake users out there.
> What most CMake users need to know is, they were wrong that they
> thought they could re-use their differently compiled SHARED and STATIC
> objects. The number of users who have shown up on this list, who
> really really did have identical flags and really really can reuse
> them, is pretty low. I'm one of 'em and my solution is better than
> most other people's, in that it's not compiler or platform specific.
> Unfortunately it does rely on CMake internals to get the job done.
>
>> For the record, my projects build on many different platforms. This is not a
>> gcc-only hack, as several other compilers provide similar functionality.
>
> But you will still have to spend time maintaining cases for different compilers.
>
>> The
>> bottom line now is that I can compile my *nix builds twice as fast as my VS8
>> Windows builds. This is quite helpful for *nix users,
>
> Whereas in my case I don't have to do anything special at all on any
> platform. No compiler case magic, nuthin'. I can reuse what is
> reusable on any platform. The drawback is the method for extracting
> object locations can break if Kitware decides to change it.
>
>> and it doesn't cost Windows users anything.
>
> Yes it does. The development time to do things 2 different ways for
> Windows vs. Unix. A build system like CMake is supposed to
> *alleviate* that, not spawn corner cases where you routinely do that.
>
>> I am thoroughly amazed at the combative nature I have witnessed on this
>> mailing list. Quite unprofessional IMHO.
>
> I'm of the mindset that if you're prefacing your solutions with "well
> this only works for Unix" then you don't really get what
> cross-platform build solutions are about. "We don't care, we know
> we're only going to be messing with Unix" is a valid answer for your
> personal needs, I'll admit. But it's not valid as a best practice to
> promote to CMake initiates. If a FAQ is going to contain that info,
> then it should make it clear how you're defeating the cross-platform
> capabilities of the build tool.
>
> YES I would like to see CMake handle this automagically. Then the
> angst and gnashing of teeth goes away. My solution is very easy to
> implement, and it's easy for the user to employ, but requires that
> Kitware freeze a public interface to the object file locations. I
> don't know if they're willing to do that.
>
>
> Cheers,
> Brandon Van Every
> _______________________________________________
> CMake mailing list
> CMake at cmake.org
> http://www.cmake.org/mailman/listinfo/cmake
>
>
--
Juan Sanchez
Juan.Sanchez at amd.com
800-538-8450 Ext. 54395
512-602-4395
More information about the CMake
mailing list