68 lines
3.2 KiB
CMake
68 lines
3.2 KiB
CMake
include(ExternalProject)
|
|
|
|
# GoogleTest
|
|
ExternalProject_Add(googletest PREFIX googletest
|
|
URL ${CMAKE_CURRENT_SOURCE_DIR}/googletest-release-1.8.0.tar.gz
|
|
URL_MD5 16877098823401d1bf2ed7891d7dce36
|
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE})
|
|
|
|
ExternalProject_Get_Property(googletest INSTALL_DIR)
|
|
file(MAKE_DIRECTORY ${INSTALL_DIR}/include)
|
|
|
|
add_library(gtest STATIC IMPORTED GLOBAL)
|
|
add_dependencies(gtest googletest)
|
|
set_property(TARGET gtest PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libgtest.a)
|
|
set_property(TARGET gtest PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include)
|
|
set_property(TARGET gtest PROPERTY INTERFACE_LINK_LIBRARIES pthread)
|
|
|
|
add_library(gmock STATIC IMPORTED GLOBAL)
|
|
add_dependencies(gmock googletest)
|
|
set_property(TARGET gmock PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libgmock.a)
|
|
set_property(TARGET gmock PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include)
|
|
|
|
# Libevent 2.1.8
|
|
ExternalProject_Add(libevent PREFIX libevent
|
|
URL ${CMAKE_CURRENT_SOURCE_DIR}/libevent-2.1.8-stable.tar.gz
|
|
URL_MD5 f3eeaed018542963b7d2416ef1135ecc
|
|
CONFIGURE_COMMAND ./configure --prefix=<INSTALL_DIR> --disable-shared --disable-samples
|
|
BUILD_COMMAND make LDFLAGS="-ldl"
|
|
BUILD_IN_SOURCE 1s)
|
|
|
|
ExternalProject_Get_Property(libevent INSTALL_DIR)
|
|
file(MAKE_DIRECTORY ${INSTALL_DIR}/include)
|
|
|
|
add_library(libevent-static STATIC IMPORTED GLOBAL)
|
|
add_dependencies(libevent-static libevent)
|
|
set_property(TARGET libevent-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libevent.a)
|
|
set_property(TARGET libevent-static PROPERTY IMPORTED_INTERFACE_LINK_LIBRARIES pthread)
|
|
set_property(TARGET libevent-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include)
|
|
|
|
# MESA Framework
|
|
set(MESA_FRAMEWORK_LIB_DIR /opt/MESA/lib)
|
|
set(MESA_FRAMEWORK_INCLUDE_DIR /opt/MESA/include)
|
|
|
|
add_library(MESA_handle_logger SHARED IMPORTED GLOBAL)
|
|
set_property(TARGET MESA_handle_logger PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libMESA_handle_logger.so)
|
|
set_property(TARGET MESA_handle_logger PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
|
|
|
|
add_library(MESA_prof_load SHARED IMPORTED GLOBAL)
|
|
set_property(TARGET MESA_prof_load PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libMESA_prof_load.so)
|
|
set_property(TARGET MESA_prof_load PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
|
|
|
|
add_library(fieldstat4 SHARED IMPORTED GLOBAL)
|
|
set_property(TARGET fieldstat4 PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libfieldstat4.so)
|
|
set_property(TARGET fieldstat4 PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
|
|
|
|
# MRZCPD
|
|
if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
|
|
set(MRZCPD_LIB_DIR /opt/tsg/mrzcpd/corei7/lib)
|
|
set(MRZCPD_INCLUDE_DIR /opt/tsg/mrzcpd/corei7/include)
|
|
elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64")
|
|
set(MRZCPD_LIB_DIR /opt/tsg/mrzcpd/aarch64/lib)
|
|
set(MRZCPD_INCLUDE_DIR /opt/tsg/mrzcpd/aarch64/include)
|
|
endif()
|
|
|
|
add_library(mrzcpd SHARED IMPORTED GLOBAL)
|
|
set_property(TARGET mrzcpd PROPERTY IMPORTED_LOCATION ${MRZCPD_LIB_DIR}/libmarsio.so)
|
|
set_property(TARGET mrzcpd PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MRZCPD_INCLUDE_DIR})
|