Changeset View
Changeset View
Standalone View
Standalone View
cmake/FindLibIcal.cmake
Show First 20 Lines • Show All 67 Lines • ▼ Show 20 Line(s) | 67 | find_path(LibIcal_INCLUDE_DIRS | |||
---|---|---|---|---|---|
68 | NAMES libical/ical.h | 68 | NAMES libical/ical.h | ||
69 | HINTS ${PC_LibIcal_INCLUDEDIR} | 69 | HINTS ${PC_LibIcal_INCLUDEDIR} | ||
70 | ) | 70 | ) | ||
71 | 71 | | |||
72 | find_library(LibIcal_LIBRARY | 72 | find_library(LibIcal_LIBRARY | ||
73 | NAMES ical libical | 73 | NAMES ical libical | ||
74 | HINTS ${PC_LibIcal_LIBDIR} | 74 | HINTS ${PC_LibIcal_LIBDIR} | ||
75 | ) | 75 | ) | ||
76 | | ||||
76 | find_library(LibIcalss_LIBRARY | 77 | find_library(LibIcalss_LIBRARY | ||
77 | NAMES icalss libicalss | 78 | NAMES icalss libicalss | ||
78 | HINTS ${PC_LibIcal_LIBDIR} | 79 | HINTS ${PC_LibIcal_LIBDIR} | ||
79 | ) | 80 | ) | ||
80 | 81 | | |||
82 | find_library(LibIcalvcal_LIBRARY | ||||
83 | NAMES icalvcal | ||||
84 | HINTS ${PC_LibIcal_LIBDIR} | ||||
85 | ) | ||||
86 | | ||||
81 | # For backward compatibility | 87 | # For backward compatibility | ||
82 | set(LibIcal_INCLUDE_DIRS "${LibIcal_INCLUDE_DIRS}" "${LibIcal_INCLUDE_DIRS}/libical") | 88 | set(LibIcal_INCLUDE_DIRS "${LibIcal_INCLUDE_DIRS}" "${LibIcal_INCLUDE_DIRS}/libical") | ||
83 | 89 | | |||
84 | set(LibIcal_LIBRARIES ${LibIcal_LIBRARY} ${LibIcalss_LIBRARY}) | 90 | set(LibIcal_LIBRARIES ${LibIcal_LIBRARY} ${LibIcalss_LIBRARY} ${LibIcalvcal_LIBRARY}) | ||
85 | 91 | | |||
86 | set(LibIcal_VERSION "${PC_LibIcal_VERSION}") | 92 | set(LibIcal_VERSION "${PC_LibIcal_VERSION}") | ||
87 | 93 | | |||
88 | if(NOT LibIcal_VERSION) | 94 | if(NOT LibIcal_VERSION) | ||
89 | if(EXISTS "${ICAL_H}") | 95 | if(EXISTS "${ICAL_H}") | ||
90 | file(STRINGS "${ICAL_H}" _ICAL_H_VERSION REGEX "^#define[ ]+ICAL_VERSION[ ]+\"[0-9].[0-9]\"$") | 96 | file(STRINGS "${ICAL_H}" _ICAL_H_VERSION REGEX "^#define[ ]+ICAL_VERSION[ ]+\"[0-9].[0-9]\"$") | ||
91 | string(REGEX REPLACE "^#define[ ]+ICAL_VERSION[ ]+\"([0-9].[0-9])\"$" "\\1" LibIcal_VERSION "${_ICAL_H_VERSION}") | 97 | string(REGEX REPLACE "^#define[ ]+ICAL_VERSION[ ]+\"([0-9].[0-9])\"$" "\\1" LibIcal_VERSION "${_ICAL_H_VERSION}") | ||
92 | file(STRINGS "${ICAL_H}" _ICAL_H_PATCH_VERSION REGEX "^#define[ ]+ICAL_PATCH_VERSION[ ]+\\([0-9]+\\)$") | 98 | file(STRINGS "${ICAL_H}" _ICAL_H_PATCH_VERSION REGEX "^#define[ ]+ICAL_PATCH_VERSION[ ]+\\([0-9]+\\)$") | ||
Show All 26 Lines | |||||
119 | ) | 125 | ) | ||
120 | 126 | | |||
121 | # Internal | 127 | # Internal | ||
122 | if(LibIcal_FOUND AND NOT TARGET LibIcalss) | 128 | if(LibIcal_FOUND AND NOT TARGET LibIcalss) | ||
123 | add_library(LibIcalss UNKNOWN IMPORTED) | 129 | add_library(LibIcalss UNKNOWN IMPORTED) | ||
124 | set_target_properties(LibIcalss PROPERTIES | 130 | set_target_properties(LibIcalss PROPERTIES | ||
125 | IMPORTED_LOCATION "${LibIcalss_LIBRARY}") | 131 | IMPORTED_LOCATION "${LibIcalss_LIBRARY}") | ||
126 | endif() | 132 | endif() | ||
133 | if(LibIcal_FOUND AND NOT TARGET LibIcalvcal) | ||||
134 | add_library(LibIcalvcal UNKNOWN IMPORTED) | ||||
135 | set_target_properties(LibIcalvcal PROPERTIES | ||||
136 | IMPORTED_LOCATION "${LibIcalvcal_LIBRARY}") | ||||
137 | endif() | ||||
127 | 138 | | |||
139 | # Public Target | ||||
128 | if(LibIcal_FOUND AND NOT TARGET LibIcal) | 140 | if(LibIcal_FOUND AND NOT TARGET LibIcal) | ||
129 | add_library(LibIcal UNKNOWN IMPORTED) | 141 | add_library(LibIcal UNKNOWN IMPORTED) | ||
130 | set_target_properties(LibIcal PROPERTIES | 142 | set_target_properties(LibIcal PROPERTIES | ||
131 | IMPORTED_LOCATION "${LibIcal_LIBRARY}" | 143 | IMPORTED_LOCATION "${LibIcal_LIBRARY}" | ||
132 | INTERFACE_INCLUDE_DIRECTORIES "${LibIcal_INCLUDE_DIRS}" | 144 | INTERFACE_INCLUDE_DIRECTORIES "${LibIcal_INCLUDE_DIRS}" | ||
133 | INTERFACE_LINK_LIBRARIES LibIcalss) | 145 | INTERFACE_LINK_LIBRARIES "LibIcalss;LibIcalvcal" | ||
146 | ) | ||||
134 | endif() | 147 | endif() | ||
135 | 148 | | |||
136 | mark_as_advanced(LibIcal_INCLUDE_DIRS LibIcal_LIBRARY LibIcalss_LIBRARY LibIcal_LIBRARIES) | 149 | mark_as_advanced(LibIcal_INCLUDE_DIRS LibIcal_LIBRARY LibIcalss_LIBRARY LibIcalvcal_LIBRARY LibIcal_LIBRARIES) | ||
137 | 150 | | |||
138 | include(FeatureSummary) | 151 | include(FeatureSummary) | ||
139 | set_package_properties(LibIcal PROPERTIES | 152 | set_package_properties(LibIcal PROPERTIES | ||
140 | URL "https://github.com/libical/libical" | 153 | URL "https://github.com/libical/libical" | ||
141 | DESCRIPTION "Implementation of iCalendar protocols and data formats" | 154 | DESCRIPTION "Implementation of iCalendar protocols and data formats" | ||
142 | ) | 155 | ) |