mirror of https://github.com/gnss-sdr/gnss-sdr
Fix gnss-sdr unit tests android compilation
This commit is contained in:
parent
942e19682b
commit
82f47b8516
|
@ -72,23 +72,66 @@ if(NOT GOOGLETEST_FOUND)
|
||||||
${CMAKE_BINARY_DIR}/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gtest_maind${CMAKE_STATIC_LIBRARY_SUFFIX}
|
${CMAKE_BINARY_DIR}/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gtest_maind${CMAKE_STATIC_LIBRARY_SUFFIX}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
ExternalProject_Add(gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
GIT_REPOSITORY https://github.com/google/googletest
|
set(GTEST_COMPILER "")
|
||||||
GIT_TAG ${GOOGLETEST_GIT_TAG}
|
ExternalProject_Add(gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
||||||
SOURCE_DIR ${CMAKE_BINARY_DIR}/thirdparty/gtest/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
GIT_REPOSITORY https://github.com/google/googletest
|
||||||
BINARY_DIR ${CMAKE_BINARY_DIR}/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
GIT_TAG ${GOOGLETEST_GIT_TAG}
|
||||||
CMAKE_ARGS ${GTEST_COMPILER}
|
SOURCE_DIR ${CMAKE_BINARY_DIR}/thirdparty/gtest/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
||||||
-DINSTALL_GTEST=OFF
|
BINARY_DIR ${CMAKE_BINARY_DIR}/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
||||||
-DBUILD_GMOCK=OFF
|
CMAKE_ARGS ${GTEST_COMPILER}
|
||||||
-Dgtest_hide_internal_symbols=ON
|
-DINSTALL_GTEST=OFF
|
||||||
${TOOLCHAIN_ARG}
|
-DBUILD_GMOCK=OFF
|
||||||
-DCMAKE_BUILD_TYPE=$<$<CONFIG:Debug>:Debug>$<$<CONFIG:Release>:Release>$<$<CONFIG:RelWithDebInfo>:RelWithDebInfo>$<$<CONFIG:MinSizeRel>:MinSizeRel>$<$<CONFIG:NoOptWithASM>:Debug>$<$<CONFIG:Coverage>:Debug>$<$<CONFIG:O2WithASM>:RelWithDebInfo>$<$<CONFIG:O3WithASM>:RelWithDebInfo>$<$<CONFIG:ASAN>:Debug>
|
-Dgtest_hide_internal_symbols=ON
|
||||||
BUILD_COMMAND ${GTEST_BUILD_COMMAND}
|
${TOOLCHAIN_ARG}
|
||||||
UPDATE_COMMAND ""
|
-DANDROID_TOOLCHAIN=${CMAKE_TOOLCHAIN_FILE}
|
||||||
PATCH_COMMAND ""
|
-DANDROID_ABI=${ANDROID_ABI}
|
||||||
BUILD_BYPRODUCTS ${GOOGLETEST_BUILD_BYPRODUCTS}
|
-DANDROID_ARM_NEON=ON
|
||||||
INSTALL_COMMAND ""
|
-DANDROID_NATIVE_API_LEVEL=21
|
||||||
)
|
-DCMAKE_BUILD_TYPE=$<$<CONFIG:Debug>:Debug>$<$<CONFIG:Release>:Release>$<$<CONFIG:RelWithDebInfo>:RelWithDebInfo>$<$<CONFIG:MinSizeRel>:MinSizeRel>$<$<CONFIG:NoOptWithASM>:Debug>$<$<CONFIG:Coverage>:Debug>$<$<CONFIG:O2WithASM>:RelWithDebInfo>$<$<CONFIG:O3WithASM>:RelWithDebInfo>$<$<CONFIG:ASAN>:Debug>
|
||||||
|
BUILD_COMMAND ${GTEST_BUILD_COMMAND}
|
||||||
|
UPDATE_COMMAND ""
|
||||||
|
PATCH_COMMAND ""
|
||||||
|
BUILD_BYPRODUCTS ${GOOGLETEST_BUILD_BYPRODUCTS}
|
||||||
|
INSTALL_COMMAND ""
|
||||||
|
)
|
||||||
|
add_library(libusb SHARED IMPORTED)
|
||||||
|
set_target_properties(libusb PROPERTIES IMPORTED_LOCATION
|
||||||
|
/home/android/src/gnuradio-android/toolchain/arm64-v8a/lib/libusb1.0.so)
|
||||||
|
|
||||||
|
|
||||||
|
add_library(libcrypto SHARED IMPORTED)
|
||||||
|
set_target_properties(libcrypto PROPERTIES IMPORTED_LOCATION
|
||||||
|
/home/android/src/gnuradio-android/toolchain/arm64-v8a/lib/libcrypto.so.3)
|
||||||
|
|
||||||
|
add_library(libhackrf SHARED IMPORTED)
|
||||||
|
set_target_properties(libhackrf PROPERTIES IMPORTED_LOCATION
|
||||||
|
/home/android/src/gnuradio-android/toolchain/arm64-v8a/lib/libhackrf.so)
|
||||||
|
|
||||||
|
add_library(librtlsdr SHARED IMPORTED)
|
||||||
|
set_target_properties(librtlsdr PROPERTIES IMPORTED_LOCATION
|
||||||
|
/home/android/src/gnuradio-android/toolchain/arm64-v8a/lib/librtlsdr.so)
|
||||||
|
else()
|
||||||
|
ExternalProject_Add(gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
||||||
|
GIT_REPOSITORY https://github.com/google/googletest
|
||||||
|
GIT_TAG ${GOOGLETEST_GIT_TAG}
|
||||||
|
SOURCE_DIR ${CMAKE_BINARY_DIR}/thirdparty/gtest/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
||||||
|
BINARY_DIR ${CMAKE_BINARY_DIR}/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
||||||
|
CMAKE_ARGS ${GTEST_COMPILER}
|
||||||
|
-DINSTALL_GTEST=OFF
|
||||||
|
-DBUILD_GMOCK=OFF
|
||||||
|
-Dgtest_hide_internal_symbols=ON
|
||||||
|
${TOOLCHAIN_ARG}
|
||||||
|
-DCMAKE_BUILD_TYPE=$<$<CONFIG:Debug>:Debug>$<$<CONFIG:Release>:Release>$<$<CONFIG:RelWithDebInfo>:RelWithDebInfo>$<$<CONFIG:MinSizeRel>:MinSizeRel>$<$<CONFIG:NoOptWithASM>:Debug>$<$<CONFIG:Coverage>:Debug>$<$<CONFIG:O2WithASM>:RelWithDebInfo>$<$<CONFIG:O3WithASM>:RelWithDebInfo>$<$<CONFIG:ASAN>:Debug>
|
||||||
|
BUILD_COMMAND ${GTEST_BUILD_COMMAND}
|
||||||
|
UPDATE_COMMAND ""
|
||||||
|
PATCH_COMMAND ""
|
||||||
|
BUILD_BYPRODUCTS ${GOOGLETEST_BUILD_BYPRODUCTS}
|
||||||
|
INSTALL_COMMAND ""
|
||||||
|
)
|
||||||
|
set(ANDROID_PUBLIC_LIBS "")
|
||||||
|
set(ANDROID_PRIVATE_LIBS "")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
ExternalProject_Get_Property(gtest-${GNSSSDR_GTEST_LOCAL_VERSION} binary_dir)
|
ExternalProject_Get_Property(gtest-${GNSSSDR_GTEST_LOCAL_VERSION} binary_dir)
|
||||||
|
|
||||||
|
@ -533,6 +576,20 @@ if(ENABLE_UNIT_TESTING)
|
||||||
system_testing_lib
|
system_testing_lib
|
||||||
core_receiver
|
core_receiver
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
target_link_libraries(run_tests
|
||||||
|
PUBLIC
|
||||||
|
libusb
|
||||||
|
libcrypto
|
||||||
|
libhackrf
|
||||||
|
librtlsdr
|
||||||
|
PRIVATE
|
||||||
|
log
|
||||||
|
android
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_include_directories(run_tests
|
target_include_directories(run_tests
|
||||||
INTERFACE
|
INTERFACE
|
||||||
${CMAKE_SOURCE_DIR}/src/tests/common-files
|
${CMAKE_SOURCE_DIR}/src/tests/common-files
|
||||||
|
@ -839,6 +896,19 @@ if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
||||||
algorithms_libs
|
algorithms_libs
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
target_link_libraries(flowgraph_test
|
||||||
|
PUBLIC
|
||||||
|
libusb
|
||||||
|
libcrypto
|
||||||
|
libhackrf
|
||||||
|
librtlsdr
|
||||||
|
PRIVATE
|
||||||
|
log
|
||||||
|
android
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_include_directories(flowgraph_test
|
target_include_directories(flowgraph_test
|
||||||
PRIVATE
|
PRIVATE
|
||||||
${CMAKE_SOURCE_DIR}/src/algorithms/libs
|
${CMAKE_SOURCE_DIR}/src/algorithms/libs
|
||||||
|
@ -890,6 +960,19 @@ if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
||||||
algorithms_libs
|
algorithms_libs
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
target_link_libraries(gnss_block_test
|
||||||
|
PUBLIC
|
||||||
|
libusb
|
||||||
|
libcrypto
|
||||||
|
libhackrf
|
||||||
|
librtlsdr
|
||||||
|
PRIVATE
|
||||||
|
log
|
||||||
|
android
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_include_directories(gnss_block_test
|
target_include_directories(gnss_block_test
|
||||||
PRIVATE ${CMAKE_SOURCE_DIR}/src/algorithms/libs
|
PRIVATE ${CMAKE_SOURCE_DIR}/src/algorithms/libs
|
||||||
INTERFACE ${CMAKE_SOURCE_DIR}/src/tests/common-files
|
INTERFACE ${CMAKE_SOURCE_DIR}/src/tests/common-files
|
||||||
|
@ -936,6 +1019,18 @@ if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
||||||
algorithms_libs
|
algorithms_libs
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
target_link_libraries(gnuradio_block_test
|
||||||
|
PUBLIC
|
||||||
|
libusb
|
||||||
|
libcrypto
|
||||||
|
libhackrf
|
||||||
|
librtlsdr
|
||||||
|
PRIVATE
|
||||||
|
log
|
||||||
|
android
|
||||||
|
)
|
||||||
|
endif()
|
||||||
add_test(gnuradio_block_test gnuradio_block_test)
|
add_test(gnuradio_block_test gnuradio_block_test)
|
||||||
|
|
||||||
set_property(TEST gnuradio_block_test PROPERTY TIMEOUT 30)
|
set_property(TEST gnuradio_block_test PROPERTY TIMEOUT 30)
|
||||||
|
@ -954,6 +1049,8 @@ else()
|
||||||
add_executable(matio_test ${MATIO_TEST_SOURCES})
|
add_executable(matio_test ${MATIO_TEST_SOURCES})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
target_link_libraries(matio_test
|
target_link_libraries(matio_test
|
||||||
PRIVATE
|
PRIVATE
|
||||||
algorithms_libs
|
algorithms_libs
|
||||||
|
@ -965,6 +1062,20 @@ target_link_libraries(matio_test
|
||||||
core_receiver
|
core_receiver
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
target_link_libraries(matio_test
|
||||||
|
PUBLIC
|
||||||
|
libusb
|
||||||
|
libcrypto
|
||||||
|
libhackrf
|
||||||
|
librtlsdr
|
||||||
|
PRIVATE
|
||||||
|
log
|
||||||
|
android
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_include_directories(matio_test
|
target_include_directories(matio_test
|
||||||
INTERFACE
|
INTERFACE
|
||||||
${CMAKE_SOURCE_DIR}/src/tests/common-files
|
${CMAKE_SOURCE_DIR}/src/tests/common-files
|
||||||
|
@ -1008,6 +1119,20 @@ if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
||||||
signal_processing_testing_lib
|
signal_processing_testing_lib
|
||||||
core_receiver
|
core_receiver
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
target_link_libraries(acq_test
|
||||||
|
PUBLIC
|
||||||
|
libusb
|
||||||
|
libcrypto
|
||||||
|
libhackrf
|
||||||
|
librtlsdr
|
||||||
|
PRIVATE
|
||||||
|
log
|
||||||
|
android
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_include_directories(acq_test
|
target_include_directories(acq_test
|
||||||
INTERFACE
|
INTERFACE
|
||||||
${CMAKE_SOURCE_DIR}/src/tests/common-files
|
${CMAKE_SOURCE_DIR}/src/tests/common-files
|
||||||
|
@ -1087,6 +1212,20 @@ if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
||||||
signal_generator_gr_blocks
|
signal_generator_gr_blocks
|
||||||
core_receiver
|
core_receiver
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
target_link_libraries(trk_test
|
||||||
|
PUBLIC
|
||||||
|
libusb
|
||||||
|
libcrypto
|
||||||
|
libhackrf
|
||||||
|
librtlsdr
|
||||||
|
PRIVATE
|
||||||
|
log
|
||||||
|
android
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(USE_GENERIC_LAMBDAS)
|
if(USE_GENERIC_LAMBDAS)
|
||||||
set(has_generic_lambdas HAS_GENERIC_LAMBDA=1)
|
set(has_generic_lambdas HAS_GENERIC_LAMBDA=1)
|
||||||
set(no_has_generic_lambdas HAS_GENERIC_LAMBDA=0)
|
set(no_has_generic_lambdas HAS_GENERIC_LAMBDA=0)
|
||||||
|
@ -1145,6 +1284,19 @@ if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
||||||
core_receiver
|
core_receiver
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
target_link_libraries(control_thread_test
|
||||||
|
PUBLIC
|
||||||
|
libusb
|
||||||
|
libcrypto
|
||||||
|
libhackrf
|
||||||
|
librtlsdr
|
||||||
|
PRIVATE
|
||||||
|
log
|
||||||
|
android
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
add_test(control_thread_test control_thread_test)
|
add_test(control_thread_test control_thread_test)
|
||||||
|
|
||||||
set_property(TEST control_thread_test PROPERTY TIMEOUT 30)
|
set_property(TEST control_thread_test PROPERTY TIMEOUT 30)
|
||||||
|
|
Loading…
Reference in New Issue