From 77f023b65d161291b43946f67b24bcd63816234c Mon Sep 17 00:00:00 2001 From: Ilya Fedin Date: Mon, 21 Mar 2022 13:08:52 +0400 Subject: [PATCH] Ensure libjpeg is linked in the right order --- external/jpeg/CMakeLists.txt | 35 ++++++++++++++++++++++++---------- external/qt/CMakeLists.txt | 1 + external/qt/qt6/CMakeLists.txt | 1 + external/webrtc/CMakeLists.txt | 1 + 4 files changed, 28 insertions(+), 10 deletions(-) diff --git a/external/jpeg/CMakeLists.txt b/external/jpeg/CMakeLists.txt index a52635d..a76fc87 100644 --- a/external/jpeg/CMakeLists.txt +++ b/external/jpeg/CMakeLists.txt @@ -4,17 +4,32 @@ # For license and copyright information please follow this link: # https://github.com/desktop-app/legal/blob/master/LEGAL -add_library(external_jpeg INTERFACE IMPORTED GLOBAL) -add_library(desktop-app::external_jpeg ALIAS external_jpeg) - if (DESKTOP_APP_USE_PACKAGED) + add_library(external_jpeg INTERFACE IMPORTED GLOBAL) + add_library(desktop-app::external_jpeg ALIAS external_jpeg) + find_package(JPEG REQUIRED) target_link_libraries(external_jpeg INTERFACE JPEG::JPEG) -elseif (WIN32) - target_include_directories(external_jpeg SYSTEM INTERFACE ${libs_loc}/mozjpeg) - target_link_libraries(external_jpeg INTERFACE ${libs_loc}/mozjpeg/$,Debug,Release>/jpeg-static.lib) -elseif (APPLE) - target_link_libraries(external_jpeg INTERFACE ${libs_loc}/local/lib/libjpeg.a) -else() - target_link_static_libraries(external_jpeg INTERFACE jpeg) + return() +endif() + +add_library(external_jpeg STATIC IMPORTED GLOBAL) +add_library(desktop-app::external_jpeg ALIAS external_jpeg) + +elseif (WIN32) + set(jpeg_lib_loc ${libs_loc}/mozjpeg) + target_include_directories(external_jpeg SYSTEM INTERFACE ${jpeg_lib_loc}) + set_target_properties(external_jpeg PROPERTIES + IMPORTED_LOCATION "${jpeg_lib_loc}/Release/jpeg-static.lib" + IMPORTED_LOCATION_DEBUG "${jpeg_lib_loc}/Debug/jpeg-static.lib" + ) +elseif (APPLE) + set_target_properties(external_jpeg PROPERTIES + IMPORTED_LOCATION ${libs_loc}/local/lib/libjpeg.a + ) +else() + find_library(JPEG_LIBRARY libjpeg.a REQUIRED) + set_target_properties(external_jpeg PROPERTIES + IMPORTED_LOCATION "${JPEG_LIBRARY}" + ) endif() diff --git a/external/qt/CMakeLists.txt b/external/qt/CMakeLists.txt index 5279fad..3bddf48 100644 --- a/external/qt/CMakeLists.txt +++ b/external/qt/CMakeLists.txt @@ -263,6 +263,7 @@ INTERFACE $ $ $ + $ $ $ ) diff --git a/external/qt/qt6/CMakeLists.txt b/external/qt/qt6/CMakeLists.txt index 1ea1c0e..bc36e14 100644 --- a/external/qt/qt6/CMakeLists.txt +++ b/external/qt/qt6/CMakeLists.txt @@ -238,6 +238,7 @@ INTERFACE $ $ $ + $ $ $ ) diff --git a/external/webrtc/CMakeLists.txt b/external/webrtc/CMakeLists.txt index f6ce939..cf474df 100644 --- a/external/webrtc/CMakeLists.txt +++ b/external/webrtc/CMakeLists.txt @@ -89,6 +89,7 @@ INTERFACE ${webrtc_libs_list} $ $ + $ $ $ $