The open source OpenXR runtime

cmake: Update scripts from shared module repo.

authored by

Ryan Pavlik and committed by
Jakob Bornecrantz
72662d91 9a398b7d

+251 -266
+10
cmake/.cmake-format.json
···
··· 1 + { 2 + "tab_size": 4, 3 + "dangle_parens": false, 4 + "line_ending": "unix", 5 + "command_case": "canonical", 6 + "keyword_case": "upper", 7 + "first_comment_is_literal": true, 8 + "literal_comment_pattern": "(^[.]rst)|(#+)", 9 + "enable_markup": false 10 + }
+119 -117
cmake/FindHIDAPI.cmake
··· 1 #.rst: 2 # FindHIDAPI 3 # ---------- 4 - # 5 # Try to find HIDAPI library, from http://www.signal11.us/oss/hidapi/ 6 # 7 # Cache Variables: (probably not for direct use in your scripts) ··· 23 # 24 # IMPORTED Targets 25 # ^^^^^^^^^^^^^^^^ 26 - 27 # This module defines :prop_tgt:`IMPORTED` target ``HIDAPI::hidapi`` (in all cases or 28 # if no components specified), ``HIDAPI::hidapi-libusb`` (if you requested the libusb component), 29 # and ``HIDAPI::hidapi-hidraw`` (if you requested the hidraw component), ··· 50 # (See accompanying file LICENSE_1_0.txt or copy at 51 # http://www.boost.org/LICENSE_1_0.txt) 52 53 - set(HIDAPI_ROOT_DIR "${HIDAPI_ROOT_DIR}" CACHE PATH "Root to search for HIDAPI") 54 55 # Clean up components 56 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() 61 62 - if(NOT ${CMAKE_SYSTEM} MATCHES "Linux") 63 - # hidraw is only on linux 64 - list(REMOVE HIDAPI_FIND_COMPONENTS hidraw) 65 - endif() 66 endif() 67 if(NOT HIDAPI_FIND_COMPONENTS) 68 - # Default to any 69 - set(HIDAPI_FIND_COMPONENTS any) 70 endif() 71 72 # Ask pkg-config for hints 73 find_package(PkgConfig QUIET) 74 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) 82 # Restore 83 set(CMAKE_PREFIX_PATH "${_old_prefix_path}") 84 endif() 85 86 # Actually search 87 - find_library(HIDAPI_UNDECORATED_LIBRARY 88 - NAMES hidapi 89 - PATHS 90 - "${HIDAPI_ROOT_DIR}" 91 - PATH_SUFFIXES 92 - lib) 93 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}) 102 103 if(CMAKE_SYSTEM MATCHES "Linux") 104 - find_library(HIDAPI_HIDRAW_LIBRARY 105 - NAMES hidapi-hidraw 106 - HINTS 107 - ${PC_HIDAPI_HIDRAW_LIBRARY_DIRS}) 108 endif() 109 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}) 121 122 find_package(Threads QUIET) 123 ··· 127 set(HIDAPI_LIBRARY) 128 129 # 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}) 132 endif() 133 - if("${HIDAPI_FIND_COMPONENTS}" MATCHES "hidraw" AND HIDAPI_HIDRAW_LIBRARY AND NOT HIDAPI_LIBRARY) 134 - set(HIDAPI_LIBRARY ${HIDAPI_HIDRAW_LIBRARY}) 135 endif() 136 137 # Then, if we don't have a preferred one, settle for anything. 138 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() 146 endif() 147 148 ### 149 # Determine if the various requested components are found. 150 ### 151 set(_hidapi_component_required_vars) 152 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() 163 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() 172 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() 181 182 - else() 183 - message(WARNING "${_comp} is not a recognized HIDAPI component") 184 - set(HIDAPI_${_comp}_FOUND FALSE) 185 - endif() 186 endforeach() 187 unset(_comp) 188 ··· 190 # FPHSA call 191 ### 192 include(FindPackageHandleStandardArgs) 193 - find_package_handle_standard_args(HIDAPI 194 - REQUIRED_VARS 195 - ${_hidapi_component_required_vars} 196 - THREADS_FOUND 197 - HANDLE_COMPONENTS) 198 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() 209 endif() 210 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) 218 endif() 219 220 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) 227 endif()
··· 1 #.rst: 2 # FindHIDAPI 3 # ---------- 4 + # 5 # Try to find HIDAPI library, from http://www.signal11.us/oss/hidapi/ 6 # 7 # Cache Variables: (probably not for direct use in your scripts) ··· 23 # 24 # IMPORTED Targets 25 # ^^^^^^^^^^^^^^^^ 26 + # 27 # This module defines :prop_tgt:`IMPORTED` target ``HIDAPI::hidapi`` (in all cases or 28 # if no components specified), ``HIDAPI::hidapi-libusb`` (if you requested the libusb component), 29 # and ``HIDAPI::hidapi-hidraw`` (if you requested the hidraw component), ··· 50 # (See accompanying file LICENSE_1_0.txt or copy at 51 # http://www.boost.org/LICENSE_1_0.txt) 52 53 + set(HIDAPI_ROOT_DIR 54 + "${HIDAPI_ROOT_DIR}" 55 + CACHE PATH "Root to search for HIDAPI") 56 57 # Clean up components 58 if(HIDAPI_FIND_COMPONENTS) 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() 63 64 + if(NOT ${CMAKE_SYSTEM} MATCHES "Linux") 65 + # hidraw is only on linux 66 + list(REMOVE HIDAPI_FIND_COMPONENTS hidraw) 67 + endif() 68 endif() 69 if(NOT HIDAPI_FIND_COMPONENTS) 70 + # Default to any 71 + set(HIDAPI_FIND_COMPONENTS any) 72 endif() 73 74 # Ask pkg-config for hints 75 find_package(PkgConfig QUIET) 76 if(PKG_CONFIG_FOUND) 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) 84 # Restore 85 set(CMAKE_PREFIX_PATH "${_old_prefix_path}") 86 endif() 87 88 # Actually search 89 + find_library( 90 + HIDAPI_UNDECORATED_LIBRARY 91 + NAMES hidapi 92 + PATHS "${HIDAPI_ROOT_DIR}" 93 + PATH_SUFFIXES lib) 94 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}) 101 102 if(CMAKE_SYSTEM MATCHES "Linux") 103 + find_library( 104 + HIDAPI_HIDRAW_LIBRARY 105 + NAMES hidapi-hidraw 106 + HINTS ${PC_HIDAPI_HIDRAW_LIBRARY_DIRS}) 107 endif() 108 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}) 115 116 find_package(Threads QUIET) 117 ··· 121 set(HIDAPI_LIBRARY) 122 123 # First, try to use a preferred backend if supplied 124 + if("${HIDAPI_FIND_COMPONENTS}" MATCHES "libusb" 125 + AND HIDAPI_LIBUSB_LIBRARY 126 + AND NOT HIDAPI_LIBRARY) 127 + set(HIDAPI_LIBRARY ${HIDAPI_LIBUSB_LIBRARY}) 128 endif() 129 + if("${HIDAPI_FIND_COMPONENTS}" MATCHES "hidraw" 130 + AND HIDAPI_HIDRAW_LIBRARY 131 + AND NOT HIDAPI_LIBRARY) 132 + set(HIDAPI_LIBRARY ${HIDAPI_HIDRAW_LIBRARY}) 133 endif() 134 135 # Then, if we don't have a preferred one, settle for anything. 136 if(NOT HIDAPI_LIBRARY) 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() 144 endif() 145 146 ### 147 # Determine if the various requested components are found. 148 ### 149 set(_hidapi_component_required_vars) 150 + 151 foreach(_comp IN LISTS HIDAPI_FIND_COMPONENTS) 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() 161 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() 171 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 182 + else() 183 + message(WARNING "${_comp} is not a recognized HIDAPI component") 184 + set(HIDAPI_${_comp}_FOUND FALSE) 185 + endif() 186 endforeach() 187 unset(_comp) 188 ··· 190 # FPHSA call 191 ### 192 include(FindPackageHandleStandardArgs) 193 + find_package_handle_standard_args( 194 + HIDAPI 195 + REQUIRED_VARS ${_hidapi_component_required_vars} THREADS_FOUND 196 + HANDLE_COMPONENTS) 197 if(HIDAPI_FOUND) 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 endif() 210 211 if(HIDAPI_libusb_FOUND AND NOT TARGET HIDAPI::hidapi-libusb) 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) 219 endif() 220 221 if(HIDAPI_hidraw_FOUND AND NOT TARGET HIDAPI::hidapi-hidraw) 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) 229 endif()
+44 -52
cmake/FindLibcheck.cmake
··· 32 # ``LIBCHECK_ROOT_DIR`` 33 # The root to search for libcheck. 34 35 - set(LIBCHECK_ROOT_DIR "${LIBCHECK_ROOT_DIR}" CACHE PATH "Root to search for libcheck") 36 37 find_package(PkgConfig QUIET) 38 if(PKG_CONFIG_FOUND) ··· 45 # Restore 46 set(CMAKE_PREFIX_PATH "${_old_prefix_path}") 47 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 - ) 79 find_library(LIBCHECK_LIBRT rt) 80 find_library(LIBCHECK_LIBM m) 81 ··· 87 endif() 88 89 include(FindPackageHandleStandardArgs) 90 - find_package_handle_standard_args(Libcheck 91 - REQUIRED_VARS 92 - LIBCHECK_INCLUDE_DIR 93 - LIBCHECK_LIBRARY 94 - THREADS_FOUND 95 - ) 96 if(LIBCHECK_FOUND) 97 if(NOT TARGET libcheck::check) 98 add_library(libcheck::check UNKNOWN IMPORTED) 99 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) 107 108 # if we found librt or libm, link them. 109 if(LIBCHECK_LIBRT) 110 - set_property(TARGET libcheck::check APPEND PROPERTY 111 - IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_LIBRT}") 112 endif() 113 if(LIBCHECK_LIBM) 114 - set_property(TARGET libcheck::check APPEND PROPERTY 115 - IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_LIBM}") 116 endif() 117 if(LIBCHECK_SUBUNIT_LIBRARY) 118 - set_property(TARGET libcheck::check APPEND PROPERTY 119 - IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_SUBUNIT_LIBRARY}") 120 endif() 121 122 endif() 123 - mark_as_advanced(LIBCHECK_INCLUDE_DIR LIBCHECK_LIBRARY LIBCHECK_SUBUNIT_LIBRARY) 124 endif() 125 mark_as_advanced(LIBCHECK_ROOT_DIR LIBCHECK_LIBRT LIBCHECK_LIBM)
··· 32 # ``LIBCHECK_ROOT_DIR`` 33 # The root to search for libcheck. 34 35 + set(LIBCHECK_ROOT_DIR 36 + "${LIBCHECK_ROOT_DIR}" 37 + CACHE PATH "Root to search for libcheck") 38 39 find_package(PkgConfig QUIET) 40 if(PKG_CONFIG_FOUND) ··· 47 # Restore 48 set(CMAKE_PREFIX_PATH "${_old_prefix_path}") 49 endif() 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) 68 find_library(LIBCHECK_LIBRT rt) 69 find_library(LIBCHECK_LIBM m) 70 ··· 76 endif() 77 78 include(FindPackageHandleStandardArgs) 79 + find_package_handle_standard_args( 80 + Libcheck REQUIRED_VARS LIBCHECK_INCLUDE_DIR LIBCHECK_LIBRARY THREADS_FOUND) 81 if(LIBCHECK_FOUND) 82 if(NOT TARGET libcheck::check) 83 add_library(libcheck::check UNKNOWN IMPORTED) 84 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) 91 92 # if we found librt or libm, link them. 93 if(LIBCHECK_LIBRT) 94 + set_property( 95 + TARGET libcheck::check 96 + APPEND 97 + PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_LIBRT}") 98 endif() 99 if(LIBCHECK_LIBM) 100 + set_property( 101 + TARGET libcheck::check 102 + APPEND 103 + PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES "${LIBCHECK_LIBM}") 104 endif() 105 if(LIBCHECK_SUBUNIT_LIBRARY) 106 + set_property( 107 + TARGET libcheck::check 108 + APPEND 109 + PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES 110 + "${LIBCHECK_SUBUNIT_LIBRARY}") 111 endif() 112 113 endif() 114 + mark_as_advanced(LIBCHECK_INCLUDE_DIR LIBCHECK_LIBRARY 115 + LIBCHECK_SUBUNIT_LIBRARY) 116 endif() 117 mark_as_advanced(LIBCHECK_ROOT_DIR LIBCHECK_LIBRT LIBCHECK_LIBM)
+58 -70
cmake/FindOpenHMD.cmake
··· 30 # ``OPENHMD_ROOT_DIR`` 31 # The root to search for OpenHMD. 32 33 - set(OPENHMD_ROOT_DIR "${OPENHMD_ROOT_DIR}" CACHE PATH "Root to search for OpenHMD") 34 35 find_package(PkgConfig QUIET) 36 if(PKG_CONFIG_FOUND) ··· 44 set(CMAKE_PREFIX_PATH "${_old_prefix_path}") 45 endif() 46 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() 76 77 find_package(Threads QUIET) 78 79 set(_ohmd_extra_deps) 80 81 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) 102 endif() 103 endif() 104 105 include(FindPackageHandleStandardArgs) 106 - find_package_handle_standard_args(OpenHMD 107 - REQUIRED_VARS 108 - OPENHMD_INCLUDE_DIR 109 - OPENHMD_LIBRARY 110 - THREADS_FOUND 111 - ) 112 if(OPENHMD_FOUND) 113 set(OPENHMD_INCLUDE_DIRS "${OPENHMD_INCLUDE_DIR}") 114 set(OPENHMD_LIBRARIES "${OPENHMD_LIBRARY}") 115 if(NOT TARGET OpenHMD::OpenHMD) 116 add_library(OpenHMD::OpenHMD UNKNOWN IMPORTED) 117 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) 126 127 if("${OPENHMD_HIDAPI_TYPE}" STREQUAL libusb) 128 - set_property(TARGET OpenHMD::OpenHMD APPEND PROPERTY 129 - IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi-libusb) 130 list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi-libusb) 131 elseif("${OPENHMD_HIDAPI_TYPE}" STREQUAL hidraw) 132 - set_property(TARGET OpenHMD::OpenHMD APPEND PROPERTY 133 - IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi-hidraw) 134 list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi-hidraw) 135 elseif("${OPENHMD_HIDAPI_TYPE}" STREQUAL undifferentiated) 136 - set_property(TARGET OpenHMD::OpenHMD APPEND PROPERTY 137 - IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi) 138 list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi) 139 endif() 140 mark_as_advanced(OPENHMD_INCLUDE_DIR OPENHMD_LIBRARY)
··· 30 # ``OPENHMD_ROOT_DIR`` 31 # The root to search for OpenHMD. 32 33 + set(OPENHMD_ROOT_DIR 34 + "${OPENHMD_ROOT_DIR}" 35 + CACHE PATH "Root to search for OpenHMD") 36 37 find_package(PkgConfig QUIET) 38 if(PKG_CONFIG_FOUND) ··· 46 set(CMAKE_PREFIX_PATH "${_old_prefix_path}") 47 endif() 48 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) 63 64 find_package(Threads QUIET) 65 66 set(_ohmd_extra_deps) 67 68 set(OPENHMD_HIDAPI_TYPE) 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) 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() 91 endif() 92 93 include(FindPackageHandleStandardArgs) 94 + find_package_handle_standard_args( 95 + OpenHMD REQUIRED_VARS OPENHMD_INCLUDE_DIR OPENHMD_LIBRARY THREADS_FOUND) 96 if(OPENHMD_FOUND) 97 set(OPENHMD_INCLUDE_DIRS "${OPENHMD_INCLUDE_DIR}") 98 set(OPENHMD_LIBRARIES "${OPENHMD_LIBRARY}") 99 if(NOT TARGET OpenHMD::OpenHMD) 100 add_library(OpenHMD::OpenHMD UNKNOWN IMPORTED) 101 endif() 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) 108 109 if("${OPENHMD_HIDAPI_TYPE}" STREQUAL libusb) 110 + set_property( 111 + TARGET OpenHMD::OpenHMD 112 + APPEND 113 + PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi-libusb) 114 list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi-libusb) 115 elseif("${OPENHMD_HIDAPI_TYPE}" STREQUAL hidraw) 116 + set_property( 117 + TARGET OpenHMD::OpenHMD 118 + APPEND 119 + PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi-hidraw) 120 list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi-hidraw) 121 elseif("${OPENHMD_HIDAPI_TYPE}" STREQUAL undifferentiated) 122 + set_property( 123 + TARGET OpenHMD::OpenHMD 124 + APPEND 125 + PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES HIDAPI::hidapi) 126 list(APPEND OPENHMD_LIBRARIES HIDAPI::hidapi) 127 endif() 128 mark_as_advanced(OPENHMD_INCLUDE_DIR OPENHMD_LIBRARY)
+20 -27
cmake/FindcJSON.cmake
··· 28 # ``CJSON_ROOT_DIR`` 29 # The root to search for cJSON. 30 31 - set(CJSON_ROOT_DIR "${CJSON_ROOT_DIR}" CACHE PATH "Root to search for cJSON") 32 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 - ) 49 50 include(FindPackageHandleStandardArgs) 51 - find_package_handle_standard_args(cJSON 52 - REQUIRED_VARS 53 - CJSON_INCLUDE_DIR 54 - CJSON_LIBRARY 55 - ) 56 if(CJSON_FOUND) 57 set(CJSON_INCLUDE_DIRS "${CJSON_INCLUDE_DIR}") 58 set(CJSON_LIBRARIES "${CJSON_LIBRARY}") 59 if(NOT TARGET cJSON::cJSON) 60 add_library(cJSON::cJSON UNKNOWN IMPORTED) 61 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}") 67 mark_as_advanced(CJSON_INCLUDE_DIR CJSON_LIBRARY) 68 endif() 69 mark_as_advanced(CJSON_ROOT_DIR)
··· 28 # ``CJSON_ROOT_DIR`` 29 # The root to search for cJSON. 30 31 + set(CJSON_ROOT_DIR 32 + "${CJSON_ROOT_DIR}" 33 + CACHE PATH "Root to search for cJSON") 34 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) 45 46 include(FindPackageHandleStandardArgs) 47 + find_package_handle_standard_args(cJSON REQUIRED_VARS CJSON_INCLUDE_DIR 48 + CJSON_LIBRARY) 49 if(CJSON_FOUND) 50 set(CJSON_INCLUDE_DIRS "${CJSON_INCLUDE_DIR}") 51 set(CJSON_LIBRARIES "${CJSON_LIBRARY}") 52 if(NOT TARGET cJSON::cJSON) 53 add_library(cJSON::cJSON UNKNOWN IMPORTED) 54 endif() 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}") 60 mark_as_advanced(CJSON_INCLUDE_DIR CJSON_LIBRARY) 61 endif() 62 mark_as_advanced(CJSON_ROOT_DIR)