The open source OpenXR runtime
1# Copyright 2019-2020, Collabora, Ltd.
2# SPDX-License-Identifier: BSL-1.0
3# Distributed under the Boost Software License, Version 1.0.
4# (See accompanying file LICENSE_1_0.txt or copy at
5# http://www.boost.org/LICENSE_1_0.txt)
6#
7# Original Author:
8# 2019-2020 Ryan Pavlik <ryan.pavlik@collabora.com>
9
10#.rst:
11# FindcJSON
12# ---------------
13#
14# Find the cJSON lightweight JSON parser
15#
16# Targets
17# ^^^^^^^
18#
19# If successful, the following import target is created.
20#
21# ``cJSON::cJSON``
22#
23# Cache variables
24# ^^^^^^^^^^^^^^^
25#
26# The following cache variable may also be set to assist/control the operation of this module:
27#
28# ``CJSON_ROOT_DIR``
29# The root to search for cJSON.
30
31set(CJSON_ROOT_DIR
32 "${CJSON_ROOT_DIR}"
33 CACHE PATH "Root to search for cJSON")
34
35find_path(
36 CJSON_INCLUDE_DIR
37 NAMES cjson/cJSON.h
38 PATHS ${CJSON_ROOT_DIR}
39 PATH_SUFFIXES include)
40find_library(
41 CJSON_LIBRARY
42 NAMES cjson
43 PATHS ${CJSON_ROOT_DIR}
44 PATH_SUFFIXES lib)
45
46include(FindPackageHandleStandardArgs)
47find_package_handle_standard_args(cJSON REQUIRED_VARS CJSON_INCLUDE_DIR
48 CJSON_LIBRARY)
49if(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)
61endif()
62mark_as_advanced(CJSON_ROOT_DIR)