[Bug 255123] cmake compiler test fails with pthread
    bugzilla-noreply at freebsd.org 
    bugzilla-noreply at freebsd.org
       
    Wed May  5 20:44:55 BST 2021
    
    
  
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=255123
Loïc Bartoletti <lbartoletti at FreeBSD.org> changed:
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |lbartoletti at FreeBSD.org
--- Comment #5 from Loïc Bartoletti <lbartoletti at FreeBSD.org> ---
I think it's a false positive.
cmake use FindThreads module to determine how to build thread program.
First it searches pthread.h
https://gitlab.kitware.com/cmake/cmake/-/blob/d6da6784bfdb59456942d11d476593906945adbb/Modules/FindThreads.cmake#L144
> -- Looking for pthread.h
> -- Looking for pthread.h - found
We have pthread.h, so how to link it? With  -lpthread, -lpthread, -lthread or 
libc?
This part, and this is the test in the CMakeError.log file, is not for us.
CMake will
> Check if pthread functions are in normal C library.
> We list some pthread functions in PTHREAD_C_CXX_TEST_SOURCE test code.
> If the pthread functions already exist in C library, we could just use
> them instead of linking to the additional pthread library.
From
https://gitlab.kitware.com/cmake/cmake/-/blob/d6da6784bfdb59456942d11d476593906945adbb/Modules/FindThreads.cmake#L158-166 
> -- Performing Test CMAKE_HAVE_LIBC_PTHREAD
> -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
So, CMake will check with pthread,
https://gitlab.kitware.com/cmake/cmake/-/blob/d6da6784bfdb59456942d11d476593906945adbb/Modules/FindThreads.cmake#L171-177
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
It found pthread.h and libpthread, we can build the code.
-- 
You are receiving this mail because:
You are the assignee for the bug.
    
    
More information about the kde-freebsd
mailing list