gnucash master: Multiple changes pushed
John Ralls
jralls at code.gnucash.org
Thu Sep 5 17:42:06 EDT 2019
Updated via https://github.com/Gnucash/gnucash/commit/e16308b1 (commit)
via https://github.com/Gnucash/gnucash/commit/c53f07c1 (commit)
via https://github.com/Gnucash/gnucash/commit/97a81980 (commit)
via https://github.com/Gnucash/gnucash/commit/3c93f181 (commit)
via https://github.com/Gnucash/gnucash/commit/d637c53f (commit)
via https://github.com/Gnucash/gnucash/commit/53fe478c (commit)
via https://github.com/Gnucash/gnucash/commit/84d9f1c9 (commit)
via https://github.com/Gnucash/gnucash/commit/b303fc6d (commit)
via https://github.com/Gnucash/gnucash/commit/7e71a972 (commit)
from https://github.com/Gnucash/gnucash/commit/44adc054 (commit)
commit e16308b10f56f9466992fb79b61263a53b4329c3
Merge: 44adc0543 c53f07c17
Author: John Ralls <jralls at ceridwen.us>
Date: Thu Sep 5 14:16:03 2019 -0700
Merge Christian Gruber's 'rework_gtest_integration' into master.
commit c53f07c170afd5a8b134d28fa3021922ff660da0
Author: Christian Gruber <christian.gruber at posteo.de>
Date: Thu Sep 5 21:35:57 2019 +0200
fixup! Remove support for GoogleTest/GoogleMock <= v1.8.0
diff --git a/util/ci/ubuntu-16.04-testscript b/util/ci/ubuntu-16.04-testscript
index a187801b8..294bb4aec 100644
--- a/util/ci/ubuntu-16.04-testscript
+++ b/util/ci/ubuntu-16.04-testscript
@@ -3,7 +3,7 @@
# -e above so that if any command has an exit code != 0, this script will
# exit immediately.
-export GTEST_ROOT=/gtest/googletest GMOCK_ROOT=/gtest/googlemock
+export GTEST_ROOT=/gtest
export PLATFORM_CMAKE_OPTS="-DALLOW_OLD_GETTEXT=ON"
echo PLATFORM_CMAKE_OPTS= "$PLATFORM_CMAKE_OPTS"
commit 97a81980e574eb6a9d474e53fdd5265e060af22e
Author: Christian Gruber <christian.gruber at posteo.de>
Date: Wed Sep 4 22:06:32 2019 +0200
Remove support for GoogleTest/GoogleMock <= v1.8.0
This simplifies function gnc_gtest_configure(), since GoogleTest and
GoogleMock are combined in one source directory.
Additionally variable GMOCK_ROOT is not necessary anymore and is
removed.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fa8edfc1a..792e9fa69 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -880,7 +880,6 @@ add_custom_target(distcheck DEPENDS dist
-D CMAKE_C_FLAGS=${CMAKE_C_FLAGS}
-D CMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
-D GTEST_ROOT=${GTEST_ROOT}
- -D GMOCK_ROOT=${GMOCK_ROOT}
-P ${CMAKE_SOURCE_DIR}/common/cmake_modules/MakeDistCheck.cmake
)
diff --git a/common/cmake_modules/GncAddTest.cmake b/common/cmake_modules/GncAddTest.cmake
index 556d008a6..5a0ca004f 100644
--- a/common/cmake_modules/GncAddTest.cmake
+++ b/common/cmake_modules/GncAddTest.cmake
@@ -126,16 +126,10 @@ function(gnc_gtest_configure)
if (NOT DEFINED ${GTEST_ROOT})
set(GTEST_ROOT $ENV{GTEST_ROOT})
endif()
- if (NOT DEFINED ${GMOCK_ROOT})
- set(GMOCK_ROOT $ENV{GMOCK_ROOT})
- endif()
unset(GTEST_SRC_DIR CACHE)
if (GTEST_ROOT)
find_path(GTEST_SRC_DIR src/gtest-all.cc NO_CMAKE_SYSTEM_PATH
- PATHS ${GTEST_ROOT} PATH_SUFFIXES googletest)
- elseif (GMOCK_ROOT)
- find_path(GTEST_SRC_DIR src/gtest-all.cc NO_CMAKE_SYSTEM_PATH
- PATHS ${GMOCK_ROOT}/../googletest ${GMOCK_ROOT}/gtest)
+ PATHS ${GTEST_ROOT}/googletest)
endif()
if (GTEST_SRC_DIR)
if (EXISTS ${GTEST_SRC_DIR}/include/gtest/gtest.h)
@@ -144,11 +138,11 @@ function(gnc_gtest_configure)
message(FATAL_ERROR "GTEST sources found, but it doesn't have 'gtest/gtest.h'")
endif()
else()
- if (GTEST_ROOT OR GMOCK_ROOT)
- message(FATAL_ERROR "GTEST sources not found in GTEST_ROOT or GMOCK_ROOT")
+ if (GTEST_ROOT)
+ message(FATAL_ERROR "GTEST sources not found in GTEST_ROOT")
endif()
find_path(GTEST_SRC_DIR src/gtest-all.cc
- PATHS /usr/src PATH_SUFFIXES googletest/googletest gtest)
+ PATHS /usr/src/googletest/googletest)
if (GTEST_SRC_DIR)
find_path(GTEST_INCLUDE_DIR gtest/gtest.h NO_CMAKE_SYSTEM_PATH
PATHS ${GTEST_SRC_DIR}/include)
@@ -164,7 +158,7 @@ function(gnc_gtest_configure)
find_library(GTEST_SHARED_LIB gtest)
find_library(GTEST_MAIN_LIB gtest_main)
if (NOT (GTEST_SHARED_LIB AND GTEST_MAIN_LIB AND GTEST_INCLUDE_DIR))
- message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT or GMOCK_ROOT")
+ message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT")
endif()
endif()
set(THREADS_PREFER_PTHREAD_FLAG ON)
@@ -173,12 +167,9 @@ function(gnc_gtest_configure)
message(STATUS "Checking for GMOCK")
unset(GMOCK_SRC_DIR CACHE)
- if (GMOCK_ROOT)
- find_path(GMOCK_SRC_DIR src/gmock-all.cc NO_CMAKE_SYSTEM_PATH
- PATHS ${GMOCK_ROOT})
- elseif (GTEST_ROOT)
+ if (GTEST_ROOT)
find_path(GMOCK_SRC_DIR src/gmock-all.cc NO_CMAKE_SYSTEM_PATH
- PATHS ${GTEST_ROOT}/googlemock ${GTEST_ROOT}/../googlemock)
+ PATHS ${GTEST_ROOT}/googlemock)
endif()
if (GMOCK_SRC_DIR)
if (EXISTS ${GMOCK_SRC_DIR}/include/gmock/gmock.h)
@@ -187,18 +178,11 @@ function(gnc_gtest_configure)
message(FATAL_ERROR "GMOCK sources found, but it doesn't have 'gmock/gmock.h'")
endif()
else()
- if (GMOCK_ROOT OR GTEST_ROOT)
- message(FATAL_ERROR "GMOCK sources not found in GMOCK_ROOT or GTEST_ROOT")
+ if (GTEST_ROOT)
+ message(FATAL_ERROR "GMOCK sources not found in GTEST_ROOT")
endif()
find_path(GMOCK_SRC_DIR src/gmock-all.cc
- PATHS /usr/src PATH_SUFFIXES googletest/googlemock gmock)
- if (NOT GMOCK_SRC_DIR)
- find_path(GMOCK_SRC_DIR gmock-all.cc
- PATHS /usr/src PATH_SUFFIXES gmock)
- if (GMOCK_SRC_DIR)
- set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}")
- endif()
- endif()
+ PATHS /usr/src/googletest/googlemock)
if (GMOCK_SRC_DIR)
find_path(GMOCK_INCLUDE_DIR gmock/gmock.h NO_CMAKE_SYSTEM_PATH
PATHS ${GMOCK_SRC_DIR}/include)
@@ -206,10 +190,7 @@ function(gnc_gtest_configure)
endif()
find_path(GMOCK_INCLUDE_DIR gmock/gmock.h)
if (GMOCK_SRC_DIR)
- if (NOT GMOCK_MAIN_SRC_DIR)
- set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}/src")
- endif()
- set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
+ set(GMOCK_SRC "${GMOCK_SRC_DIR}/src/gmock-all.cc" PARENT_SCOPE)
set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
else()
find_library(GMOCK_SHARED_LIB gmock)
@@ -217,7 +198,7 @@ function(gnc_gtest_configure)
if (GMOCK_MAIN_LIB AND GMOCK_SHARED_LIB AND GMOCK_INCLUDE_DIR)
set(GMOCK_LIB "${GMOCK_SHARED_LIB};${GMOCK_MAIN_LIB}" PARENT_SCOPE)
else()
- message(FATAL_ERROR "GMOCK not found. Please install it or set GMOCK_ROOT")
+ message(FATAL_ERROR "GMOCK not found. Please install it or set GTEST_ROOT")
endif()
endif()
set(GMOCK_FOUND YES PARENT_SCOPE)
diff --git a/common/cmake_modules/MakeDistCheck.cmake b/common/cmake_modules/MakeDistCheck.cmake
index 6fce2c04e..fea29def9 100644
--- a/common/cmake_modules/MakeDistCheck.cmake
+++ b/common/cmake_modules/MakeDistCheck.cmake
@@ -46,7 +46,6 @@ function(run_dist_check PACKAGE_PREFIX EXT)
-D CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
-D CMAKE_INSTALL_PREFIX=../${INSTALL_DIR}
-D GTEST_ROOT=${GTEST_ROOT}
- -D GMOCK_ROOT=${GMOCK_ROOT}
../${PACKAGE_PREFIX}
WORKING_DIRECTORY ${BUILD_DIR}
ERROR_MSG "CMake configure command failed."
commit 3c93f18115b8da4f38f7211887021064dc19e6f8
Author: Christian Gruber <christian.gruber at posteo.de>
Date: Fri Aug 30 23:22:22 2019 +0200
Additionally search for system headers, if sources are found in /usr/src
diff --git a/common/cmake_modules/GncAddTest.cmake b/common/cmake_modules/GncAddTest.cmake
index 939b78a19..556d008a6 100644
--- a/common/cmake_modules/GncAddTest.cmake
+++ b/common/cmake_modules/GncAddTest.cmake
@@ -136,30 +136,35 @@ function(gnc_gtest_configure)
elseif (GMOCK_ROOT)
find_path(GTEST_SRC_DIR src/gtest-all.cc NO_CMAKE_SYSTEM_PATH
PATHS ${GMOCK_ROOT}/../googletest ${GMOCK_ROOT}/gtest)
- else()
- find_path(GTEST_SRC_DIR src/gtest-all.cc
- PATHS /usr/src PATH_SUFFIXES googletest/googletest gtest)
endif()
if (GTEST_SRC_DIR)
if (EXISTS ${GTEST_SRC_DIR}/include/gtest/gtest.h)
set(GTEST_INCLUDE_DIR ${GTEST_SRC_DIR}/include CACHE PATH "" FORCE)
else()
- message(FATAL_ERROR "GTEST sources found, but it doesn't have 'gtest/gtest.h'")
+ message(FATAL_ERROR "GTEST sources found, but it doesn't have 'gtest/gtest.h'")
endif()
+ else()
+ if (GTEST_ROOT OR GMOCK_ROOT)
+ message(FATAL_ERROR "GTEST sources not found in GTEST_ROOT or GMOCK_ROOT")
+ endif()
+ find_path(GTEST_SRC_DIR src/gtest-all.cc
+ PATHS /usr/src PATH_SUFFIXES googletest/googletest gtest)
+ if (GTEST_SRC_DIR)
+ find_path(GTEST_INCLUDE_DIR gtest/gtest.h NO_CMAKE_SYSTEM_PATH
+ PATHS ${GTEST_SRC_DIR}/include)
+ endif()
+ endif()
+ find_path(GTEST_INCLUDE_DIR gtest/gtest.h)
+ if (GTEST_SRC_DIR)
set(lib_gtest_SOURCES
"${GTEST_SRC_DIR}/src/gtest_main.cc"
"${GTEST_SRC_DIR}/src/gtest-all.cc"
PARENT_SCOPE)
else()
- if (GTEST_ROOT OR GMOCK_ROOT)
- message(FATAL_ERROR "GTEST sources not found in GTEST_ROOT or GMOCK_ROOT")
- else()
- find_path(GTEST_INCLUDE_DIR gtest/gtest.h)
- find_library(GTEST_SHARED_LIB gtest)
- find_library(GTEST_MAIN_LIB gtest_main)
- if (NOT (GTEST_SHARED_LIB AND GTEST_MAIN_LIB AND GTEST_INCLUDE_DIR))
- message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT or GMOCK_ROOT")
- endif()
+ find_library(GTEST_SHARED_LIB gtest)
+ find_library(GTEST_MAIN_LIB gtest_main)
+ if (NOT (GTEST_SHARED_LIB AND GTEST_MAIN_LIB AND GTEST_INCLUDE_DIR))
+ message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT or GMOCK_ROOT")
endif()
endif()
set(THREADS_PREFER_PTHREAD_FLAG ON)
@@ -174,7 +179,17 @@ function(gnc_gtest_configure)
elseif (GTEST_ROOT)
find_path(GMOCK_SRC_DIR src/gmock-all.cc NO_CMAKE_SYSTEM_PATH
PATHS ${GTEST_ROOT}/googlemock ${GTEST_ROOT}/../googlemock)
+ endif()
+ if (GMOCK_SRC_DIR)
+ if (EXISTS ${GMOCK_SRC_DIR}/include/gmock/gmock.h)
+ set(GMOCK_INCLUDE_DIR ${GMOCK_SRC_DIR}/include CACHE PATH "" FORCE)
+ else()
+ message(FATAL_ERROR "GMOCK sources found, but it doesn't have 'gmock/gmock.h'")
+ endif()
else()
+ if (GMOCK_ROOT OR GTEST_ROOT)
+ message(FATAL_ERROR "GMOCK sources not found in GMOCK_ROOT or GTEST_ROOT")
+ endif()
find_path(GMOCK_SRC_DIR src/gmock-all.cc
PATHS /usr/src PATH_SUFFIXES googletest/googlemock gmock)
if (NOT GMOCK_SRC_DIR)
@@ -184,30 +199,25 @@ function(gnc_gtest_configure)
set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}")
endif()
endif()
+ if (GMOCK_SRC_DIR)
+ find_path(GMOCK_INCLUDE_DIR gmock/gmock.h NO_CMAKE_SYSTEM_PATH
+ PATHS ${GMOCK_SRC_DIR}/include)
+ endif()
endif()
+ find_path(GMOCK_INCLUDE_DIR gmock/gmock.h)
if (GMOCK_SRC_DIR)
- if (EXISTS ${GMOCK_SRC_DIR}/include/gmock/gmock.h)
- set(GMOCK_INCLUDE_DIR ${GMOCK_SRC_DIR}/include CACHE PATH "" FORCE)
- else()
- message(FATAL_ERROR "GMOCK sources found, but it doesn't have 'gmock/gmock.h'")
- endif()
if (NOT GMOCK_MAIN_SRC_DIR)
set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}/src")
endif()
set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
else()
- if (GMOCK_ROOT OR GTEST_ROOT)
- message(FATAL_ERROR "GMOCK sources not found in GMOCK_ROOT or GTEST_ROOT")
+ find_library(GMOCK_SHARED_LIB gmock)
+ find_library(GMOCK_MAIN_LIB gmock_main)
+ if (GMOCK_MAIN_LIB AND GMOCK_SHARED_LIB AND GMOCK_INCLUDE_DIR)
+ set(GMOCK_LIB "${GMOCK_SHARED_LIB};${GMOCK_MAIN_LIB}" PARENT_SCOPE)
else()
- find_path(GMOCK_INCLUDE_DIR gmock/gmock.h)
- find_library(GMOCK_SHARED_LIB gmock)
- find_library(GMOCK_MAIN_LIB gmock_main)
- if (GMOCK_MAIN_LIB AND GMOCK_SHARED_LIB AND GMOCK_INCLUDE_DIR)
- set(GMOCK_LIB "${GMOCK_SHARED_LIB};${GMOCK_MAIN_LIB}" PARENT_SCOPE)
- else()
- message(FATAL_ERROR "GMOCK not found. Please install it or set GMOCK_ROOT")
- endif()
+ message(FATAL_ERROR "GMOCK not found. Please install it or set GMOCK_ROOT")
endif()
endif()
set(GMOCK_FOUND YES PARENT_SCOPE)
commit d637c53fff2a93d3dba71de4e2b5d5111f233764
Author: Christian Gruber <christian.gruber at posteo.de>
Date: Thu Aug 29 23:36:05 2019 +0200
Separate search for GTEST/GMOCK sources into different cases
1. If GTEST_ROOT and/or GMOCK_ROOT are defined, sources are expected
somewhere inside these directories. Otherwise a CMake error is
generated. Different source directory layouts are considered.
2. If GTEST_ROOT and GMOCK_ROOT are both not defined, sources are
searched in /usr/src. Different source directory layouts are considered.
3. If sources are not found in one of the first two cases, preinstalled
libraries are searched.
Additionally using HINTS in function find_path() has been replaced by
PATHS and PATH_SUFFIXES. According to CMake documentation in case of
hard-coded guesses PATHS should be used. Remark: This reverts commit
5f53e29, but instead NO_CMAKE_SYSTEM_PATH is used now to prevent CMake
from searching in system paths.
Hint: There was a special handling implemented regarding search for
gmock-all.cc. This file was additionally searched in /usr/src/gmock
directly instead of /usr/src/gmock/src (see commit 1241b71). This
special handling has been kept in case of searching sources in
/usr/src/gmock, but not in case of searching sources in GMOCK_ROOT or
GTEST_ROOT.
diff --git a/common/cmake_modules/GncAddTest.cmake b/common/cmake_modules/GncAddTest.cmake
index 0751abe3e..939b78a19 100644
--- a/common/cmake_modules/GncAddTest.cmake
+++ b/common/cmake_modules/GncAddTest.cmake
@@ -131,27 +131,35 @@ function(gnc_gtest_configure)
endif()
unset(GTEST_SRC_DIR CACHE)
if (GTEST_ROOT)
+ find_path(GTEST_SRC_DIR src/gtest-all.cc NO_CMAKE_SYSTEM_PATH
+ PATHS ${GTEST_ROOT} PATH_SUFFIXES googletest)
+ elseif (GMOCK_ROOT)
+ find_path(GTEST_SRC_DIR src/gtest-all.cc NO_CMAKE_SYSTEM_PATH
+ PATHS ${GMOCK_ROOT}/../googletest ${GMOCK_ROOT}/gtest)
+ else()
find_path(GTEST_SRC_DIR src/gtest-all.cc
- HINTS ${GTEST_ROOT} ${GMOCK_ROOT}/gtest /usr/src/gtest)
- if (GTEST_SRC_DIR)
- if (EXISTS ${GTEST_SRC_DIR}/include/gtest/gtest.h)
- set(GTEST_INCLUDE_DIR ${GTEST_SRC_DIR}/include CACHE PATH "" FORCE)
- else()
- message(FATAL_ERROR "GTEST sources found, but it doesn't have 'gtest/gtest.h'")
- endif()
- set(lib_gtest_SOURCES
- "${GTEST_SRC_DIR}/src/gtest_main.cc"
- "${GTEST_SRC_DIR}/src/gtest-all.cc"
- PARENT_SCOPE)
+ PATHS /usr/src PATH_SUFFIXES googletest/googletest gtest)
+ endif()
+ if (GTEST_SRC_DIR)
+ if (EXISTS ${GTEST_SRC_DIR}/include/gtest/gtest.h)
+ set(GTEST_INCLUDE_DIR ${GTEST_SRC_DIR}/include CACHE PATH "" FORCE)
else()
- message(FATAL_ERROR "GTEST not found in GTEST_ROOT")
+ message(FATAL_ERROR "GTEST sources found, but it doesn't have 'gtest/gtest.h'")
endif()
+ set(lib_gtest_SOURCES
+ "${GTEST_SRC_DIR}/src/gtest_main.cc"
+ "${GTEST_SRC_DIR}/src/gtest-all.cc"
+ PARENT_SCOPE)
else()
- find_path(GTEST_INCLUDE_DIR gtest/gtest.h)
- find_library(GTEST_SHARED_LIB gtest)
- find_library(GTEST_MAIN_LIB gtest_main)
- if (NOT (GTEST_SHARED_LIB AND GTEST_MAIN_LIB AND GTEST_INCLUDE_DIR))
- message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT or GMOCK_ROOT")
+ if (GTEST_ROOT OR GMOCK_ROOT)
+ message(FATAL_ERROR "GTEST sources not found in GTEST_ROOT or GMOCK_ROOT")
+ else()
+ find_path(GTEST_INCLUDE_DIR gtest/gtest.h)
+ find_library(GTEST_SHARED_LIB gtest)
+ find_library(GTEST_MAIN_LIB gtest_main)
+ if (NOT (GTEST_SHARED_LIB AND GTEST_MAIN_LIB AND GTEST_INCLUDE_DIR))
+ message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT or GMOCK_ROOT")
+ endif()
endif()
endif()
set(THREADS_PREFER_PTHREAD_FLAG ON)
@@ -161,36 +169,45 @@ function(gnc_gtest_configure)
message(STATUS "Checking for GMOCK")
unset(GMOCK_SRC_DIR CACHE)
if (GMOCK_ROOT)
+ find_path(GMOCK_SRC_DIR src/gmock-all.cc NO_CMAKE_SYSTEM_PATH
+ PATHS ${GMOCK_ROOT})
+ elseif (GTEST_ROOT)
+ find_path(GMOCK_SRC_DIR src/gmock-all.cc NO_CMAKE_SYSTEM_PATH
+ PATHS ${GTEST_ROOT}/googlemock ${GTEST_ROOT}/../googlemock)
+ else()
find_path(GMOCK_SRC_DIR src/gmock-all.cc
- HINTS ${GMOCK_ROOT} /usr/src/gmock)
- if (GMOCK_SRC_DIR)
- set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}/src")
- else()
+ PATHS /usr/src PATH_SUFFIXES googletest/googlemock gmock)
+ if (NOT GMOCK_SRC_DIR)
find_path(GMOCK_SRC_DIR gmock-all.cc
- HINTS ${GMOCK_ROOT} /usr/src/gmock)
+ PATHS /usr/src PATH_SUFFIXES gmock)
if (GMOCK_SRC_DIR)
set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}")
endif()
endif()
- if (GMOCK_SRC_DIR)
- if (EXISTS ${GMOCK_SRC_DIR}/include/gmock/gmock.h)
- set(GMOCK_INCLUDE_DIR ${GMOCK_SRC_DIR}/include CACHE PATH "" FORCE)
- else()
- message(FATAL_ERROR "GMOCK sources found, but it doesn't have 'gmock/gmock.h'")
- endif()
- set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
- set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
+ endif()
+ if (GMOCK_SRC_DIR)
+ if (EXISTS ${GMOCK_SRC_DIR}/include/gmock/gmock.h)
+ set(GMOCK_INCLUDE_DIR ${GMOCK_SRC_DIR}/include CACHE PATH "" FORCE)
else()
- message(FATAL_ERROR "GMOCK not found in GMOCK_ROOT")
+ message(FATAL_ERROR "GMOCK sources found, but it doesn't have 'gmock/gmock.h'")
+ endif()
+ if (NOT GMOCK_MAIN_SRC_DIR)
+ set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}/src")
endif()
+ set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
+ set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
else()
- find_path(GMOCK_INCLUDE_DIR gmock/gmock.h)
- find_library(GMOCK_SHARED_LIB gmock)
- find_library(GMOCK_MAIN_LIB gmock_main)
- if (GMOCK_MAIN_LIB AND GMOCK_SHARED_LIB AND GMOCK_INCLUDE_DIR)
- set(GMOCK_LIB "${GMOCK_SHARED_LIB};${GMOCK_MAIN_LIB}" PARENT_SCOPE)
+ if (GMOCK_ROOT OR GTEST_ROOT)
+ message(FATAL_ERROR "GMOCK sources not found in GMOCK_ROOT or GTEST_ROOT")
else()
- message(FATAL_ERROR "GMOCK not found. Please install it or set GMOCK_ROOT")
+ find_path(GMOCK_INCLUDE_DIR gmock/gmock.h)
+ find_library(GMOCK_SHARED_LIB gmock)
+ find_library(GMOCK_MAIN_LIB gmock_main)
+ if (GMOCK_MAIN_LIB AND GMOCK_SHARED_LIB AND GMOCK_INCLUDE_DIR)
+ set(GMOCK_LIB "${GMOCK_SHARED_LIB};${GMOCK_MAIN_LIB}" PARENT_SCOPE)
+ else()
+ message(FATAL_ERROR "GMOCK not found. Please install it or set GMOCK_ROOT")
+ endif()
endif()
endif()
set(GMOCK_FOUND YES PARENT_SCOPE)
commit 53fe478ce181896cad2ea21d3fd2c2169ad4e1ee
Author: Christian Gruber <christian.gruber at posteo.de>
Date: Thu Aug 29 22:34:19 2019 +0200
Do not search for headers anymore, if sources are already found
if GTEST/GMOCK sources are already found, only check if gtest/gtest.h
and gmock/gmock.h exist at GTEST_SRC_DIR/include and
GMOCK_SRC_DIR/include and set GTEST_INCLUDE_DIR and GMOCK_INCLUDE_DIR
accordingly.
diff --git a/common/cmake_modules/GncAddTest.cmake b/common/cmake_modules/GncAddTest.cmake
index ba9be28f7..0751abe3e 100644
--- a/common/cmake_modules/GncAddTest.cmake
+++ b/common/cmake_modules/GncAddTest.cmake
@@ -131,11 +131,14 @@ function(gnc_gtest_configure)
endif()
unset(GTEST_SRC_DIR CACHE)
if (GTEST_ROOT)
- find_path(GTEST_INCLUDE_DIR gtest/gtest.h
- HINTS ${GTEST_ROOT}/include ${GMOCK_ROOT}/gtest/include)
find_path(GTEST_SRC_DIR src/gtest-all.cc
HINTS ${GTEST_ROOT} ${GMOCK_ROOT}/gtest /usr/src/gtest)
- if (GTEST_SRC_DIR AND GTEST_INCLUDE_DIR)
+ if (GTEST_SRC_DIR)
+ if (EXISTS ${GTEST_SRC_DIR}/include/gtest/gtest.h)
+ set(GTEST_INCLUDE_DIR ${GTEST_SRC_DIR}/include CACHE PATH "" FORCE)
+ else()
+ message(FATAL_ERROR "GTEST sources found, but it doesn't have 'gtest/gtest.h'")
+ endif()
set(lib_gtest_SOURCES
"${GTEST_SRC_DIR}/src/gtest_main.cc"
"${GTEST_SRC_DIR}/src/gtest-all.cc"
@@ -158,8 +161,6 @@ function(gnc_gtest_configure)
message(STATUS "Checking for GMOCK")
unset(GMOCK_SRC_DIR CACHE)
if (GMOCK_ROOT)
- find_path(GMOCK_INCLUDE_DIR gmock/gmock.h
- HINTS ${GMOCK_ROOT}/include)
find_path(GMOCK_SRC_DIR src/gmock-all.cc
HINTS ${GMOCK_ROOT} /usr/src/gmock)
if (GMOCK_SRC_DIR)
@@ -171,7 +172,12 @@ function(gnc_gtest_configure)
set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}")
endif()
endif()
- if (GMOCK_SRC_DIR AND GMOCK_INCLUDE_DIR)
+ if (GMOCK_SRC_DIR)
+ if (EXISTS ${GMOCK_SRC_DIR}/include/gmock/gmock.h)
+ set(GMOCK_INCLUDE_DIR ${GMOCK_SRC_DIR}/include CACHE PATH "" FORCE)
+ else()
+ message(FATAL_ERROR "GMOCK sources found, but it doesn't have 'gmock/gmock.h'")
+ endif()
set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
else()
commit 84d9f1c9a58d837fd036d5820a7c234cd9fbe230
Author: Christian Gruber <christian.gruber at posteo.de>
Date: Wed Aug 21 23:36:17 2019 +0200
Change search strategy for prebuilt GoogleTest/GoogleMock libraries
Prebuilt GoogleTest/GoogleMock libraries are now only searched, if
GTEST_ROOT and GMOCK_ROOT are not defined.
diff --git a/common/cmake_modules/GncAddTest.cmake b/common/cmake_modules/GncAddTest.cmake
index 5efc410fe..ba9be28f7 100644
--- a/common/cmake_modules/GncAddTest.cmake
+++ b/common/cmake_modules/GncAddTest.cmake
@@ -129,56 +129,63 @@ function(gnc_gtest_configure)
if (NOT DEFINED ${GMOCK_ROOT})
set(GMOCK_ROOT $ENV{GMOCK_ROOT})
endif()
- find_path(GTEST_INCLUDE_DIR gtest/gtest.h
- HINTS ${GTEST_ROOT}/include ${GMOCK_ROOT}/gtest/include /usr/include)
unset(GTEST_SRC_DIR CACHE)
- find_path(GTEST_SRC_DIR src/gtest-all.cc
- HINTS ${GTEST_ROOT} ${GMOCK_ROOT}/gtest /usr/src/gtest)
- if (GTEST_SRC_DIR AND GTEST_INCLUDE_DIR)
- set(lib_gtest_SOURCES
- "${GTEST_SRC_DIR}/src/gtest_main.cc"
- "${GTEST_SRC_DIR}/src/gtest-all.cc"
- PARENT_SCOPE)
+ if (GTEST_ROOT)
+ find_path(GTEST_INCLUDE_DIR gtest/gtest.h
+ HINTS ${GTEST_ROOT}/include ${GMOCK_ROOT}/gtest/include)
+ find_path(GTEST_SRC_DIR src/gtest-all.cc
+ HINTS ${GTEST_ROOT} ${GMOCK_ROOT}/gtest /usr/src/gtest)
+ if (GTEST_SRC_DIR AND GTEST_INCLUDE_DIR)
+ set(lib_gtest_SOURCES
+ "${GTEST_SRC_DIR}/src/gtest_main.cc"
+ "${GTEST_SRC_DIR}/src/gtest-all.cc"
+ PARENT_SCOPE)
+ else()
+ message(FATAL_ERROR "GTEST not found in GTEST_ROOT")
+ endif()
else()
+ find_path(GTEST_INCLUDE_DIR gtest/gtest.h)
find_library(GTEST_SHARED_LIB gtest)
find_library(GTEST_MAIN_LIB gtest_main)
+ if (NOT (GTEST_SHARED_LIB AND GTEST_MAIN_LIB AND GTEST_INCLUDE_DIR))
+ message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT or GMOCK_ROOT")
+ endif()
endif()
- if ((GTEST_SHARED_LIB OR GTEST_SRC_DIR) AND GTEST_INCLUDE_DIR)
- set(THREADS_PREFER_PTHREAD_FLAG ON)
- find_package(Threads REQUIRED)
- set(GTEST_FOUND YES CACHE INTERNAL "Found GTest")
- else()
- message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT or GMOCK_ROOT")
- endif()
+ set(THREADS_PREFER_PTHREAD_FLAG ON)
+ find_package(Threads REQUIRED)
+ set(GTEST_FOUND YES CACHE INTERNAL "Found GTest")
message(STATUS "Checking for GMOCK")
- find_path(GMOCK_INCLUDE_DIR gmock/gmock.h
- HINTS ${GMOCK_ROOT}/include /usr/include)
unset(GMOCK_SRC_DIR CACHE)
- find_path(GMOCK_SRC_DIR src/gmock-all.cc
- HINTS ${GMOCK_ROOT} /usr/src/gmock)
- if (GMOCK_SRC_DIR)
- set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}/src")
- else()
- find_path(GMOCK_SRC_DIR gmock-all.cc
+ if (GMOCK_ROOT)
+ find_path(GMOCK_INCLUDE_DIR gmock/gmock.h
+ HINTS ${GMOCK_ROOT}/include)
+ find_path(GMOCK_SRC_DIR src/gmock-all.cc
HINTS ${GMOCK_ROOT} /usr/src/gmock)
if (GMOCK_SRC_DIR)
- set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}")
+ set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}/src")
+ else()
+ find_path(GMOCK_SRC_DIR gmock-all.cc
+ HINTS ${GMOCK_ROOT} /usr/src/gmock)
+ if (GMOCK_SRC_DIR)
+ set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}")
+ endif()
+ endif()
+ if (GMOCK_SRC_DIR AND GMOCK_INCLUDE_DIR)
+ set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
+ set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
+ else()
+ message(FATAL_ERROR "GMOCK not found in GMOCK_ROOT")
endif()
- endif()
- if (GMOCK_SRC_DIR AND GMOCK_INCLUDE_DIR)
- set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
- set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
else()
+ find_path(GMOCK_INCLUDE_DIR gmock/gmock.h)
find_library(GMOCK_SHARED_LIB gmock)
find_library(GMOCK_MAIN_LIB gmock_main)
- if (GMOCK_MAIN_LIB AND GMOCK_SHARED_LIB)
+ if (GMOCK_MAIN_LIB AND GMOCK_SHARED_LIB AND GMOCK_INCLUDE_DIR)
set(GMOCK_LIB "${GMOCK_SHARED_LIB};${GMOCK_MAIN_LIB}" PARENT_SCOPE)
+ else()
+ message(FATAL_ERROR "GMOCK not found. Please install it or set GMOCK_ROOT")
endif()
endif()
- if (GMOCK_INCLUDE_DIR AND (GMOCK_SHARED_LIB OR GMOCK_SRC_DIR))
- set(GMOCK_FOUND YES PARENT_SCOPE)
- else()
- message(FATAL_ERROR "GMOCK not found. Please install it or set GMOCK_ROOT")
- endif()
+ set(GMOCK_FOUND YES PARENT_SCOPE)
endfunction()
commit b303fc6d99d22bb88518a3085099061f3c74c13d
Author: Christian Gruber <christian.gruber at posteo.de>
Date: Sun Aug 18 00:30:42 2019 +0200
Use target gtest instead of GTEST_LIB and GTEST_INCLUDE_DIR
This simplifies usage of GoogleTest, since independent handling of
GTEST_LIB and GTEST_INCLUDE_DIR is not necessary anymore.
Additionally CMake creates a dependency now between target gtest and all
test applications using it. This improves build process when building
GoogleTest from source code. When any test application is built,
GoogleTest library is automatically rebuilt if necessary now for
instance.
diff --git a/common/cmake_modules/GncAddTest.cmake b/common/cmake_modules/GncAddTest.cmake
index f5794734c..5efc410fe 100644
--- a/common/cmake_modules/GncAddTest.cmake
+++ b/common/cmake_modules/GncAddTest.cmake
@@ -139,13 +139,9 @@ function(gnc_gtest_configure)
"${GTEST_SRC_DIR}/src/gtest_main.cc"
"${GTEST_SRC_DIR}/src/gtest-all.cc"
PARENT_SCOPE)
- set(GTEST_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgtest.a" PARENT_SCOPE)
else()
find_library(GTEST_SHARED_LIB gtest)
find_library(GTEST_MAIN_LIB gtest_main)
- if (GTEST_MAIN_LIB AND GTEST_SHARED_LIB)
- set(GTEST_LIB "${GTEST_MAIN_LIB};${GTEST_SHARED_LIB}" PARENT_SCOPE)
- endif()
endif()
if ((GTEST_SHARED_LIB OR GTEST_SRC_DIR) AND GTEST_INCLUDE_DIR)
set(THREADS_PREFER_PTHREAD_FLAG ON)
diff --git a/common/test-core/CMakeLists.txt b/common/test-core/CMakeLists.txt
index 36946976f..ef02718c4 100644
--- a/common/test-core/CMakeLists.txt
+++ b/common/test-core/CMakeLists.txt
@@ -82,6 +82,13 @@ if (GTEST_SRC_DIR)
target_compile_options(gtest PRIVATE -Wno-missing-declarations)
endif()
target_include_directories(gtest PUBLIC ${GTEST_INCLUDE_DIR} ${GTEST_SRC_DIR})
+else()
+ add_library(gtest UNKNOWN IMPORTED GLOBAL)
+ set_target_properties(gtest PROPERTIES
+ IMPORTED_LOCATION ${GTEST_SHARED_LIB}
+ INTERFACE_INCLUDE_DIRECTORIES ${GTEST_INCLUDE_DIR}
+ INTERFACE_LINK_LIBRARIES ${GTEST_MAIN_LIB}
+ )
endif()
if (GMOCK_SRC_DIR)
set (lib_gmock_SOURCES ${GMOCK_SRC})
diff --git a/gnucash/import-export/csv-imp/test/CMakeLists.txt b/gnucash/import-export/csv-imp/test/CMakeLists.txt
index 217cbf3ed..52b11cbcb 100644
--- a/gnucash/import-export/csv-imp/test/CMakeLists.txt
+++ b/gnucash/import-export/csv-imp/test/CMakeLists.txt
@@ -12,11 +12,10 @@ set(CSV_IMP_TEST_LIBS gncmod-csv-import gncmod-engine test-core)
# This test does not run in Win32
if (NOT WIN32)
set(MODULEPATH ${CMAKE_SOURCE_DIR}/gnucash/import-export/csv-imp)
- set(gtest_csv_imp_LIBS gncmod-csv-import ${GLIB2_LDFLAGS} ${GTEST_LIB})
+ set(gtest_csv_imp_LIBS gncmod-csv-import ${GLIB2_LDFLAGS} gtest)
set(gtest_csv_imp_INCLUDES
${MODULEPATH}
- ${CSV_IMP_TEST_INCLUDE_DIRS}
- ${GTEST_INCLUDE_DIR})
+ ${CSV_IMP_TEST_INCLUDE_DIRS})
set(test_tokenizer_SOURCES
test-tokenizer.cpp)
diff --git a/libgnucash/core-utils/test/CMakeLists.txt b/libgnucash/core-utils/test/CMakeLists.txt
index 6da6d16a5..ce9da8573 100644
--- a/libgnucash/core-utils/test/CMakeLists.txt
+++ b/libgnucash/core-utils/test/CMakeLists.txt
@@ -33,14 +33,13 @@ set(gtest_core_utils_INCLUDES
${CMAKE_SOURCE_DIR}/common # for platform.h
${CMAKE_BINARY_DIR}/libgnucash/core-utils # for gncla-dir.h
${GLIB2_INCLUDE_DIRS}
- ${GTEST_INCLUDE_DIR}
)
set(gtest_core_utils_LIBS
${GLIB2_LDFLAGS}
${Boost_LIBRARIES}
${GTHREAD_LDFLAGS}
- ${GTEST_LIB})
+ gtest)
set(test_gnc_path_util_SOURCES
${MODULEPATH}/gnc-path.c
diff --git a/libgnucash/engine/test/CMakeLists.txt b/libgnucash/engine/test/CMakeLists.txt
index c3f2c67b3..5e6439334 100644
--- a/libgnucash/engine/test/CMakeLists.txt
+++ b/libgnucash/engine/test/CMakeLists.txt
@@ -92,7 +92,7 @@ set(gtest_old_engine_LIBS
gncmod-engine
${GLIB2_LDFLAGS}
${Boost_LIBRARIES}
- ${GTEST_LIB})
+ gtest)
set(gtest_qof_LIBS
${GLIB2_LDFLAGS}
@@ -101,7 +101,7 @@ set(gtest_qof_LIBS
${GTHREAD_LDFLAGS}
${ICU4C_I18N_LDFLAGS}
${Boost_LIBRARIES}
- ${GTEST_LIB})
+ gtest)
set(gtest_engine_INCLUDES
${MODULEPATH}
@@ -109,7 +109,6 @@ set(gtest_engine_INCLUDES
${CMAKE_BINARY_DIR}/common # for config.h
${CMAKE_SOURCE_DIR}/common # for platform.h
${GLIB2_INCLUDE_DIRS}
- ${GTEST_INCLUDE_DIR}
../../../borrowed/libc
)
commit 7e71a9724fc454b482460de5e09fa216e3c21fe7
Author: Christian Gruber <christian.gruber at posteo.de>
Date: Sat Aug 17 23:03:45 2019 +0200
Change search strategy for prebuilt GoogleTest/GoogleMock libraries
Prebuilt GoogleTest/GoogleMock libraries are now only searched, if
GoogleTest source code wasn't found.
diff --git a/common/cmake_modules/GncAddTest.cmake b/common/cmake_modules/GncAddTest.cmake
index 8b103129a..f5794734c 100644
--- a/common/cmake_modules/GncAddTest.cmake
+++ b/common/cmake_modules/GncAddTest.cmake
@@ -131,24 +131,26 @@ function(gnc_gtest_configure)
endif()
find_path(GTEST_INCLUDE_DIR gtest/gtest.h
HINTS ${GTEST_ROOT}/include ${GMOCK_ROOT}/gtest/include /usr/include)
+ unset(GTEST_SRC_DIR CACHE)
find_path(GTEST_SRC_DIR src/gtest-all.cc
HINTS ${GTEST_ROOT} ${GMOCK_ROOT}/gtest /usr/src/gtest)
- find_library(GTEST_SHARED_LIB gtest)
- find_library(GTEST_MAIN_LIB gtest_main)
+ if (GTEST_SRC_DIR AND GTEST_INCLUDE_DIR)
+ set(lib_gtest_SOURCES
+ "${GTEST_SRC_DIR}/src/gtest_main.cc"
+ "${GTEST_SRC_DIR}/src/gtest-all.cc"
+ PARENT_SCOPE)
+ set(GTEST_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgtest.a" PARENT_SCOPE)
+ else()
+ find_library(GTEST_SHARED_LIB gtest)
+ find_library(GTEST_MAIN_LIB gtest_main)
+ if (GTEST_MAIN_LIB AND GTEST_SHARED_LIB)
+ set(GTEST_LIB "${GTEST_MAIN_LIB};${GTEST_SHARED_LIB}" PARENT_SCOPE)
+ endif()
+ endif()
if ((GTEST_SHARED_LIB OR GTEST_SRC_DIR) AND GTEST_INCLUDE_DIR)
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)
set(GTEST_FOUND YES CACHE INTERNAL "Found GTest")
- if(GTEST_SHARED_LIB)
- set(GTEST_LIB "${GTEST_MAIN_LIB};${GTEST_SHARED_LIB}" PARENT_SCOPE)
- unset(GTEST_SRC_DIR CACHE)
- else()
- set(lib_gtest_SOURCES
- "${GTEST_SRC_DIR}/src/gtest_main.cc"
- "${GTEST_SRC_DIR}/src/gtest-all.cc"
- PARENT_SCOPE)
- set(GTEST_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgtest.a" PARENT_SCOPE)
- endif()
else()
message(FATAL_ERROR "GTEST not found. Please install it or set GTEST_ROOT or GMOCK_ROOT")
endif()
@@ -157,8 +159,6 @@ function(gnc_gtest_configure)
find_path(GMOCK_INCLUDE_DIR gmock/gmock.h
HINTS ${GMOCK_ROOT}/include /usr/include)
unset(GMOCK_SRC_DIR CACHE)
- find_library(GMOCK_SHARED_LIB gmock)
- find_library(GMOCK_MAIN_LIB gmock_main)
find_path(GMOCK_SRC_DIR src/gmock-all.cc
HINTS ${GMOCK_ROOT} /usr/src/gmock)
if (GMOCK_SRC_DIR)
@@ -170,15 +170,18 @@ function(gnc_gtest_configure)
set(GMOCK_MAIN_SRC_DIR "${GMOCK_SRC_DIR}")
endif()
endif()
- if (GMOCK_INCLUDE_DIR AND (GMOCK_SHARED_LIB OR GMOCK_SRC_DIR))
- set(GMOCK_FOUND YES PARENT_SCOPE)
- if(GMOCK_SHARED_LIB)
+ if (GMOCK_SRC_DIR AND GMOCK_INCLUDE_DIR)
+ set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
+ set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
+ else()
+ find_library(GMOCK_SHARED_LIB gmock)
+ find_library(GMOCK_MAIN_LIB gmock_main)
+ if (GMOCK_MAIN_LIB AND GMOCK_SHARED_LIB)
set(GMOCK_LIB "${GMOCK_SHARED_LIB};${GMOCK_MAIN_LIB}" PARENT_SCOPE)
- unset(GMOCK_SRC_DIR CACHE)
- else()
- set(GMOCK_SRC "${GMOCK_MAIN_SRC_DIR}/gmock-all.cc" PARENT_SCOPE)
- set(GMOCK_LIB "${CMAKE_BINARY_DIR}/common/test-core/libgmock.a" PARENT_SCOPE)
endif()
+ endif()
+ if (GMOCK_INCLUDE_DIR AND (GMOCK_SHARED_LIB OR GMOCK_SRC_DIR))
+ set(GMOCK_FOUND YES PARENT_SCOPE)
else()
message(FATAL_ERROR "GMOCK not found. Please install it or set GMOCK_ROOT")
endif()
diff --git a/common/test-core/CMakeLists.txt b/common/test-core/CMakeLists.txt
index 5a92c6ec5..36946976f 100644
--- a/common/test-core/CMakeLists.txt
+++ b/common/test-core/CMakeLists.txt
@@ -72,7 +72,7 @@ add_dependencies(check scm-test-core)
gnc_add_scheme_deprecated_module ("gnucash unittest-support" "tests unittest-support" "scm-test-core" "")
-if(NOT GTEST_SHARED_LIB)
+if (GTEST_SRC_DIR)
# in contrast to GoogleTest build system libraries libgtest.a and libgtest_main.a
# are combined to one library libtest.a here
add_library(gtest STATIC ${lib_gtest_SOURCES})
@@ -83,7 +83,7 @@ if(NOT GTEST_SHARED_LIB)
endif()
target_include_directories(gtest PUBLIC ${GTEST_INCLUDE_DIR} ${GTEST_SRC_DIR})
endif()
-if(NOT GMOCK_SHARED_LIB)
+if (GMOCK_SRC_DIR)
set (lib_gmock_SOURCES ${GMOCK_SRC})
add_library(gmock STATIC ${lib_gmock_SOURCES})
if (APPLE)
Summary of changes:
CMakeLists.txt | 1 -
common/cmake_modules/GncAddTest.cmake | 98 ++++++++++++++---------
common/cmake_modules/MakeDistCheck.cmake | 1 -
common/test-core/CMakeLists.txt | 11 ++-
gnucash/import-export/csv-imp/test/CMakeLists.txt | 5 +-
libgnucash/core-utils/test/CMakeLists.txt | 3 +-
libgnucash/engine/test/CMakeLists.txt | 5 +-
util/ci/ubuntu-16.04-testscript | 2 +-
8 files changed, 74 insertions(+), 52 deletions(-)
More information about the gnucash-changes
mailing list