1 find_path(LibHaru_INCLUDE_DIR
3 DOC
"libharu include directory")
4 mark_as_advanced(LibHaru_INCLUDE_DIR)
6 find_library(LibHaru_LIBRARY_RELEASE
7 NAMES hpdf hpdfs libhpdf libhpdfs
8 DOC
"libharu release library")
9 mark_as_advanced(LibHaru_LIBRARY_RELEASE)
10 find_library(LibHaru_LIBRARY_DEBUG
11 NAMES hpdfd hpdfsd libhpdfd libhpdfsd
12 DOC
"libharu debug library")
13 mark_as_advanced(LibHaru_LIBRARY_DEBUG)
15 if (LibHaru_INCLUDE_DIR)
16 file(STRINGS
"${LibHaru_INCLUDE_DIR}/hpdf_version.h" _libharu_version_lines
17 REGEX
"#define HPDF_(MAJOR|MINOR|BUGFIX|EXTRA)_VERSION")
18 string(REGEX REPLACE
".*HPDF_MAJOR_VERSION *\([0-9]*\).*" "\\1" _libharu_version_major
"${_libharu_version_lines}")
19 string(REGEX REPLACE
".*HPDF_MINOR_VERSION *\([0-9]*\).*" "\\1" _libharu_version_minor
"${_libharu_version_lines}")
20 string(REGEX REPLACE
".*HPDF_BUGFIX_VERSION *\([0-9]*\).*" "\\1" _libharu_version_bugfix
"${_libharu_version_lines}")
21 string(REGEX REPLACE
".*HPDF_EXTRA_VERSION *\"\([^\"]*\)\".*" "\\1" _libharu_version_extra
"${_libharu_version_lines}")
22 set(LibHaru_VERSION
"${_libharu_version_major}.${_libharu_version_minor}.${_libharu_version_bugfix}")
23 if (_libharu_version_extra)
24 string(APPEND LibHaru_VERSION
25 "-${_libharu_version_extra}")
27 unset(_libharu_version_major)
28 unset(_libharu_version_minor)
29 unset(_libharu_version_bugfix)
30 unset(_libharu_version_extra)
31 unset(_libharu_version_lines)
34 include(SelectLibraryConfigurations)
35 select_library_configurations(LibHaru)
37 include(FindPackageHandleStandardArgs)
38 find_package_handle_standard_args(LibHaru
39 REQUIRED_VARS LibHaru_LIBRARY LibHaru_INCLUDE_DIR
40 VERSION_VAR LibHaru_VERSION)
43 set(LibHaru_INCLUDE_DIRS "${LibHaru_INCLUDE_DIR}
") 44 set(LibHaru_LIBRARIES "${LibHaru_LIBRARY}
") 46 if (NOT TARGET LibHaru::LibHaru) 47 include(vtkDetectLibraryType) 48 set(libharu_library_type UNKNOWN) 49 if (LibHaru_LIBRARY_RELEASE) 50 vtk_detect_library_type(libharu_release_library_type 51 PATH "${LibHaru_LIBRARY_RELEASE}
") 53 if (LibHaru_LIBRARY_DEBUG) 54 vtk_detect_library_type(libharu_debug_library_type 55 PATH "${LibHaru_LIBRARY_DEBUG}
") 57 if (libharu_release_library_type AND libharu_debug_library_type) 58 if (libharu_release_library_type STREQUAL libharu_debug_library_type) 59 set(libharu_library_type "${libharu_release_library_type}
") 61 elseif (libharu_release_library_type) 62 set(libharu_library_type "${libharu_release_library_type}
") 63 elseif (libharu_debug_library_type) 64 set(libharu_library_type "${libharu_debug_library_type}
") 66 add_library(LibHaru::LibHaru "${libharu_library_type}
" IMPORTED) 67 unset(libharu_release_library_type) 68 unset(libharu_debug_library_type) 69 unset(libharu_library_type) 70 set_target_properties(LibHaru::LibHaru PROPERTIES 71 INTERFACE_INCLUDE_DIRECTORIES "${LibHaru_INCLUDE_DIR}
") 72 if (LibHaru_LIBRARY_RELEASE) 73 set_property(TARGET LibHaru::LibHaru APPEND PROPERTY 74 IMPORTED_CONFIGURATIONS RELEASE) 75 set_target_properties(LibHaru::LibHaru PROPERTIES 76 IMPORTED_LOCATION_RELEASE "${LibHaru_LIBRARY_RELEASE}
" 77 IMPORTED_IMPLIB_RELEASE "${LibHaru_LIBRARY_RELEASE}
") 79 if (LibHaru_LIBRARY_DEBUG) 80 set_property(TARGET LibHaru::LibHaru APPEND PROPERTY 81 IMPORTED_CONFIGURATIONS DEBUG) 82 set_target_properties(LibHaru::LibHaru PROPERTIES 83 IMPORTED_LOCATION_DEBUG "${LibHaru_LIBRARY_DEBUG}
" 84 IMPORTED_IMPLIB_DEBUG "${LibHaru_LIBRARY_DEBUG}
")