+10
cmake/.cmake-format.json
+10
cmake/.cmake-format.json
+119
-117
cmake/FindHIDAPI.cmake
+119
-117
cmake/FindHIDAPI.cmake
···
1
1
#.rst:
2
2
# FindHIDAPI
3
3
# ----------
4
-
#
4
+
#
5
5
# Try to find HIDAPI library, from http://www.signal11.us/oss/hidapi/
6
6
#
7
7
# Cache Variables: (probably not for direct use in your scripts)
···
23
23
#
24
24
# IMPORTED Targets
25
25
# ^^^^^^^^^^^^^^^^
26
-
26
+
#
27
27
# This module defines :prop_tgt:`IMPORTED` target ``HIDAPI::hidapi`` (in all cases or
28
28
# if no components specified), ``HIDAPI::hidapi-libusb`` (if you requested the libusb component),
29
29
# and ``HIDAPI::hidapi-hidraw`` (if you requested the hidraw component),
···
50
50
# (See accompanying file LICENSE_1_0.txt or copy at
51
51
# http://www.boost.org/LICENSE_1_0.txt)
52
52
53
-
set(HIDAPI_ROOT_DIR "${HIDAPI_ROOT_DIR}" CACHE PATH "Root to search for HIDAPI")
53
+
set(HIDAPI_ROOT_DIR
54
+
"${HIDAPI_ROOT_DIR}"
55
+
CACHE PATH "Root to search for HIDAPI")
54
56
55
57
# Clean up components
56
58
if(HIDAPI_FIND_COMPONENTS)
57
-
if(WIN32 OR APPLE)
58
-
# This makes no sense on Windows or Mac, which have native APIs
59
-
list(REMOVE HIDAPI_FIND_COMPONENTS libusb)
60
-
endif()
59
+
if(WIN32 OR APPLE)
60
+
# This makes no sense on Windows or Mac, which have native APIs
61
+
list(REMOVE HIDAPI_FIND_COMPONENTS libusb)
62
+
endif()
61
63
62
-
if(NOT ${CMAKE_SYSTEM} MATCHES "Linux")
63
-
# hidraw is only on linux
64
-
list(REMOVE HIDAPI_FIND_COMPONENTS hidraw)
65
-
endif()
64
+
if(NOT ${CMAKE_SYSTEM} MATCHES "Linux")
65
+
# hidraw is only on linux
66
+
list(REMOVE HIDAPI_FIND_COMPONENTS hidraw)
67
+
endif()
66
68
endif()
67
69
if(NOT HIDAPI_FIND_COMPONENTS)
68
-
# Default to any
69
-
set(HIDAPI_FIND_COMPONENTS any)
70
+
# Default to any
71
+
set(HIDAPI_FIND_COMPONENTS any)
70
72
endif()
71
73
72
74
# Ask pkg-config for hints
73
75
find_package(PkgConfig QUIET)
74
76
if(PKG_CONFIG_FOUND)
75
-
set(_old_prefix_path "${CMAKE_PREFIX_PATH}")
76
-
# So pkg-config uses HIDAPI_ROOT_DIR too.
77
-
if(HIDAPI_ROOT_DIR)
78
-
list(APPEND CMAKE_PREFIX_PATH ${HIDAPI_ROOT_DIR})
79
-
endif()
80
-
pkg_check_modules(PC_HIDAPI_LIBUSB QUIET hidapi-libusb)
81
-
pkg_check_modules(PC_HIDAPI_HIDRAW QUIET hidapi-hidraw)
77
+
set(_old_prefix_path "${CMAKE_PREFIX_PATH}")
78
+
# So pkg-config uses HIDAPI_ROOT_DIR too.
79
+
if(HIDAPI_ROOT_DIR)
80
+
list(APPEND CMAKE_PREFIX_PATH ${HIDAPI_ROOT_DIR})
81
+
endif()
82
+
pkg_check_modules(PC_HIDAPI_LIBUSB QUIET hidapi-libusb)
83
+
pkg_check_modules(PC_HIDAPI_HIDRAW QUIET hidapi-hidraw)
82
84
# Restore
83
85
set(CMAKE_PREFIX_PATH "${_old_prefix_path}")
84
86
endif()
85
87
86
88
# Actually search
87
-
find_library(HIDAPI_UNDECORATED_LIBRARY
88
-
NAMES hidapi
89
-
PATHS
90
-
"${HIDAPI_ROOT_DIR}"
91
-
PATH_SUFFIXES
92
-
lib)
89
+
find_library(
90
+
HIDAPI_UNDECORATED_LIBRARY
91
+
NAMES hidapi
92
+
PATHS "${HIDAPI_ROOT_DIR}"
93
+
PATH_SUFFIXES lib)
93
94
94
-
find_library(HIDAPI_LIBUSB_LIBRARY
95
-
NAMES hidapi hidapi-libusb
96
-
PATHS
97
-
"${HIDAPI_ROOT_DIR}"
98
-
PATH_SUFFIXES
99
-
lib
100
-
HINTS
101
-
${PC_HIDAPI_LIBUSB_LIBRARY_DIRS})
95
+
find_library(
96
+
HIDAPI_LIBUSB_LIBRARY
97
+
NAMES hidapi hidapi-libusb
98
+
PATHS "${HIDAPI_ROOT_DIR}"
99
+
PATH_SUFFIXES lib
100
+
HINTS ${PC_HIDAPI_LIBUSB_LIBRARY_DIRS})
102
101
103
102
if(CMAKE_SYSTEM MATCHES "Linux")
104
-
find_library(HIDAPI_HIDRAW_LIBRARY
105
-
NAMES hidapi-hidraw
106
-
HINTS
107
-
${PC_HIDAPI_HIDRAW_LIBRARY_DIRS})
103
+
find_library(
104
+
HIDAPI_HIDRAW_LIBRARY
105
+
NAMES hidapi-hidraw
106
+
HINTS ${PC_HIDAPI_HIDRAW_LIBRARY_DIRS})
108
107
endif()
109
108
110
-
find_path(HIDAPI_INCLUDE_DIR
111
-
NAMES hidapi.h
112
-
PATHS
113
-
"${HIDAPI_ROOT_DIR}"
114
-
PATH_SUFFIXES
115
-
hidapi
116
-
include
117
-
include/hidapi
118
-
HINTS
119
-
${PC_HIDAPI_HIDRAW_INCLUDE_DIRS}
120
-
${PC_HIDAPI_LIBUSB_INCLUDE_DIRS})
109
+
find_path(
110
+
HIDAPI_INCLUDE_DIR
111
+
NAMES hidapi.h
112
+
PATHS "${HIDAPI_ROOT_DIR}"
113
+
PATH_SUFFIXES hidapi include include/hidapi
114
+
HINTS ${PC_HIDAPI_HIDRAW_INCLUDE_DIRS} ${PC_HIDAPI_LIBUSB_INCLUDE_DIRS})
121
115
122
116
find_package(Threads QUIET)
123
117
···
127
121
set(HIDAPI_LIBRARY)
128
122
129
123
# First, try to use a preferred backend if supplied
130
-
if("${HIDAPI_FIND_COMPONENTS}" MATCHES "libusb" AND HIDAPI_LIBUSB_LIBRARY AND NOT HIDAPI_LIBRARY)
131
-
set(HIDAPI_LIBRARY ${HIDAPI_LIBUSB_LIBRARY})
124
+
if("${HIDAPI_FIND_COMPONENTS}" MATCHES "libusb"
125
+
AND HIDAPI_LIBUSB_LIBRARY
126
+
AND NOT HIDAPI_LIBRARY)
127
+
set(HIDAPI_LIBRARY ${HIDAPI_LIBUSB_LIBRARY})
132
128
endif()
133
-
if("${HIDAPI_FIND_COMPONENTS}" MATCHES "hidraw" AND HIDAPI_HIDRAW_LIBRARY AND NOT HIDAPI_LIBRARY)
134
-
set(HIDAPI_LIBRARY ${HIDAPI_HIDRAW_LIBRARY})
129
+
if("${HIDAPI_FIND_COMPONENTS}" MATCHES "hidraw"
130
+
AND HIDAPI_HIDRAW_LIBRARY
131
+
AND NOT HIDAPI_LIBRARY)
132
+
set(HIDAPI_LIBRARY ${HIDAPI_HIDRAW_LIBRARY})
135
133
endif()
136
134
137
135
# Then, if we don't have a preferred one, settle for anything.
138
136
if(NOT HIDAPI_LIBRARY)
139
-
if(HIDAPI_LIBUSB_LIBRARY)
140
-
set(HIDAPI_LIBRARY ${HIDAPI_LIBUSB_LIBRARY})
141
-
elseif(HIDAPI_HIDRAW_LIBRARY)
142
-
set(HIDAPI_LIBRARY ${HIDAPI_HIDRAW_LIBRARY})
143
-
elseif(HIDAPI_UNDECORATED_LIBRARY)
144
-
set(HIDAPI_LIBRARY ${HIDAPI_UNDECORATED_LIBRARY})
145
-
endif()
137
+
if(HIDAPI_LIBUSB_LIBRARY)
138
+
set(HIDAPI_LIBRARY ${HIDAPI_LIBUSB_LIBRARY})
139
+
elseif(HIDAPI_HIDRAW_LIBRARY)
140
+
set(HIDAPI_LIBRARY ${HIDAPI_HIDRAW_LIBRARY})
141
+
elseif(HIDAPI_UNDECORATED_LIBRARY)
142
+
set(HIDAPI_LIBRARY ${HIDAPI_UNDECORATED_LIBRARY})
143
+
endif()
146
144
endif()
147
145
148
146
###
149
147
# Determine if the various requested components are found.
150
148
###
151
149
set(_hidapi_component_required_vars)
150
+
152
151
foreach(_comp IN LISTS HIDAPI_FIND_COMPONENTS)
153
-
if("${_comp}" STREQUAL "any")
154
-
list(APPEND _hidapi_component_required_vars
155
-
HIDAPI_INCLUDE_DIR
156
-
HIDAPI_LIBRARY)
157
-
if(HIDAPI_INCLUDE_DIR AND EXISTS "${HIDAPI_LIBRARY}")
158
-
set(HIDAPI_any_FOUND TRUE)
159
-
mark_as_advanced(HIDAPI_INCLUDE_DIR)
160
-
else()
161
-
set(HIDAPI_any_FOUND FALSE)
162
-
endif()
152
+
if("${_comp}" STREQUAL "any")
153
+
list(APPEND _hidapi_component_required_vars HIDAPI_INCLUDE_DIR
154
+
HIDAPI_LIBRARY)
155
+
if(HIDAPI_INCLUDE_DIR AND EXISTS "${HIDAPI_LIBRARY}")
156
+
set(HIDAPI_any_FOUND TRUE)
157
+
mark_as_advanced(HIDAPI_INCLUDE_DIR)
158
+
else()
159
+
set(HIDAPI_any_FOUND FALSE)
160
+
endif()
163
161
164
-
elseif("${_comp}" STREQUAL "libusb")
165
-
list(APPEND _hidapi_component_required_vars HIDAPI_INCLUDE_DIR HIDAPI_LIBUSB_LIBRARY)
166
-
if(HIDAPI_INCLUDE_DIR AND EXISTS "${HIDAPI_LIBUSB_LIBRARY}")
167
-
set(HIDAPI_libusb_FOUND TRUE)
168
-
mark_as_advanced(HIDAPI_INCLUDE_DIR HIDAPI_LIBUSB_LIBRARY)
169
-
else()
170
-
set(HIDAPI_libusb_FOUND FALSE)
171
-
endif()
162
+
elseif("${_comp}" STREQUAL "libusb")
163
+
list(APPEND _hidapi_component_required_vars HIDAPI_INCLUDE_DIR
164
+
HIDAPI_LIBUSB_LIBRARY)
165
+
if(HIDAPI_INCLUDE_DIR AND EXISTS "${HIDAPI_LIBUSB_LIBRARY}")
166
+
set(HIDAPI_libusb_FOUND TRUE)
167
+
mark_as_advanced(HIDAPI_INCLUDE_DIR HIDAPI_LIBUSB_LIBRARY)
168
+
else()
169
+
set(HIDAPI_libusb_FOUND FALSE)
170
+
endif()
172
171
173
-
elseif("${_comp}" STREQUAL "hidraw")
174
-
list(APPEND _hidapi_component_required_vars HIDAPI_INCLUDE_DIR HIDAPI_HIDRAW_LIBRARY)
175
-
if(HIDAPI_INCLUDE_DIR AND EXISTS "${HIDAPI_HIDRAW_LIBRARY}")
176
-
set(HIDAPI_hidraw_FOUND TRUE)
177
-
mark_as_advanced(HIDAPI_INCLUDE_DIR HIDAPI_HIDRAW_LIBRARY)
178
-
else()
179
-
set(HIDAPI_hidraw_FOUND FALSE)
180
-
endif()
172
+
elseif("${_comp}" STREQUAL "hidraw")
173
+
list(APPEND _hidapi_component_required_vars HIDAPI_INCLUDE_DIR
174
+
HIDAPI_HIDRAW_LIBRARY)
175
+
if(HIDAPI_INCLUDE_DIR AND EXISTS "${HIDAPI_HIDRAW_LIBRARY}")
176
+
set(HIDAPI_hidraw_FOUND TRUE)
177
+
mark_as_advanced(HIDAPI_INCLUDE_DIR HIDAPI_HIDRAW_LIBRARY)
178
+
else()
179
+
set(HIDAPI_hidraw_FOUND FALSE)
180
+
endif()
181
181
182
-
else()
183
-
message(WARNING "${_comp} is not a recognized HIDAPI component")
184
-
set(HIDAPI_${_comp}_FOUND FALSE)
185
-
endif()
182
+
else()
183
+
message(WARNING "${_comp} is not a recognized HIDAPI component")
184
+
set(HIDAPI_${_comp}_FOUND FALSE)
185
+
endif()
186
186
endforeach()
187
187
unset(_comp)
188
188
···
190
190
# FPHSA call
191
191
###
192
192
include(FindPackageHandleStandardArgs)
193
-
find_package_handle_standard_args(HIDAPI
194
-
REQUIRED_VARS
195
-
${_hidapi_component_required_vars}
196
-
THREADS_FOUND
197
-
HANDLE_COMPONENTS)
193
+
find_package_handle_standard_args(
194
+
HIDAPI
195
+
REQUIRED_VARS ${_hidapi_component_required_vars} THREADS_FOUND
196
+
HANDLE_COMPONENTS)
198
197
if(HIDAPI_FOUND)
199
-
set(HIDAPI_LIBRARIES "${HIDAPI_LIBRARY}")
200
-
set(HIDAPI_INCLUDE_DIRS "${HIDAPI_INCLUDE_DIR}")
201
-
if(NOT TARGET HIDAPI::hidapi)
202
-
add_library(HIDAPI::hidapi UNKNOWN IMPORTED)
203
-
set_target_properties(HIDAPI::hidapi PROPERTIES
204
-
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
205
-
IMPORTED_LOCATION "${HIDAPI_LIBRARY}"
206
-
INTERFACE_INCLUDE_DIRECTORIES "${HIDAPI_INCLUDE_DIR}"
207
-
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
208
-
endif()
198
+
set(HIDAPI_LIBRARIES "${HIDAPI_LIBRARY}")
199
+
set(HIDAPI_INCLUDE_DIRS "${HIDAPI_INCLUDE_DIR}")
200
+
if(NOT TARGET HIDAPI::hidapi)
201
+
add_library(HIDAPI::hidapi UNKNOWN IMPORTED)
202
+
set_target_properties(
203
+
HIDAPI::hidapi
204
+
PROPERTIES IMPORTED_LINK_INTERFACE_LANGUAGES "C"
205
+
IMPORTED_LOCATION "${HIDAPI_LIBRARY}"
206
+
INTERFACE_INCLUDE_DIRECTORIES "${HIDAPI_INCLUDE_DIR}"
207
+
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
208
+
endif()
209
209
endif()
210
210
211
211
if(HIDAPI_libusb_FOUND AND NOT TARGET HIDAPI::hidapi-libusb)
212
-
add_library(HIDAPI::hidapi-libusb UNKNOWN IMPORTED)
213
-
set_target_properties(HIDAPI::hidapi-libusb PROPERTIES
214
-
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
215
-
IMPORTED_LOCATION "${HIDAPI_LIBUSB_LIBRARY}"
216
-
INTERFACE_INCLUDE_DIRECTORIES "${HIDAPI_INCLUDE_DIR}"
217
-
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
212
+
add_library(HIDAPI::hidapi-libusb UNKNOWN IMPORTED)
213
+
set_target_properties(
214
+
HIDAPI::hidapi-libusb
215
+
PROPERTIES IMPORTED_LINK_INTERFACE_LANGUAGES "C"
216
+
IMPORTED_LOCATION "${HIDAPI_LIBUSB_LIBRARY}"
217
+
INTERFACE_INCLUDE_DIRECTORIES "${HIDAPI_INCLUDE_DIR}"
218
+
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
218
219
endif()
219
220
220
221
if(HIDAPI_hidraw_FOUND AND NOT TARGET HIDAPI::hidapi-hidraw)
221
-
add_library(HIDAPI::hidapi-hidraw UNKNOWN IMPORTED)
222
-
set_target_properties(HIDAPI::hidapi-hidraw PROPERTIES
223
-
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
224
-
IMPORTED_LOCATION "${HIDAPI_HIDRAW_LIBRARY}"
225
-
INTERFACE_INCLUDE_DIRECTORIES "${HIDAPI_INCLUDE_DIR}"
226
-
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
222
+
add_library(HIDAPI::hidapi-hidraw UNKNOWN IMPORTED)
223
+
set_target_properties(
224
+
HIDAPI::hidapi-hidraw
225
+
PROPERTIES IMPORTED_LINK_INTERFACE_LANGUAGES "C"
226
+
IMPORTED_LOCATION "${HIDAPI_HIDRAW_LIBRARY}"
227
+
INTERFACE_INCLUDE_DIRECTORIES "${HIDAPI_INCLUDE_DIR}"
228
+
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
227
229
endif()
+44
-52
cmake/FindLibcheck.cmake
+44
-52
cmake/FindLibcheck.cmake
···
32
32
# ``LIBCHECK_ROOT_DIR``
33
33
# The root to search for libcheck.
34
34
35
-
set(LIBCHECK_ROOT_DIR "${LIBCHECK_ROOT_DIR}" CACHE PATH "Root to search for libcheck")
35
+
set(LIBCHECK_ROOT_DIR
36
+
"${LIBCHECK_ROOT_DIR}"
37
+
CACHE PATH "Root to search for libcheck")
36
38
37
39
find_package(PkgConfig QUIET)
38
40
if(PKG_CONFIG_FOUND)
···
45
47
# Restore
46
48
set(CMAKE_PREFIX_PATH "${_old_prefix_path}")
47
49
endif()
48
-
find_path(LIBCHECK_INCLUDE_DIR
49
-
NAMES
50
-
check.h
51
-
PATHS
52
-
${LIBCHECK_ROOT_DIR}
53
-
HINTS
54
-
${PC_LIBCHECK_INCLUDE_DIRS}
55
-
PATH_SUFFIXES
56
-
include
57
-
)
58
-
find_library(LIBCHECK_LIBRARY
59
-
NAMES
60
-
check_pic
61
-
check
62
-
PATHS
63
-
${LIBCHECK_ROOT_DIR}
64
-
HINTS
65
-
${PC_LIBCHECK_LIBRARY_DIRS}
66
-
PATH_SUFFIXES
67
-
lib
68
-
)
69
-
find_library(LIBCHECK_SUBUNIT_LIBRARY
70
-
NAMES
71
-
subunit
72
-
PATHS
73
-
${LIBCHECK_ROOT_DIR}
74
-
HINTS
75
-
${PC_LIBCHECK_LIBRARY_DIRS}
76
-
PATH_SUFFIXES
77
-
lib
78
-
)
50
+
find_path(
51
+
LIBCHECK_INCLUDE_DIR
52
+
NAMES check.h
53
+
PATHS ${LIBCHECK_ROOT_DIR}
54
+
HINTS ${PC_LIBCHECK_INCLUDE_DIRS}
55
+
PATH_SUFFIXES include)
56
+
find_library(
57
+
LIBCHECK_LIBRARY
58
+
NAMES check_pic check
59
+
PATHS ${LIBCHECK_ROOT_DIR}
60
+
HINTS ${PC_LIBCHECK_LIBRARY_DIRS}
61
+
PATH_SUFFIXES lib)
62
+
find_library(
63
+
LIBCHECK_SUBUNIT_LIBRARY
64
+
NAMES subunit
65
+
PATHS ${LIBCHECK_ROOT_DIR}
66
+
HINTS ${PC_LIBCHECK_LIBRARY_DIRS}
67
+
PATH_SUFFIXES lib)
79
68
find_library(LIBCHECK_LIBRT rt)
80
69
find_library(LIBCHECK_LIBM m)
81
70
···
87
76
endif()
88
77
89
78
include(FindPackageHandleStandardArgs)
90
-
find_package_handle_standard_args(Libcheck
91
-
REQUIRED_VARS
92
-
LIBCHECK_INCLUDE_DIR
93
-
LIBCHECK_LIBRARY
94
-
THREADS_FOUND
95
-
)
79
+
find_package_handle_standard_args(
80
+
Libcheck REQUIRED_VARS LIBCHECK_INCLUDE_DIR LIBCHECK_LIBRARY THREADS_FOUND)
96
81
if(LIBCHECK_FOUND)
97
82
if(NOT TARGET libcheck::check)
98
83
add_library(libcheck::check UNKNOWN IMPORTED)
99
84
100
-
set_target_properties(libcheck::check PROPERTIES
101
-
INTERFACE_INCLUDE_DIRECTORIES "${LIBCHECK_INCLUDE_DIR}")
102
-
set_target_properties(libcheck::check PROPERTIES
103
-
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
104
-
IMPORTED_LOCATION ${LIBCHECK_LIBRARY})
105
-
set_property(TARGET libcheck::check PROPERTY
106
-
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
85
+
set_target_properties(
86
+
libcheck::check
87
+
PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${LIBCHECK_INCLUDE_DIR}"
88
+
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
89
+
IMPORTED_LOCATION ${LIBCHECK_LIBRARY}
90
+
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
107
91
108
92
# if we found librt or libm, link them.
109
93
if(LIBCHECK_LIBRT)
110
-
set_property(TARGET libcheck::check APPEND PROPERTY
111
-
IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_LIBRT}")
94
+
set_property(
95
+
TARGET libcheck::check
96
+
APPEND
97
+
PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_LIBRT}")
112
98
endif()
113
99
if(LIBCHECK_LIBM)
114
-
set_property(TARGET libcheck::check APPEND PROPERTY
115
-
IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_LIBM}")
100
+
set_property(
101
+
TARGET libcheck::check
102
+
APPEND
103
+
PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_LIBM}")
116
104
endif()
117
105
if(LIBCHECK_SUBUNIT_LIBRARY)
118
-
set_property(TARGET libcheck::check APPEND PROPERTY
119
-
IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_SUBUNIT_LIBRARY}")
106
+
set_property(
107
+
TARGET libcheck::check
108
+
APPEND
109
+
PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES
110
+
"${LIBCHECK_SUBUNIT_LIBRARY}")
120
111
endif()
121
112
122
113
endif()
123
-
mark_as_advanced(LIBCHECK_INCLUDE_DIR LIBCHECK_LIBRARY LIBCHECK_SUBUNIT_LIBRARY)
114
+
mark_as_advanced(LIBCHECK_INCLUDE_DIR LIBCHECK_LIBRARY
115
+
LIBCHECK_SUBUNIT_LIBRARY)
124
116
endif()
125
117
mark_as_advanced(LIBCHECK_ROOT_DIR LIBCHECK_LIBRT LIBCHECK_LIBM)
+58
-70
cmake/FindOpenHMD.cmake
+58
-70
cmake/FindOpenHMD.cmake
···
30
30
# ``OPENHMD_ROOT_DIR``
31
31
# The root to search for OpenHMD.
32
32
33
-
set(OPENHMD_ROOT_DIR "${OPENHMD_ROOT_DIR}" CACHE PATH "Root to search for OpenHMD")
33
+
set(OPENHMD_ROOT_DIR
34
+
"${OPENHMD_ROOT_DIR}"
35
+
CACHE PATH "Root to search for OpenHMD")
34
36
35
37
find_package(PkgConfig QUIET)
36
38
if(PKG_CONFIG_FOUND)
···
44
46
set(CMAKE_PREFIX_PATH "${_old_prefix_path}")
45
47
endif()
46
48
47
-
find_path(OPENHMD_INCLUDE_DIR
48
-
NAMES
49
-
openhmd.h
50
-
PATHS
51
-
${OPENHMD_ROOT_DIR}
52
-
HINTS
53
-
${PC_OPENHMD_INCLUDE_DIRS}
54
-
PATH_SUFFIXES
55
-
include
56
-
openhmd
57
-
include/openhmd
58
-
)
59
-
find_library(OPENHMD_LIBRARY
60
-
NAMES
61
-
openhmd
62
-
PATHS
63
-
${OPENHMD_ROOT_DIR}
64
-
${OPENHMD_ROOT_DIR}/build
65
-
HINTS
66
-
${PC_OPENHMD_LIBRARY_DIRS}
67
-
PATH_SUFFIXES
68
-
lib
69
-
)
70
-
71
-
72
-
if(NOT WIN32)
73
-
find_library(OPENHMD_LIBRT rt)
74
-
find_library(OPENHMD_LIBM m)
75
-
endif()
49
+
find_path(
50
+
OPENHMD_INCLUDE_DIR
51
+
NAMES openhmd.h
52
+
PATHS ${OPENHMD_ROOT_DIR}
53
+
HINTS ${PC_OPENHMD_INCLUDE_DIRS}
54
+
PATH_SUFFIXES include openhmd include/openhmd)
55
+
find_library(
56
+
OPENHMD_LIBRARY
57
+
NAMES openhmd
58
+
PATHS ${OPENHMD_ROOT_DIR} ${OPENHMD_ROOT_DIR}/build
59
+
HINTS ${PC_OPENHMD_LIBRARY_DIRS}
60
+
PATH_SUFFIXES lib)
61
+
find_library(OPENHMD_LIBRT rt)
62
+
find_library(OPENHMD_LIBM m)
76
63
77
64
find_package(Threads QUIET)
78
65
79
66
set(_ohmd_extra_deps)
80
67
81
68
set(OPENHMD_HIDAPI_TYPE)
82
-
if(OPENHMD_LIBRARY AND "${OPENHMD_LIBRARY}" MATCHES "${CMAKE_STATIC_LIBRARY_SUFFIX}")
83
-
# Looks like a static library
84
-
if(PC_OPENHMD_FOUND)
85
-
# See if we need a particular hidapi.
86
-
list(REMOVE_ITEM PC_OPENHMD_LIBRARIES openhmd)
87
-
if("${PC_OPENHMD_LIBRARIES}" MATCHES hidapi-libusb)
88
-
set(OPENHMD_HIDAPI_TYPE libusb)
89
-
find_package(HIDAPI QUIET COMPONENTS libusb)
90
-
list(APPEND _ohmd_extra_deps HIDAPI_libusb_FOUND)
91
-
elseif("${PC_OPENHMD_LIBRARIES}" MATCHES hidapi-hidraw)
92
-
set(OPENHMD_HIDAPI_TYPE hidraw)
93
-
find_package(HIDAPI QUIET COMPONENTS hidraw)
94
-
list(APPEND _ohmd_extra_deps HIDAPI_hidraw_FOUND)
95
-
endif()
96
-
endif()
97
-
if(NOT PC_OPENHMD_FOUND OR NOT OPENHMD_HIDAPI_TYPE)
98
-
# Undifferentiated
99
-
set(OPENHMD_HIDAPI_TYPE undifferentiated)
100
-
find_package(HIDAPI QUIET)
101
-
list(APPEND _ohmd_extra_deps HIDAPI_FOUND)
69
+
if(OPENHMD_LIBRARY AND "${OPENHMD_LIBRARY}" MATCHES
70
+
"${CMAKE_STATIC_LIBRARY_SUFFIX}")
71
+
# Looks like a static library
72
+
if(PC_OPENHMD_FOUND)
73
+
# See if we need a particular hidapi.
74
+
list(REMOVE_ITEM PC_OPENHMD_LIBRARIES openhmd)
75
+
if("${PC_OPENHMD_LIBRARIES}" MATCHES hidapi-libusb)
76
+
set(OPENHMD_HIDAPI_TYPE libusb)
77
+
find_package(HIDAPI QUIET COMPONENTS libusb)
78
+
list(APPEND _ohmd_extra_deps HIDAPI_libusb_FOUND)
79
+
elseif("${PC_OPENHMD_LIBRARIES}" MATCHES hidapi-hidraw)
80
+
set(OPENHMD_HIDAPI_TYPE hidraw)
81
+
find_package(HIDAPI QUIET COMPONENTS hidraw)
82
+
list(APPEND _ohmd_extra_deps HIDAPI_hidraw_FOUND)
102
83
endif()
84
+
endif()
85
+
if(NOT PC_OPENHMD_FOUND OR NOT OPENHMD_HIDAPI_TYPE)
86
+
# Undifferentiated
87
+
set(OPENHMD_HIDAPI_TYPE undifferentiated)
88
+
find_package(HIDAPI QUIET)
89
+
list(APPEND _ohmd_extra_deps HIDAPI_FOUND)
90
+
endif()
103
91
endif()
104
92
105
93
include(FindPackageHandleStandardArgs)
106
-
find_package_handle_standard_args(OpenHMD
107
-
REQUIRED_VARS
108
-
OPENHMD_INCLUDE_DIR
109
-
OPENHMD_LIBRARY
110
-
THREADS_FOUND
111
-
)
94
+
find_package_handle_standard_args(
95
+
OpenHMD REQUIRED_VARS OPENHMD_INCLUDE_DIR OPENHMD_LIBRARY THREADS_FOUND)
112
96
if(OPENHMD_FOUND)
113
97
set(OPENHMD_INCLUDE_DIRS "${OPENHMD_INCLUDE_DIR}")
114
98
set(OPENHMD_LIBRARIES "${OPENHMD_LIBRARY}")
115
99
if(NOT TARGET OpenHMD::OpenHMD)
116
100
add_library(OpenHMD::OpenHMD UNKNOWN IMPORTED)
117
101
endif()
118
-
set_target_properties(OpenHMD::OpenHMD PROPERTIES
119
-
INTERFACE_INCLUDE_DIRECTORIES "${OPENHMD_INCLUDE_DIR}")
120
-
set_target_properties(OpenHMD::OpenHMD PROPERTIES
121
-
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
122
-
IMPORTED_LOCATION "${OPENHMD_LIBRARY}")
123
-
124
-
set_property(TARGET OpenHMD::OpenHMD PROPERTY
125
-
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
102
+
set_target_properties(
103
+
OpenHMD::OpenHMD
104
+
PROPERTIES IMPORTED_LOCATION "${OPENHMD_LIBRARY}"
105
+
INTERFACE_INCLUDE_DIRECTORIES "${OPENHMD_INCLUDE_DIR}"
106
+
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
107
+
IMPORTED_LINK_INTERFACE_LIBRARIES Threads::Threads)
126
108
127
109
if("${OPENHMD_HIDAPI_TYPE}" STREQUAL libusb)
128
-
set_property(TARGET OpenHMD::OpenHMD APPEND PROPERTY
129
-
IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi-libusb)
110
+
set_property(
111
+
TARGET OpenHMD::OpenHMD
112
+
APPEND
113
+
PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi-libusb)
130
114
list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi-libusb)
131
115
elseif("${OPENHMD_HIDAPI_TYPE}" STREQUAL hidraw)
132
-
set_property(TARGET OpenHMD::OpenHMD APPEND PROPERTY
133
-
IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi-hidraw)
116
+
set_property(
117
+
TARGET OpenHMD::OpenHMD
118
+
APPEND
119
+
PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi-hidraw)
134
120
list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi-hidraw)
135
121
elseif("${OPENHMD_HIDAPI_TYPE}" STREQUAL undifferentiated)
136
-
set_property(TARGET OpenHMD::OpenHMD APPEND PROPERTY
137
-
IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi)
122
+
set_property(
123
+
TARGET OpenHMD::OpenHMD
124
+
APPEND
125
+
PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi)
138
126
list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi)
139
127
endif()
140
128
mark_as_advanced(OPENHMD_INCLUDE_DIR OPENHMD_LIBRARY)
+20
-27
cmake/FindcJSON.cmake
+20
-27
cmake/FindcJSON.cmake
···
28
28
# ``CJSON_ROOT_DIR``
29
29
# The root to search for cJSON.
30
30
31
-
set(CJSON_ROOT_DIR "${CJSON_ROOT_DIR}" CACHE PATH "Root to search for cJSON")
31
+
set(CJSON_ROOT_DIR
32
+
"${CJSON_ROOT_DIR}"
33
+
CACHE PATH "Root to search for cJSON")
32
34
33
-
find_path(CJSON_INCLUDE_DIR
34
-
NAMES
35
-
cjson/cJSON.h
36
-
PATHS
37
-
${CJSON_ROOT_DIR}
38
-
PATH_SUFFIXES
39
-
include
40
-
)
41
-
find_library(CJSON_LIBRARY
42
-
NAMES
43
-
cjson
44
-
PATHS
45
-
${CJSON_ROOT_DIR}
46
-
PATH_SUFFIXES
47
-
lib
48
-
)
35
+
find_path(
36
+
CJSON_INCLUDE_DIR
37
+
NAMES cjson/cJSON.h
38
+
PATHS ${CJSON_ROOT_DIR}
39
+
PATH_SUFFIXES include)
40
+
find_library(
41
+
CJSON_LIBRARY
42
+
NAMES cjson
43
+
PATHS ${CJSON_ROOT_DIR}
44
+
PATH_SUFFIXES lib)
49
45
50
46
include(FindPackageHandleStandardArgs)
51
-
find_package_handle_standard_args(cJSON
52
-
REQUIRED_VARS
53
-
CJSON_INCLUDE_DIR
54
-
CJSON_LIBRARY
55
-
)
47
+
find_package_handle_standard_args(cJSON REQUIRED_VARS CJSON_INCLUDE_DIR
48
+
CJSON_LIBRARY)
56
49
if(CJSON_FOUND)
57
50
set(CJSON_INCLUDE_DIRS "${CJSON_INCLUDE_DIR}")
58
51
set(CJSON_LIBRARIES "${CJSON_LIBRARY}")
59
52
if(NOT TARGET cJSON::cJSON)
60
53
add_library(cJSON::cJSON UNKNOWN IMPORTED)
61
54
endif()
62
-
set_target_properties(cJSON::cJSON PROPERTIES
63
-
INTERFACE_INCLUDE_DIRECTORIES "${CJSON_INCLUDE_DIR}")
64
-
set_target_properties(cJSON::cJSON PROPERTIES
65
-
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
66
-
IMPORTED_LOCATION "${CJSON_LIBRARY}")
55
+
set_target_properties(cJSON::cJSON PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
56
+
"${CJSON_INCLUDE_DIR}")
57
+
set_target_properties(
58
+
cJSON::cJSON PROPERTIES IMPORTED_LINK_INTERFACE_LANGUAGES "C"
59
+
IMPORTED_LOCATION "${CJSON_LIBRARY}")
67
60
mark_as_advanced(CJSON_INCLUDE_DIR CJSON_LIBRARY)
68
61
endif()
69
62
mark_as_advanced(CJSON_ROOT_DIR)