Index: head/multimedia/arcan/files/patch-system-libuvc =================================================================== --- head/multimedia/arcan/files/patch-system-libuvc (revision 556534) +++ head/multimedia/arcan/files/patch-system-libuvc (revision 556535) @@ -1,67 +1,41 @@ - Git cannot be used as poudriere disables network access during build - ExternalProject_Add fails to build with Ninja - https://github.com/letoram/arcan/commit/66efdebb236c requires newer libuvc, so guard --- frameserver/decode/default/CMakeLists.txt.orig 2020-11-27 15:29:00 UTC +++ frameserver/decode/default/CMakeLists.txt @@ -52,31 +52,18 @@ if (LIBVLC_FOUND) ${DECODE_DEFS} ) - pkg_check_modules(LIBUSB_1 REQUIRED libusb-1.0) pkg_check_modules(FFMPEG REQUIRED libavcodec libavdevice libavfilter libavformat libavutil libswresample libswscale) + pkg_check_modules(LIBUVC libuvc) - ExternalProject_Add(libuvc - SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/frameserver/decode/libuvc" - BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/libuvc_static" - UPDATE_COMMAND "" - GIT_REPOSITORY "${EXTERNAL_SRC_DIR}/git/libuvc" - ${EXTERNAL_DEFS} - ${CMAKE_EXTERNAL_DEFS} - -DBUILD_UVC_STATIC=ON - ) - - set(DECODE_DEPS libuvc) set(DECODE_INCLUDE_DIRS ${DECODE_INCLUDE_DIRS} - ${LIBUSB_1_INCLUDE_DIRS} ${FFMPEG_INCLUDE_DIRS} - ${CMAKE_CURRENT_BINARY_DIR}/libuvc_static/include + ${LIBUVC_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR}/../../../include) set(DECODE_LIBS ${FFMPEG_LINK_LIBRARIES} ${DECODE_LIBS} - ${LIBUSB_1_LINK_LIBRARIES} - ${CMAKE_CURRENT_BINARY_DIR}/libuvc_static/libuvc.a + ${LIBUVC_LINK_LIBRARIES} ) set(DECODE_SOURCES ${DECODE_SOURCES} ---- frameserver/decode/default/uvc_support.c.orig 2020-11-24 21:15:29 UTC -+++ frameserver/decode/default/uvc_support.c -@@ -145,7 +145,9 @@ static void callback(uvc_frame_t* frame, void* tag) - * though at least the capture devices I have used this one had the - * YUYV frame format have the same output as NV12 /facepalm */ - case UVC_FRAME_FORMAT_YUYV: -+#ifdef UVC_COLOR_FORMAT_NV12 - case UVC_FRAME_FORMAT_NV12: -+#endif - run_swscale(frame, cont, 2, AV_PIX_FMT_NV12); - break; - case UVC_FRAME_FORMAT_UYVY: -@@ -185,11 +187,13 @@ static int fmt_score(const uint8_t fourcc[static 4], i - .enumv = UVC_FRAME_FORMAT_GRAY8, - .score = 1 - }, -+#ifdef UVC_COLOR_FORMAT_NV12 - { - .fourcc = {'N', 'V', '1', '2'}, - .enumv = UVC_FRAME_FORMAT_NV12, - .score = 3 - }, -+#endif - /* this does not seem to have the 'right' fourcc? */ - { - .fourcc = {0x7d, 0xeb, 0x36, 0xe4},