From 0b3ac31e4d7440a4419c8fa88bb31f9b9dd61a9c Mon Sep 17 00:00:00 2001 From: Bruce Lai Date: Tue, 21 Mar 2023 22:43:10 -0700 Subject: [PATCH] Enable cross_build gtest in CMake build flow Signed-off-by: Bruce Lai Change-Id: Ibdc742040940ee6c6402de103759f979f9429419 Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4401739 Reviewed-by: Frank Barchard Commit-Queue: Frank Barchard --- CMakeLists.txt | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bc6416855..fe51ae753 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -53,19 +53,24 @@ if (JPEG_FOUND) endif() if(TEST) - find_library(GTEST_LIBRARY gtest) - if(GTEST_LIBRARY STREQUAL "GTEST_LIBRARY-NOTFOUND") - set(GTEST_SRC_DIR /usr/src/gtest CACHE STRING "Location of gtest sources") - if(EXISTS ${GTEST_SRC_DIR}/src/gtest-all.cc) - message(STATUS "building gtest from sources in ${GTEST_SRC_DIR}") - set(gtest_sources ${GTEST_SRC_DIR}/src/gtest-all.cc) - add_library(gtest STATIC ${gtest_sources}) - include_directories(${GTEST_SRC_DIR}) - include_directories(${GTEST_SRC_DIR}/include) - set(GTEST_LIBRARY gtest) - else() - message(FATAL_ERROR "TEST is set but unable to find gtest library") + if (NOT CMAKE_CROSSCOMPILING) + find_library(GTEST_LIBRARY gtest) + if(GTEST_LIBRARY STREQUAL "GTEST_LIBRARY-NOTFOUND") + set(GTEST_SRC_DIR /usr/src/gtest CACHE STRING "Location of gtest sources") + if(EXISTS ${GTEST_SRC_DIR}/src/gtest-all.cc) + message(STATUS "building gtest from sources in ${GTEST_SRC_DIR}") + set(gtest_sources ${GTEST_SRC_DIR}/src/gtest-all.cc) + add_library(gtest STATIC ${gtest_sources}) + include_directories(${GTEST_SRC_DIR}) + include_directories(${GTEST_SRC_DIR}/include) + set(GTEST_LIBRARY gtest) + else() + message(FATAL_ERROR "TEST is set but unable to find gtest library") + endif() endif() + else() + add_subdirectory(third_party/googletest/src) + set(GTEST_LIBRARY gtest) endif() add_executable(libyuv_unittest ${ly_unittest_sources})