Findzstd.cmake 1.0 KB

123456789101112131415161718192021222324252627282930
  1. # SPDX-FileCopyrightText: 2022 yuzu Emulator Project
  2. # SPDX-License-Identifier: GPL-2.0-or-later
  3. include(FindPackageHandleStandardArgs)
  4. find_package(zstd QUIET CONFIG)
  5. if (zstd_FOUND)
  6. find_package_handle_standard_args(zstd CONFIG_MODE)
  7. if (NOT TARGET zstd::zstd)
  8. if (TARGET zstd::libzstd_shared)
  9. set_target_properties(zstd::libzstd_shared PROPERTIES IMPORTED_GLOBAL TRUE)
  10. add_library(zstd::zstd ALIAS zstd::libzstd_shared)
  11. else()
  12. set_target_properties(zstd::libzstd_static PROPERTIES IMPORTED_GLOBAL TRUE)
  13. add_library(zstd::zstd ALIAS zstd::libzstd_static)
  14. endif()
  15. endif()
  16. else()
  17. find_package(PkgConfig QUIET)
  18. if (PKG_CONFIG_FOUND)
  19. pkg_search_module(libzstd QUIET IMPORTED_TARGET GLOBAL libzstd)
  20. if (libzstd_FOUND)
  21. add_library(zstd::zstd ALIAS PkgConfig::libzstd)
  22. endif()
  23. endif()
  24. find_package_handle_standard_args(zstd
  25. REQUIRED_VARS libzstd_LINK_LIBRARIES
  26. VERSION_VAR libzstd_VERSION
  27. )
  28. endif()