On Sun, Sep 20, 2009 at 3:02 PM, Hendrik Sattler <p...@hendrik-sattler.de>wrote:
> Am Sonntag 20 September 2009 17:16:19 schrieb Philip Lowman: > > Hello, > > > > I've merged (optional) Pthreads-win32 support into a FindThreads.cmake > > attached in the tracker and added some documentation on how to use it. > > Since FindThreads isn't my module I wanted to throw this up on the > mailing > > list for feedback. > > > > http://www.cmake.org/Bug/view.php?id=6399 > > > > > > Also, in regard to a previous mailing list thread about FindThreads... > > > > I'm not sure which platform the block "Check if compiler accepts > -pthread" > > is executed on. The documentation I attached to the code advises calling > > "target_link_libraries(target ${CMAKE_THREAD_LIBS_INIT})". After > grokking > > the code a bit further I'm now guessing this "-pthread" argument is > > technically accepted by the linker and not needed by the compiler, but it > > would be nice to know this for sure to ensure the documentation is > correct. > > gcc says: > -pthread > Adds support for multithreading with the pthreads library. This > option sets flags for both the preprocessor and linker. > > So it may work to only use it during linking but this may cause subtle > failure > on some platforms. > > When writing FindThreads.cmake, it would be better to really rewrite it and > use the common naming standards for cmake modules. > I'm hesitant to rewrite anything that works, especially if it works on platforms I don't have access too. :) Include & library variables probably could be added if it can be done in a safe way with the compile checks already in place. Not sure on -pthread, we've never added it to our gcc command lines before. Looking at the man page, it's only a compile flag under IA-64, RS-6000, PPC, and SPARC. Would recommending people add it to their compiler flags and only rely on the output of ${CMAKE_THREAD_LIBS_INIT} for linking be the right thing to do? -- Philip Lowman
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake