Warning, /education/labplot/cmake/FindLZ4.cmake is written in an unsupported language. File is not indexed.
0001 #============================================================================= 0002 # SPDX-FileCopyrightText: 2019 Harald Sitter <sitter@kde.org> 0003 # 0004 # SPDX-License-Identifier: BSD-3-Clause 0005 #============================================================================= 0006 0007 find_package(PkgConfig QUIET) 0008 pkg_check_modules(PC_LZ4 lz4 QUIET) 0009 0010 find_library(LZ4_LIBRARIES 0011 NAMES lz4 0012 HINTS ${PC_LZ4_LIBRARY_DIRS} 0013 ) 0014 0015 find_path(LZ4_INCLUDE_DIR 0016 NAMES lz4.h 0017 HINTS ${PC_LZ4_INCLUDE_DIRS} 0018 ) 0019 0020 set(LZ4_VERSION "${PC_LZ4_VERSION}") 0021 0022 if(NOT LZ4_VERSION) 0023 if(EXISTS "${LZ4_INCLUDE_DIR}/lz4.h") 0024 file(READ "${LZ4_INCLUDE_DIR}/lz4.h" LZ4_H_CONTENT) 0025 0026 string(REGEX MATCH "#define LZ4_VERSION_MAJOR[ ]+[0-9]+" LZ4_VERSION_MAJOR_MATCH ${LZ4_H_CONTENT}) 0027 string(REGEX MATCH "#define LZ4_VERSION_MINOR[ ]+[0-9]+" LZ4_VERSION_MINOR_MATCH ${LZ4_H_CONTENT}) 0028 string(REGEX MATCH "#define LZ4_VERSION_RELEASE[ ]+[0-9]+" LZ4_VERSION_RELEASE_MATCH ${LZ4_H_CONTENT}) 0029 0030 string(REGEX REPLACE ".*_MAJOR[ ]+(.*)" "\\1" LZ4_VERSION_MAJOR ${LZ4_VERSION_MAJOR_MATCH}) 0031 string(REGEX REPLACE ".*_MINOR[ ]+(.*)" "\\1" LZ4_VERSION_MINOR ${LZ4_VERSION_MINOR_MATCH}) 0032 string(REGEX REPLACE ".*_RELEASE[ ]+(.*)" "\\1" LZ4_VERSION_RELEASE ${LZ4_VERSION_RELEASE_MATCH}) 0033 0034 set(LZ4_VERSION "${LZ4_VERSION_MAJOR}.${LZ4_VERSION_MINOR}.${LZ4_VERSION_RELEASE}") 0035 else() 0036 set(LZ4_VERSION "0.0.0") 0037 endif() 0038 endif() 0039 0040 include(FindPackageHandleStandardArgs) 0041 find_package_handle_standard_args(LZ4 0042 REQUIRED_VARS 0043 LZ4_LIBRARIES 0044 LZ4_INCLUDE_DIR 0045 VERSION_VAR 0046 LZ4_VERSION 0047 ) 0048 0049 if(LZ4_FOUND AND NOT TARGET lz4::lz4) 0050 add_library(lz4::lz4 UNKNOWN IMPORTED) 0051 set_target_properties(lz4::lz4 PROPERTIES 0052 IMPORTED_LOCATION "${LZ4_LIBRARIES}" 0053 INTERFACE_COMPILE_OPTIONS "${PC_LZ4_CFLAGS}" 0054 INTERFACE_INCLUDE_DIRECTORIES "${LZ4_INCLUDE_DIR}" 0055 ) 0056 else() 0057 set(LZ4_LIBRARIES "") 0058 endif() 0059 0060 mark_as_advanced(LZ4_LIBRARIES LZ4_INCLUDE_DIR LZ4_VERSION) 0061 0062 include(FeatureSummary) 0063 set_package_properties(LZ4 PROPERTIES 0064 DESCRIPTION "Lossless compression algorithm" 0065 URL "https://lz4.github.io/lz4/" 0066 )