| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| |
| # - Find ZSTD (zstd.h, libzstd.a, libzstd.so, and libzstd.so.0) |
| # This module defines |
| # ZSTD_INCLUDE_DIR, directory containing headers |
| # ZSTD_SHARED_LIB, path to libzstd shared library |
| # ZSTD_STATIC_LIB, path to libzstd static library |
| # ZSTD_FOUND, whether zstd has been found |
| |
| if( NOT "${ZSTD_HOME}" STREQUAL "") |
| file( TO_CMAKE_PATH "${ZSTD_HOME}" _native_path ) |
| list( APPEND _zstd_roots ${_native_path} ) |
| elseif ( ZStd_HOME ) |
| list( APPEND _zstd_roots ${ZStd_HOME} ) |
| endif() |
| |
| if (MSVC AND NOT DEFINED ZSTD_MSVC_STATIC_LIB_SUFFIX) |
| set(ZSTD_MSVC_STATIC_LIB_SUFFIX "_static") |
| endif() |
| |
| set(ZSTD_STATIC_LIB_SUFFIX |
| "${ZSTD_MSVC_STATIC_LIB_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}") |
| |
| set(ZSTD_STATIC_LIB_NAME |
| ${CMAKE_STATIC_LIBRARY_PREFIX}zstd${ZSTD_STATIC_LIB_SUFFIX}) |
| |
| find_path(ZSTD_INCLUDE_DIR NAMES zstd.h |
| PATHS ${_zstd_roots} |
| NO_DEFAULT_PATH |
| PATH_SUFFIXES "include" ) |
| find_library(ZSTD_STATIC_LIB NAMES ${ZSTD_STATIC_LIB_NAME} lib${ZSTD_STATIC_LIB_NAME} |
| PATHS ${_zstd_roots} |
| NO_DEFAULT_PATH |
| PATH_SUFFIXES "lib" ) |
| |
| include(FindPackageHandleStandardArgs) |
| find_package_handle_standard_args(ZSTD REQUIRED_VARS |
| ZSTD_STATIC_LIB ZSTD_INCLUDE_DIR) |