From 71252e5b4467ef039fd8f5e2508c7c267be9daa7 Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Tue, 31 Aug 2021 19:01:04 -0700 Subject: [PATCH 01/12] [pangolin] Update to 0.6 --- ports/pangolin/add-definition.patch | 17 +++-- ports/pangolin/deprecated_constants.patch | 69 ------------------- .../pangolin/fix-build-error-in-vs2019.patch | 13 ++++ ports/pangolin/fix-cmake-version.patch | 21 +++--- ports/pangolin/fix-dependency-python.patch | 17 ++--- ports/pangolin/fix-includepath-error.patch | 26 +++---- ports/pangolin/portfile.cmake | 45 +++++------- ports/pangolin/vcpkg.json | 11 ++- 8 files changed, 78 insertions(+), 141 deletions(-) delete mode 100644 ports/pangolin/deprecated_constants.patch create mode 100644 ports/pangolin/fix-build-error-in-vs2019.patch diff --git a/ports/pangolin/add-definition.patch b/ports/pangolin/add-definition.patch index 02790216ebd1bd..ce27d4b33023b9 100644 --- a/ports/pangolin/add-definition.patch +++ b/ports/pangolin/add-definition.patch @@ -1,13 +1,12 @@ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 9e0baac..bb3ef76 100644 +index 49dcf02..d448928 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -287,6 +287,8 @@ if(BUILD_PANGOLIN_VIDEO AND _LINUX_) - message(STATUS "V4L Found and Enabled") - endif() +@@ -384,6 +384,7 @@ endif() -+add_definitions(-DHAVE_FFMPEG_AVPIXELFORMAT) -+ - find_package(FFMPEG QUIET) - if(BUILD_PANGOLIN_VIDEO AND FFMPEG_FOUND) - set(HAVE_FFMPEG 1) + option(BUILD_PANGOLIN_FFMPEG "Build support for ffmpeg video input" ON) + if(BUILD_PANGOLIN_FFMPEG AND BUILD_PANGOLIN_VIDEO) ++ add_definitions(-DHAVE_FFMPEG_AVPIXELFORMAT) + find_package(FFMPEG QUIET) + if(FFMPEG_FOUND) + set(HAVE_FFMPEG 1) diff --git a/ports/pangolin/deprecated_constants.patch b/ports/pangolin/deprecated_constants.patch deleted file mode 100644 index 813d2360d8f321..00000000000000 --- a/ports/pangolin/deprecated_constants.patch +++ /dev/null @@ -1,69 +0,0 @@ -diff --git a/src/video/drivers/ffmpeg.cpp b/src/video/drivers/ffmpeg.cpp -index 435225d..ff30349 100644 ---- a/src/video/drivers/ffmpeg.cpp -+++ b/src/video/drivers/ffmpeg.cpp -@@ -34,6 +34,8 @@ extern "C" - #include - } - -+#define CODEC_FLAG_GLOBAL_HEADER AV_CODEC_FLAG_GLOBAL_HEADER -+ - namespace pangolin - { - -@@ -74,8 +76,10 @@ std::string FfmpegFmtToString(const AVPixelFormat fmt) - TEST_PIX_FMT_RETURN(YUVJ420P); - TEST_PIX_FMT_RETURN(YUVJ422P); - TEST_PIX_FMT_RETURN(YUVJ444P); -+#ifdef FF_API_XVMC - TEST_PIX_FMT_RETURN(XVMC_MPEG2_MC); - TEST_PIX_FMT_RETURN(XVMC_MPEG2_IDCT); -+#endif - TEST_PIX_FMT_RETURN(UYVY422); - TEST_PIX_FMT_RETURN(UYYVYY411); - TEST_PIX_FMT_RETURN(BGR8); -@@ -95,11 +99,13 @@ std::string FfmpegFmtToString(const AVPixelFormat fmt) - TEST_PIX_FMT_RETURN(YUV440P); - TEST_PIX_FMT_RETURN(YUVJ440P); - TEST_PIX_FMT_RETURN(YUVA420P); -+#ifdef FF_API_VDPAU - TEST_PIX_FMT_RETURN(VDPAU_H264); - TEST_PIX_FMT_RETURN(VDPAU_MPEG1); - TEST_PIX_FMT_RETURN(VDPAU_MPEG2); - TEST_PIX_FMT_RETURN(VDPAU_WMV3); - TEST_PIX_FMT_RETURN(VDPAU_VC1); -+#endif - TEST_PIX_FMT_RETURN(RGB48BE ); - TEST_PIX_FMT_RETURN(RGB48LE ); - TEST_PIX_FMT_RETURN(RGB565BE); -@@ -119,7 +125,9 @@ std::string FfmpegFmtToString(const AVPixelFormat fmt) - TEST_PIX_FMT_RETURN(YUV422P16BE); - TEST_PIX_FMT_RETURN(YUV444P16LE); - TEST_PIX_FMT_RETURN(YUV444P16BE); -+#ifdef FF_API_VDPAU - TEST_PIX_FMT_RETURN(VDPAU_MPEG4); -+#endif - TEST_PIX_FMT_RETURN(DXVA2_VLD); - TEST_PIX_FMT_RETURN(RGB444BE); - TEST_PIX_FMT_RETURN(RGB444LE); -@@ -559,7 +567,8 @@ void FfmpegVideoOutputStream::WriteFrame(AVFrame* frame) - - int ret; - int got_packet = 1; -- -+ -+#if FF_API_LAVF_FMT_RAWPICTURE - // Setup AVPacket - if (recorder.oc->oformat->flags & AVFMT_RAWPICTURE) { - /* Raw video case - directly store the picture in the packet */ -@@ -569,6 +578,10 @@ void FfmpegVideoOutputStream::WriteFrame(AVFrame* frame) - pkt.pts = frame->pts; - ret = 0; - } else { -+#else -+ { -+#endif -+ - /* encode the image */ - #if (LIBAVFORMAT_VERSION_MAJOR >= 54) - ret = avcodec_encode_video2(stream->codec, &pkt, frame, &got_packet); diff --git a/ports/pangolin/fix-build-error-in-vs2019.patch b/ports/pangolin/fix-build-error-in-vs2019.patch new file mode 100644 index 00000000000000..1b7be934ea3219 --- /dev/null +++ b/ports/pangolin/fix-build-error-in-vs2019.patch @@ -0,0 +1,13 @@ +diff --git a/include/mpark/variant.hpp b/include/mpark/variant.hpp +index fb2cf06..6debb99 100644 +--- a/include/mpark/variant.hpp ++++ b/include/mpark/variant.hpp +@@ -243,7 +243,7 @@ namespace std { + #endif + + #if defined(__cpp_constexpr) && __cpp_constexpr >= 201304 +-#define MPARK_CPP14_CONSTEXPR ++//#define MPARK_CPP14_CONSTEXPR + #endif + + #if __has_feature(cxx_exceptions) || defined(__cpp_exceptions) || \ diff --git a/ports/pangolin/fix-cmake-version.patch b/ports/pangolin/fix-cmake-version.patch index 352171d32a673a..14b635da476db8 100644 --- a/ports/pangolin/fix-cmake-version.patch +++ b/ports/pangolin/fix-cmake-version.patch @@ -1,11 +1,10 @@ -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index dd08d31..7f364a7 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,5 +1,5 @@ --cmake_minimum_required(VERSION 2.6) -+cmake_minimum_required(VERSION 3.8) - project("Pangolin") - set(PANGOLIN_VERSION_MAJOR 0) - set(PANGOLIN_VERSION_MINOR 5) - set(PANGOLIN_VERSION ${PANGOLIN_VERSION_MAJOR}.${PANGOLIN_VERSION_MINOR}) +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0e13110..6adf1e2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 2.8.12) ++cmake_minimum_required(VERSION 3.8) + project("Pangolin") + set(PANGOLIN_VERSION_MAJOR 0) + set(PANGOLIN_VERSION_MINOR 6) diff --git a/ports/pangolin/fix-dependency-python.patch b/ports/pangolin/fix-dependency-python.patch index 67eae1288cf54a..276e0f092fceaf 100644 --- a/ports/pangolin/fix-dependency-python.patch +++ b/ports/pangolin/fix-dependency-python.patch @@ -1,14 +1,15 @@ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 7f364a7..9e0baac 100644 +index ddeb144..49dcf02 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -213,6 +213,9 @@ endif() - find_package(PythonLibs QUIET) - if(BUILD_PANGOLIN_GUI AND BUILD_PANGOLIN_VARS AND PYTHONLIBS_FOUND AND NOT _WIN_) - set(HAVE_PYTHON 1) +@@ -299,7 +299,9 @@ if(BUILD_PANGOLIN_PYTHON AND BUILD_PANGOLIN_GUI AND BUILD_PANGOLIN_VARS AND NOT + + if(pybind11_FOUND) + set(HAVE_PYTHON 1) +- + if (UNIX) + set(PYTHON_LIBRARY ${PYTHON_LIBRARY} dl util) + endif() - list(APPEND HEADERS - ${INCDIR}/console/ConsoleInterpreter.h - ${INCDIR}/console/ConsoleView.h + file(GLOB pypangolin_SRC "python/pypangolin/*.cpp" ) + file(GLOB pypangolin_HDR "python/pypangolin/*.hpp" ) + list(APPEND HEADERS diff --git a/ports/pangolin/fix-includepath-error.patch b/ports/pangolin/fix-includepath-error.patch index debb3348ad70c5..442eeb0ba518e8 100644 --- a/ports/pangolin/fix-includepath-error.patch +++ b/ports/pangolin/fix-includepath-error.patch @@ -1,13 +1,13 @@ -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index dd08d31..7f364a7 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -506,7 +506,7 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake @ONLY IMMEDIATE ) - - # Install tree config --set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/${REL_INCLUDE_DIR}" ) -+set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/../../include" ) - configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PROJECT_NAME}Config.cmake @ONLY ) - +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index a2c60ea..ddeb144 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -735,7 +735,7 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake @ONLY IMMEDIATE ) + + # Install tree config +-set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/${REL_INCLUDE_DIR}" ) ++set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/../../include" ) + configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PROJECT_NAME}Config.cmake @ONLY ) + diff --git a/ports/pangolin/portfile.cmake b/ports/pangolin/portfile.cmake index b6b8837f9765d8..0e88283c00458d 100644 --- a/ports/pangolin/portfile.cmake +++ b/ports/pangolin/portfile.cmake @@ -5,30 +5,28 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO stevenlovegrove/Pangolin - REF v0.5 - SHA512 7ebeec108f33f1aa8b1ad08e3ca128a837b22d33e3fc580021f981784043b023a1bf563bbfa8b51d46863db770b336d24fc84ee3d836b85e0da1848281b2a5b2 + REF dd801d244db3a8e27b7fe8020cd751404aa818fd #v0.6 + SHA512 8004ab6f146f319df41e4b8d4bdb6677b8faf6db725e34fea76fcbf065522fa286d334c2426dcb39faf0cfb3332946104f78393d2b2b2418fe02d91450916e78 HEAD_REF master PATCHES - deprecated_constants.patch # Change from upstream pangolin to address build failures from latest ffmpeg library fix-includepath-error.patch # include path has one more ../ fix-dependency-python.patch add-definition.patch fix-cmake-version.patch + fix-build-error-in-vs2019.patch #upstream issue https://github.com/stevenlovegrove/Pangolin/issues/654 ) -file(REMOVE ${SOURCE_PATH}/CMakeModules/FindGLEW.cmake) -file(REMOVE ${SOURCE_PATH}/CMakeModules/FindFFMPEG.cmake) +file(REMOVE "${SOURCE_PATH}/CMakeModules/FindGLEW.cmake") +file(REMOVE "${SOURCE_PATH}/CMakeModules/FindFFMPEG.cmake") string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" MSVC_USE_STATIC_CRT) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DBUILD_EXTERN_GLEW=OFF -DBUILD_EXTERN_LIBPNG=OFF -DBUILD_EXTERN_LIBJPEG=OFF - -DCMAKE_DISABLE_FIND_PACKAGE_PythonLibs=ON -DCMAKE_DISABLE_FIND_PACKAGE_TooN=ON -DCMAKE_DISABLE_FIND_PACKAGE_DC1394=ON -DCMAKE_DISABLE_FIND_PACKAGE_LibRealSense=ON @@ -43,36 +41,25 @@ vcpkg_configure_cmake( -DMSVC_USE_STATIC_CRT=${MSVC_USE_STATIC_CRT} ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Pangolin) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Pangolin) vcpkg_copy_pdbs() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") - file(GLOB EXE ${CURRENT_PACKAGES_DIR}/lib/*.dll) - file(COPY ${EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(REMOVE ${EXE}) +vcpkg_copy_tools(TOOL_NAMES Plotter VideoConvert VideoJsonPrint VideoJsonTransform VideoViewer AUTO_CLEAN) - file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/lib/*.dll) - file(COPY ${DEBUG_EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - file(REMOVE ${DEBUG_EXE}) - - vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/share/pangolin/PangolinTargets-debug.cmake - "lib/pangolin.dll" "bin/pangolin.dll" - ) - vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/share/pangolin/PangolinTargets-release.cmake - "lib/pangolin.dll" "bin/pangolin.dll" - ) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") endif() if(VCPKG_TARGET_IS_WINDOWS) # Copy missing header file - file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/src/include/pangolin/pangolin_export.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/pangolin) + file(COPY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/src/include/pangolin/pangolin_export.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/pangolin") endif() # Put the license file where vcpkg expects it -file(COPY ${CURRENT_PORT_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}/) -file(INSTALL ${SOURCE_PATH}/LICENCE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(COPY "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") +file(INSTALL "${SOURCE_PATH}/LICENCE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/pangolin/vcpkg.json b/ports/pangolin/vcpkg.json index 94864e848a6ca1..b83b987797f96e 100644 --- a/ports/pangolin/vcpkg.json +++ b/ports/pangolin/vcpkg.json @@ -1,7 +1,6 @@ { "name": "pangolin", - "version-string": "0.5", - "port-version": 15, + "version": "0.6", "description": "Lightweight GUI Library", "homepage": "https://github.com/stevenlovegrove/Pangolin", "supports": "!uwp & !osx", @@ -13,6 +12,14 @@ "avformat" ] }, + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "glew", "libjpeg-turbo", "libpng" From 2a906cfa71fe9ccc71eecde9fb7c67e1f81835a9 Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Tue, 31 Aug 2021 19:04:51 -0700 Subject: [PATCH 02/12] Update version files --- versions/baseline.json | 4 ++-- versions/p-/pangolin.json | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/versions/baseline.json b/versions/baseline.json index 4c514787fe0c2d..8e3577983bcfd9 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -4837,8 +4837,8 @@ "port-version": 1 }, "pangolin": { - "baseline": "0.5", - "port-version": 15 + "baseline": "0.6", + "port-version": 0 }, "pangomm": { "baseline": "2.48.0", diff --git a/versions/p-/pangolin.json b/versions/p-/pangolin.json index aad761058fbacb..9d762b60aa7869 100644 --- a/versions/p-/pangolin.json +++ b/versions/p-/pangolin.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "ed55513cd210d04ee2d3fbda04813641d3fc7da8", + "version": "0.6", + "port-version": 0 + }, { "git-tree": "77d0735cc19bbb45a0212a8b15ea101ca3598219", "version-string": "0.5", From a16100b4e9952a5ab96aca04f9875439c4aefaf7 Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Tue, 31 Aug 2021 19:43:17 -0700 Subject: [PATCH 03/12] Format manifest --- ports/pangolin/vcpkg.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/ports/pangolin/vcpkg.json b/ports/pangolin/vcpkg.json index b83b987797f96e..e6bc843b502dde 100644 --- a/ports/pangolin/vcpkg.json +++ b/ports/pangolin/vcpkg.json @@ -12,16 +12,16 @@ "avformat" ] }, + "glew", + "libjpeg-turbo", + "libpng", { - "name": "vcpkg-cmake", - "host": true + "name": "vcpkg-cmake", + "host": true }, { - "name": "vcpkg-cmake-config", - "host": true - }, - "glew", - "libjpeg-turbo", - "libpng" + "name": "vcpkg-cmake-config", + "host": true + } ] } From c66c84bfe00dd9bf83941b29a9b8799dbcdea2cd Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Tue, 31 Aug 2021 20:16:45 -0700 Subject: [PATCH 04/12] Revert to CRLF in original patches --- ports/pangolin/fix-cmake-version.patch | 20 ++++++++--------- ports/pangolin/fix-includepath-error.patch | 26 +++++++++++----------- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/ports/pangolin/fix-cmake-version.patch b/ports/pangolin/fix-cmake-version.patch index 14b635da476db8..0153d90eaf5948 100644 --- a/ports/pangolin/fix-cmake-version.patch +++ b/ports/pangolin/fix-cmake-version.patch @@ -1,10 +1,10 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0e13110..6adf1e2 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 2.8.12) -+cmake_minimum_required(VERSION 3.8) - project("Pangolin") - set(PANGOLIN_VERSION_MAJOR 0) - set(PANGOLIN_VERSION_MINOR 6) +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0e13110..6adf1e2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 2.8.12) ++cmake_minimum_required(VERSION 3.8) + project("Pangolin") + set(PANGOLIN_VERSION_MAJOR 0) + set(PANGOLIN_VERSION_MINOR 6) diff --git a/ports/pangolin/fix-includepath-error.patch b/ports/pangolin/fix-includepath-error.patch index 442eeb0ba518e8..a5ee1ad1d77948 100644 --- a/ports/pangolin/fix-includepath-error.patch +++ b/ports/pangolin/fix-includepath-error.patch @@ -1,13 +1,13 @@ -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index a2c60ea..ddeb144 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -735,7 +735,7 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake @ONLY IMMEDIATE ) - - # Install tree config --set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/${REL_INCLUDE_DIR}" ) -+set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/../../include" ) - configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PROJECT_NAME}Config.cmake @ONLY ) - +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index a2c60ea..ddeb144 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -735,7 +735,7 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake @ONLY IMMEDIATE ) + + # Install tree config +-set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/${REL_INCLUDE_DIR}" ) ++set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/../../include" ) + configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PROJECT_NAME}Config.cmake @ONLY ) + From 01d74a43f84a65f8335caecb133dbf8e28072441 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Wed, 1 Sep 2021 13:45:17 +0800 Subject: [PATCH 05/12] Update versions/p-/pangolin.json --- versions/p-/pangolin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/p-/pangolin.json b/versions/p-/pangolin.json index 9d762b60aa7869..3713fd4c5475a5 100644 --- a/versions/p-/pangolin.json +++ b/versions/p-/pangolin.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "ed55513cd210d04ee2d3fbda04813641d3fc7da8", + "git-tree": "84a730418438c11d401ac4f48842b30547b2c2d5", "version": "0.6", "port-version": 0 }, From 061530572907bd930ed5f99d0b48167cc3adb157 Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Wed, 1 Sep 2021 01:06:40 -0700 Subject: [PATCH 06/12] Support osx and add features --- ports/pangolin/portfile.cmake | 28 +++++++++++++++++++++++----- ports/pangolin/vcpkg.json | 15 +++++++++++++-- 2 files changed, 36 insertions(+), 7 deletions(-) diff --git a/ports/pangolin/portfile.cmake b/ports/pangolin/portfile.cmake index 0e88283c00458d..8cc193a199ab57 100644 --- a/ports/pangolin/portfile.cmake +++ b/ports/pangolin/portfile.cmake @@ -1,6 +1,11 @@ -vcpkg_fail_port_install(ON_TARGET "OSX" "UWP") +vcpkg_fail_port_install(ON_TARGET "UWP") -vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +if(VCPKG_TARGET_IS_WINDOWS) + vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + set(BUILD_SHARED_LIBS OFF) +else() + set(BUILD_SHARED_LIBS ON) +endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH @@ -13,13 +18,23 @@ vcpkg_from_github( fix-dependency-python.patch add-definition.patch fix-cmake-version.patch - fix-build-error-in-vs2019.patch #upstream issue https://github.com/stevenlovegrove/Pangolin/issues/654 + fix-build-error-in-vs2019.patch +) + +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + test BUILD_TESTS + tools BUILD_TOOLS + examples BUILD_EXAMPLES + ) file(REMOVE "${SOURCE_PATH}/CMakeModules/FindGLEW.cmake") file(REMOVE "${SOURCE_PATH}/CMakeModules/FindFFMPEG.cmake") -string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" MSVC_USE_STATIC_CRT) +if(VCPKG_TARGET_IS_WINDOWS) + string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" MSVC_USE_STATIC_CRT) +endif() vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" @@ -39,6 +54,7 @@ vcpkg_cmake_configure( -DCMAKE_DISABLE_FIND_PACKAGE_TIFF=ON -DCMAKE_DISABLE_FIND_PACKAGE_OpenEXR=ON -DMSVC_USE_STATIC_CRT=${MSVC_USE_STATIC_CRT} + -DBUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} ) vcpkg_cmake_install() @@ -49,7 +65,9 @@ vcpkg_copy_pdbs() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -vcpkg_copy_tools(TOOL_NAMES Plotter VideoConvert VideoJsonPrint VideoJsonTransform VideoViewer AUTO_CLEAN) +if("tools" IN_LIST FEATURES) + vcpkg_copy_tools(TOOL_NAMES Plotter VideoConvert VideoJsonPrint VideoJsonTransform VideoViewer AUTO_CLEAN) +endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") diff --git a/ports/pangolin/vcpkg.json b/ports/pangolin/vcpkg.json index e6bc843b502dde..360eb2e0c4583e 100644 --- a/ports/pangolin/vcpkg.json +++ b/ports/pangolin/vcpkg.json @@ -3,7 +3,7 @@ "version": "0.6", "description": "Lightweight GUI Library", "homepage": "https://github.com/stevenlovegrove/Pangolin", - "supports": "!uwp & !osx", + "supports": "!uwp", "dependencies": [ "eigen3", { @@ -23,5 +23,16 @@ "name": "vcpkg-cmake-config", "host": true } - ] + ], + "features": { + "examples": { + "description": "Build Examples" + }, + "test": { + "description": "Build Tests" + }, + "tools": { + "description": "Build Tools" + } + } } From 6a8021d102fe416e9b3b2ac56b3b6badccbc7fb1 Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Wed, 1 Sep 2021 01:10:45 -0700 Subject: [PATCH 07/12] Remove extra space line --- ports/pangolin/portfile.cmake | 1 - 1 file changed, 1 deletion(-) diff --git a/ports/pangolin/portfile.cmake b/ports/pangolin/portfile.cmake index 8cc193a199ab57..3fdd8b914f7523 100644 --- a/ports/pangolin/portfile.cmake +++ b/ports/pangolin/portfile.cmake @@ -26,7 +26,6 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS test BUILD_TESTS tools BUILD_TOOLS examples BUILD_EXAMPLES - ) file(REMOVE "${SOURCE_PATH}/CMakeModules/FindGLEW.cmake") From e0b5227db6c1aa93a1b38c7a62c1b658a7045f5b Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Wed, 1 Sep 2021 16:19:26 +0800 Subject: [PATCH 08/12] Update versions/p-/pangolin.json --- versions/p-/pangolin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/p-/pangolin.json b/versions/p-/pangolin.json index 3713fd4c5475a5..621837f4e3a916 100644 --- a/versions/p-/pangolin.json +++ b/versions/p-/pangolin.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "84a730418438c11d401ac4f48842b30547b2c2d5", + "git-tree": "cba2fbfee6c21df4d91853baabca16785e15ddb5", "version": "0.6", "port-version": 0 }, From a9b80edf4acb2dcdbee28498621b1b121f596138 Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Wed, 1 Sep 2021 02:10:31 -0700 Subject: [PATCH 09/12] Remove unused options --- ports/pangolin/portfile.cmake | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/ports/pangolin/portfile.cmake b/ports/pangolin/portfile.cmake index 3fdd8b914f7523..4b1a699cdb923e 100644 --- a/ports/pangolin/portfile.cmake +++ b/ports/pangolin/portfile.cmake @@ -2,9 +2,6 @@ vcpkg_fail_port_install(ON_TARGET "UWP") if(VCPKG_TARGET_IS_WINDOWS) vcpkg_check_linkage(ONLY_STATIC_LIBRARY) - set(BUILD_SHARED_LIBS OFF) -else() - set(BUILD_SHARED_LIBS ON) endif() vcpkg_from_github( @@ -31,9 +28,7 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS file(REMOVE "${SOURCE_PATH}/CMakeModules/FindGLEW.cmake") file(REMOVE "${SOURCE_PATH}/CMakeModules/FindFFMPEG.cmake") -if(VCPKG_TARGET_IS_WINDOWS) - string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" MSVC_USE_STATIC_CRT) -endif() +string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" MSVC_USE_STATIC_CRT) vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" @@ -53,7 +48,6 @@ vcpkg_cmake_configure( -DCMAKE_DISABLE_FIND_PACKAGE_TIFF=ON -DCMAKE_DISABLE_FIND_PACKAGE_OpenEXR=ON -DMSVC_USE_STATIC_CRT=${MSVC_USE_STATIC_CRT} - -DBUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} ) vcpkg_cmake_install() @@ -79,4 +73,4 @@ endif() # Put the license file where vcpkg expects it file(COPY "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") -file(INSTALL "${SOURCE_PATH}/LICENCE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENCE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) \ No newline at end of file From c189c0cda52e34c26dab8d53544d0e29bf6ca84c Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Wed, 1 Sep 2021 02:12:42 -0700 Subject: [PATCH 10/12] Update versions/p-/pangolin.json --- versions/p-/pangolin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/p-/pangolin.json b/versions/p-/pangolin.json index 621837f4e3a916..5bf714907edcd8 100644 --- a/versions/p-/pangolin.json +++ b/versions/p-/pangolin.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "cba2fbfee6c21df4d91853baabca16785e15ddb5", + "git-tree": "08ce5d821ee97466ce11796a14676696b091ad8d", "version": "0.6", "port-version": 0 }, From bd67f00071e9a26bd6b670e8dfa3211a3b112b12 Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Wed, 1 Sep 2021 03:06:18 -0700 Subject: [PATCH 11/12] Add MAYBE_UNUSED_VARIABLES --- ports/pangolin/portfile.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ports/pangolin/portfile.cmake b/ports/pangolin/portfile.cmake index 4b1a699cdb923e..410fe6a1420e74 100644 --- a/ports/pangolin/portfile.cmake +++ b/ports/pangolin/portfile.cmake @@ -32,7 +32,7 @@ string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" MSVC_USE_STATIC_CRT) vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" - OPTIONS + OPTIONS ${FEATURE_OPTIONS} -DBUILD_EXTERN_GLEW=OFF -DBUILD_EXTERN_LIBPNG=OFF -DBUILD_EXTERN_LIBJPEG=OFF @@ -48,6 +48,8 @@ vcpkg_cmake_configure( -DCMAKE_DISABLE_FIND_PACKAGE_TIFF=ON -DCMAKE_DISABLE_FIND_PACKAGE_OpenEXR=ON -DMSVC_USE_STATIC_CRT=${MSVC_USE_STATIC_CRT} + MAYBE_UNUSED_VARIABLES + MSVC_USE_STATIC_CRT ) vcpkg_cmake_install() From f37ab8b27a241cccfc6943e80faa26d3c3fbf3d5 Mon Sep 17 00:00:00 2001 From: NancyLi1013 Date: Wed, 1 Sep 2021 03:07:15 -0700 Subject: [PATCH 12/12] Update versions/p-/pangolin.json --- versions/p-/pangolin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/p-/pangolin.json b/versions/p-/pangolin.json index 5bf714907edcd8..f55cbf05e93ad8 100644 --- a/versions/p-/pangolin.json +++ b/versions/p-/pangolin.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "08ce5d821ee97466ce11796a14676696b091ad8d", + "git-tree": "e28a4e1603d5ee1843787223a55dce439b579b94", "version": "0.6", "port-version": 0 },