[ 
https://issues.apache.org/jira/browse/LOGCXX-551?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17516194#comment-17516194
 ] 

Robert Middleton commented on LOGCXX-551:
-----------------------------------------

Okay, so I've figured out what exactly is going on here.  The reason that this 
works is because if the variable is already set(for example on the command 
line), doing a try_compile will not overwrite the variable at all.

I have also done at least a partial revert of #109; it seems that boost thread 
depends on atomic and chrono, so adding those into the boost search should fix 
the error that PR was attempting to fix.

If you are able to have a look at the new PR, that would be helpful: 
https://github.com/apache/logging-log4cxx/pull/109

> CMake documented build option for Boost vs C++17 Implementation for 
> shared_mutex
> --------------------------------------------------------------------------------
>
>                 Key: LOGCXX-551
>                 URL: https://issues.apache.org/jira/browse/LOGCXX-551
>             Project: Log4cxx
>          Issue Type: Wish
>          Components: Build, Documentation
>    Affects Versions: 0.12.1
>            Reporter: Nicholas Clark
>            Assignee: Robert Middleton
>            Priority: Minor
>             Fix For: 0.13.0
>
>
> There was a recent approach to detecting if boost' implementation is needed, 
> but I feel that it is not succinct and cannot be when it comes to linker 
> issues. Referencing PR: 
> [https://github.com/apache/logging-log4cxx/pull/107.|https://github.com/apache/logging-log4cxx/pull/107]
> I have large applications that use shared_mutex, but require boost' 
> implementation as not all components linked are able to use C+\+17 
> implementation at this time. A problem occurs during linkage when log4cxx is 
> built using C+\+17's implementation but our other component is built using 
> boost' implementation.
>  
> *Workaround:*
> We currently can force cmake into using Boost' implementation by passing:
> {code:java}
> -DSTD_SHARED_MUTEX_FOUND=0{code}
> This isn't a documented 'feature'. I would like a documented approach to 
> this. If -DSTD_SHARED_MUTEX_FOUND=0 is what we should use for this feature 
> request, then it should be documented as such. I am putting forth this issue 
> as current usage is not documented as supported and thus I suspect it may be 
> lost in future commits.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to