aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/libuvc/build_fix.patch
blob: 4e6bade6aba335f8b1008db5cf663295156705f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fbaffc9..672ebb9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -5,7 +5,6 @@ project(libuvc
 )
 
 # Additional search scripts path for libusb-1.0, libjpeg, OpenCV
-list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}/cmake)
 
 # Xcode and Visual Studio do not using CMAKE_BUILD_TYPE cache variable
 # so we use Release build type only with single configuration generators.
@@ -39,10 +38,11 @@ set(SOURCES
   src/misc.c
 )
 
-find_package(LibUSB)
+FIND_PACKAGE(PkgConfig REQUIRED)
+pkg_check_modules(libusb REQUIRED IMPORTED_TARGET libusb-1.0)
 
 # JpegPkg name to differ from shipped with CMake
-find_package(JpegPkg QUIET)
+find_package(JPEG REQUIRED)
 if(JPEG_FOUND)
   message(STATUS "Building libuvc with JPEG support.")
   set(LIBUVC_HAS_JPEG TRUE)
@@ -116,8 +116,11 @@ foreach(target_name IN LISTS UVC_TARGETS)
   )
   target_link_libraries(${target_name}
     # libusb-1.0 used internally so we link to it privately.
-    PRIVATE LibUSB::LibUSB ${threads}
+    PRIVATE PkgConfig::libusb ${threads}
   )
+  if(APPLE)
+    target_link_libraries(${target_name} PRIVATE "-framework IOKit" "-framework CoreFoundation" "-framework Security")
+  endif()
   if(JPEG_FOUND)
     target_link_libraries(${target_name}
       PRIVATE JPEG::JPEG
@@ -191,12 +194,6 @@ install(EXPORT libuvcTargets
   DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
 )
 
-install(FILES 
-    cmake/FindLibUSB.cmake
-    cmake/FindJpegPkg.cmake
-  DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
-)
-
 include(CMakePackageConfigHelpers)
 write_basic_package_version_file(libuvcConfigVersion.cmake
   COMPATIBILITY AnyNewerVersion
diff --git a/libuvcConfig.cmake b/libuvcConfig.cmake
index b9887ea..c704ab5 100644
--- a/libuvcConfig.cmake
+++ b/libuvcConfig.cmake
@@ -10,8 +10,11 @@ if(${CMAKE_FIND_PACKAGE_NAME}_FIND_REQUIRED)
   list(APPEND extraArgs REQUIRED)
 endif()
 
-find_package(JpegPkg ${extraArgs})
-find_package(LibUSB ${extraArgs})
+include(CMakeFindDependencyMacro)
+find_dependency(JPEG ${extraArgs})
+find_dependency(Threads)
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(libusb REQUIRED IMPORTED_TARGET libusb-1.0)
 include("${CMAKE_CURRENT_LIST_DIR}/libuvcTargets.cmake")
 
 set(libuvc_FOUND TRUE)