> > Hi Robert, > > > > The "_np" suffix means a GNU Non-Portable extension. > > > > So pthread_setaffinity_np() isn't present on BSD UNIX. > > > > CHECK_FUNCTION_EXISTS(pthread_setaffinity_np HAVE_PTHREAD_SETAFFINITY_NP) > >What I don't understand is why CHECK_FUNCTION_EXISTS isn't doing the >right thing, as this is specifically what this line the CMakeLists.txt >is supposed to be doing. > >Is there any chance you have multiple pthread headers on your system?
Hi Robert, Yes, that's the problem. >Something else that is confusing CMake? Perhaps a Cmake bug? Which >version of CMake are you using? What is happening is that BSD splits POSIX pthreads into standard and non-standard headers: -r--r--r-- 1 root wheel 10775 Nov 21 08:55 /usr/include/pthread.h -r--r--r-- 1 root wheel 3258 Nov 21 08:55 /usr/include/pthread_np.h cmake finds that function but the _np header isn't included by C++. Waitaminute...*_np() functions are in the BSD thread library but are missing in the BSD man pages (undocumented). Nevertheless, I'd only consider them as available if Linux. -- Jim Brooks _______________________________________________ osg-submissions mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
