Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Improve how we search for pybind11
[simgrid.git] / tools / cmake / Modules / pybind11Targets.cmake
1 # Generated by CMake
2
3 if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
4    message(FATAL_ERROR "CMake >= 2.6.0 required")
5 endif()
6 cmake_policy(PUSH)
7 cmake_policy(VERSION 2.6)
8 #----------------------------------------------------------------
9 # Generated CMake target import file.
10 #----------------------------------------------------------------
11
12 # Commands may need to know the format version.
13 set(CMAKE_IMPORT_FILE_VERSION 1)
14
15 # Protect against multiple inclusion, which would fail when already imported targets are added once more.
16 set(_targetsDefined)
17 set(_targetsNotDefined)
18 set(_expectedTargets)
19 foreach(_expectedTarget pybind11::pybind11 pybind11::module pybind11::embed)
20   list(APPEND _expectedTargets ${_expectedTarget})
21   if(NOT TARGET ${_expectedTarget})
22     list(APPEND _targetsNotDefined ${_expectedTarget})
23   endif()
24   if(TARGET ${_expectedTarget})
25     list(APPEND _targetsDefined ${_expectedTarget})
26   endif()
27 endforeach()
28 if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
29   unset(_targetsDefined)
30   unset(_targetsNotDefined)
31   unset(_expectedTargets)
32   set(CMAKE_IMPORT_FILE_VERSION)
33   cmake_policy(POP)
34   return()
35 endif()
36 if(NOT "${_targetsDefined}" STREQUAL "")
37   message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
38 endif()
39 unset(_targetsDefined)
40 unset(_targetsNotDefined)
41 unset(_expectedTargets)
42
43
44 # Compute the installation prefix relative to this file.
45 get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
46 get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
47 get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
48 get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
49 if(_IMPORT_PREFIX STREQUAL "/")
50   set(_IMPORT_PREFIX "")
51 endif()
52
53 # Create imported target pybind11::pybind11
54 add_library(pybind11::pybind11 INTERFACE IMPORTED)
55
56 set_target_properties(pybind11::pybind11 PROPERTIES
57   INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
58 )
59
60 # Create imported target pybind11::module
61 add_library(pybind11::module INTERFACE IMPORTED)
62
63 set_target_properties(pybind11::module PROPERTIES
64   INTERFACE_COMPILE_OPTIONS "-fvisibility=hidden"
65   INTERFACE_LINK_LIBRARIES "pybind11::pybind11"
66 )
67
68 # Create imported target pybind11::embed
69 add_library(pybind11::embed INTERFACE IMPORTED)
70
71 set_target_properties(pybind11::embed PROPERTIES
72   INTERFACE_LINK_LIBRARIES "pybind11::pybind11"
73 )
74
75 if(CMAKE_VERSION VERSION_LESS 3.0.0)
76   message(FATAL_ERROR "This file relies on consumers using CMake 3.0.0 or greater.")
77 endif()
78
79 # Load information for each installed configuration.
80 get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
81 file(GLOB CONFIG_FILES "${_DIR}/pybind11Targets-*.cmake")
82 foreach(f ${CONFIG_FILES})
83   include(${f})
84 endforeach()
85
86 # Cleanup temporary variables.
87 set(_IMPORT_PREFIX)
88
89 # Loop over all imported files and verify that they actually exist
90 foreach(target ${_IMPORT_CHECK_TARGETS} )
91   foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
92     if(NOT EXISTS "${file}" )
93       message(FATAL_ERROR "The imported target \"${target}\" references the file
94    \"${file}\"
95 but this file does not exist.  Possible reasons include:
96 * The file was deleted, renamed, or moved to another location.
97 * An install or uninstall procedure did not complete successfully.
98 * The installation package was faulty and contained
99    \"${CMAKE_CURRENT_LIST_FILE}\"
100 but not all the files it references.
101 ")
102     endif()
103   endforeach()
104   unset(_IMPORT_CHECK_FILES_FOR_${target})
105 endforeach()
106 unset(_IMPORT_CHECK_TARGETS)
107
108 # This file does not depend on other imported targets which have
109 # been exported from the same project but in a separate export set.
110
111 # Commands beyond this point should not need to know the version.
112 set(CMAKE_IMPORT_FILE_VERSION)
113 cmake_policy(POP)