Skip to content

Commit 3ef47fa

Browse files
Mousiusylc
authored andcommitted
Ensure google-mock is installed and setup (apache#9107)
Google Mock is the mocking/helper framework that gets bundled with Google Test, it used to be separate but now isn't. I ran into the issue of Google Mock not being configured fully in the i386 build of apache#9106, which uses the `HasSubtr` matcher. This PR aims to fully configure Google Mock for use, which is interesting in itself... The headers are installed as part of Ubuntu 18.04's `googletest` package: ```shell $ dpkg -S /usr/include/gmock/ googletest:amd64: /usr/include/gmock ``` But not the lib sources, that requires another package named `google-mock`: ```shell $ dpkg -S /usr/src/gmock google-mock:amd64: /usr/src/gmock ``` But in Ubuntu 16.04 the includes and lib sources are in the `google-mock` package: ```shell $ dpkg -S /usr/include/gmock google-mock:i386: /usr/include/gmock $ dpkg -S /usr/src/gmock/ google-mock:i386: /usr/src/gmock ``` And excitingly, in Ubuntu 20.04 this will again be changed to `libgmock-dev` by the looks of things, just to keep us on our toes.
1 parent 9e116a7 commit 3ef47fa

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

docker/install/ubuntu_install_core.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,10 @@ set -o pipefail
2222

2323
# install libraries for building c++ core on ubuntu
2424
apt-get update && apt-get install -y --no-install-recommends \
25-
git make libgtest-dev cmake wget unzip libtinfo-dev libz-dev\
25+
git make google-mock libgtest-dev cmake wget unzip libtinfo-dev libz-dev \
2626
libcurl4-openssl-dev libssl-dev libopenblas-dev g++ sudo \
2727
apt-transport-https graphviz pkg-config curl
2828

2929

3030
cd /usr/src/gtest && cmake CMakeLists.txt && make && cp *.a /usr/lib
31+
cd /usr/src/gmock && cmake CMakeLists.txt && make && cp *.a /usr/lib

0 commit comments

Comments
 (0)