mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-12 03:29:07 +08:00
119 lines
4.9 KiB
Diff
119 lines
4.9 KiB
Diff
|
diff --git a/cmake/FindFFmpeg.cmake b/cmake/FindFFmpeg.cmake
|
||
|
index 47d8769..46a5c9b 100644
|
||
|
--- a/cmake/FindFFmpeg.cmake
|
||
|
+++ b/cmake/FindFFmpeg.cmake
|
||
|
@@ -228,7 +228,7 @@ endfunction()
|
||
|
# message(STATUS "Libs: ${${_component}_LIBRARIES} | ${PC_${_component}_LIBRARIES}")
|
||
|
|
||
|
# message(STATUS "Required component ${_component} present.")
|
||
|
- set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${${_component}_LIBRARY} ${${_component}_LIBRARIES})
|
||
|
+ set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${${_component}_LIBRARY})
|
||
|
set(FFMPEG_DEFINITIONS ${FFMPEG_DEFINITIONS} ${${_component}_DEFINITIONS})
|
||
|
|
||
|
list(APPEND FFMPEG_INCLUDE_DIRS ${${_component}_INCLUDE_DIRS})
|
||
|
@@ -240,8 +240,8 @@ endfunction()
|
||
|
set_target_properties(FFmpeg::${_lowerComponent} PROPERTIES
|
||
|
INTERFACE_COMPILE_OPTIONS "${${_component}_DEFINITIONS}"
|
||
|
INTERFACE_INCLUDE_DIRECTORIES ${${_component}_INCLUDE_DIRS}
|
||
|
- INTERFACE_LINK_LIBRARIES "${${_component}_LIBRARIES}"
|
||
|
- INTERFACE_LINK_DIRECTORIES "${${_component}_LIBRARY_DIRS}"
|
||
|
+ IMPORTED_LOCATION "${${_component}_LIBRARY}"
|
||
|
+ #INTERFACE_LINK_DIRECTORIES "${${_component}_LIBRARY_DIRS}"
|
||
|
)
|
||
|
if(__ffmpeg_is_static)
|
||
|
__ffmpeg_internal_set_dependencies(${_lowerComponent})
|
||
|
@@ -250,6 +250,9 @@ endfunction()
|
||
|
if (UNIX AND NOT APPLE)
|
||
|
target_link_options(FFmpeg::${_lowerComponent} INTERFACE "-Wl,--exclude-libs=lib${_lowerComponent}")
|
||
|
endif ()
|
||
|
+ if(WIN32 AND _lowerComponent STREQUAL "avutil")
|
||
|
+ target_link_libraries(FFmpeg::${_lowerComponent} INTERFACE "Bcrypt.lib")
|
||
|
+ endif()
|
||
|
endif()
|
||
|
else()
|
||
|
# message(STATUS "Required component ${_component} missing.")
|
||
|
@@ -274,14 +277,21 @@ endfunction()
|
||
|
|
||
|
#endif ()
|
||
|
|
||
|
+
|
||
|
if (NOT TARGET FFmpeg::FFmpeg)
|
||
|
- add_library(FFmpeg INTERFACE)
|
||
|
+ add_library(FFmpeg INTERFACE IMPORTED)
|
||
|
set_target_properties(FFmpeg PROPERTIES
|
||
|
INTERFACE_COMPILE_OPTIONS "${FFMPEG_DEFINITIONS}"
|
||
|
INTERFACE_INCLUDE_DIRECTORIES "${FFMPEG_INCLUDE_DIRS}"
|
||
|
INTERFACE_LINK_LIBRARIES "${FFMPEG_LIBRARIES}"
|
||
|
INTERFACE_LINK_DIRECTORIES "${FFMPEG_LIBRARY_DIRS}")
|
||
|
- add_library(FFmpeg::FFmpeg ALIAS FFmpeg)
|
||
|
+ if(WIN32)
|
||
|
+ target_link_libraries(FFmpeg INTERFACE "Bcrypt.lib")
|
||
|
+ endif()
|
||
|
+
|
||
|
+
|
||
|
+ add_library(FFmpeg::FFmpeg INTERFACE IMPORTED)
|
||
|
+ target_link_libraries(FFmpeg::FFmpeg INTERFACE FFmpeg)
|
||
|
endif()
|
||
|
|
||
|
# Now set the noncached _FOUND vars for the components.
|
||
|
diff --git a/cmake/FindGObject.cmake b/cmake/FindGObject.cmake
|
||
|
index 19a8a67..09e95d1 100644
|
||
|
--- a/cmake/FindGObject.cmake
|
||
|
+++ b/cmake/FindGObject.cmake
|
||
|
@@ -13,8 +13,8 @@
|
||
|
# ``GObject::GObject``
|
||
|
# The gobject-2.0 library
|
||
|
|
||
|
-include(CMakeFindDependencyMacro)
|
||
|
-find_dependency(GLIB2)
|
||
|
+find_package(GLIB2)
|
||
|
+find_package(libffi)
|
||
|
qt_internal_disable_find_package_global_promotion(GLIB2::GLIB2)
|
||
|
|
||
|
if(NOT TARGET GObject::GObject)
|
||
|
@@ -40,6 +40,7 @@ if(NOT TARGET GObject::GObject)
|
||
|
target_link_libraries(GObject::GObject INTERFACE
|
||
|
${GObject_LIBRARY}
|
||
|
GLIB2::GLIB2
|
||
|
+ libffi
|
||
|
)
|
||
|
endif()
|
||
|
include(FindPackageHandleStandardArgs)
|
||
|
diff --git a/cmake/FindGStreamer.cmake b/cmake/FindGStreamer.cmake
|
||
|
index c3becd7..895e1c8 100644
|
||
|
--- a/cmake/FindGStreamer.cmake
|
||
|
+++ b/cmake/FindGStreamer.cmake
|
||
|
@@ -19,8 +19,8 @@
|
||
|
# If the gstgl-1.0 library is available and target GStreamer::GStreamer exists
|
||
|
#
|
||
|
|
||
|
-include(CMakeFindDependencyMacro)
|
||
|
-find_dependency(GObject)
|
||
|
+find_package(GObject)
|
||
|
+find_package(GLIB2)
|
||
|
|
||
|
find_package(PkgConfig QUIET)
|
||
|
function(find_gstreamer_component component prefix header library)
|
||
|
@@ -74,7 +74,7 @@ find_gstreamer_component(Pbutils gstreamer-pbutils-1.0 gst/pbutils/pbutils.h gst
|
||
|
find_gstreamer_component(Allocators gstreamer-allocators-1.0 gst/allocators/allocators.h gstallocators-1.0)
|
||
|
|
||
|
if(TARGET GStreamer::Core)
|
||
|
- target_link_libraries(GStreamer::Core INTERFACE GObject::GObject)
|
||
|
+ target_link_libraries(GStreamer::Core INTERFACE GObject::GObject GLIB2::GMODULE)
|
||
|
endif()
|
||
|
if(TARGET GStreamer::Base AND TARGET GStreamer::Core)
|
||
|
target_link_libraries(GStreamer::Base INTERFACE GStreamer::Core)
|
||
|
@@ -107,7 +107,11 @@ foreach(component ${GStreamer_FIND_COMPONENTS})
|
||
|
elseif (${component} STREQUAL "Gl")
|
||
|
find_gstreamer_component(Gl gstreamer-gl-1.0 gst/gl/gl.h gstgl-1.0)
|
||
|
if(TARGET GStreamer::Gl AND TARGET GStreamer::Video AND TARGET GStreamer::Allocators)
|
||
|
- target_link_libraries(GStreamer::Gl INTERFACE GStreamer::Video GStreamer::Allocators)
|
||
|
+ find_package(OpenGL)
|
||
|
+ if(OpenGL_FOUND)
|
||
|
+ target_link_libraries(GStreamer::Gl INTERFACE OpenGL::GL)
|
||
|
+ endif()
|
||
|
+ target_link_libraries(GStreamer::Gl INTERFACE GStreamer::Video GStreamer::Allocators GLIB2::GMODULE)
|
||
|
endif()
|
||
|
else()
|
||
|
message(WARNING "FindGStreamer.cmake: Invalid Gstreamer component \"${component}\" requested")
|