3
# We will try to use the config mode first, and then manual find.
4
find_package(gflags CONFIG QUIET)
6
find_package(gflags MODULE QUIET)
10
message(STATUS "Caffe2: Found gflags with new-style gflags target.")
12
message(STATUS "Caffe2: Found gflags with old-style gflag starget.")
13
add_library(gflags UNKNOWN IMPORTED)
15
TARGET gflags PROPERTY IMPORTED_LOCATION ${GFLAGS_LIBRARY})
17
TARGET gflags PROPERTY INTERFACE_INCLUDE_DIRECTORIES
18
${GFLAGS_INCLUDE_DIR})
21
"Caffe2: Cannot find gflags automatically. Using legacy find.")
23
# - Try to find GFLAGS in the legacy way.
25
# The following variables are optionally searched for defaults
26
# GFLAGS_ROOT_DIR: Base directory where all GFLAGS components are found
28
# The following are set after configuration is done:
32
# GFLAGS_LIBRARYRARY_DIRS
33
include(FindPackageHandleStandardArgs)
34
set(GFLAGS_ROOT_DIR "" CACHE PATH "Folder contains Gflags")
36
# We are testing only a couple of files in the include directories
38
find_path(GFLAGS_INCLUDE_DIR gflags/gflags.h
39
PATHS ${GFLAGS_ROOT_DIR}/src/windows)
41
find_path(GFLAGS_INCLUDE_DIR gflags/gflags.h
42
PATHS ${GFLAGS_ROOT_DIR})
46
find_library(GFLAGS_LIBRARY_RELEASE
48
PATHS ${GFLAGS_ROOT_DIR}
49
PATH_SUFFIXES Release)
51
find_library(GFLAGS_LIBRARY_DEBUG
53
PATHS ${GFLAGS_ROOT_DIR}
55
set(GFLAGS_LIBRARY optimized ${GFLAGS_LIBRARY_RELEASE} debug ${GFLAGS_LIBRARY_DEBUG})
57
find_library(GFLAGS_LIBRARY gflags)
60
find_package_handle_standard_args(
61
gflags DEFAULT_MSG GFLAGS_INCLUDE_DIR GFLAGS_LIBRARY)
66
"Caffe2: Found gflags (include: ${GFLAGS_INCLUDE_DIR}, "
67
"library: ${GFLAGS_LIBRARY})")
68
add_library(gflags UNKNOWN IMPORTED)
70
TARGET gflags PROPERTY IMPORTED_LOCATION ${GFLAGS_LIBRARY})
72
TARGET gflags PROPERTY INTERFACE_INCLUDE_DIRECTORIES
73
${GFLAGS_INCLUDE_DIR})
77
# After above, we should have the gflags target now.
80
"Caffe2: gflags cannot be found. Depending on whether you are building "
81
"Caffe2 or a Caffe2 dependent library, the next warning / error will "
82
"give you more info.")