]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/hana/cmake/FindMeta.cmake
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / hana / cmake / FindMeta.cmake
CommitLineData
b32b8144 1# Copyright Louis Dionne 2013-2017
7c673cae
FG
2# Distributed under the Boost Software License, Version 1.0.
3# (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
4#
5# This file was adapted from FindMeta.cmake at https://github.com/ericniebler/meta.
6#
7#
8# This CMake module finds the Meta include directory. This module sets the
9# following CMake variables:
10#
11# Meta_FOUND
12# Set to 1 when the Meta include directory is found, 0 otherwise.
13#
14# Meta_INCLUDE_DIR
15# If the Meta include directory is found, this is set to the path of that
16# directory. Otherwise, this is not set.
17#
18#
19# The following variables can be used to customize the behavior of the module:
20#
21# Meta_INCLUDE_DIR
22# The path to the Meta include directory. When set, this will be used as-is.
23#
24# Meta_CLONE_IF_MISSING
25# If the Meta include directory can't be found and this is set to true,
26# the Meta project will be cloned locally.
27
28if (NOT EXISTS "${Meta_INCLUDE_DIR}")
29 find_path(Meta_INCLUDE_DIR NAMES meta/meta.hpp
30 DOC "Meta library header files")
31endif()
32
33if (NOT EXISTS "${Meta_INCLUDE_DIR}" AND Meta_CLONE_IF_MISSING)
34 include(ExternalProject)
35 ExternalProject_Add(meta EXCLUDE_FROM_ALL 1
36 GIT_REPOSITORY https://github.com/ericniebler/meta
37 TIMEOUT 5
38 CMAKE_ARGS -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
39 PREFIX "${CMAKE_CURRENT_BINARY_DIR}"
40 BUILD_COMMAND "" # Disable build step
41 INSTALL_COMMAND "" # Disable install step
42 TEST_COMMAND "" # Disable test step
43 )
44
45 ExternalProject_Get_Property(meta SOURCE_DIR)
46 set(Meta_INCLUDE_DIR "${SOURCE_DIR}/include")
47endif()
48
49include(FindPackageHandleStandardArgs)
50find_package_handle_standard_args(Meta
51 FOUND_VAR Meta_FOUND
52 REQUIRED_VARS Meta_INCLUDE_DIR)