Ticket #2860 (closed: fixed)

Opened 9 years ago

Last modified 5 years ago

Remove local gmock libraries for Linux

Reported by: Stuart Campbell Owned by: Stuart Campbell
Priority: minor Milestone: Iteration 30
Component: Mantid Keywords:
Cc: Blocked By:
Blocking: Tester: Russell Taylor

Description

We should be able to use the standard system gmock/gtest libraries for Linux rather than having a copy in the repo.

Change History

comment:1 Changed 9 years ago by Stuart Campbell

  • Status changed from new to accepted

comment:2 Changed 9 years ago by Stuart Campbell

The problem is due to the fact that for the versions we compile from the google mock kit contain an embedded version of google test, which is included in the compiled image we have in the repository. For the versions of google mock included in linux repos, this embedded version of gtest is removed (as per most linux distro packaging guidelines) and so therefore we are missing some symbols from the gmock library.

comment:3 Changed 9 years ago by Stuart Campbell

(In [11098]) Link against Google Test Libraries in addition to the Google Mock ones. refs #2860

comment:4 Changed 9 years ago by Stuart Campbell

This should be fixed now, but there are some cleanup tasks that can be done.

  • Remove actual libraries
  • Remove FindGTest.cmake

But I'll postpone these until the next iteration.

comment:5 Changed 9 years ago by Peter Peterson

(In [11430]) Refs #2860

comment:6 Changed 9 years ago by Michael Reuter

(In [11432]) Linking gtest libs for MD stuff. This refs #2860.

comment:7 Changed 9 years ago by Michael Reuter

(In [11579]) Fixing another gtest linker issue. This refs #2860.

comment:8 Changed 9 years ago by Stuart Campbell

  • Priority changed from major to minor

comment:9 Changed 9 years ago by Stuart Campbell

  • Milestone changed from Iteration 29 to Iteration 30

comment:10 Changed 9 years ago by Stuart Campbell

In [13276]:

Win64 binaries for GTest 1.6. refs #2860

comment:11 Changed 9 years ago by Stuart Campbell

Need to find a win32 machine to build gtest libs on

comment:12 Changed 9 years ago by Stuart Campbell

In [13285]:

Moving gtest headers into Third_Party. refs #2860

comment:13 Changed 9 years ago by Stuart Campbell

In [13286]:

Moving google-mock headers into Third_Party. refs #2860

comment:14 Changed 9 years ago by Stuart Campbell

In [13335]:

Added source for google test. refs #2860

comment:15 Changed 9 years ago by Martyn Gigg

In [13342]:

Win32 binaries for gtest. Refs #2860

comment:16 Changed 9 years ago by Stuart Campbell

In [13379]:

Copying headers back to keep Russell happy! :-) refs #2860

comment:17 Changed 9 years ago by Stuart Campbell

In [13382]:

Copying headers back to keep Russell happy! :-) refs #2860

comment:18 Changed 9 years ago by Russell Taylor

:)

comment:19 Changed 9 years ago by Stuart Campbell

In [13412]:

GTest library for Snow Leopard. refs #2860

comment:20 Changed 9 years ago by Stuart Campbell

In [13417]:

Added debug gtest libs. refs #2860

comment:21 Changed 9 years ago by Stuart Campbell

In [13498]:

Update CMake files to look for installed packages on linux. refs #2860

comment:22 Changed 9 years ago by Stuart Campbell

In [13499]:

Removed uneeded gtest binaries. refs #2860

comment:23 Changed 9 years ago by Nick Draper

  • Milestone changed from Iteration 30 to Iteration 31

Bulk move of tickets to iteration 31 at the iteration 30 code freeze

comment:24 Changed 9 years ago by Stuart Campbell

  • Status changed from accepted to verify
  • Resolution set to fixed
  • Milestone changed from Iteration 31 to Iteration 30

comment:25 Changed 9 years ago by Russell Taylor

  • Status changed from verify to verifying
  • Tester set to Russell Taylor

comment:26 Changed 9 years ago by Russell Taylor

  • Status changed from verifying to reopened
  • Resolution fixed deleted

The headers are still in TestingTools/include - should/could these be moved into Third_Party again? (though probably not until after the release).

The other thing we should do is make gmock mandatory (or at least harder to not have and not realise it, as we have for tcmalloc in #3717) and clean up the cmake routine that still gives a message about copying the libraries.

Last edited 9 years ago by Russell Taylor (previous) (diff)

comment:27 Changed 9 years ago by Russell Taylor

  • Milestone changed from Iteration 30 to Iteration 31

comment:28 Changed 9 years ago by Stuart Campbell

  • Status changed from reopened to accepted
  • Milestone changed from Iteration 31 to Iteration 30

Created a couple of follow on tickets:

#3750 - cleanup TestingTools/includes

#3752 - Consideration of making google mock mandatory ?

comment:29 Changed 9 years ago by Stuart Campbell

  • Status changed from accepted to verify
  • Resolution set to fixed

comment:30 Changed 9 years ago by Russell Taylor

  • Status changed from verify to verifying

comment:31 Changed 9 years ago by Russell Taylor

  • Status changed from verifying to closed

Pass!

comment:32 Changed 9 years ago by Russell Taylor

All linux builds should be using standard libraries, but copies still exist in TestingTools/lib - added that clean-up task to #3750.

comment:33 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 3707

Note: See TracTickets for help on using tickets.