49 lines
1.8 KiB
CMake
49 lines
1.8 KiB
CMake
set(BUILD_TESTING OFF CACHE BOOL "Disable Unit Tests" FORCE)
|
|
set(WITH_GFLAGS OFF CACHE BOOL "Disable find_package(gflags) in glog" FORCE)
|
|
set(WITH_UNWIND OFF CACHE BOOL "Disable find_package(unwind) in glog" FORCE)
|
|
set(HAVE_LIB_GFLAGS TRUE CACHE BOOL "")
|
|
|
|
if(NOT MSVC)
|
|
add_compile_options(-Wno-deprecated-declarations)
|
|
endif()
|
|
|
|
set(GLOG_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/glog-0.5.0)
|
|
if (ANDROID)
|
|
set(GLOG_ANDROID_PATCH ${CMAKE_CURRENT_SOURCE_DIR}/glog.android.patch)
|
|
apply_patch_once("glog_android_fix" "${GLOG_SRC_DIR}" "${GLOG_ANDROID_PATCH}")
|
|
else()
|
|
set(GLOG_PATCH ${CMAKE_CURRENT_SOURCE_DIR}/glog.patch)
|
|
apply_patch_once("glog_fix" "${GLOG_SRC_DIR}" "${GLOG_PATCH}")
|
|
endif()
|
|
|
|
set(_SAVED_CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY})
|
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${EXTERNAL_LIB_DIR})
|
|
add_subdirectory(glog-0.5.0)
|
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${_SAVED_CMAKE_ARCHIVE_OUTPUT_DIRECTORY})
|
|
unset(_SAVED_CMAKE_ARCHIVE_OUTPUT_DIRECTORY)
|
|
|
|
add_dependencies(glog gflags)
|
|
|
|
mark_target_includes_system(glog)
|
|
|
|
if(MSVC)
|
|
# Modern MSVC (1900+/VS2015+) provides snprintf in the CRT.
|
|
# Suppress glog's own declaration which conflicts with the SDK header.
|
|
target_compile_definitions(glog PRIVATE HAVE_SNPRINTF)
|
|
endif()
|
|
|
|
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
|
target_compile_options(glog PRIVATE -Wno-sign-compare)
|
|
endif()
|
|
|
|
get_target_property(glog_BINARY_DIR glog BINARY_DIR)
|
|
get_target_property(glog_SOURCE_DIR glog SOURCE_DIR)
|
|
# get_target_property(GLOG_INCLUDE_DIRS glog INTERFACE_INCLUDE_DIRECTORIES)
|
|
|
|
set(GLOG_INCLUDE_DIRS ${glog_BINARY_DIR} ${glog_SOURCE_DIR}/src)
|
|
set(GLOG_FOUND TRUE PARENT_SCOPE)
|
|
set(GLOG_INCLUDE_DIR ${GLOG_INCLUDE_DIRS} PARENT_SCOPE)
|
|
set(GLOG_INCLUDE_DIRS ${GLOG_INCLUDE_DIRS} PARENT_SCOPE)
|
|
set(GLOG_LIBRARY $<TARGET_FILE:glog> PARENT_SCOPE)
|
|
set(GLOG_LIBRARIES $<TARGET_FILE:glog> PARENT_SCOPE)
|