From bb3440f7c46a3a2478f63bf9609202e5996d100d Mon Sep 17 00:00:00 2001
From: Alexandre Bouvier <contact@amb.tf>
Date: Tue, 6 Dec 2022 04:17:44 +0100
Subject: [PATCH] cmake: correct find modules

---
 externals/find-modules/FindOpus.cmake    | 18 +++++++--------
 externals/find-modules/Findenet.cmake    |  9 ++++----
 externals/find-modules/Findhttplib.cmake |  9 ++++----
 externals/find-modules/Findinih.cmake    |  9 ++++----
 externals/find-modules/Findlz4.cmake     | 28 +++++++++++-------------
 externals/find-modules/Findzstd.cmake    | 28 +++++++++++-------------
 6 files changed, 49 insertions(+), 52 deletions(-)

diff --git a/externals/find-modules/FindOpus.cmake b/externals/find-modules/FindOpus.cmake
index b68a6046b..2ba515352 100644
--- a/externals/find-modules/FindOpus.cmake
+++ b/externals/find-modules/FindOpus.cmake
@@ -1,19 +1,17 @@
 # SPDX-FileCopyrightText: 2022 yuzu Emulator Project
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-find_package(PkgConfig)
-
+find_package(PkgConfig QUIET)
 if (PKG_CONFIG_FOUND)
-    pkg_search_module(opus IMPORTED_TARGET GLOBAL opus)
-    if (opus_FOUND)
-        add_library(Opus::opus ALIAS PkgConfig::opus)
-    endif()
+    pkg_search_module(OPUS QUIET IMPORTED_TARGET opus)
 endif()
 
 include(FindPackageHandleStandardArgs)
 find_package_handle_standard_args(Opus
-    REQUIRED_VARS
-        opus_LINK_LIBRARIES
-        opus_FOUND
-    VERSION_VAR opus_VERSION
+    REQUIRED_VARS OPUS_LINK_LIBRARIES
+    VERSION_VAR OPUS_VERSION
 )
+
+if (Opus_FOUND AND NOT TARGET Opus::opus)
+    add_library(Opus::opus ALIAS PkgConfig::OPUS)
+endif()
diff --git a/externals/find-modules/Findenet.cmake b/externals/find-modules/Findenet.cmake
index 663a2592f..6dae76f4c 100644
--- a/externals/find-modules/Findenet.cmake
+++ b/externals/find-modules/Findenet.cmake
@@ -4,10 +4,7 @@
 
 find_package(PkgConfig QUIET)
 if (PKG_CONFIG_FOUND)
-    pkg_search_module(ENET QUIET IMPORTED_TARGET GLOBAL libenet)
-    if (ENET_FOUND)
-        add_library(enet::enet ALIAS PkgConfig::ENET)
-    endif()
+    pkg_search_module(ENET QUIET IMPORTED_TARGET libenet)
 endif()
 
 include(FindPackageHandleStandardArgs)
@@ -15,3 +12,7 @@ find_package_handle_standard_args(enet
     REQUIRED_VARS ENET_LINK_LIBRARIES
     VERSION_VAR ENET_VERSION
 )
+
+if (enet_FOUND AND NOT TARGET enet::enet)
+    add_library(enet::enet ALIAS PkgConfig::ENET)
+endif()
diff --git a/externals/find-modules/Findhttplib.cmake b/externals/find-modules/Findhttplib.cmake
index 56e92a637..b72bad076 100644
--- a/externals/find-modules/Findhttplib.cmake
+++ b/externals/find-modules/Findhttplib.cmake
@@ -10,13 +10,14 @@ if (httplib_FOUND)
 else()
     find_package(PkgConfig QUIET)
     if (PKG_CONFIG_FOUND)
-        pkg_search_module(HTTPLIB QUIET IMPORTED_TARGET GLOBAL cpp-httplib)
-        if (HTTPLIB_FOUND)
-            add_library(httplib::httplib ALIAS PkgConfig::HTTPLIB)
-        endif()
+        pkg_search_module(HTTPLIB QUIET IMPORTED_TARGET cpp-httplib)
     endif()
     find_package_handle_standard_args(httplib
         REQUIRED_VARS HTTPLIB_INCLUDEDIR
         VERSION_VAR HTTPLIB_VERSION
     )
 endif()
+
+if (httplib_FOUND AND NOT TARGET httplib::httplib)
+    add_library(httplib::httplib ALIAS PkgConfig::HTTPLIB)
+endif()
diff --git a/externals/find-modules/Findinih.cmake b/externals/find-modules/Findinih.cmake
index 844396471..8d1a07243 100644
--- a/externals/find-modules/Findinih.cmake
+++ b/externals/find-modules/Findinih.cmake
@@ -4,10 +4,7 @@
 
 find_package(PkgConfig QUIET)
 if (PKG_CONFIG_FOUND)
-    pkg_search_module(INIREADER QUIET IMPORTED_TARGET GLOBAL INIReader)
-    if (INIREADER_FOUND)
-        add_library(inih::INIReader ALIAS PkgConfig::INIREADER)
-    endif()
+    pkg_search_module(INIREADER QUIET IMPORTED_TARGET INIReader)
 endif()
 
 include(FindPackageHandleStandardArgs)
@@ -15,3 +12,7 @@ find_package_handle_standard_args(inih
     REQUIRED_VARS INIREADER_LINK_LIBRARIES
     VERSION_VAR INIREADER_VERSION
 )
+
+if (inih_FOUND AND NOT TARGET inih::INIReader)
+    add_library(inih::INIReader ALIAS PkgConfig::INIREADER)
+endif()
diff --git a/externals/find-modules/Findlz4.cmake b/externals/find-modules/Findlz4.cmake
index a928c4307..f4c7005ba 100644
--- a/externals/find-modules/Findlz4.cmake
+++ b/externals/find-modules/Findlz4.cmake
@@ -6,25 +6,23 @@ include(FindPackageHandleStandardArgs)
 find_package(lz4 QUIET CONFIG)
 if (lz4_FOUND)
     find_package_handle_standard_args(lz4 CONFIG_MODE)
-    if (NOT TARGET lz4::lz4)
-        if (TARGET LZ4::lz4_shared)
-            set_target_properties(LZ4::lz4_shared PROPERTIES IMPORTED_GLOBAL TRUE)
-            add_library(lz4::lz4 ALIAS LZ4::lz4_shared)
-        else()
-            set_target_properties(LZ4::lz4_static PROPERTIES IMPORTED_GLOBAL TRUE)
-            add_library(lz4::lz4 ALIAS LZ4::lz4_static)
-        endif()
-    endif()
 else()
     find_package(PkgConfig QUIET)
     if (PKG_CONFIG_FOUND)
-        pkg_search_module(liblz4 QUIET IMPORTED_TARGET GLOBAL liblz4)
-        if (liblz4_FOUND)
-            add_library(lz4::lz4 ALIAS PkgConfig::liblz4)
-        endif()
+        pkg_search_module(LZ4 QUIET IMPORTED_TARGET liblz4)
     endif()
     find_package_handle_standard_args(lz4
-        REQUIRED_VARS liblz4_LINK_LIBRARIES
-        VERSION_VAR liblz4_VERSION
+        REQUIRED_VARS LZ4_LINK_LIBRARIES
+        VERSION_VAR LZ4_VERSION
     )
 endif()
+
+if (lz4_FOUND AND NOT TARGET lz4::lz4)
+    if (TARGET LZ4::lz4_shared)
+        add_library(lz4::lz4 ALIAS LZ4::lz4_shared)
+    elseif (TARGET LZ4::lz4_static)
+        add_library(lz4::lz4 ALIAS LZ4::lz4_static)
+    else()
+        add_library(lz4::lz4 ALIAS PkgConfig::LZ4)
+    endif()
+endif()
diff --git a/externals/find-modules/Findzstd.cmake b/externals/find-modules/Findzstd.cmake
index 1c29f3598..1aacc41d0 100644
--- a/externals/find-modules/Findzstd.cmake
+++ b/externals/find-modules/Findzstd.cmake
@@ -6,25 +6,23 @@ include(FindPackageHandleStandardArgs)
 find_package(zstd QUIET CONFIG)
 if (zstd_FOUND)
     find_package_handle_standard_args(zstd CONFIG_MODE)
-    if (NOT TARGET zstd::zstd)
-        if (TARGET zstd::libzstd_shared)
-            set_target_properties(zstd::libzstd_shared PROPERTIES IMPORTED_GLOBAL TRUE)
-            add_library(zstd::zstd ALIAS zstd::libzstd_shared)
-        else()
-            set_target_properties(zstd::libzstd_static PROPERTIES IMPORTED_GLOBAL TRUE)
-            add_library(zstd::zstd ALIAS zstd::libzstd_static)
-        endif()
-    endif()
 else()
     find_package(PkgConfig QUIET)
     if (PKG_CONFIG_FOUND)
-        pkg_search_module(libzstd QUIET IMPORTED_TARGET GLOBAL libzstd)
-        if (libzstd_FOUND)
-            add_library(zstd::zstd ALIAS PkgConfig::libzstd)
-        endif()
+        pkg_search_module(ZSTD QUIET IMPORTED_TARGET libzstd)
     endif()
     find_package_handle_standard_args(zstd
-        REQUIRED_VARS libzstd_LINK_LIBRARIES
-        VERSION_VAR libzstd_VERSION
+        REQUIRED_VARS ZSTD_LINK_LIBRARIES
+        VERSION_VAR ZSTD_VERSION
     )
 endif()
+
+if (zstd_FOUND AND NOT TARGET zstd::zstd)
+    if (TARGET zstd::libzstd_shared)
+        add_library(zstd::zstd ALIAS zstd::libzstd_shared)
+    elseif (TARGET zstd::libzstd_static)
+        add_library(zstd::zstd ALIAS zstd::libzstd_static)
+    else()
+        add_library(zstd::zstd ALIAS PkgConfig::ZSTD)
+    endif()
+endif()