-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://codereview.secondlife.com/r/147/
-----------------------------------------------------------

Review request for Viewer.


Summary
-------

>From Aleric's patch:

Setting CMAKE_EXE_LINKER_FLAGS to "" because the tests "need" that is pretty 
hard measure.  Not only is it not necessary to do so, it also changes how the 
viewer is linked depending on a whether or not the tests are compiled and that 
is not good.

The reason that this was needed is that libgmock is underlinked (see 
http://wiki.mandriva.com/en/Underlinking), which is not compatible with 
-Wl,--as-needed that is being used on linux. libgmock.so.0 needs a symbol that 
is defined in libgtest.so.o, but -lgtest was not passed to the linker when 
creating libgmock.so.0:

Underlinked (no libgtest.so.o):
$ objdump -p /usr/lib/libgmock.so.0 | grep NEEDED
  NEEDED               libstdc++.so.6
  NEEDED               libm.so.6
  NEEDED               libc.so.6
  NEEDED               libgcc_s.so.1

The solution is to wrap between -Wl,--no-as-needed -lgtest -Wl,--as-needed 
causing it to be added again. This is only needed on linux, since that the only 
platform that we use -Wl,--as-needed on. Moreover, we can just set 
GOOGLEMOCK_LIBRARIES to "gmock -Wl,--no-as-needed gtest -Wl,--as-needed" since 
that is only passed to TARGET_LINK_LIBRARIES which only adds -l in front of 
'things' that don't start with '-', to allow you do pass special flags like 
this.


This addresses bug STORM-981.
    http://jira.secondlife.com/browse/STORM-981


Diffs
-----

  doc/contributions.txt 27dae7b01a81 
  indra/cmake/GoogleMock.cmake 27dae7b01a81 
  indra/cmake/LLAddBuildTest.cmake 27dae7b01a81 

Diff: http://codereview.secondlife.com/r/147/diff


Testing
-------


Thanks,

Merov

_______________________________________________
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges

Reply via email to