From b7d6160b80f417137bc480137b946c91f3272bf5 Mon Sep 17 00:00:00 2001 From: Curtis J Bezault Date: Wed, 12 Jun 2019 14:18:43 -0700 Subject: [PATCH 001/123] [icu] Enable parallel builds (#6695) * Add VCPKG_NUM_LOGICAL_CORES * break out logic that retries running a command several times into its own function * Parallelize icu --- ports/icu/fix_parallel_build_on_windows.patch | 13 ++ ports/icu/portfile.cmake | 44 ++++-- scripts/cmake/vcpkg_build_cmake.cmake | 133 ++--------------- scripts/cmake/vcpkg_common_functions.cmake | 1 + .../cmake/vcpkg_execute_build_process.cmake | 138 ++++++++++++++++++ toolsrc/include/vcpkg/base/system.h | 2 + toolsrc/src/vcpkg/base/system.cpp | 5 + toolsrc/src/vcpkg/build.cpp | 18 +++ 8 files changed, 220 insertions(+), 134 deletions(-) create mode 100644 ports/icu/fix_parallel_build_on_windows.patch create mode 100644 scripts/cmake/vcpkg_execute_build_process.cmake diff --git a/ports/icu/fix_parallel_build_on_windows.patch b/ports/icu/fix_parallel_build_on_windows.patch new file mode 100644 index 00000000000000..b0ea7556c851fb --- /dev/null +++ b/ports/icu/fix_parallel_build_on_windows.patch @@ -0,0 +1,13 @@ +diff --git a/source/data/Makefile.in b/source/data/Makefile.in +index 1140b69..936ef81 100644 +--- a/source/data/Makefile.in ++++ b/source/data/Makefile.in +@@ -514,7 +514,7 @@ build-dir: + # The | is an order-only prerequisite. This helps when the -j option is used, + # and we don't want the files to be built before the directories are built. + ifneq ($(filter order-only,$(.FEATURES)),) +-$(ALL_FILES) $(ALL_INDEX_SRC_FILES): | build-dir ++$(ALL_FILES) $(ALL_INDEX_SRC_FILES) $(SO_VERSION_DATA): | build-dir + endif + + # Now, sections for building each kind of data. diff --git a/ports/icu/portfile.cmake b/ports/icu/portfile.cmake index 2061111e9ad5ac..9225246f3d8309 100644 --- a/ports/icu/portfile.cmake +++ b/ports/icu/portfile.cmake @@ -15,11 +15,13 @@ vcpkg_download_distfile( FILENAME "icu4c-${VERSION2}-src.tgz" SHA512 4c37691246db802e4bae0c8c5f6ac1dac64c5753b607e539c5c1c36e361fcd9dd81bd1d3b5416c2960153b83700ccdb356412847d0506ab7782ae626ac0ffb94 ) -vcpkg_extract_source_archive(${ARCHIVE} ${CURRENT_BUILDTREES_DIR}/src/icu-${VERSION}) - -vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/disable-escapestr-tool.patch - ${CMAKE_CURRENT_LIST_DIR}/remove-MD-from-configure.patch +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/disable-escapestr-tool.patch + ${CMAKE_CURRENT_LIST_DIR}/remove-MD-from-configure.patch + ${CMAKE_CURRENT_LIST_DIR}/fix_parallel_build_on_windows.patch ) set(CONFIGURE_OPTIONS "--disable-samples --disable-tests") @@ -94,8 +96,8 @@ else() message(STATUS "Configuring ${TARGET_TRIPLET}-rel") file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) - set(ENV{CFLAGS} "${ICU_RUNTIME} -O2 -Oi -Zi ${VCPKG_C_FLAGS} ${VCPKG_C_FLAGS_RELEASE}") - set(ENV{CXXFLAGS} "${ICU_RUNTIME} -O2 -Oi -Zi ${VCPKG_CXX_FLAGS} ${VCPKG_CXX_FLAGS_RELEASE}") + set(ENV{CFLAGS} "${ICU_RUNTIME} -O2 -Oi -Zi -FS ${VCPKG_C_FLAGS} ${VCPKG_C_FLAGS_RELEASE}") + set(ENV{CXXFLAGS} "${ICU_RUNTIME} -O2 -Oi -Zi -FS ${VCPKG_CXX_FLAGS} ${VCPKG_CXX_FLAGS_RELEASE}") set(ENV{LDFLAGS} "-DEBUG -INCREMENTAL:NO -OPT:REF -OPT:ICF") vcpkg_execute_required_process( COMMAND ${BASH} --noprofile --norc -c @@ -110,8 +112,8 @@ else() message(STATUS "Configuring ${TARGET_TRIPLET}-dbg") file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) - set(ENV{CFLAGS} "${ICU_RUNTIME}d -Od -Zi -RTC1 ${VCPKG_C_FLAGS} ${VCPKG_C_FLAGS_DEBUG}") - set(ENV{CXXFLAGS} "${ICU_RUNTIME}d -Od -Zi -RTC1 ${VCPKG_CXX_FLAGS} ${VCPKG_CXX_FLAGS_DEBUG}") + set(ENV{CFLAGS} "${ICU_RUNTIME}d -Od -Zi -FS -RTC1 ${VCPKG_C_FLAGS} ${VCPKG_C_FLAGS_DEBUG}") + set(ENV{CXXFLAGS} "${ICU_RUNTIME}d -Od -Zi -FS -RTC1 ${VCPKG_CXX_FLAGS} ${VCPKG_CXX_FLAGS_DEBUG}") set(ENV{LDFLAGS} "-DEBUG") vcpkg_execute_required_process( COMMAND ${BASH} --noprofile --norc -c @@ -129,20 +131,32 @@ unset(ENV{LDFLAGS}) if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") # Build release message(STATUS "Package ${TARGET_TRIPLET}-rel") - vcpkg_execute_required_process( - COMMAND ${BASH} --noprofile --norc -c "make && make install" + vcpkg_execute_build_process( + COMMAND ${BASH} --noprofile --norc -c "make -j ${VCPKG_CONCURRENCY}" + NO_PARALLEL_COMMAND ${BASH} --noprofile --norc -c "make" + WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel" + LOGNAME "make-build-${TARGET_TRIPLET}-rel") + + vcpkg_execute_build_process( + COMMAND ${BASH} --noprofile --norc -c "make install" WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel" - LOGNAME "build-${TARGET_TRIPLET}-rel") + LOGNAME "make-install-${TARGET_TRIPLET}-rel") message(STATUS "Package ${TARGET_TRIPLET}-rel done") endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") # Build debug message(STATUS "Package ${TARGET_TRIPLET}-dbg") - vcpkg_execute_required_process( - COMMAND ${BASH} --noprofile --norc -c "make && make install" + vcpkg_execute_build_process( + COMMAND ${BASH} --noprofile --norc -c "make -j ${VCPKG_CONCURRENCY}" + NO_PARALLEL_COMMAND ${BASH} --noprofile --norc -c "make" + WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg" + LOGNAME "make-build-${TARGET_TRIPLET}-dbg") + + vcpkg_execute_build_process( + COMMAND ${BASH} --noprofile --norc -c "make install" WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg" - LOGNAME "build-${TARGET_TRIPLET}-dbg") + LOGNAME "make-install-${TARGET_TRIPLET}-dbg") message(STATUS "Package ${TARGET_TRIPLET}-dbg done") endif() diff --git a/scripts/cmake/vcpkg_build_cmake.cmake b/scripts/cmake/vcpkg_build_cmake.cmake index 3db6597b4677de..b110d2cc900d71 100644 --- a/scripts/cmake/vcpkg_build_cmake.cmake +++ b/scripts/cmake/vcpkg_build_cmake.cmake @@ -60,10 +60,6 @@ function(vcpkg_build_cmake) set(TARGET_PARAM) endif() - if(_bc_DISABLE_PARALLEL) - set(PARALLEL_ARG ${NO_PARALLEL_ARG}) - endif() - foreach(BUILDTYPE "debug" "release") if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL BUILDTYPE) if(BUILDTYPE STREQUAL "debug") @@ -75,8 +71,6 @@ function(vcpkg_build_cmake) endif() message(STATUS "Building ${TARGET_TRIPLET}-${SHORT_BUILDTYPE}") - set(LOGPREFIX "${CURRENT_BUILDTREES_DIR}/${_bc_LOGFILE_ROOT}-${TARGET_TRIPLET}-${SHORT_BUILDTYPE}") - set(LOGS) if(_bc_ADD_BIN_TO_PATH) set(_BACKUP_ENV_PATH "$ENV{PATH}") @@ -91,121 +85,22 @@ function(vcpkg_build_cmake) set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/bin${_PATHSEP}$ENV{PATH}") endif() endif() - execute_process( - COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${PARALLEL_ARG} - OUTPUT_FILE "${LOGPREFIX}-out.log" - ERROR_FILE "${LOGPREFIX}-err.log" - RESULT_VARIABLE error_code - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) - if(error_code) - file(READ "${LOGPREFIX}-out.log" out_contents) - file(READ "${LOGPREFIX}-err.log" err_contents) - - if(out_contents) - list(APPEND LOGS "${LOGPREFIX}-out.log") - endif() - if(err_contents) - list(APPEND LOGS "${LOGPREFIX}-err.log") - endif() - - if(out_contents MATCHES "LINK : fatal error LNK1102:" OR out_contents MATCHES " fatal error C1060: ") - # The linker ran out of memory during execution. We will try continuing once more, with parallelism disabled. - message(STATUS "Restarting Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} without parallelism because memory exceeded") - execute_process( - COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${NO_PARALLEL_ARG} - OUTPUT_FILE "${LOGPREFIX}-out-1.log" - ERROR_FILE "${LOGPREFIX}-err-1.log" - RESULT_VARIABLE error_code - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) - - if(error_code) - file(READ "${LOGPREFIX}-out-1.log" out_contents) - file(READ "${LOGPREFIX}-err-1.log" err_contents) - - if(out_contents) - list(APPEND LOGS "${LOGPREFIX}-out-1.log") - endif() - if(err_contents) - list(APPEND LOGS "${LOGPREFIX}-err-1.log") - endif() - endif() - elseif(out_contents MATCHES ": No such file or directory") - # WSL workaround - WSL occassionally fails with no such file or directory. Detect if we are running in WSL and restart. - execute_process(COMMAND "uname" "-r" - OUTPUT_VARIABLE UNAME_R ERROR_VARIABLE UNAME_R - OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_STRIP_TRAILING_WHITESPACE) - - if (UNAME_R MATCHES "Microsoft") - set(ITERATION 0) - while (ITERATION LESS 10 AND out_contents MATCHES ": No such file or directory") - MATH(EXPR ITERATION "${ITERATION}+1") - message(STATUS "Restarting Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} because of wsl subsystem issue. Iteration: ${ITERATION}") - execute_process( - COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} - OUTPUT_FILE "${LOGPREFIX}-out-${ITERATION}.log" - ERROR_FILE "${LOGPREFIX}-err-${ITERATION}.log" - RESULT_VARIABLE error_code - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) - if(error_code) - file(READ "${LOGPREFIX}-out-${ITERATION}.log" out_contents) - file(READ "${LOGPREFIX}-err-${ITERATION}.log" err_contents) - - if(out_contents) - list(APPEND LOGS "${LOGPREFIX}-out-${ITERATION}.log") - endif() - if(err_contents) - list(APPEND LOGS "${LOGPREFIX}-err-${ITERATION}.log") - endif() - else() - break() - endif() - endwhile() - endif() - elseif(out_contents MATCHES "mt : general error c101008d: " OR out_contents MATCHES "mt.exe : general error c101008d: ") - # Antivirus workaround - occasionally files are locked and cause mt.exe to fail - set(ITERATION 0) - while (ITERATION LESS 3 AND (out_contents MATCHES "mt : general error c101008d: " OR out_contents MATCHES "mt.exe : general error c101008d: ")) - MATH(EXPR ITERATION "${ITERATION}+1") - message(STATUS "Restarting Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} because of mt.exe file locking issue. Iteration: ${ITERATION}") - execute_process( - COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${PARALLEL_ARG} - OUTPUT_FILE "${LOGPREFIX}-out-${ITERATION}.log" - ERROR_FILE "${LOGPREFIX}-err-${ITERATION}.log" - RESULT_VARIABLE error_code - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) - - if(error_code) - file(READ "${LOGPREFIX}-out-${ITERATION}.log" out_contents) - file(READ "${LOGPREFIX}-err-${ITERATION}.log" err_contents) - - if(out_contents) - list(APPEND LOGS "${LOGPREFIX}-out-${ITERATION}.log") - endif() - if(err_contents) - list(APPEND LOGS "${LOGPREFIX}-err-${ITERATION}.log") - endif() - else() - break() - endif() - endwhile() - endif() - - if(error_code) - set(STRINGIFIED_LOGS) - foreach(LOG ${LOGS}) - file(TO_NATIVE_PATH "${LOG}" NATIVE_LOG) - list(APPEND STRINGIFIED_LOGS " ${NATIVE_LOG}\n") - endforeach() - set(_eb_COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${PARALLEL_ARG}) - set(_eb_WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) - message(FATAL_ERROR - " Command failed: ${_eb_COMMAND}\n" - " Working Directory: ${_eb_WORKING_DIRECTORY}\n" - " See logs for more information:\n" - ${STRINGIFIED_LOGS}) - endif() + if (_bc_DISABLE_PARALLEL) + vcpkg_execute_build_process( + COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${NO_PARALLEL_ARG} + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE} + LOGNAME "${_bc_LOGFILE_ROOT}-${TARGET_TRIPLET}-${SHORT_BUILDTYPE}" + ) + else() + vcpkg_execute_build_process( + COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${PARALLEL_ARG} + NO_PARALLEL_COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${NO_PARALLEL_ARG} + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE} + LOGNAME "${_bc_LOGFILE_ROOT}-${TARGET_TRIPLET}-${SHORT_BUILDTYPE}" + ) endif() + if(_bc_ADD_BIN_TO_PATH) set(ENV{PATH} "${_BACKUP_ENV_PATH}") endif() diff --git a/scripts/cmake/vcpkg_common_functions.cmake b/scripts/cmake/vcpkg_common_functions.cmake index d66fc5effd7714..b99f8bee8d2989 100644 --- a/scripts/cmake/vcpkg_common_functions.cmake +++ b/scripts/cmake/vcpkg_common_functions.cmake @@ -7,6 +7,7 @@ include(vcpkg_extract_source_archive) include(vcpkg_extract_source_archive_ex) include(vcpkg_execute_required_process) include(vcpkg_execute_required_process_repeat) +include(vcpkg_execute_build_process) include(vcpkg_find_acquire_program) include(vcpkg_fixup_cmake_targets) include(vcpkg_from_github) diff --git a/scripts/cmake/vcpkg_execute_build_process.cmake b/scripts/cmake/vcpkg_execute_build_process.cmake new file mode 100644 index 00000000000000..f02aa296da8803 --- /dev/null +++ b/scripts/cmake/vcpkg_execute_build_process.cmake @@ -0,0 +1,138 @@ +## # vcpkg_execute_build_process +## +## Execute a required build process +## +## ## Usage +## ```cmake +## vcpkg_execute_build_process( +## COMMAND [...] +## [NO_PARALLEL_COMMAND [...]] +## WORKING_DIRECTORY +## LOGNAME ) +## ) +## ``` +## ## Parameters +## ### COMMAND +## The command to be executed, along with its arguments. +## +## ### NO_PARALLEL_COMMAND +## Optional parameter which specifies a non-parallel command to attempt if a +## failure potentially due to parallelism is detected. +## +## ### WORKING_DIRECTORY +## The directory to execute the command in. +## +## ### LOGNAME +## The prefix to use for the log files. +## +## This should be a unique name for different triplets so that the logs don't +## conflict when building multiple at once. +## +## ## Examples +## +## * [icu](https://github.com/Microsoft/vcpkg/blob/master/ports/icu/portfile.cmake) +function(vcpkg_execute_build_process) + cmake_parse_arguments(_ebp "" "WORKING_DIRECTORY;LOGNAME" "COMMAND;NO_PARALLEL_COMMAND" ${ARGN}) + + set(LOG_OUT "${CURRENT_BUILDTREES_DIR}/${_ebp_LOGNAME}-out.log") + set(LOG_ERR "${CURRENT_BUILDTREES_DIR}/${_ebp_LOGNAME}-err.log") + + execute_process( + COMMAND ${_ebp_COMMAND} + WORKING_DIRECTORY ${_ebp_WORKING_DIRECTORY} + OUTPUT_FILE ${LOG_OUT} + ERROR_FILE ${LOG_ERR} + RESULT_VARIABLE error_code + ) + + if(error_code) + file(READ ${LOG_OUT} out_contents) + file(READ ${LOG_ERR} err_contents) + + if(out_contents) + list(APPEND LOGS ${LOG_OUT}) + endif() + if(err_contents) + list(APPEND LOGS ${LOG_ERR}) + endif() + + if(out_contents MATCHES "LINK : fatal error LNK1102:" OR out_contents MATCHES " fatal error C1060: " + OR err_contents MATCHES "LINK : fatal error LNK1102:" OR err_contents MATCHES " fatal error C1060: ") + # The linker ran out of memory during execution. We will try continuing once more, with parallelism disabled. + message(STATUS "Restarting Build without parallelism because memory exceeded") + set(LOG_OUT "${CURRENT_BUILDTREES_DIR}/${_ebp_LOGNAME}-out-1.log") + set(LOG_ERR "${CURRENT_BUILDTREES_DIR}/${_ebp_LOGNAME}-err-1.log") + + if(${_ebp_NO_PARALLEL_COMMAND}) + execute_process( + COMMAND ${_ebp_NO_PARALLEL_COMMAND} + WORKING_DIRECTORY ${_ebp_WORKING_DIRECTORY} + OUTPUT_FILE ${LOG_OUT} + ERROR_FILE ${LOG_ERR} + RESULT_VARIABLE error_code + ) + else() + execute_process( + COMMAND ${_ebp_COMMAND} + WORKING_DIRECTORY ${_ebp_WORKING_DIRECTORY} + OUTPUT_FILE ${LOG_OUT} + ERROR_FILE ${LOG_ERR} + RESULT_VARIABLE error_code + ) + endif() + + if(error_code) + file(READ ${LOG_OUT} out_contents) + file(READ ${LOG_ERR} err_contents) + + if(out_contents) + list(APPEND LOGS ${LOG_OUT}) + endif() + if(err_contents) + list(APPEND LOGS ${LOG_ERR}) + endif() + endif() + elseif(out_contents MATCHES "mt : general error c101008d: " OR out_contents MATCHES "mt.exe : general error c101008d: ") + # Antivirus workaround - occasionally files are locked and cause mt.exe to fail + message(STATUS "mt.exe has failed. This may be the result of anti-virus. Disabling anti-virus on the buildtree folder may improve build speed") + set(ITERATION 0) + while (ITERATION LESS 3 AND (out_contents MATCHES "mt : general error c101008d: " OR out_contents MATCHES "mt.exe : general error c101008d: ")) + MATH(EXPR ITERATION "${ITERATION}+1") + message(STATUS "Restarting Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} because of mt.exe file locking issue. Iteration: ${ITERATION}") + execute_process( + COMMAND ${_ebp_COMMAND} + OUTPUT_FILE "${LOGPREFIX}-out-${ITERATION}.log" + ERROR_FILE "${LOGPREFIX}-err-${ITERATION}.log" + RESULT_VARIABLE error_code + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) + + if(error_code) + file(READ "${LOGPREFIX}-out-${ITERATION}.log" out_contents) + file(READ "${LOGPREFIX}-err-${ITERATION}.log" err_contents) + + if(out_contents) + list(APPEND LOGS "${LOGPREFIX}-out-${ITERATION}.log") + endif() + if(err_contents) + list(APPEND LOGS "${LOGPREFIX}-err-${ITERATION}.log") + endif() + else() + break() + endif() + endwhile() + endif() + + if(error_code) + set(STRINGIFIED_LOGS) + foreach(LOG ${LOGS}) + file(TO_NATIVE_PATH "${LOG}" NATIVE_LOG) + list(APPEND STRINGIFIED_LOGS " ${NATIVE_LOG}\n") + endforeach() + message(FATAL_ERROR + " Command failed: ${_ebp_COMMAND}\n" + " Working Directory: ${_ebp_WORKING_DIRECTORY}\n" + " See logs for more information:\n" + ${STRINGIFIED_LOGS}) + endif(error_code) + endif(error_code) +endfunction(vcpkg_execute_build_process) diff --git a/toolsrc/include/vcpkg/base/system.h b/toolsrc/include/vcpkg/base/system.h index 0245b684a7b850..907a692a2761fe 100644 --- a/toolsrc/include/vcpkg/base/system.h +++ b/toolsrc/include/vcpkg/base/system.h @@ -28,4 +28,6 @@ namespace vcpkg::System const Optional& get_program_files_32_bit(); const Optional& get_program_files_platform_bitness(); + + int get_num_logical_cores(); } diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index 48a701bfa699c8..a1185352411add 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -596,6 +596,11 @@ namespace vcpkg #else void System::register_console_ctrl_handler() {} #endif + + int System::get_num_logical_cores() + { + return std::thread::hardware_concurrency(); + } } namespace vcpkg::Debug diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 7bd6f467b7da0b..0a7c854b5a8465 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -334,6 +334,23 @@ namespace vcpkg::Build return ret; } + static int get_concurrency() + { + static int concurrency = []{ + auto user_defined_concurrency = System::get_environment_variable("VCPKG_MAX_CONCURRENCY"); + if (user_defined_concurrency) + { + return std::stoi(user_defined_concurrency.value_or_exit(VCPKG_LINE_INFO)); + } + else + { + return System::get_num_logical_cores() + 1; + } + }(); + + return concurrency; + } + static ExtendedBuildResult do_build_package(const VcpkgPaths& paths, const PreBuildInfo& pre_build_info, const PackageSpec& spec, @@ -372,6 +389,7 @@ namespace vcpkg::Build {"_VCPKG_DOWNLOAD_TOOL", to_string(config.build_package_options.download_tool)}, {"FEATURES", Strings::join(";", config.feature_list)}, {"ALL_FEATURES", all_features}, + {"VCPKG_CONCURRENCY", std::to_string(get_concurrency())}, }; if (!System::get_environment_variable("VCPKG_FORCE_SYSTEM_BINARIES").has_value()) From d4412e0ee2c8842bf54f0d70aeb07d184578bc1f Mon Sep 17 00:00:00 2001 From: Cheney Wang <38240633+Cheney-W@users.noreply.github.com> Date: Thu, 13 Jun 2019 06:44:25 +0800 Subject: [PATCH 002/123] [glew] Disable the link option /nodefaultlib and /noentry (#6853) * [glew] Disable the link option /nodefaultlib and /noentry * [glew] Combine with vcpkg_extract_source_archive_ex --- ports/glew/CONTROL | 2 +- ports/glew/fix-LNK2019.patch | 13 +++++++++++++ ports/glew/portfile.cmake | 9 +++++++-- 3 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 ports/glew/fix-LNK2019.patch diff --git a/ports/glew/CONTROL b/ports/glew/CONTROL index 54b2d09df4e561..13cc9223040810 100644 --- a/ports/glew/CONTROL +++ b/ports/glew/CONTROL @@ -1,3 +1,3 @@ Source: glew -Version: 2.1.0-3 +Version: 2.1.0-4 Description: The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. diff --git a/ports/glew/fix-LNK2019.patch b/ports/glew/fix-LNK2019.patch new file mode 100644 index 00000000000000..d45e61a8806319 --- /dev/null +++ b/ports/glew/fix-LNK2019.patch @@ -0,0 +1,13 @@ +diff --git a/build/cmake/CMakeLists.txt b/build/cmake/CMakeLists.txt +index 5081e0f..f76725a 100644 +--- a/build/cmake/CMakeLists.txt ++++ b/build/cmake/CMakeLists.txt +@@ -108,7 +108,7 @@ if (MSVC) + target_compile_options (glew PRIVATE -GS-) + target_compile_options (glew_s PRIVATE -GS-) + # remove stdlib dependency +- target_link_libraries (glew LINK_PRIVATE -nodefaultlib -noentry) ++ # target_link_libraries (glew LINK_PRIVATE -nodefaultlib -noentry) + string(REGEX REPLACE "/RTC(su|[1su])" "" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG}) + elseif (WIN32 AND ((CMAKE_C_COMPILER_ID MATCHES "GNU") OR (CMAKE_C_COMPILER_ID MATCHES "Clang"))) + # remove stdlib dependency on windows with GCC and Clang (for similar reasons diff --git a/ports/glew/portfile.cmake b/ports/glew/portfile.cmake index 9b982db7f09d82..f05934f05feb78 100644 --- a/ports/glew/portfile.cmake +++ b/ports/glew/portfile.cmake @@ -1,6 +1,6 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glew/glew-2.1.0) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glew-58abdfb190) # Don't change to vcpkg_from_github! The github-auto-generated archives are missing some files. # More info: https://github.com/nigels-com/glew/issues/31 and https://github.com/nigels-com/glew/issues/13 @@ -9,7 +9,12 @@ vcpkg_download_distfile(ARCHIVE_FILE FILENAME "glew-2.1.0.tgz" SHA512 9a9b4d81482ccaac4b476c34ed537585ae754a82ebb51c3efa16d953c25cc3931be46ed2e49e79c730cd8afc6a1b78c97d52cd714044a339c3bc29734cd4d2ab ) -vcpkg_extract_source_archive(${ARCHIVE_FILE} ${CURRENT_BUILDTREES_DIR}/src/glew) +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH ${SOURCE_PATH} + ARCHIVE ${ARCHIVE_FILE} + REF glew + PATCHES fix-LNK2019.patch +) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH}/build/cmake From 70149722d758c21b5f49a22f3a4a0c15ea8c6852 Mon Sep 17 00:00:00 2001 From: ct-clmsn Date: Wed, 12 Jun 2019 19:04:18 -0400 Subject: [PATCH 003/123] [libfabric] initial port of libfabric #4739 (#4740) * [networkdirect-sdk] Add networkdirect sdk install --- ports/libfabric/CONTROL | 5 ++ ports/libfabric/add_additional_includes.patch | 58 +++++++++++++++++++ ports/libfabric/portfile.cmake | 46 +++++++++++++++ ports/networkdirect-sdk/CONTROL | 4 ++ ports/networkdirect-sdk/portfile.cmake | 42 ++++++++++++++ 5 files changed, 155 insertions(+) create mode 100644 ports/libfabric/CONTROL create mode 100644 ports/libfabric/add_additional_includes.patch create mode 100644 ports/libfabric/portfile.cmake create mode 100644 ports/networkdirect-sdk/CONTROL create mode 100644 ports/networkdirect-sdk/portfile.cmake diff --git a/ports/libfabric/CONTROL b/ports/libfabric/CONTROL new file mode 100644 index 00000000000000..931d10f5e45919 --- /dev/null +++ b/ports/libfabric/CONTROL @@ -0,0 +1,5 @@ +Source: libfabric +Version: 1.7.1 +Description: The OpenFabrics Interfaces Working Group (OFIWG) and the Libfabric open-source community are pleased to announce the release of version v1.6.2 of libfabric. See NEWS.md for the list of features and enhancements that have been added since the last release. +Homepage: https://github.com/ofiwg/libfabric +Build-Depends: networkdirect-sdk (windows) diff --git a/ports/libfabric/add_additional_includes.patch b/ports/libfabric/add_additional_includes.patch new file mode 100644 index 00000000000000..377a810d282f25 --- /dev/null +++ b/ports/libfabric/add_additional_includes.patch @@ -0,0 +1,58 @@ +diff --git a/libfabric.vcxproj b/libfabric.vcxproj +index 43a05e7..ceb596f 100644 +--- a/libfabric.vcxproj ++++ b/libfabric.vcxproj +@@ -125,7 +125,7 @@ + Disabled + WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;ENABLE_DEBUG;%(PreprocessorDefinitions) + true +- $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include ++ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include + CompileAsC + 4127;4200;4204;4221;4115;4201;4100 + true +@@ -148,7 +148,7 @@ + Disabled + WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;ENABLE_DEBUG;%(PreprocessorDefinitions) + true +- $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; ++ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; + CompileAsC + 4127;4200;4204;4221;4115;4201;4100 + true +@@ -171,7 +171,7 @@ + Disabled + WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;ENABLE_DEBUG;%(PreprocessorDefinitions) + true +- $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include ++ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include + CompileAsC + 4127;4200;94;4204;4221;869 + true +@@ -195,7 +195,7 @@ + true + WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;%(PreprocessorDefinitions) + true +- $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include ++ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include + 4127;4200;4204;4221;4115;4201;4100 + true + false +@@ -220,7 +220,7 @@ + true + WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;%(PreprocessorDefinitions) + true +- $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; ++ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; + 4127;4200;4204;4221;4115;4201;4100 + true + false +@@ -245,7 +245,7 @@ + true + WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;%(PreprocessorDefinitions) + true +- $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; ++ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; + 4127;4200;94;4204;4221;869 + true + false diff --git a/ports/libfabric/portfile.cmake b/ports/libfabric/portfile.cmake new file mode 100644 index 00000000000000..f7dc21226aa7bb --- /dev/null +++ b/ports/libfabric/portfile.cmake @@ -0,0 +1,46 @@ +include(vcpkg_common_functions) + +if (VCPKG_CMAKE_SYSTEM_NAME) + # The library supports Linux/Darwin/BSD, it is just not yet added here + message(FATAL_ERROR "vcpkg libfabric currently suports windows. Please consider a pull request to add additional support!") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO ofiwg/libfabric + REF v1.7.1 + HEAD_REF master + SHA512 3ae06839295a5b581a5d9936ee991bb597672a4981cc7fa385f4db7645d5328156d758848827ec186c0056cf3abd97f8f3859ec16a8b5bbd0d1f979143ee7bb1 + PATCHES + add_additional_includes.patch +) + +if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + message(FATAL_ERROR "VCPKG BUILD ERROR: libfabric only supports x64") +endif() + +set(LIBFABRIC_RELEASE_CONFIGURATION "Release-v141") +set(LIBFABRIC_DEBUG_CONFIGURATION "Debug-v141") + +vcpkg_install_msbuild( + SOURCE_PATH ${SOURCE_PATH} + PROJECT_SUBPATH libfabric.vcxproj + INCLUDES_SUBPATH include + LICENSE_SUBPATH COPYING + PLATFORM "x64" + RELEASE_CONFIGURATION ${LIBFABRIC_RELEASE_CONFIGURATION} + DEBUG_CONFIGURATION ${LIBFABRIC_RELEASE_CONFIGURATION} + USE_VCPKG_INTEGRATION + ALLOW_ROOT_INCLUDES + OPTIONS + /p:SolutionDir=${SOURCE_PATH} + /p:AdditionalIncludeDirectories="${CURRENT_INSTALLED_DIR}/include" +) + +#Move includes under subdirectory to avoid colisions with other libraries +file(RENAME ${CURRENT_PACKAGES_DIR}/include ${CURRENT_PACKAGES_DIR}/includetemp) +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/include) +file(RENAME ${CURRENT_PACKAGES_DIR}/includetemp ${CURRENT_PACKAGES_DIR}/include/libfabric) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libfabric RENAME copyright) diff --git a/ports/networkdirect-sdk/CONTROL b/ports/networkdirect-sdk/CONTROL new file mode 100644 index 00000000000000..3cc939c8e58a39 --- /dev/null +++ b/ports/networkdirect-sdk/CONTROL @@ -0,0 +1,4 @@ +Source: networkdirect-sdk +Version: 2.0.1 +Description: The Network Direct architecture allows hardware vendors to expose the advanced capabilities of their networking devices. +Homepage: https://www.nuget.org/packages/NetworkDirect \ No newline at end of file diff --git a/ports/networkdirect-sdk/portfile.cmake b/ports/networkdirect-sdk/portfile.cmake new file mode 100644 index 00000000000000..bb893ed9065117 --- /dev/null +++ b/ports/networkdirect-sdk/portfile.cmake @@ -0,0 +1,42 @@ +include(vcpkg_common_functions) + +#only supports windows +if (VCPKG_CMAKE_SYSTEM_NAME) + message(FATAL_ERROR "networkDirect-sdk only supports windows") +endif() + +if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x64" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") + message(FATAL_ERROR "networkDirect-sdk only supports x64 and x86") +endif() + +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + +vcpkg_download_distfile(ARCHIVE + URLS "https://www.nuget.org/api/v2/package/NetworkDirect/2.0.1" + FILENAME "networkDirect-2.0.1.zip" + SHA512 97e48ab293c164a80a3ed9e51f1f9f5ae85c07ee91c49950a76b486567d2e50346a2379b8284ffcb9d7d2fe70f76eff9455dce740cf9d3e0c1b83100e25168a8 +) + +vcpkg_download_distfile(LICENSE + URLS "https://raw.githubusercontent.com/microsoft/NetworkDirect/master/LICENSE.txt" + FILENAME "networkingDirect_license.txt" + SHA512 7d79aae4c9beb85811a3e122a2b12aad231f519dd12a461ac49d52864a735a6b05a263d433c11ede1406d2e49b6dc62dd38487eb7bd8c079d7198a20cf85fc4d +) + +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + NO_REMOVE_ONE_LEVEL +) + +file(COPY ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR}/ ) + +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + file(COPY ${SOURCE_PATH}/lib/x64/ndutil.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/) + file(COPY ${SOURCE_PATH}/lib/x64/ndutil.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/) +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") + file(COPY ${SOURCE_PATH}/lib/Win32/ndutil.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/) + file(COPY ${SOURCE_PATH}/lib/Win32/ndutil.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/) +endif() + +file(COPY ${LICENSE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/networkdirect-sdk/COPYRIGHT) From 8c49e565c0eb565fd76df76144dd78d70a211d6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20D=C3=B6nmez?= Date: Thu, 13 Jun 2019 01:30:03 +0200 Subject: [PATCH 004/123] Protect #pragma comment(lib, "foo") with _WIN32 checks (#6867) lld on Linux can now process #pragma comment(lib, "foo") macros which results in build failures on Linux when lld is used. Fix this by protecting these macros with _WIN32 checks. --- toolsrc/src/tests.arguments.cpp | 4 +++- toolsrc/src/tests.dependencies.cpp | 2 ++ toolsrc/src/tests.packagespec.cpp | 2 ++ toolsrc/src/tests.paragraph.cpp | 2 ++ toolsrc/src/vcpkg.cpp | 2 ++ toolsrc/src/vcpkg/base/system.cpp | 2 ++ toolsrc/src/vcpkg/metrics.cpp | 2 ++ 7 files changed, 15 insertions(+), 1 deletion(-) diff --git a/toolsrc/src/tests.arguments.cpp b/toolsrc/src/tests.arguments.cpp index 72bdbdb65324ec..51ababd3db4f7e 100644 --- a/toolsrc/src/tests.arguments.cpp +++ b/toolsrc/src/tests.arguments.cpp @@ -1,7 +1,9 @@ #include "tests.pch.h" +#if defined(_WIN32) #pragma comment(lib, "version") #pragma comment(lib, "winhttp") +#endif using namespace Microsoft::VisualStudio::CppUnitTestFramework; @@ -61,4 +63,4 @@ namespace UnitTest1 Assert::AreEqual(size_t{0}, v.command_arguments.size()); } }; -} \ No newline at end of file +} diff --git a/toolsrc/src/tests.dependencies.cpp b/toolsrc/src/tests.dependencies.cpp index f82fad4e47490d..7d8283ed63b8e7 100644 --- a/toolsrc/src/tests.dependencies.cpp +++ b/toolsrc/src/tests.dependencies.cpp @@ -1,7 +1,9 @@ #include "tests.pch.h" +#if defined(_WIN32) #pragma comment(lib, "version") #pragma comment(lib, "winhttp") +#endif using namespace Microsoft::VisualStudio::CppUnitTestFramework; diff --git a/toolsrc/src/tests.packagespec.cpp b/toolsrc/src/tests.packagespec.cpp index 32ad81227aa13f..d3bc18c79b83ba 100644 --- a/toolsrc/src/tests.packagespec.cpp +++ b/toolsrc/src/tests.packagespec.cpp @@ -2,8 +2,10 @@ #include +#if defined(_WIN32) #pragma comment(lib, "version") #pragma comment(lib, "winhttp") +#endif using namespace Microsoft::VisualStudio::CppUnitTestFramework; diff --git a/toolsrc/src/tests.paragraph.cpp b/toolsrc/src/tests.paragraph.cpp index 9a56ad9ee3df5d..e99d07694e7013 100644 --- a/toolsrc/src/tests.paragraph.cpp +++ b/toolsrc/src/tests.paragraph.cpp @@ -1,7 +1,9 @@ #include "tests.pch.h" +#if defined(_WIN32) #pragma comment(lib, "version") #pragma comment(lib, "winhttp") +#endif using namespace Microsoft::VisualStudio::CppUnitTestFramework; diff --git a/toolsrc/src/vcpkg.cpp b/toolsrc/src/vcpkg.cpp index ab7586eebec357..e02bdc71f192e6 100644 --- a/toolsrc/src/vcpkg.cpp +++ b/toolsrc/src/vcpkg.cpp @@ -40,8 +40,10 @@ #include #include +#if defined(_WIN32) #pragma comment(lib, "ole32") #pragma comment(lib, "shell32") +#endif using namespace vcpkg; diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index a1185352411add..3d89d2fd4bff27 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -16,7 +16,9 @@ #include #endif +#if defined(_WIN32) #pragma comment(lib, "Advapi32") +#endif using namespace vcpkg::System; diff --git a/toolsrc/src/vcpkg/metrics.cpp b/toolsrc/src/vcpkg/metrics.cpp index 5ca2b056a18003..9dd520ed64c02e 100644 --- a/toolsrc/src/vcpkg/metrics.cpp +++ b/toolsrc/src/vcpkg/metrics.cpp @@ -9,8 +9,10 @@ #include #include +#if defined(_WIN32) #pragma comment(lib, "version") #pragma comment(lib, "winhttp") +#endif namespace vcpkg::Metrics { From 57eea4e7c243d4e13af0b9d1dacf9ccdf583969a Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Thu, 13 Jun 2019 07:30:49 +0800 Subject: [PATCH 005/123] [netcdf-c]Fix build error on linux. (#6865) --- ports/netcdf-c/CONTROL | 2 +- ports/netcdf-c/fix-build-error-on-linux.patch | 28 +++++++++++++++++++ ports/netcdf-c/portfile.cmake | 1 + 3 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 ports/netcdf-c/fix-build-error-on-linux.patch diff --git a/ports/netcdf-c/CONTROL b/ports/netcdf-c/CONTROL index e27c923f8f67b4..91d73cacb624ef 100644 --- a/ports/netcdf-c/CONTROL +++ b/ports/netcdf-c/CONTROL @@ -1,4 +1,4 @@ Source: netcdf-c -Version: 4.7.0-1 +Version: 4.7.0-2 Build-Depends: hdf5, curl Description: a set of self-describing, machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. diff --git a/ports/netcdf-c/fix-build-error-on-linux.patch b/ports/netcdf-c/fix-build-error-on-linux.patch new file mode 100644 index 00000000000000..bdcd7c97a4d141 --- /dev/null +++ b/ports/netcdf-c/fix-build-error-on-linux.patch @@ -0,0 +1,28 @@ +diff --git a/include/ncconfigure.h b/include/ncconfigure.h +index 2c5b2c8..d397790 100644 +--- a/include/ncconfigure.h ++++ b/include/ncconfigure.h +@@ -25,20 +25,20 @@ missing functions should be + defined and missing types defined. + */ + +-#ifndef HAVE_STRDUP ++#ifndef strdup + extern char* strdup(const char*); + #endif + + /* handle null arguments */ + #ifndef nulldup +-#ifdef HAVE_STRDUP ++#ifdef strdup + #define nulldup(s) ((s)==NULL?NULL:strdup(s)) + #else + char *nulldup(const char* s); + #endif + #endif + +-#ifdef _MSC_VER ++#ifdef _WIN32 + #ifndef HAVE_SSIZE_T + #include + typedef SSIZE_T ssize_t; diff --git a/ports/netcdf-c/portfile.cmake b/ports/netcdf-c/portfile.cmake index 37ed2f04eba9e8..a2f81cdb0e6b79 100644 --- a/ports/netcdf-c/portfile.cmake +++ b/ports/netcdf-c/portfile.cmake @@ -12,6 +12,7 @@ vcpkg_from_github( transitive-hdf5.patch hdf5.patch hdf5_2.patch + fix-build-error-on-linux.patch ) #Remove outdated find modules From 3860c11da25821ace8beade116741b7474b05fb8 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Thu, 13 Jun 2019 07:31:18 +0800 Subject: [PATCH 006/123] [argparse] Add new port (#6866) --- ports/argparse/CONTROL | 4 ++++ ports/argparse/portfile.cmake | 30 ++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 ports/argparse/CONTROL create mode 100644 ports/argparse/portfile.cmake diff --git a/ports/argparse/CONTROL b/ports/argparse/CONTROL new file mode 100644 index 00000000000000..c7c33adac9a965 --- /dev/null +++ b/ports/argparse/CONTROL @@ -0,0 +1,4 @@ +Source: argparse +Version: 2019-06-10 +Description: Argument parser for modern C++ +Homepage: https://github.com/p-ranav/argparse diff --git a/ports/argparse/portfile.cmake b/ports/argparse/portfile.cmake new file mode 100644 index 00000000000000..0ad21e10afb0d3 --- /dev/null +++ b/ports/argparse/portfile.cmake @@ -0,0 +1,30 @@ +# header-only library + +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO p-ranav/argparse + REF 2c71311b5fa49b7d65e6628375f2748d58830856 + SHA512 08a28a3fb424befe7df9a428fbad8e2687a1b331d7099bfaca2c3e04d8d4b4888e99d481226407bf90bfce282388545b09e4125128215cc95dc56fb313641bf6 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DARGPARSE_BUILD_TESTS=OFF +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT}) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) + +# Handle copyright +configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) + +# CMake integration test +vcpkg_test_cmake(PACKAGE_NAME ${PORT}) From 72657582cff173ce285611f32716110cc0ada989 Mon Sep 17 00:00:00 2001 From: Gregor Jasny Date: Thu, 13 Jun 2019 01:52:52 +0200 Subject: [PATCH 007/123] [prometheus-cpp] Update to version 0.7.0 (#6822) * [prometheus-cpp] Update to version 0.7.0 * [prometheus-cpp] add a testing feature --- ports/prometheus-cpp/CONTROL | 6 +++++- ports/prometheus-cpp/portfile.cmake | 6 +++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/ports/prometheus-cpp/CONTROL b/ports/prometheus-cpp/CONTROL index e89b84cb27d00c..341af0e8ca70e0 100644 --- a/ports/prometheus-cpp/CONTROL +++ b/ports/prometheus-cpp/CONTROL @@ -1,5 +1,5 @@ Source: prometheus-cpp -Version: 0.6.0 +Version: 0.7.0 Description: Prometheus Client Library for Modern C++ Default-Features: compression, pull @@ -7,6 +7,10 @@ Feature: compression Build-Depends: zlib Description: Enable zlib compression +Feature: tests +Build-Depends: gtest +Description: Additional testing support + Feature: pull Build-Depends: civetweb Description: Support for regular pull mode diff --git a/ports/prometheus-cpp/portfile.cmake b/ports/prometheus-cpp/portfile.cmake index 388623d489022c..20f58c8a25ce4e 100644 --- a/ports/prometheus-cpp/portfile.cmake +++ b/ports/prometheus-cpp/portfile.cmake @@ -5,8 +5,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO jupp0r/prometheus-cpp - REF v0.6.0 - SHA512 a7e6f902f3007007ec68add5ac63e833c6f383ed0ce103e238b7248497f495e664446df7801000e36021adcb7cfb1d461bbb45e1b4fba9ffa4edfcaf5b5957dd + REF v0.7.0 + SHA512 ff946585e24d84596e851f838b42566512fe368f164254d309b2aa3bda770c5442b6eeb880055351f89e0e2d0b581fddb5b0e70dd5b2a15370e508c4aabbcb1c HEAD_REF master ) @@ -21,13 +21,13 @@ endmacro() feature(compression ENABLE_COMPRESSION) feature(pull ENABLE_PULL) feature(push ENABLE_PUSH) +feature(tests ENABLE_TESTING) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DUSE_THIRDPARTY_LIBRARIES=OFF # use vcpkg packages - -DENABLE_TESTING=FALSE # need gtest 1.8.1 ${FEATURE_OPTIONS} ) From 555b760c67fcadea334c109b219c41b12b063413 Mon Sep 17 00:00:00 2001 From: shadowxiali <276404541@qq.com> Date: Thu, 13 Jun 2019 08:41:28 +0800 Subject: [PATCH 008/123] Update applocal.ps1 (#4942) * Update applocal.ps1 * Update applocal.ps1 Fix Microsoft#2801, prev modify mistake UTF8 to UTF * Update applocal.ps1 in win7 chinese path, must utf8 to avoid copy dll fail --- scripts/buildsystems/msbuild/applocal.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/buildsystems/msbuild/applocal.ps1 b/scripts/buildsystems/msbuild/applocal.ps1 index cf363f12e379dc..2fdd9fdb43cad0 100644 --- a/scripts/buildsystems/msbuild/applocal.ps1 +++ b/scripts/buildsystems/msbuild/applocal.ps1 @@ -9,7 +9,7 @@ $g_is_debug = $g_install_root -match '(.*\\)?debug(\\)?$' # Ensure we create the copied files log, even if we don't end up copying any files if ($copiedFilesLog) { - Set-Content -Path $copiedFilesLog -Value "" -Encoding Ascii + Set-Content -Path $copiedFilesLog -Value "" -Encoding UTF8 } # Note: this function signature is depended upon by the qtdeploy.ps1 script introduced in 5.7.1-7 @@ -28,7 +28,7 @@ function deployBinary([string]$targetBinaryDir, [string]$SourceDir, [string]$tar Write-Verbose " ${targetBinaryName}: Copying $SourceDir\$targetBinaryName" Copy-Item "$SourceDir\$targetBinaryName" $targetBinaryDir } - if ($copiedFilesLog) { Add-Content $copiedFilesLog "$targetBinaryDir\$targetBinaryName" } + if ($copiedFilesLog) { Add-Content $copiedFilesLog "$targetBinaryDir\$targetBinaryName" -Encoding UTF8 } if ($tlogFile) { Add-Content $tlogFile "$targetBinaryDir\$targetBinaryName" } } From e1d58276662e0a4d006142776421ae48740440c3 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Wed, 12 Jun 2019 21:28:29 -0700 Subject: [PATCH 009/123] [glbinding] remove conflict with other opengl ports (#6876) --- ports/glbinding/CONTROL | 3 ++- ports/glbinding/portfile.cmake | 7 +++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/ports/glbinding/CONTROL b/ports/glbinding/CONTROL index a6db3dcdec4798..5e2d8a63897f2b 100644 --- a/ports/glbinding/CONTROL +++ b/ports/glbinding/CONTROL @@ -1,3 +1,4 @@ Source: glbinding -Version: 3.1.0 +Version: 3.1.0-1 Description: glbinding is an MIT licensed, cross-platform C++ binding for the OpenGL API +Build-Depends: egl-registry diff --git a/ports/glbinding/portfile.cmake b/ports/glbinding/portfile.cmake index 659d7c23cd6926..dbbff30da98635 100644 --- a/ports/glbinding/portfile.cmake +++ b/ports/glbinding/portfile.cmake @@ -6,8 +6,8 @@ vcpkg_from_github( SHA512 d7294c9a0dc47a7c107b134e5dfa78c5812fc6bf739b9fd778fa7ce946d5ea971839a65c3985e0915fd75311e4a85fb221d33a71856c460199eab0e7622f7151 HEAD_REF master PATCHES - force-system-install.patch - fix-uwpmacro.patch + force-system-install.patch + fix-uwpmacro.patch ) vcpkg_configure_cmake( @@ -52,6 +52,9 @@ endforeach() file(WRITE ${CURRENT_PACKAGES_DIR}/share/glbinding/glbinding-config.cmake "include(\${CMAKE_CURRENT_LIST_DIR}/glbinding/glbinding-export.cmake)\ninclude(\${CMAKE_CURRENT_LIST_DIR}/glbinding-aux/glbinding-aux-export.cmake)\ninclude(\${CMAKE_CURRENT_LIST_DIR}/KHRplatform/KHRplatform-export.cmake)\nset(glbinding_FOUND TRUE)\n") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +# Remove files already published by egl-registry +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/KHR) + # Handle copyright file(RENAME ${CURRENT_PACKAGES_DIR}/share/glbinding/LICENSE ${CURRENT_PACKAGES_DIR}/share/glbinding/copyright) From 58e0d4029e44ebfbe19f3b0fc6cc9dc88eaf1f4b Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Wed, 12 Jun 2019 21:39:10 -0700 Subject: [PATCH 010/123] [libsodium/darts-clone] remove conflicting makefile (#6875) * [libsodium/darts-clone] remove conflicting makefile --- ports/darts-clone/CONTROL | 2 +- ports/darts-clone/portfile.cmake | 2 ++ ports/libsodium/CONTROL | 2 +- ports/libsodium/portfile.cmake | 2 ++ 4 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ports/darts-clone/CONTROL b/ports/darts-clone/CONTROL index 2d34f86c7021ad..a0bfad433cd9f4 100644 --- a/ports/darts-clone/CONTROL +++ b/ports/darts-clone/CONTROL @@ -1,3 +1,3 @@ Source: darts-clone -Version: 1767ab87cffe +Version: 1767ab87cffe-1 Description: A static double-array trie structure diff --git a/ports/darts-clone/portfile.cmake b/ports/darts-clone/portfile.cmake index 2979e83b5ea3d7..d7eb7941c17dbb 100644 --- a/ports/darts-clone/portfile.cmake +++ b/ports/darts-clone/portfile.cmake @@ -23,4 +23,6 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +file(REMOVE ${CURRENT_PACKAGES_DIR}/include/Makefile.am) + file(INSTALL ${SOURCE_PATH}/COPYING.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/darts-clone RENAME copyright) diff --git a/ports/libsodium/CONTROL b/ports/libsodium/CONTROL index a994a17296354c..cff52a1b2df1bc 100644 --- a/ports/libsodium/CONTROL +++ b/ports/libsodium/CONTROL @@ -1,3 +1,3 @@ Source: libsodium -Version: 1.0.17-2 +Version: 1.0.17-3 Description: A modern and easy-to-use crypto library diff --git a/ports/libsodium/portfile.cmake b/ports/libsodium/portfile.cmake index b8321c6ac4ea8d..c18f079923cc8a 100644 --- a/ports/libsodium/portfile.cmake +++ b/ports/libsodium/portfile.cmake @@ -40,6 +40,8 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ) +file(REMOVE ${CURRENT_PACKAGES_DIR}/include/Makefile.am) + if (VCPKG_LIBRARY_LINKAGE STREQUAL "static") vcpkg_replace_string( ${CURRENT_PACKAGES_DIR}/include/sodium/export.h From 08cbf0b3cde9284ec398c1b87d969d9bcaefbed0 Mon Sep 17 00:00:00 2001 From: Phoebe <925731795@qq.com> Date: Thu, 13 Jun 2019 14:08:09 +0800 Subject: [PATCH 011/123] [libbson mongo-c-driver mongo-cxx-driver] upgrades to new revision (#6862) * [libbson mongo-c-driver mongo-cxx-driver] upgrades to new revision * [mongo-cxx-driver] Minimize patch * [mongo-c-driver] Fix dependencies on openssl and zlib --- ports/libbson/CONTROL | 2 +- ports/libbson/portfile.cmake | 6 +- ports/mongo-c-driver/CONTROL | 4 +- ports/mongo-c-driver/portfile.cmake | 8 +- ports/mongo-cxx-driver/CONTROL | 2 +- .../disable_test_and_example.patch | 145 +++--------------- ports/mongo-cxx-driver/portfile.cmake | 6 +- 7 files changed, 35 insertions(+), 138 deletions(-) diff --git a/ports/libbson/CONTROL b/ports/libbson/CONTROL index 541286c50a1223..21c9f9fdd6816c 100644 --- a/ports/libbson/CONTROL +++ b/ports/libbson/CONTROL @@ -1,3 +1,3 @@ Source: libbson -Version: 1.13.0 +Version: 1.14.0 Description: libbson is a library providing useful routines related to building, parsing, and iterating BSON documents. diff --git a/ports/libbson/portfile.cmake b/ports/libbson/portfile.cmake index dc4de34dd79d1f..18f567b710dae0 100644 --- a/ports/libbson/portfile.cmake +++ b/ports/libbson/portfile.cmake @@ -1,10 +1,11 @@ include(vcpkg_common_functions) +set(BUILD_VERSION 1.14.0) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mongodb/mongo-c-driver - REF 1.13.0 - SHA512 d2f5b04b3d2dbdeba4547ec1fe8a0da7bad5214de92fff480ef0ff7d97ea45d5e6347c11c249867d4905b1dd81b76c7cfbb9094a58df586dae881955ee246907 + REF ${BUILD_VERSION} + SHA512 bf2bb835543dd2a445aac6cafa7bbbf90921ec41014534779924a5eb7cbd9fd532acd8146ce81dfcf1bcac33a78d8fce22b962ed7f776449e4357eccab8d6110 HEAD_REF master PATCHES fix-uwp.patch ) @@ -24,6 +25,7 @@ vcpkg_configure_cmake( -DENABLE_TESTS=OFF -DENABLE_EXAMPLES=OFF -DENABLE_STATIC=${ENABLE_STATIC} + -DBUILD_VERSION=${BUILD_VERSION} ) vcpkg_install_cmake() diff --git a/ports/mongo-c-driver/CONTROL b/ports/mongo-c-driver/CONTROL index 4f45aa9b6a8c3e..577cea1aaf5315 100644 --- a/ports/mongo-c-driver/CONTROL +++ b/ports/mongo-c-driver/CONTROL @@ -1,4 +1,4 @@ Source: mongo-c-driver -Version: 1.13.0 -Build-Depends: libbson, openssl (uwp) +Version: 1.14.0-1 +Build-Depends: libbson, openssl (!windows), zlib Description: Client library written in C for MongoDB. diff --git a/ports/mongo-c-driver/portfile.cmake b/ports/mongo-c-driver/portfile.cmake index 2d4c88460dda82..5a0c484c0c8ddc 100644 --- a/ports/mongo-c-driver/portfile.cmake +++ b/ports/mongo-c-driver/portfile.cmake @@ -1,9 +1,11 @@ include(vcpkg_common_functions) +set(BUILD_VERSION 1.14.0) + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mongodb/mongo-c-driver - REF 1.13.0 - SHA512 d2f5b04b3d2dbdeba4547ec1fe8a0da7bad5214de92fff480ef0ff7d97ea45d5e6347c11c249867d4905b1dd81b76c7cfbb9094a58df586dae881955ee246907 + REF ${BUILD_VERSION} + SHA512 bf2bb835543dd2a445aac6cafa7bbbf90921ec41014534779924a5eb7cbd9fd532acd8146ce81dfcf1bcac33a78d8fce22b962ed7f776449e4357eccab8d6110 HEAD_REF master PATCHES fix-uwp.patch ) @@ -30,7 +32,9 @@ vcpkg_configure_cmake( -DENABLE_TESTS=OFF -DENABLE_EXAMPLES=OFF -DENABLE_SSL=${ENABLE_SSL} + -DENABLE_ZLIB=SYSTEM -DENABLE_STATIC=${ENABLE_STATIC} + -DBUILD_VERSION=${BUILD_VERSION} ) vcpkg_install_cmake() diff --git a/ports/mongo-cxx-driver/CONTROL b/ports/mongo-cxx-driver/CONTROL index f143f422f8071f..8d98763dd61810 100644 --- a/ports/mongo-cxx-driver/CONTROL +++ b/ports/mongo-cxx-driver/CONTROL @@ -1,5 +1,5 @@ Source: mongo-cxx-driver -Version: 3.2.0-2 +Version: 3.4.0-1 Build-Depends: libbson, mongo-c-driver, boost-smart-ptr, boost-optional, boost-utility Description: MongoDB C++ Driver. diff --git a/ports/mongo-cxx-driver/disable_test_and_example.patch b/ports/mongo-cxx-driver/disable_test_and_example.patch index 734f52f2635000..2c24024a8c1061 100644 --- a/ports/mongo-cxx-driver/disable_test_and_example.patch +++ b/ports/mongo-cxx-driver/disable_test_and_example.patch @@ -1,151 +1,42 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 27cf3b6b8..896eee19a 100644 +index c6f56e4..5601f90 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -87,68 +87,68 @@ endif() +@@ -89,6 +89,8 @@ endif() set(CMAKE_EXPORT_COMPILE_COMMANDS ON) --add_custom_target(hugo_dir -- COMMAND ${CMAKE_COMMAND} -E make_directory hugo --) -- --add_custom_target(hugo -- DEPENDS hugo_dir -- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/docs -- COMMAND hugo -- VERBATIM --) -- --add_custom_target(hugo-deploy -- DEPENDS hugo -- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -- COMMAND etc/deploy-to-ghpages.pl --hugo git@github.com:mongodb/mongo-cxx-driver -- VERBATIM --) -- --add_custom_target(docs_dir_current -- COMMAND ${CMAKE_COMMAND} -E make_directory docs/api/current --) -- --add_custom_target(doxygen-current -- DEPENDS docs_dir_current -- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -- COMMAND doxygen ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile -- VERBATIM --) -- --add_custom_target(doxygen-all -- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -- COMMAND etc/generate-all-apidocs.pl -- VERBATIM --) -- --add_custom_target(doxygen-deploy -- DEPENDS doxygen-all -- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -- COMMAND etc/deploy-to-ghpages.pl --doxygen git@github.com:mongodb/mongo-cxx-driver -- VERBATIM --) -- --add_custom_target(format -- python ${CMAKE_SOURCE_DIR}/etc/clang_format.py format -- VERBATIM --) -- --add_custom_target(format-lint -- python ${CMAKE_SOURCE_DIR}/etc/clang_format.py lint -- VERBATIM --) -- --add_custom_target(docs -- DEPENDS hugo doxygen-current --) -- --set(THIRD_PARTY_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src/third_party) -+# add_custom_target(hugo_dir -+# COMMAND ${CMAKE_COMMAND} -E make_directory hugo -+# ) ++if(0) + -+# add_custom_target(hugo -+# DEPENDS hugo_dir -+# WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/docs -+# COMMAND hugo -+# VERBATIM -+# ) -+ -+# add_custom_target(hugo-deploy -+# DEPENDS hugo -+# WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -+# COMMAND etc/deploy-to-ghpages.pl --hugo git@github.com:mongodb/mongo-cxx-driver -+# VERBATIM -+# ) -+ -+# add_custom_target(docs_dir_current -+# COMMAND ${CMAKE_COMMAND} -E make_directory docs/api/current -+# ) -+ -+# add_custom_target(doxygen-current -+# DEPENDS docs_dir_current -+# WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -+# COMMAND doxygen ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile -+# VERBATIM -+# ) -+ -+# add_custom_target(doxygen-all -+# WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -+# COMMAND etc/generate-all-apidocs.pl -+# VERBATIM -+# ) -+ -+# add_custom_target(doxygen-deploy -+# DEPENDS doxygen-all -+# WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -+# COMMAND etc/deploy-to-ghpages.pl --doxygen git@github.com:mongodb/mongo-cxx-driver -+# VERBATIM -+# ) -+ -+# add_custom_target(format -+# python ${CMAKE_SOURCE_DIR}/etc/clang_format.py format -+# VERBATIM -+# ) -+ -+# add_custom_target(format-lint -+# python ${CMAKE_SOURCE_DIR}/etc/clang_format.py lint -+# VERBATIM -+# ) -+ -+# add_custom_target(docs -+# DEPENDS hugo doxygen-current -+# ) -+ -+# set(THIRD_PARTY_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src/third_party) + add_custom_target(hugo_dir + COMMAND ${CMAKE_COMMAND} -E make_directory hugo + ) +@@ -147,6 +149,8 @@ add_custom_target(docs + + set(THIRD_PARTY_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src/third_party) ++endif() ++ enable_testing() add_subdirectory(src) - --add_subdirectory(examples EXCLUDE_FROM_ALL) -+#add_subdirectory(examples EXCLUDE_FROM_ALL) - - add_subdirectory(benchmark EXCLUDE_FROM_ALL) diff --git a/src/bsoncxx/CMakeLists.txt b/src/bsoncxx/CMakeLists.txt -index bd6e40662..d6054b022 100644 +index 50085d0..5966d21 100644 --- a/src/bsoncxx/CMakeLists.txt +++ b/src/bsoncxx/CMakeLists.txt @@ -249,4 +249,4 @@ install( - DESTINATION lib/cmake/${PKG}-${BSONCXX_VERSION} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PKG}-${BSONCXX_VERSION} ) -add_subdirectory(test) -+#add_subdirectory(test) ++# add_subdirectory(test) diff --git a/src/mongocxx/CMakeLists.txt b/src/mongocxx/CMakeLists.txt -index a05021228..3dd7c1224 100644 +index 3cba62d..64ff936 100644 --- a/src/mongocxx/CMakeLists.txt +++ b/src/mongocxx/CMakeLists.txt -@@ -238,4 +238,4 @@ install( - DESTINATION lib/cmake/${PKG}-${MONGOCXX_VERSION} +@@ -259,4 +259,4 @@ install( + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PKG}-${MONGOCXX_VERSION} ) -add_subdirectory(test) -+#add_subdirectory(test) ++# add_subdirectory(test) diff --git a/ports/mongo-cxx-driver/portfile.cmake b/ports/mongo-cxx-driver/portfile.cmake index e94902bcce0a04..a5a1c6f399dd25 100644 --- a/ports/mongo-cxx-driver/portfile.cmake +++ b/ports/mongo-cxx-driver/portfile.cmake @@ -1,7 +1,7 @@ include(vcpkg_common_functions) set(VERSION_MAJOR 3) -set(VERSION_MINOR 2) +set(VERSION_MINOR 4) set(VERSION_PATCH 0) set(VERSION_FULL ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) @@ -9,12 +9,12 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mongodb/mongo-cxx-driver REF r${VERSION_FULL} - SHA512 cad8dd6e9fd75aa3aee15321c9b3df21d43c346f5b0b3dd75c86f9117d3376ad83fcda0c4a333c0a23d555e76d79432016623dd5f860ffef9964a6e8046e84b5 + SHA512 28c052904f1b456b92482097166238eae1ad50c3ed207496f09366b46f2c9465c7e98c7219f4f10314e4d8fdd01c36b70a2221891bb75231adcc1edf013d43ce HEAD_REF master PATCHES - disable_test_and_example.patch fix-uwp.patch disable-c2338-mongo-cxx-driver.patch + disable_test_and_example.patch ) if ("mnmlstc" IN_LIST FEATURES) From def997b9dd562b31e1648e165fce4d1091621970 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Wed, 12 Jun 2019 23:10:50 -0700 Subject: [PATCH 012/123] [zydis] Add new port (#6861) --- ports/zydis/CONTROL | 3 +++ ports/zydis/portfile.cmake | 31 +++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 ports/zydis/CONTROL create mode 100644 ports/zydis/portfile.cmake diff --git a/ports/zydis/CONTROL b/ports/zydis/CONTROL new file mode 100644 index 00000000000000..bd4f59d9528d16 --- /dev/null +++ b/ports/zydis/CONTROL @@ -0,0 +1,3 @@ +Source: zydis +Version: 2.0.3 +Description: Fast and lightweight x86/x86-64 disassembler library. \ No newline at end of file diff --git a/ports/zydis/portfile.cmake b/ports/zydis/portfile.cmake new file mode 100644 index 00000000000000..412cbdf87717c8 --- /dev/null +++ b/ports/zydis/portfile.cmake @@ -0,0 +1,31 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO zyantific/zydis + REF v2.0.3 + SHA512 254aee734f93ee51a8b963404f79d6edfd0831867763243b8020c44ec2d7dd4cb7e445248df4a9af7cd2743c020674df482661d59d3278a44d2ad9a2e0611a39 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(GLOB EXES ${CURRENT_PACKAGES_DIR}/bin/*.exe ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) +if(EXES) + file(REMOVE ${EXES}) +endif() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() + +vcpkg_copy_pdbs() + +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright) From d69ea6fe408d3af12613a26f4a987ed6d8bf0752 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E4=B8=B0=20=28Zhao=20Feng=29?= <616545598@qq.com> Date: Fri, 14 Jun 2019 01:15:24 +0800 Subject: [PATCH 013/123] [liblemon] made into a rolling-release port (#6679) * add liblemon preflow patch, see https://lemon.cs.elte.hu/trac/lemon/ticket/608 * [liblemon] track HEAD of version 1.3 * [liblemon] update version --- ports/liblemon/CONTROL | 2 +- ports/liblemon/portfile.cmake | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/liblemon/CONTROL b/ports/liblemon/CONTROL index 87234c68ae753d..1ec6050e0d746b 100644 --- a/ports/liblemon/CONTROL +++ b/ports/liblemon/CONTROL @@ -1,3 +1,3 @@ Source: liblemon -Version: 1.3.1-5 +Version: 2019-06-13 Description: Library for Efficient Modeling and Optimization in Networks diff --git a/ports/liblemon/portfile.cmake b/ports/liblemon/portfile.cmake index 1fe64d3fecb816..960b09987e4c67 100644 --- a/ports/liblemon/portfile.cmake +++ b/ports/liblemon/portfile.cmake @@ -2,12 +2,12 @@ include(vcpkg_common_functions) vcpkg_check_linkage(ONLY_STATIC_LIBRARY) -set(VERSION 1.3.1) +set(VERSION ed2c21cbd6ef) vcpkg_download_distfile(ARCHIVE - URLS "http://lemon.cs.elte.hu/pub/sources/lemon-${VERSION}.zip" + URLS "http://lemon.cs.elte.hu/hg/lemon/archive/${VERSION}.zip" FILENAME "lemon-${VERSION}.zip" - SHA512 86d15914b8c3cd206a20c37dbe3b8ca4b553060567a07603db7b6f8dd7dcf9cb043cca31660ff1b7fb77e359b59fac5ca0aab57fd415fda5ecca0f42eade6567 + SHA512 029640e4f791a18068cb2e2b4e794d09822d9d56fb957eb3e2cceae3a30065c0041a31c465637cfcadf7b2473564070b34adc88513439cdf9046831854e2aa70 ) vcpkg_extract_source_archive_ex( From f1e5cd064d909687eeecfafd9033d8eb08c4092f Mon Sep 17 00:00:00 2001 From: Victor Romero Date: Thu, 13 Jun 2019 10:48:58 -0700 Subject: [PATCH 014/123] [harfbuzz] Propagate dependency on glib downstream (#6879) --- ports/harfbuzz/CONTROL | 2 +- ports/harfbuzz/portfile.cmake | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ports/harfbuzz/CONTROL b/ports/harfbuzz/CONTROL index 133d0bc0efb579..d0e544d7a70e61 100644 --- a/ports/harfbuzz/CONTROL +++ b/ports/harfbuzz/CONTROL @@ -1,5 +1,5 @@ Source: harfbuzz -Version: 2.5.1 +Version: 2.5.1-1 Description: HarfBuzz OpenType text shaping engine Build-Depends: freetype, ragel, gettext (osx) Default-Features: ucdn diff --git a/ports/harfbuzz/portfile.cmake b/ports/harfbuzz/portfile.cmake index d28bd656f71a7d..08b20f2702d013 100644 --- a/ports/harfbuzz/portfile.cmake +++ b/ports/harfbuzz/portfile.cmake @@ -68,9 +68,22 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() + vcpkg_fixup_cmake_targets(CONFIG_PATH share/harfbuzz TARGET_PATH share/harfbuzz) + vcpkg_copy_pdbs() +if (HAVE_GLIB) + # Propagate dependency on glib downstream + file(READ "${CURRENT_PACKAGES_DIR}/share/harfbuzz/harfbuzzConfig.cmake" _contents) + file(WRITE "${CURRENT_PACKAGES_DIR}/share/harfbuzz/harfbuzzConfig.cmake" " +include(CMakeFindDependencyMacro) +find_dependency(unofficial-glib CONFIG) + +${_contents} +") +endif() + # Handle copyright file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/harfbuzz RENAME copyright) From eb6e28279772e97d835ef6d0152a57b4f9697d91 Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Fri, 14 Jun 2019 02:01:07 +0800 Subject: [PATCH 015/123] [taglib]Upgrade version to 1.11.1-20190531. (#6851) --- ports/taglib/CONTROL | 2 +- ports/taglib/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/taglib/CONTROL b/ports/taglib/CONTROL index cc5fdb0f73ef6b..fe0567998edb95 100644 --- a/ports/taglib/CONTROL +++ b/ports/taglib/CONTROL @@ -1,4 +1,4 @@ Source: taglib -Version: 1.11.1-4 +Version: 1.11.1-20190531 Description: TagLib Audio Meta-Data Library Build-Depends: zlib diff --git a/ports/taglib/portfile.cmake b/ports/taglib/portfile.cmake index c90d16ca8b60bf..4ccb6a9fe0d047 100644 --- a/ports/taglib/portfile.cmake +++ b/ports/taglib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO taglib/taglib - REF 662f340f933077a926de443c9882f483973570e3 - SHA512 34087f77bb099f1f8ec82926a212a562bf589fc13f54eac50a56730c4411af2f4dbf1b7d09877087899048c3070325aea02297c6a94d0ad43fbf6742363dd2b6 + REF ba7adc2bc261ed634c2a964185bcffb9365ad2f4 + SHA512 faf516f40f12031a37414ce9246ec409e64e570faebe2d604afdefbb7d665e0a0c9c68bec0e6dcb1c5ceb8fa8e1c3477f5ac75029f17beedd679fa3ea735ce6d HEAD_REF master ) From 7b41dc688a381e1701bd4dbe1ccf3c16d0979594 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Thu, 13 Jun 2019 14:12:21 -0700 Subject: [PATCH 016/123] retry on flaky linker (#6880) * retry on flaky linker --- scripts/cmake/vcpkg_execute_build_process.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/cmake/vcpkg_execute_build_process.cmake b/scripts/cmake/vcpkg_execute_build_process.cmake index f02aa296da8803..27e8c816325f0d 100644 --- a/scripts/cmake/vcpkg_execute_build_process.cmake +++ b/scripts/cmake/vcpkg_execute_build_process.cmake @@ -57,13 +57,15 @@ function(vcpkg_execute_build_process) endif() if(out_contents MATCHES "LINK : fatal error LNK1102:" OR out_contents MATCHES " fatal error C1060: " - OR err_contents MATCHES "LINK : fatal error LNK1102:" OR err_contents MATCHES " fatal error C1060: ") + OR err_contents MATCHES "LINK : fatal error LNK1102:" OR err_contents MATCHES " fatal error C1060: " + OR out_contents MATCHES "LINK : fatal error LNK1318: Unexpected PDB error; ACCESS_DENIED" + OR out_contents MATCHES "LINK : fatal error LNK1104:") # The linker ran out of memory during execution. We will try continuing once more, with parallelism disabled. message(STATUS "Restarting Build without parallelism because memory exceeded") set(LOG_OUT "${CURRENT_BUILDTREES_DIR}/${_ebp_LOGNAME}-out-1.log") set(LOG_ERR "${CURRENT_BUILDTREES_DIR}/${_ebp_LOGNAME}-err-1.log") - if(${_ebp_NO_PARALLEL_COMMAND}) + if(_ebp_NO_PARALLEL_COMMAND) execute_process( COMMAND ${_ebp_NO_PARALLEL_COMMAND} WORKING_DIRECTORY ${_ebp_WORKING_DIRECTORY} From b03f62e0ebc1b5515bc8a1f41f3bfe9eca6589d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Maia?= Date: Fri, 14 Jun 2019 00:19:57 +0300 Subject: [PATCH 017/123] [assimp] Fix install assimp when passing --head (#6887) Instead of using hardcoded `assimp-4.1` folder, check directories with pattern `assimp-*` and select the first one. This fixes `vcpkg install vcpkg --head`, since the latest version creates a folder named `assimp-5.0` instead. --- ports/assimp/portfile.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ports/assimp/portfile.cmake b/ports/assimp/portfile.cmake index 95aefe0208c87f..559dd249c2419d 100644 --- a/ports/assimp/portfile.cmake +++ b/ports/assimp/portfile.cmake @@ -32,7 +32,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/assimp-4.1") +FILE(GLOB lib_cmake_directories RELATIVE "${CURRENT_PACKAGES_DIR}" "${CURRENT_PACKAGES_DIR}/lib/cmake/assimp-*") +list(GET lib_cmake_directories 0 lib_cmake_directory) +vcpkg_fixup_cmake_targets(CONFIG_PATH "${lib_cmake_directory}") vcpkg_copy_pdbs() From 9a24bd109e3c52be14d381e374f4533059b3c2ef Mon Sep 17 00:00:00 2001 From: Tobias Markus Date: Fri, 14 Jun 2019 19:23:54 +0200 Subject: [PATCH 018/123] [libraqm] Add new port (0.6.0) (#6659) * Add libraqm * [libraqm] Whitespace changes to force rebuild * [harfbuzz] Propagate dependency on glib downstream * [fribidi] Force rebuild on CI * [libraqm] Force CI build --- ports/fribidi/portfile.cmake | 11 +++++++---- ports/harfbuzz/portfile.cmake | 2 ++ ports/libraqm/CMakeLists.txt | 34 +++++++++++++++++++++++++++++++++ ports/libraqm/CONTROL | 4 ++++ ports/libraqm/FindFribidi.cmake | 12 ++++++++++++ ports/libraqm/portfile.cmake | 31 ++++++++++++++++++++++++++++++ 6 files changed, 90 insertions(+), 4 deletions(-) create mode 100644 ports/libraqm/CMakeLists.txt create mode 100644 ports/libraqm/CONTROL create mode 100644 ports/libraqm/FindFribidi.cmake create mode 100644 ports/libraqm/portfile.cmake diff --git a/ports/fribidi/portfile.cmake b/ports/fribidi/portfile.cmake index ec5dc15538ae8c..5b45a17b164a70 100644 --- a/ports/fribidi/portfile.cmake +++ b/ports/fribidi/portfile.cmake @@ -5,12 +5,15 @@ vcpkg_from_github( REPO fribidi/fribidi REF 58c6cb390a9a18c98b2cbaac555d8ea9352a9e4f SHA512 1ec9c19faa87886786ce1589e2c66cab173b48e34d0e43487becc8606001f21f6ed17d0abd1c322fbbcaeb96a47ed882cad228be2e9beb019020ca2a475fc298 -HEAD_REF master) + HEAD_REF master +) -vcpkg_configure_meson(SOURCE_PATH ${SOURCE_PATH} +vcpkg_configure_meson( + SOURCE_PATH ${SOURCE_PATH} OPTIONS -Ddocs=false - --backend=ninja) + --backend=ninja +) vcpkg_install_meson() vcpkg_copy_pdbs() @@ -28,4 +31,4 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) endif() # Handle copyright -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/fribidi RENAME copyright) \ No newline at end of file +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/fribidi RENAME copyright) diff --git a/ports/harfbuzz/portfile.cmake b/ports/harfbuzz/portfile.cmake index 08b20f2702d013..48cfaf1b744268 100644 --- a/ports/harfbuzz/portfile.cmake +++ b/ports/harfbuzz/portfile.cmake @@ -17,9 +17,11 @@ vcpkg_from_github( ) file(READ ${SOURCE_PATH}/CMakeLists.txt _contents) + if("${_contents}" MATCHES "include \\(FindFreetype\\)") message(FATAL_ERROR "Harfbuzz's cmake must not directly include() FindFreetype.") endif() + if("${_contents}" MATCHES "find_library\\(GLIB_LIBRARIES") message(FATAL_ERROR "Harfbuzz's cmake must not directly find_library() glib.") endif() diff --git a/ports/libraqm/CMakeLists.txt b/ports/libraqm/CMakeLists.txt new file mode 100644 index 00000000000000..f50153e6313eb3 --- /dev/null +++ b/ports/libraqm/CMakeLists.txt @@ -0,0 +1,34 @@ +cmake_minimum_required(VERSION 3.11) + +project(raqm) + +set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR};${CMAKE_MODULE_PATH}") + +find_package(Freetype REQUIRED) +find_package(Fribidi REQUIRED) +find_package(harfbuzz CONFIG REQUIRED) + +find_path(HARFBUZZ_INCLUDE_DIRS + NAMES hb.h + PATH_SUFFIXES harfbuzz) +find_path(FREETYPE_ADDITIONAL_INCLUDE_DIRS NAMES ft2build.h) +add_library(raqm ${CMAKE_CURRENT_SOURCE_DIR}/src/raqm.c ${CMAKE_CURRENT_SOURCE_DIR}/src/raqm.h) + +target_include_directories(raqm SYSTEM PUBLIC ${FREETYPE_ADDITIONAL_INCLUDE_DIRS}) +target_include_directories(raqm SYSTEM PUBLIC ${FREETYPE_INCLUDE_DIRS}) +target_include_directories(raqm SYSTEM PUBLIC ${HARFBUZZ_INCLUDE_DIRS}) +target_include_directories(raqm SYSTEM PUBLIC ${FRIBIDI_INCLUDE_DIR}) + +target_link_libraries(raqm PRIVATE Freetype::Freetype) +target_link_libraries(raqm PRIVATE harfbuzz::harfbuzz ${FRIBIDI_LIBRARY}) + +install(TARGETS raqm + RUNTIME DESTINATION bin + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib +) + +set(RAQM_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src") +set(RAQM_LIBRARY raqm) +set(RAQM_LIBRARIES ${HARFBUZZ_LIBRARY} ${FRIBIDI_LIBRARY} ${RAQM_LIBRARY}) +file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/src/raqm.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/libraqm/CONTROL b/ports/libraqm/CONTROL new file mode 100644 index 00000000000000..131527a4a53c17 --- /dev/null +++ b/ports/libraqm/CONTROL @@ -0,0 +1,4 @@ +Source: libraqm +Version: 0.6.0 +Description: A library for complex text layout +Build-Depends: freetype, harfbuzz, fribidi \ No newline at end of file diff --git a/ports/libraqm/FindFribidi.cmake b/ports/libraqm/FindFribidi.cmake new file mode 100644 index 00000000000000..a12bdb60ea5e06 --- /dev/null +++ b/ports/libraqm/FindFribidi.cmake @@ -0,0 +1,12 @@ +find_path(FRIBIDI_INCLUDE_DIR + NAMES fribidi/fribidi.h) + +set(FRIBIDI_INCLUDE_DIR "${FRIBIDI_INCLUDE_DIR}/fribidi") +find_library(FRIBIDI_LIBRARY NAMES fribidi) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(FriBidi + FOUND_VAR FRIBIDI_FOUND + REQUIRED_VARS FRIBIDI_LIBRARY FRIBIDI_INCLUDE_DIR + VERSION_VAR FRIBIDI_VERSION_STRING +) \ No newline at end of file diff --git a/ports/libraqm/portfile.cmake b/ports/libraqm/portfile.cmake new file mode 100644 index 00000000000000..067f63ddea5d81 --- /dev/null +++ b/ports/libraqm/portfile.cmake @@ -0,0 +1,31 @@ +include(vcpkg_common_functions) + +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO HOST-Oman/libraqm + REF v0.6.0 + SHA512 cd223d97b80e9d2cf26a5b68fbb84a87e53df819f12ffd06f84f1786a2207b34828d0888058a40c1d89a1466bb68b75dd326e25415afab029d51e1ed98f6a924 + HEAD_REF master +) + +file(COPY ${CURRENT_PORT_DIR}/FindFribidi.cmake DESTINATION ${SOURCE_PATH}) +file(COPY ${CURRENT_PORT_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DCURRENT_PACKAGES_DIR=${CURRENT_PACKAGES_DIR} +) + +vcpkg_install_cmake() + +vcpkg_copy_pdbs() + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libraqm RENAME copyright) + +# Post-build test for cmake libraries +vcpkg_test_cmake(PACKAGE_NAME raqm) From 6ad6ba75a0e28fc64a0b05ee1c69fbad5fead89f Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Fri, 14 Jun 2019 11:45:18 -0700 Subject: [PATCH 019/123] [sndfile/libsndfile] remove duplicate port, forward to libsndfile (#6896) --- ports/libsndfile/CONTROL | 4 +- ports/sndfile/CONTROL | 9 +-- ports/sndfile/portfile.cmake | 63 +------------------ .../uwp-createfile-getfilesize-addendum.patch | 13 ---- .../sndfile/uwp-createfile-getfilesize.patch | 58 ----------------- 5 files changed, 9 insertions(+), 138 deletions(-) delete mode 100644 ports/sndfile/uwp-createfile-getfilesize-addendum.patch delete mode 100644 ports/sndfile/uwp-createfile-getfilesize.patch diff --git a/ports/libsndfile/CONTROL b/ports/libsndfile/CONTROL index d8de159b213a6d..657a24424e53ba 100644 --- a/ports/libsndfile/CONTROL +++ b/ports/libsndfile/CONTROL @@ -1,8 +1,8 @@ Source: libsndfile -Version: 1.0.29-6830c42-6 +Version: 1.0.29-6830c42-7 Description: Library to read, write and manipulate many soundfile types. Authored by Eric de Castro Lopo Default-Features: external-libs Feature: external-libs -Description: Support OGG and FLAC audio files +Description: Support Ogg Vorbis and FLAC audio files Build-Depends: libogg, libflac, libvorbis diff --git a/ports/sndfile/CONTROL b/ports/sndfile/CONTROL index eeee6d909cdff1..8c020a5f90515e 100644 --- a/ports/sndfile/CONTROL +++ b/ports/sndfile/CONTROL @@ -1,8 +1,9 @@ Source: sndfile -Version: 1.0.29-cebfdf2-1 -Description: Library to read, write and manipulate many soundfile types. Authored by Eric de Castro Lopo +Version: deprecated +Description: Deprecated port, use libsndfile instead +Build-Depends: libsndfile Default-Features: external-libs Feature: external-libs -Description: Support Ogg Vorbis and FLAC audio files -Build-Depends: libogg, libflac, libvorbis +Description: Deprecated port, use libsndfile[external-libs] instead +Build-Depends: libsndfile[external-libs] diff --git a/ports/sndfile/portfile.cmake b/ports/sndfile/portfile.cmake index f11a8695e5718e..47fe8ca236c3a6 100644 --- a/ports/sndfile/portfile.cmake +++ b/ports/sndfile/portfile.cmake @@ -1,62 +1,3 @@ -include(vcpkg_common_functions) +set(VCPKG_POLICY_EMPTY_PACKAGE enabled) -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO erikd/libsndfile - REF cebfdf275e6173259bee6bfd40de22c8c102cf23 - SHA512 b981b9a5a457b73f444f4b134a76d9d7ab328369171a0043f89cfcf4567ca29a91ff75abfb362c4bc76c5fb0d25cb88cc397c37dd8f9d98b8892999c2e4e4123 - HEAD_REF master - PATCHES - "${CMAKE_CURRENT_LIST_DIR}/uwp-createfile-getfilesize.patch" - "${CMAKE_CURRENT_LIST_DIR}/uwp-createfile-getfilesize-addendum.patch" -) - -string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" CRT_LIB_STATIC) -string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" BUILD_STATIC) - -option(BUILD_EXECUTABLES "Build sndfile tools and install to folder tools" OFF) - -if("external-libs" IN_LIST FEATURES) - set(SNDFILE_WITH_EXTERNAL_LIBS ON) -else() - set(SNDFILE_WITH_EXTERNAL_LIBS OFF) -endif() - -vcpkg_find_acquire_program(PYTHON3) -get_filename_component(PYTHON3_EXE_PATH ${PYTHON3} DIRECTORY) -vcpkg_add_to_path(${PYTHON3_EXE_PATH}) - -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS -DBUILD_EXAMPLES=0 -DBUILD_REGTEST=0 -DBUILD_TESTING=0 -DENABLE_STATIC_RUNTIME=${CRT_LIB_STATIC} -DBUILD_STATIC_LIBS=${BUILD_STATIC} -DENABLE_EXTERNAL_LIBS=${SNDFILE_WITH_EXTERNAL_LIBS} - OPTIONS_RELEASE -DBUILD_PROGRAMS=${BUILD_EXECUTABLES} - # Setting ENABLE_PACKAGE_CONFIG=0 has no effect - OPTIONS_DEBUG -DBUILD_PROGRAMS=0 -) - -vcpkg_install_cmake() - -if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) -else() - vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/SndFile) -endif() - -vcpkg_copy_pdbs() - -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/doc/libsndfile ${CURRENT_PACKAGES_DIR}/share/${PORT}/doc) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/doc) - -if(BUILD_EXECUTABLES) - file(GLOB TOOLS ${CURRENT_PACKAGES_DIR}/bin/*.exe) - file(COPY ${TOOLS} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}) - file(REMOVE ${TOOLS}) - vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}) -endif(BUILD_EXECUTABLES) - -# Handle copyright -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/COPYING ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright) +message(WARNING "The sndfile port is deprecated, use libsndfile instead") diff --git a/ports/sndfile/uwp-createfile-getfilesize-addendum.patch b/ports/sndfile/uwp-createfile-getfilesize-addendum.patch deleted file mode 100644 index 62e6b1131f1009..00000000000000 --- a/ports/sndfile/uwp-createfile-getfilesize-addendum.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/file_io.c b/src/file_io.c -index 47351bc..54741c9 100644 ---- a/src/file_io.c -+++ b/src/file_io.c -@@ -799,6 +799,8 @@ psf_open_handle (PSF_FILE * pfile) - - if (handle == INVALID_HANDLE_VALUE) - return NULL; -+ -+ return handle; - #else - if (pfile->use_wchar) - handle = CreateFileW ( diff --git a/ports/sndfile/uwp-createfile-getfilesize.patch b/ports/sndfile/uwp-createfile-getfilesize.patch deleted file mode 100644 index 0e60cde54529f6..00000000000000 --- a/ports/sndfile/uwp-createfile-getfilesize.patch +++ /dev/null @@ -1,58 +0,0 @@ -diff --git a/src/file_io.c b/src/file_io.c -index 7cf8f0c..47351bc 100644 ---- a/src/file_io.c -+++ b/src/file_io.c -@@ -787,6 +787,19 @@ psf_open_handle (PSF_FILE * pfile) - return NULL ; - } ; - -+#if defined (WINAPI_FAMILY_PARTITION) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) -+ if (!pfile->use_wchar) -+ return NULL; -+ -+ CREATEFILE2_EXTENDED_PARAMETERS cfParams = {0}; -+ cfParams.dwSize = sizeof(CREATEFILE2_EXTENDED_PARAMETERS); -+ cfParams.dwFileAttributes = FILE_ATTRIBUTE_NORMAL; -+ -+ handle = CreateFile2(pfile->path.wc, dwDesiredAccess, dwShareMode, dwCreationDistribution, &cfParams); -+ -+ if (handle == INVALID_HANDLE_VALUE) -+ return NULL; -+#else - if (pfile->use_wchar) - handle = CreateFileW ( - pfile->path.wc, /* pointer to name of the file */ -@@ -812,6 +825,7 @@ psf_open_handle (PSF_FILE * pfile) - return NULL ; - - return handle ; -+#endif - } /* psf_open_handle */ - - /* USE_WINDOWS_API */ static void -@@ -1104,7 +1118,16 @@ psf_is_pipe (SF_PRIVATE *psf) - - /* USE_WINDOWS_API */ sf_count_t - psf_get_filelen_handle (HANDLE handle) --{ sf_count_t filelen ; -+{ -+#if defined (WINAPI_FAMILY_PARTITION) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) -+ LARGE_INTEGER size; -+ -+ if (!GetFileSizeEx(handle, &size) && GetLastError() != NO_ERROR) -+ return (sf_count_t) -1 ; -+ -+ return size.QuadPart; -+#else -+ sf_count_t filelen ; - DWORD dwFileSizeLow, dwFileSizeHigh, dwError = NO_ERROR ; - - dwFileSizeLow = GetFileSize (handle, &dwFileSizeHigh) ; -@@ -1118,6 +1141,7 @@ psf_get_filelen_handle (HANDLE handle) - filelen = dwFileSizeLow + ((__int64) dwFileSizeHigh << 32) ; - - return filelen ; -+#endif - } /* psf_get_filelen_handle */ - - /* USE_WINDOWS_API */ void From 8c288f4bf85338861b7ac9c6516dcc207972d5b4 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Fri, 14 Jun 2019 11:45:35 -0700 Subject: [PATCH 020/123] [sqlite-orm] fix tag, update hash (#6894) --- ports/sqlite-orm/CONTROL | 2 +- ports/sqlite-orm/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sqlite-orm/CONTROL b/ports/sqlite-orm/CONTROL index 622e7b9c866630..6382eeca09b679 100644 --- a/ports/sqlite-orm/CONTROL +++ b/ports/sqlite-orm/CONTROL @@ -1,4 +1,4 @@ Source: sqlite-orm -Version: 1.3 +Version: 1.3-1 Build-Depends: sqlite3 Description: SQLite ORM light header only library for modern C++ diff --git a/ports/sqlite-orm/portfile.cmake b/ports/sqlite-orm/portfile.cmake index c7fcec417e7de6..6df00f77f7f4fd 100644 --- a/ports/sqlite-orm/portfile.cmake +++ b/ports/sqlite-orm/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO fnc12/sqlite_orm - REF 1.3 - SHA512 9d61d65a8987f875aacca9dd262d5b1e4dca273aef938fc5c292469b215b244edc63fb6428199e16ed6d254f752e1a9574306b15ebb099a4bf4f744510975da3 + REF v1.3 + SHA512 43adcd28bdca5d0165ca0313c5ff90e048144e4841541704f49e443deaf0d8e027655a3bb88677f3f3c62c5764fdda8b1e472d74e68f3a32cad052f3b4ed63a7 HEAD_REF master ) From 9cc9978c5bcbe24cb75bc906a1d714a23f09a077 Mon Sep 17 00:00:00 2001 From: dan-shaw <51385773+dan-shaw@users.noreply.github.com> Date: Fri, 14 Jun 2019 13:09:38 -0700 Subject: [PATCH 021/123] set CMAKE_SYSTEM_PROCESSOR in Linux (#6872) * add vcpkg_target_architecture to vcpkg_configure_cmake * modify shogun and thrift * update glbinding --- ports/glbinding/portfile.cmake | 1 + ports/shogun/CONTROL | 2 +- ports/shogun/portfile.cmake | 1 + ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 1 + scripts/cmake/vcpkg_configure_cmake.cmake | 1 + scripts/toolchains/linux.cmake | 3 +++ 7 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ports/glbinding/portfile.cmake b/ports/glbinding/portfile.cmake index dbbff30da98635..99f233982c5341 100644 --- a/ports/glbinding/portfile.cmake +++ b/ports/glbinding/portfile.cmake @@ -18,6 +18,7 @@ vcpkg_configure_cmake( -DOPTION_BUILD_TOOLS=OFF -DGIT_REV=0 -DCMAKE_DISABLE_FIND_PACKAGE_cpplocate=ON + -DOPTION_BUILD_EXAMPLES=OFF ) vcpkg_install_cmake() diff --git a/ports/shogun/CONTROL b/ports/shogun/CONTROL index 9854596b5f027e..e57f129febb458 100644 --- a/ports/shogun/CONTROL +++ b/ports/shogun/CONTROL @@ -1,4 +1,4 @@ Source: shogun -Version: 6.1.3-2 +Version: 6.1.3-3 Build-Depends: bzip2, eigen3, liblzma, libxml2, openblas (x64&!osx), nlopt, rxcpp, snappy, zlib, protobuf, curl, lzo, dirent Description: Unified and efficient Machine Learning diff --git a/ports/shogun/portfile.cmake b/ports/shogun/portfile.cmake index 68d3ddf74148cd..dfabdf4aa57e1a 100644 --- a/ports/shogun/portfile.cmake +++ b/ports/shogun/portfile.cmake @@ -60,6 +60,7 @@ vcpkg_configure_cmake( -DCMAKE_DISABLE_FIND_PACKAGE_ARPREC=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_Ctags=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_CCache=TRUE + -DCMAKE_DISABLE_FIND_PACKAGE_LAPACK=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_BLAS=${CMAKE_DISABLE_FIND_PACKAGE_BLAS} diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index b85a03cda3ee8a..e1afc6ccf54695 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2019-05-07 +Version: 2019-05-07-1 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index da59907cfbe996..efd76472b42aea 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -27,6 +27,7 @@ vcpkg_configure_cmake( -DBUILD_HASKELL=off -DBUILD_TUTORIALS=off -DFLEX_EXECUTABLE=${FLEX} + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5=TRUE -DBISON_EXECUTABLE=${BISON} ) diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake index ceff199ab55343..8f3aa6425751ad 100644 --- a/scripts/cmake/vcpkg_configure_cmake.cmake +++ b/scripts/cmake/vcpkg_configure_cmake.cmake @@ -207,6 +207,7 @@ function(vcpkg_configure_cmake) "-DVCPKG_C_FLAGS_DEBUG=${VCPKG_C_FLAGS_DEBUG}" "-DVCPKG_CRT_LINKAGE=${VCPKG_CRT_LINKAGE}" "-DVCPKG_LINKER_FLAGS=${VCPKG_LINKER_FLAGS}" + "-DVCPKG_TARGET_ARCHITECTURE=${VCPKG_TARGET_ARCHITECTURE}" "-DCMAKE_INSTALL_LIBDIR:STRING=lib" "-DCMAKE_INSTALL_BINDIR:STRING=bin" ) diff --git a/scripts/toolchains/linux.cmake b/scripts/toolchains/linux.cmake index b9cbc0ff35e54e..70f224da993af0 100644 --- a/scripts/toolchains/linux.cmake +++ b/scripts/toolchains/linux.cmake @@ -4,6 +4,9 @@ if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux") set(CMAKE_CROSSCOMPILING OFF CACHE BOOL "") endif() set(CMAKE_SYSTEM_NAME Linux CACHE STRING "") +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(CMAKE_SYSTEM_PROCESSOR x86_64 CACHE STRING "") +endif() get_property( _CMAKE_IN_TRY_COMPILE GLOBAL PROPERTY IN_TRY_COMPILE ) if(NOT _CMAKE_IN_TRY_COMPILE) From d95b4029802ace0c80c647563fbba3b6e94cb200 Mon Sep 17 00:00:00 2001 From: wangli28 <47812810+wangli28@users.noreply.github.com> Date: Sat, 15 Jun 2019 06:04:58 +0800 Subject: [PATCH 022/123] [itk] Upgrade to 5.0.0 (#6767) --- ports/itk/CONTROL | 2 +- ports/itk/fix_conflict_with_openjp2_pc.patch | 66 ++++++++++---------- ports/itk/portfile.cmake | 9 +-- 3 files changed, 37 insertions(+), 40 deletions(-) diff --git a/ports/itk/CONTROL b/ports/itk/CONTROL index 3feedf4964549d..7f7a12251e2cf5 100644 --- a/ports/itk/CONTROL +++ b/ports/itk/CONTROL @@ -1,5 +1,5 @@ Source: itk -Version: 4.13.0-906736bd-3 +Version: 5.0.0-1 Description: Insight Segmentation and Registration Toolkit (ITK) is used for image processing and analysis. Build-Depends: double-conversion, libjpeg-turbo, zlib, libpng, tiff, expat, eigen3, hdf5[cpp], openjpeg diff --git a/ports/itk/fix_conflict_with_openjp2_pc.patch b/ports/itk/fix_conflict_with_openjp2_pc.patch index fc2ad11328c2bb..b1a2fb6ec1c0ba 100644 --- a/ports/itk/fix_conflict_with_openjp2_pc.patch +++ b/ports/itk/fix_conflict_with_openjp2_pc.patch @@ -1,33 +1,33 @@ -diff --git a/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt b/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt -index 6e3504d..1d641c2 100644 ---- a/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt -+++ b/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt -@@ -375,7 +375,8 @@ else() - endif() - - if(GDCM_USE_SYSTEM_OPENJPEG) -- find_package(OpenJPEG 2.0.0 REQUIRED) -+ # openjpeg version in vcpkg is already greater than 2.0.0 and openjpeg has no version.cmake file -+ find_package(OpenJPEG REQUIRED) - set(GDCM_OPENJPEG_LIBRARIES ${OPENJPEG_LIBRARIES}) - else() - set(GDCM_OPENJPEG_LIBRARIES itkgdcmopenjp2) -diff --git a/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt b/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt -index 4ffe98e..a269690 100644 ---- a/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt -+++ b/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt -@@ -347,12 +347,8 @@ endif() - - #----------------------------------------------------------------------------- - # pkgconfig support --# enabled by default on Unix, disabled by default on other platforms --if(UNIX) -- option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" ON) --else() -- option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" OFF) --endif() -+# Cannot use the built-in openjp2 because the configuration path is under buildtrees -+option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" OFF) - if(BUILD_PKGCONFIG_FILES) - # install in lib and not share (see multi-arch note above) - configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp2/libopenjp2.pc.cmake.in +diff --git a/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt b/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt +index 6ac16ab6..2bde9952 100644 +--- a/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt ++++ b/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt +@@ -373,7 +373,8 @@ else() + endif() + + if(GDCM_USE_SYSTEM_OPENJPEG) +- find_package(OpenJPEG 2.0.0 REQUIRED) ++ # openjpeg version in vcpkg is already greater than 2.0.0 and openjpeg has no version.cmake file ++ find_package(OpenJPEG REQUIRED) + set(GDCM_OPENJPEG_LIBRARIES ${OPENJPEG_LIBRARIES}) + else() + set(GDCM_OPENJPEG_LIBRARIES gdcmopenjp2) +diff --git a/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt b/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt +index 565cc338..ec126ef9 100644 +--- a/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt ++++ b/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt +@@ -359,12 +359,8 @@ endif() + + #----------------------------------------------------------------------------- + # pkgconfig support +-# enabled by default on Unix, disabled by default on other platforms +-if(UNIX) +- option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" ON) +-else() +- option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" OFF) +-endif() ++# Cannot use the built-in openjp2 because the configuration path is under buildtrees ++option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" OFF) + if(BUILD_PKGCONFIG_FILES) + # install in lib and not share (see multi-arch note above) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp2/libopenjp2.pc.cmake.in diff --git a/ports/itk/portfile.cmake b/ports/itk/portfile.cmake index e4f415a1a1330d..77dd88d9dbd960 100644 --- a/ports/itk/portfile.cmake +++ b/ports/itk/portfile.cmake @@ -10,8 +10,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO InsightSoftwareConsortium/ITK - REF 906736bd453e95ccf03b318d3d07cb7884285161 - SHA512 8ac62262d46e7acbb0e5b2e964292ec17e1687bb162b8cec666e5b67acbe3449f093a0b1c03737e9951cb88248ed890805ffd57df6eae21220488620da833c57 + REF 3e12e7006a5881136414be54216a35bbacb55baa + SHA512 9796429f8750faffc87e44052455740d1a560883e83c3ed9614d1c7ae9cc1ae22a360b572d9bb1c5ec62ca12ac81d3aa0b8dbaffff3e4ad4c2f85077ed04a10b HEAD_REF master PATCHES fix_conflict_with_openjp2_pc.patch ) @@ -67,13 +67,10 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets() # combines release and debug build configurations - -file(RENAME ${CURRENT_PACKAGES_DIR}/vcl_compiler_detection.h ${CURRENT_PACKAGES_DIR}/include/ITK-5.0/vcl_compiler_detection.h) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) # combines release and debug build configurations file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/vcl_compiler_detection.h) # Handle copyright file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/itk) From 0ad6aaeebb0fe574a683536e8de0f67033adc99a Mon Sep 17 00:00:00 2001 From: evpobr Date: Sat, 15 Jun 2019 03:57:33 +0500 Subject: [PATCH 023/123] [libogg] Update to 1.3.3-3 (#6588) * [libogg] Update to 1.3.3-3 * No patches required (merged in upstream) Notes: Target name changed: Ogg::Ogg -> Ogg::ogg (official). --- ...-Install-CMake-package-config-module.patch | 97 ------------------- ports/libogg/CONTROL | 2 +- ports/libogg/missing_usize64.patch | 12 +++ ports/libogg/portfile.cmake | 12 +-- 4 files changed, 19 insertions(+), 104 deletions(-) delete mode 100644 ports/libogg/0001-Install-CMake-package-config-module.patch create mode 100644 ports/libogg/missing_usize64.patch diff --git a/ports/libogg/0001-Install-CMake-package-config-module.patch b/ports/libogg/0001-Install-CMake-package-config-module.patch deleted file mode 100644 index 2a33a641efa8de..00000000000000 --- a/ports/libogg/0001-Install-CMake-package-config-module.patch +++ /dev/null @@ -1,97 +0,0 @@ -From 0d3c307cee6e8135c84f3f7755bbc10dfd26e02b Mon Sep 17 00:00:00 2001 -From: evpobr -Date: Sat, 16 Feb 2019 11:50:16 +0500 -Subject: [PATCH] Install CMake package config module - ---- - CMakeLists.txt | 40 ++++++++++++++++++++++++++++++++++------ - 1 file changed, 34 insertions(+), 6 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 5ab14a2..9f5ee5a 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,9 +1,10 @@ --cmake_minimum_required(VERSION 2.8.7) -+cmake_minimum_required(VERSION 2.8.12) - project(libogg) - - # Required modules - include(GNUInstallDirs) - include(CheckIncludeFiles) -+include(CMakePackageConfigHelpers) - - # Build options - option(BUILD_SHARED_LIBS "Build shared library" OFF) -@@ -80,18 +81,24 @@ if(BUILD_FRAMEWORK) - set(BUILD_SHARED_LIBS TRUE) - endif() - --include_directories(include ${CMAKE_CURRENT_BINARY_DIR}/include) --add_library(ogg ${OGG_HEADERS} ${OGG_SOURCES}) -+add_library(Ogg ${OGG_HEADERS} ${OGG_SOURCES}) -+ -+target_include_directories(Ogg -+ PUBLIC -+ $ -+ $ -+ $ -+) - - get_version_info(OGG_VERSION_INFO "LIB_CURRENT" "LIB_AGE" "LIB_REVISION") - set_target_properties( -- ogg PROPERTIES -+ Ogg PROPERTIES - SOVERSION ${OGG_VERSION_INFO} - PUBLIC_HEADER "${OGG_HEADERS}" - ) - - if(BUILD_FRAMEWORK) -- set_target_properties(ogg PROPERTIES -+ set_target_properties(Ogg PROPERTIES - FRAMEWORK TRUE - FRAMEWORK_VERSION ${PROJECT_VERSION} - MACOSX_FRAMEWORK_IDENTIFIER org.xiph.ogg -@@ -100,17 +107,38 @@ if(BUILD_FRAMEWORK) - XCODE_ATTRIBUTE_INSTALL_PATH "@rpath" - OUTPUT_NAME Ogg - ) -+else() -+ set_target_properties(Ogg PROPERTIES OUTPUT_NAME ogg) - endif() - - configure_pkg_config_file(ogg.pc.in) - --install(TARGETS ogg -+set(CMAKE_INSTALL_PACKAGEDIR ${CMAKE_INSTALL_LIBDIR}/cmake/Ogg) -+ -+install(TARGETS Ogg -+ EXPORT OggConfig - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX} - PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ogg - ) -+install(EXPORT OggConfig -+ NAMESPACE Ogg:: -+ DESTINATION ${CMAKE_INSTALL_PACKAGEDIR} -+) -+ -+if(CMAKE_VERSION VERSION_LESS 3.11) -+ write_basic_package_version_file(OggConfigVersion.cmake COMPATIBILITY SameMajorVersion) -+else() -+ write_basic_package_version_file(OggConfigVersion.cmake COMPATIBILITY SameMinorVersion) -+endif() -+ -+install( -+ FILES ${CMAKE_CURRENT_BINARY_DIR}/OggConfigVersion.cmake -+ DESTINATION ${CMAKE_INSTALL_PACKAGEDIR} -+) -+ - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/ogg.pc - DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig - ) --- -2.20.1.windows.1 - diff --git a/ports/libogg/CONTROL b/ports/libogg/CONTROL index 965e4e46f614d3..3d52a9dcac2241 100644 --- a/ports/libogg/CONTROL +++ b/ports/libogg/CONTROL @@ -1,3 +1,3 @@ Source: libogg -Version: 1.3.3-2 +Version: 1.3.3-3 Description: Ogg is a multimedia container format, and the native file and stream format for the Xiph.org multimedia codecs. diff --git a/ports/libogg/missing_usize64.patch b/ports/libogg/missing_usize64.patch new file mode 100644 index 00000000000000..556bc2a54688c5 --- /dev/null +++ b/ports/libogg/missing_usize64.patch @@ -0,0 +1,12 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5c31a3c..c3c060a 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -63,6 +63,7 @@ set(USIZE16 uint16_t) + set(SIZE32 int32_t) + set(USIZE32 uint32_t) + set(SIZE64 int64_t) ++set(USIZE64 uint64_t) + + configure_file(include/ogg/config_types.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/ogg/config_types.h @ONLY) + diff --git a/ports/libogg/portfile.cmake b/ports/libogg/portfile.cmake index 3a37e17445f182..b42ad81361c0f8 100644 --- a/ports/libogg/portfile.cmake +++ b/ports/libogg/portfile.cmake @@ -1,24 +1,24 @@ include(vcpkg_common_functions) -vcpkg_check_linkage(ONLY_STATIC_LIBRARY) - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO xiph/ogg - REF v1.3.3 - SHA512 0bd6095d647530d4cb1f509eb5e99965a25cc3dd9b8125b93abd6b248255c890cf20710154bdec40568478eb5c4cde724abfb2eff1f3a04e63acef0fbbc9799b + REF 6ccfcc2dce48c0d430b45064d0e13c962a64c42f + SHA512 441950d541f626a2e668efab4ed429c453534ef0334aad410013f07870a4a99e347f7a7eed335d77af41f02ce3dd600564d982e4c976a0c4cb76c19b1231d39e HEAD_REF master - PATCHES 0001-Install-CMake-package-config-module.patch + PATCHES + missing_usize64.patch ) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + OPTIONS -DINSTALL_DOCS=0 -DINSTALL_PKG_CONFIG_MODULE=0 ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Ogg TARGET_PATH share/Ogg) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/ogg TARGET_PATH share/ogg) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) From aac6c06af49a91c1d847c838d2059983080dc6d5 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sat, 15 Jun 2019 01:04:22 +0200 Subject: [PATCH 024/123] [arrow] fix findzstd patch (#6757) --- ports/arrow/CONTROL | 2 +- ports/arrow/findzstd.patch | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ports/arrow/CONTROL b/ports/arrow/CONTROL index 1bfaa8a977e03c..1b32c76b623744 100644 --- a/ports/arrow/CONTROL +++ b/ports/arrow/CONTROL @@ -1,4 +1,4 @@ Source: arrow -Version: 0.13.0-3 +Version: 0.13.0-4 Build-Depends: boost-system, boost-filesystem, boost-multiprecision, boost-algorithm, flatbuffers, rapidjson, zlib, lz4, brotli, zstd, snappy, gflags, thrift, double-conversion, glog, uriparser Description: Apache Arrow is a columnar in-memory analytics layer designed to accelerate big data. It houses a set of canonical in-memory representations of flat and hierarchical data along with multiple language-bindings for structure manipulation. It also provides IPC and common algorithm implementations. diff --git a/ports/arrow/findzstd.patch b/ports/arrow/findzstd.patch index c45f12d0be89db..ac77202f957ea1 100644 --- a/ports/arrow/findzstd.patch +++ b/ports/arrow/findzstd.patch @@ -11,11 +11,12 @@ index 21b4981ec..818e4b5e1 100644 -endif() - +set(ZSTD_LIB_NAME_DEBUG_SUFFIX d) - set(ZSTD_STATIC_LIB_SUFFIX "${ZSTD_MSVC_STATIC_LIB_SUFFIX}${ZSTD_LIB_NAME_DEBUG_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}") +-set(ZSTD_STATIC_LIB_SUFFIX "${ZSTD_MSVC_STATIC_LIB_SUFFIX}${ZSTD_LIB_NAME_DEBUG_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}") ++set(ZSTD_STATIC_LIB_SUFFIX "${ZSTD_MSVC_STATIC_LIB_SUFFIX}") set(ZSTD_STATIC_LIB_NAME ${CMAKE_STATIC_LIBRARY_PREFIX}zstd${ZSTD_STATIC_LIB_SUFFIX}) -+set(ZSTD_LIB_NAMES_RELEASE zstd "${ZSTD_STATIC_LIB_NAME}" "lib${ZSTD_STATIC_LIB_NAME}" -+ "${CMAKE_SHARED_LIBRARY_PREFIX}zstd${ZSTD_LIB_NAME_DEBUG_SUFFIX}${CMAKE_SHARED_LIBRARY_SUFFIX}") ++set(ZSTD_LIB_NAMES_RELEASE zstd "${ZSTD_STATIC_LIB_NAME}" ++ "${CMAKE_SHARED_LIBRARY_PREFIX}zstd") +set(ZSTD_LIB_NAMES_DEBUG) +foreach(_zstd_name ${ZSTD_LIB_NAMES_RELEASE}) + list(APPEND ZSTD_LIB_NAMES_DEBUG ${_zstd_name}${ZSTD_LIB_NAME_DEBUG_SUFFIX}) From 23f11284c1e0234695e46ecb11f6ff365e720252 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Fri, 14 Jun 2019 16:05:02 -0700 Subject: [PATCH 025/123] [OpenIGTLInk] Add new port (#6769) --- ports/openigtlink/CONTROL | 3 +++ ports/openigtlink/portfile.cmake | 30 ++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 ports/openigtlink/CONTROL create mode 100644 ports/openigtlink/portfile.cmake diff --git a/ports/openigtlink/CONTROL b/ports/openigtlink/CONTROL new file mode 100644 index 00000000000000..488c4061b02371 --- /dev/null +++ b/ports/openigtlink/CONTROL @@ -0,0 +1,3 @@ +Source: openigtlink +Version: 3.0 +Description: OpenIGTLink is an open-source network communication interface specifically designed for image-guided interventions. diff --git a/ports/openigtlink/portfile.cmake b/ports/openigtlink/portfile.cmake new file mode 100644 index 00000000000000..a5a240fae30b17 --- /dev/null +++ b/ports/openigtlink/portfile.cmake @@ -0,0 +1,30 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO openigtlink/OpenIGTLink + REF v3.0 + SHA512 3f62ef1c4ca349f653712cecd43af8b5afce642cc3950256498905999861d68143ba3003f6b0899f5f5c3c5c755eb282c63488ac59b4793b3622a47571452739 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DBUILD_TESTING=OFF +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/igtl/cmake) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +vcpkg_copy_pdbs() + +# Handle copyright +file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright) \ No newline at end of file From 8148e41eb94356b7297db92ea9635f23a37b8f4d Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sat, 15 Jun 2019 01:06:26 +0200 Subject: [PATCH 026/123] [vtk] fix static hdf5 linkage. (#6782) --- ports/vtk/CONTROL | 2 +- ports/vtk/hdf5_static.patch | 22 ++++++++++++++++++++++ ports/vtk/portfile.cmake | 2 ++ 3 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 ports/vtk/hdf5_static.patch diff --git a/ports/vtk/CONTROL b/ports/vtk/CONTROL index 0625a3ac111c18..5917bbf6868ee0 100644 --- a/ports/vtk/CONTROL +++ b/ports/vtk/CONTROL @@ -1,5 +1,5 @@ Source: vtk -Version: 8.2.0-2 +Version: 8.2.0-4 Description: Software system for 3D computer graphics, image processing, and visualization Build-Depends: zlib, libpng, tiff, libxml2, jsoncpp, glew, freetype, expat, hdf5, libjpeg-turbo, proj4, lz4, libtheora, atlmfc (windows), eigen3, double-conversion, pugixml, libharu, sqlite3, netcdf-c diff --git a/ports/vtk/hdf5_static.patch b/ports/vtk/hdf5_static.patch new file mode 100644 index 00000000000000..52ade3f082f9c2 --- /dev/null +++ b/ports/vtk/hdf5_static.patch @@ -0,0 +1,22 @@ +diff --git a/CMake/FindHDF5.cmake b/CMake/FindHDF5.cmake +index 6d558e39..c301e165 100644 +--- a/CMake/FindHDF5.cmake ++++ b/CMake/FindHDF5.cmake +@@ -8,7 +8,16 @@ if(CMAKE_VERSION VERSION_LESS 3.6.1) + else() + include(${CMAKE_ROOT}/Modules/FindHDF5.cmake) + endif() +- ++#It would be better if VTK would actually use HDF5 & SZIP targets. ++#But current module load order is wrong which will lead to the target being used before it is defined! ++if("${HDF5_LIBRARIES}" MATCHES "libhdf5") ++ find_library(SZIP_LIBRARY_RELEASE NAMES sz libsz szip libszip NAMES_PER_DIR) ++ find_library(SZIP_LIBRARY_DEBUG NAMES sz_d libsz_d szip_d libszip_d NAMES_PER_DIR) ++ select_library_configurations(SZIP) ++ list(APPEND HDF5_LIBRARIES "${SZIP_LIBRARIES}") ++ find_package(ZLIB) ++ list(APPEND HDF5_LIBRARIES "${ZLIB_LIBRARIES}") ++endif() + if(HDF5_FOUND AND (HDF5_IS_PARALLEL OR HDF5_ENABLE_PARALLEL)) + include(vtkMPI) + if(MPI_C_INCLUDE_PATH) diff --git a/ports/vtk/portfile.cmake b/ports/vtk/portfile.cmake index 536a811411d40b..69d2ddd2a660fc 100644 --- a/ports/vtk/portfile.cmake +++ b/ports/vtk/portfile.cmake @@ -48,6 +48,7 @@ vcpkg_from_github( fix-find-lz4.patch fix_ogg_linkage.patch fix-pugixml-link.patch + hdf5_static.patch ) # Remove the FindGLEW.cmake and FindPythonLibs.cmake that are distributed with VTK, @@ -57,6 +58,7 @@ vcpkg_from_github( # so we provide an own one. file(REMOVE ${SOURCE_PATH}/CMake/FindGLEW.cmake) file(REMOVE ${SOURCE_PATH}/CMake/FindPythonLibs.cmake) + file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindGDAL.cmake DESTINATION ${SOURCE_PATH}/CMake) # ============================================================================= From 7157f7efbf3d0a41374fde760dbed416a3b58bee Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Fri, 14 Jun 2019 16:46:57 -0700 Subject: [PATCH 027/123] [libsquish] fix flaky build (#6893) --- ports/libsquish/CONTROL | 2 +- ports/libsquish/portfile.cmake | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/libsquish/CONTROL b/ports/libsquish/CONTROL index 9cc2e5097374c1..1e193d1b13e0c9 100644 --- a/ports/libsquish/CONTROL +++ b/ports/libsquish/CONTROL @@ -1,3 +1,3 @@ Source: libsquish -Version: 1.15 +Version: 1.15-1 Description: Open source DXT compression library. diff --git a/ports/libsquish/portfile.cmake b/ports/libsquish/portfile.cmake index dbebf95667b4f8..02fdc4f909d294 100644 --- a/ports/libsquish/portfile.cmake +++ b/ports/libsquish/portfile.cmake @@ -30,6 +30,7 @@ vcpkg_extract_source_archive_ex( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + DISABLE_PARALLEL_CONFIGURE ) vcpkg_install_cmake() From 18b029a5e3997fa4fdc7d3d06d56568a1d6f74ad Mon Sep 17 00:00:00 2001 From: pravic Date: Sun, 16 Jun 2019 02:54:47 +0300 Subject: [PATCH 028/123] [WIP] Add a Homepage URL entry for vcpkg ports (#2933) * [vcpkg] Add "Homepage" field to the CONTROL files. --- ports/abseil/CONTROL | 3 ++- ports/ace/CONTROL | 1 + ports/alac-decoder/CONTROL | 1 + ports/alac/CONTROL | 1 + ports/alembic/CONTROL | 2 +- ports/allegro5/CONTROL | 1 + ports/angle/CONTROL | 1 + ports/antlr4/CONTROL | 1 + ports/apr-util/CONTROL | 1 + ports/apr/CONTROL | 1 + ports/arb/CONTROL | 1 + ports/args/CONTROL | 1 + ports/arrow/CONTROL | 1 + ports/asio/CONTROL | 1 + ports/asmjit/CONTROL | 1 + ports/assimp/CONTROL | 3 ++- ports/atk/CONTROL | 1 + ports/atkmm/CONTROL | 1 + ports/aubio/CONTROL | 3 ++- ports/aurora/CONTROL | 1 + ports/avro-c/CONTROL | 1 + ports/aws-sdk-cpp/CONTROL | 1 + ports/azure-storage-cpp/CONTROL | 2 +- ports/benchmark/CONTROL | 1 + ports/berkeleydb/CONTROL | 1 + ports/bigint/CONTROL | 1 + ports/blaze/CONTROL | 1 + ports/blosc/CONTROL | 1 + ports/boost-accumulators/CONTROL | 1 + ports/boost-algorithm/CONTROL | 1 + ports/boost-align/CONTROL | 1 + ports/boost-any/CONTROL | 1 + ports/boost-array/CONTROL | 1 + ports/boost-asio/CONTROL | 1 + ports/boost-assert/CONTROL | 1 + ports/boost-assign/CONTROL | 1 + ports/boost-atomic/CONTROL | 1 + ports/boost-beast/CONTROL | 1 + ports/boost-bimap/CONTROL | 1 + ports/boost-bind/CONTROL | 1 + ports/boost-build/CONTROL | 1 + ports/boost-callable-traits/CONTROL | 1 + ports/boost-chrono/CONTROL | 1 + ports/boost-circular-buffer/CONTROL | 1 + ports/boost-compatibility/CONTROL | 1 + ports/boost-compute/CONTROL | 1 + ports/boost-concept-check/CONTROL | 1 + ports/boost-config/CONTROL | 1 + ports/boost-container/CONTROL | 1 + ports/boost-context/CONTROL | 1 + ports/boost-conversion/CONTROL | 1 + ports/boost-convert/CONTROL | 1 + ports/boost-core/CONTROL | 1 + ports/boost-coroutine/CONTROL | 1 + ports/boost-coroutine2/CONTROL | 1 + ports/boost-crc/CONTROL | 1 + ports/boost-date-time/CONTROL | 1 + ports/boost-detail/CONTROL | 1 + ports/boost-di/CONTROL | 3 ++- ports/boost-disjoint-sets/CONTROL | 1 + ports/boost-dll/CONTROL | 1 + ports/boost-dynamic-bitset/CONTROL | 1 + ports/boost-endian/CONTROL | 1 + ports/boost-exception/CONTROL | 1 + ports/boost-fiber/CONTROL | 1 + ports/boost-filesystem/CONTROL | 1 + ports/boost-flyweight/CONTROL | 1 + ports/boost-foreach/CONTROL | 1 + ports/boost-format/CONTROL | 1 + ports/boost-function-types/CONTROL | 1 + ports/boost-function/CONTROL | 1 + ports/boost-functional/CONTROL | 1 + ports/boost-fusion/CONTROL | 1 + ports/boost-geometry/CONTROL | 1 + ports/boost-gil/CONTROL | 1 + ports/boost-graph-parallel/CONTROL | 1 + ports/boost-graph/CONTROL | 1 + ports/boost-hana/CONTROL | 1 + ports/boost-heap/CONTROL | 1 + ports/boost-icl/CONTROL | 1 + ports/boost-integer/CONTROL | 1 + ports/boost-interprocess/CONTROL | 1 + ports/boost-interval/CONTROL | 1 + ports/boost-intrusive/CONTROL | 1 + ports/boost-io/CONTROL | 1 + ports/boost-iostreams/CONTROL | 1 + ports/boost-iterator/CONTROL | 1 + ports/boost-lambda/CONTROL | 1 + ports/boost-lexical-cast/CONTROL | 1 + ports/boost-local-function/CONTROL | 1 + ports/boost-locale/CONTROL | 1 + ports/boost-lockfree/CONTROL | 1 + ports/boost-log/CONTROL | 1 + ports/boost-logic/CONTROL | 1 + ports/boost-math/CONTROL | 1 + ports/boost-metaparse/CONTROL | 1 + ports/boost-move/CONTROL | 1 + ports/boost-mp11/CONTROL | 1 + ports/boost-mpi/CONTROL | 1 + ports/boost-mpl/CONTROL | 1 + ports/boost-msm/CONTROL | 1 + ports/boost-multi-array/CONTROL | 1 + ports/boost-multi-index/CONTROL | 1 + ports/boost-multiprecision/CONTROL | 1 + ports/boost-numeric-conversion/CONTROL | 1 + ports/boost-odeint/CONTROL | 1 + ports/boost-optional/CONTROL | 1 + ports/boost-parameter/CONTROL | 1 + ports/boost-phoenix/CONTROL | 1 + ports/boost-poly-collection/CONTROL | 1 + ports/boost-polygon/CONTROL | 1 + ports/boost-pool/CONTROL | 1 + ports/boost-predef/CONTROL | 1 + ports/boost-preprocessor/CONTROL | 1 + ports/boost-process/CONTROL | 1 + ports/boost-program-options/CONTROL | 1 + ports/boost-property-map/CONTROL | 1 + ports/boost-property-tree/CONTROL | 1 + ports/boost-proto/CONTROL | 1 + ports/boost-ptr-container/CONTROL | 1 + ports/boost-python/CONTROL | 1 + ports/boost-qvm/CONTROL | 1 + ports/boost-random/CONTROL | 1 + ports/boost-range/CONTROL | 1 + ports/boost-ratio/CONTROL | 1 + ports/boost-rational/CONTROL | 1 + ports/boost-regex/CONTROL | 1 + ports/boost-scope-exit/CONTROL | 1 + ports/boost-serialization/CONTROL | 1 + ports/boost-signals/CONTROL | 1 + ports/boost-signals2/CONTROL | 1 + ports/boost-smart-ptr/CONTROL | 1 + ports/boost-sort/CONTROL | 1 + ports/boost-spirit/CONTROL | 1 + ports/boost-stacktrace/CONTROL | 1 + ports/boost-statechart/CONTROL | 1 + ports/boost-static-assert/CONTROL | 1 + ports/boost-system/CONTROL | 1 + ports/boost-test/CONTROL | 1 + ports/boost-thread/CONTROL | 1 + ports/boost-throw-exception/CONTROL | 1 + ports/boost-timer/CONTROL | 1 + ports/boost-tokenizer/CONTROL | 1 + ports/boost-tti/CONTROL | 1 + ports/boost-tuple/CONTROL | 1 + ports/boost-type-erasure/CONTROL | 1 + ports/boost-type-index/CONTROL | 1 + ports/boost-type-traits/CONTROL | 1 + ports/boost-typeof/CONTROL | 1 + ports/boost-ublas/CONTROL | 1 + ports/boost-units/CONTROL | 1 + ports/boost-unordered/CONTROL | 1 + ports/boost-utility/CONTROL | 1 + ports/boost-uuid/CONTROL | 1 + ports/boost-variant/CONTROL | 1 + ports/boost-vmd/CONTROL | 1 + ports/boost-wave/CONTROL | 1 + ports/boost-winapi/CONTROL | 1 + ports/boost-xpressive/CONTROL | 1 + ports/boost/CONTROL | 1 + ports/botan/CONTROL | 3 ++- ports/box2d/CONTROL | 2 +- ports/breakpad/CONTROL | 1 + ports/brotli/CONTROL | 3 ++- ports/brynet/CONTROL | 1 + ports/bullet3/CONTROL | 3 ++- ports/butteraugli/CONTROL | 3 ++- ports/bzip2/CONTROL | 1 + ports/c-ares/CONTROL | 1 + ports/caffe2/CONTROL | 1 + ports/cairo/CONTROL | 1 + ports/cairomm/CONTROL | 1 + ports/capstone/CONTROL | 1 + ports/cartographer/CONTROL | 5 +++-- ports/catch-classic/CONTROL | 1 + ports/cccapstone/CONTROL | 1 + ports/ccd/CONTROL | 1 + ports/ccfits/CONTROL | 1 + ports/cctz/CONTROL | 1 + ports/celero/CONTROL | 1 + ports/cereal/CONTROL | 1 + ports/ceres/CONTROL | 1 + ports/cfitsio/CONTROL | 1 + ports/cgal/CONTROL | 1 + ports/cgicc/CONTROL | 1 + ports/chaiscript/CONTROL | 1 + ports/chakracore/CONTROL | 1 + ports/charls/CONTROL | 1 + ports/chipmunk/CONTROL | 1 + ports/chmlib/CONTROL | 1 + ports/cimg/CONTROL | 1 + ports/clapack/CONTROL | 1 + ports/clara/CONTROL | 1 + ports/clfft/CONTROL | 1 + ports/clockutils/CONTROL | 1 + ports/console-bridge/CONTROL | 1 + ports/constexpr/CONTROL | 1 + ports/coolprop/CONTROL | 1 + ports/corrade/CONTROL | 2 +- ports/cpp-redis/CONTROL | 1 + ports/cppcms/CONTROL | 3 ++- ports/cpprestsdk/CONTROL | 1 + ports/cppwinrt/CONTROL | 1 + ports/cppzmq/CONTROL | 1 + ports/cpr/CONTROL | 1 + ports/crc32c/CONTROL | 1 + ports/crow/CONTROL | 1 + ports/cryptopp/CONTROL | 1 + ports/ctemplate/CONTROL | 1 + ports/cunit/CONTROL | 1 + ports/curl/CONTROL | 1 + ports/cxxopts/CONTROL | 1 + ports/date/CONTROL | 1 + ports/devil/CONTROL | 1 + ports/dimcli/CONTROL | 1 + ports/directxmesh/CONTROL | 3 ++- ports/directxtex/CONTROL | 5 +++-- ports/directxtk/CONTROL | 1 + ports/directxtk12/CONTROL | 1 + ports/dirent/CONTROL | 1 + ports/discord-rpc/CONTROL | 1 + ports/dlfcn-win32/CONTROL | 1 + ports/dlib/CONTROL | 1 + ports/doctest/CONTROL | 1 + ports/double-conversion/CONTROL | 3 ++- ports/draco/CONTROL | 1 + ports/duktape/CONTROL | 3 ++- ports/dx/CONTROL | 3 ++- ports/dxut/CONTROL | 3 ++- ports/eastl/CONTROL | 3 ++- ports/ebml/CONTROL | 1 + ports/ecm/CONTROL | 1 + ports/eigen3/CONTROL | 1 + ports/embree2/CONTROL | 1 + ports/enet/CONTROL | 1 + ports/epsilon/CONTROL | 1 + ports/evpp/CONTROL | 1 + ports/exiv2/CONTROL | 2 +- ports/expat/CONTROL | 1 + ports/exprtk/CONTROL | 1 + ports/fadbad/CONTROL | 1 + ports/fastlz/CONTROL | 1 + ports/fcl/CONTROL | 1 + ports/fdk-aac/CONTROL | 1 + ports/ffmpeg/CONTROL | 1 + ports/fftw3/CONTROL | 1 + ports/flann/CONTROL | 1 + ports/flatbuffers/CONTROL | 2 +- ports/flint/CONTROL | 1 + ports/fltk/CONTROL | 1 + ports/fmilib/CONTROL | 2 +- ports/fmt/CONTROL | 1 + ports/folly/CONTROL | 1 + ports/fontconfig/CONTROL | 1 + ports/forest/CONTROL | 1 + ports/freeglut/CONTROL | 1 + ports/freeimage/CONTROL | 1 + ports/freerdp/CONTROL | 1 + ports/freetype-gl/CONTROL | 1 + ports/freetype/CONTROL | 1 + ports/freexl/CONTROL | 1 + ports/fuzzylite/CONTROL | 1 + ports/g2o/CONTROL | 2 +- ports/gainput/CONTROL | 1 + ports/gdal/CONTROL | 1 + ports/gdcm2/CONTROL | 1 + ports/gdk-pixbuf/CONTROL | 1 + ports/geogram/CONTROL | 1 + ports/geographiclib/CONTROL | 1 + ports/geos/CONTROL | 1 + ports/gettext/CONTROL | 1 + ports/gflags/CONTROL | 1 + ports/giflib/CONTROL | 1 + ports/gl2ps/CONTROL | 1 + ports/gl3w/CONTROL | 1 + ports/glbinding/CONTROL | 1 + ports/glew/CONTROL | 7 ++++--- ports/glfw3/CONTROL | 1 + ports/glib/CONTROL | 1 + ports/glibmm/CONTROL | 2 +- ports/glog/CONTROL | 1 + ports/glslang/CONTROL | 1 + ports/gmime/CONTROL | 1 + ports/graphicsmagick/CONTROL | 1 + ports/graphite2/CONTROL | 1 + ports/grpc/CONTROL | 1 + ports/gsl-lite/CONTROL | 1 + ports/gsl/CONTROL | 1 + ports/gtest/CONTROL | 1 + ports/gtk/CONTROL | 1 + ports/gtkmm/CONTROL | 1 + ports/gts/CONTROL | 1 + ports/guetzli/CONTROL | 1 + ports/gumbo/CONTROL | 1 + ports/halide/CONTROL | 1 + ports/harfbuzz/CONTROL | 1 + ports/hdf5/CONTROL | 1 + ports/highfive/CONTROL | 1 + ports/hpx/CONTROL | 1 + ports/http-parser/CONTROL | 3 ++- ports/hunspell/CONTROL | 1 + ports/hwloc/CONTROL | 1 + ports/hypre/CONTROL | 1 + ports/icu/CONTROL | 1 + ports/if97/CONTROL | 1 + ports/imgui/CONTROL | 1 + ports/itk/CONTROL | 15 ++++++++------- ports/jack2/CONTROL | 1 + ports/jansson/CONTROL | 1 + ports/jasper/CONTROL | 1 + ports/jbig2dec/CONTROL | 1 + ports/jbigkit/CONTROL | 1 + ports/jemalloc/CONTROL | 1 + ports/jsoncpp/CONTROL | 1 + ports/jsonnet/CONTROL | 1 + ports/jxrlib/CONTROL | 1 + ports/kd-soap/CONTROL | 2 +- ports/kealib/CONTROL | 1 + ports/kf5plotting/CONTROL | 1 + ports/lcm/CONTROL | 1 + ports/lcms/CONTROL | 1 + ports/leptonica/CONTROL | 1 + ports/leveldb/CONTROL | 1 + ports/libaiff/CONTROL | 1 + ports/libarchive/CONTROL | 1 + ports/libbson/CONTROL | 1 + ports/libcds/CONTROL | 1 + ports/libconfig/CONTROL | 1 + ports/libdatrie/CONTROL | 1 + ports/libdisasm/CONTROL | 1 + ports/libepoxy/CONTROL | 3 ++- ports/libevent/CONTROL | 1 + ports/libexif/CONTROL | 1 + ports/libffi/CONTROL | 1 + ports/libflac/CONTROL | 1 + ports/libfreenect2/CONTROL | 1 + ports/libgd/CONTROL | 1 + ports/libgeotiff/CONTROL | 1 + ports/libgit2/CONTROL | 3 ++- ports/libgta/CONTROL | 1 + ports/libharu/CONTROL | 1 + ports/libiconv/CONTROL | 1 + ports/libidn2/CONTROL | 1 + ports/libjpeg-turbo/CONTROL | 1 + ports/libkml/CONTROL | 1 + ports/liblo/CONTROL | 1 + ports/liblzma/CONTROL | 1 + ports/libmariadb/CONTROL | 3 ++- ports/libmicrohttpd/CONTROL | 1 + ports/libmikmod/CONTROL | 1 + ports/libmodplug/CONTROL | 1 + ports/libmspack/CONTROL | 1 + ports/libmupdf/CONTROL | 1 + ports/libmysql/CONTROL | 1 + ports/libnice/CONTROL | 1 + ports/libodb-mysql/CONTROL | 1 + ports/libodb-pgsql/CONTROL | 1 + ports/libodb-sqlite/CONTROL | 1 + ports/libodb/CONTROL | 1 + ports/libogg/CONTROL | 7 ++++--- ports/libopenmpt/CONTROL | 1 + ports/libopusenc/CONTROL | 1 + ports/libp7-baical/CONTROL | 1 + ports/libpng-apng/CONTROL | 1 + ports/libpng/CONTROL | 1 + ports/libpq/CONTROL | 1 + ports/libpqxx/CONTROL | 1 + ports/libqrencode/CONTROL | 1 + ports/librabbitmq/CONTROL | 1 + ports/libraw/CONTROL | 1 + ports/librtmp/CONTROL | 1 + ports/libsamplerate/CONTROL | 1 + ports/libsndfile/CONTROL | 1 + ports/libsodium/CONTROL | 1 + ports/libspatialite/CONTROL | 1 + ports/libssh/CONTROL | 1 + ports/libssh2/CONTROL | 1 + ports/libstemmer/CONTROL | 1 + ports/libtheora/CONTROL | 1 + ports/libtorrent/CONTROL | 1 + ports/libudis86/CONTROL | 1 + ports/libunibreak/CONTROL | 3 ++- ports/libusb-win32/CONTROL | 1 + ports/libusb/CONTROL | 1 + ports/libuv/CONTROL | 1 + ports/libvorbis/CONTROL | 1 + ports/libvpx/CONTROL | 1 + ports/libwebm/CONTROL | 1 + ports/libwebp/CONTROL | 1 + ports/libwebsockets/CONTROL | 1 + ports/libxml2/CONTROL | 1 + ports/libxmp-lite/CONTROL | 1 + ports/libxslt/CONTROL | 1 + ports/libzip/CONTROL | 1 + ports/live555/CONTROL | 1 + ports/llvm/CONTROL | 1 + ports/lmdb/CONTROL | 1 + ports/lodepng/CONTROL | 1 + ports/log4cplus/CONTROL | 1 + ports/lpeg/CONTROL | 1 + ports/lua/CONTROL | 1 + ports/luafilesystem/CONTROL | 1 + ports/luajit/CONTROL | 1 + ports/luasocket/CONTROL | 1 + ports/lz4/CONTROL | 1 + ports/lzfse/CONTROL | 1 + ports/lzo/CONTROL | 1 + ports/magnum-extras/CONTROL | 2 +- ports/magnum-integration/CONTROL | 2 +- ports/magnum-plugins/CONTROL | 2 +- ports/magnum/CONTROL | 2 +- ports/matio/CONTROL | 1 + ports/matroska/CONTROL | 1 + ports/mbedtls/CONTROL | 1 + ports/mdnsresponder/CONTROL | 2 +- ports/meschach/CONTROL | 1 + ports/metis/CONTROL | 1 + ports/minizip/CONTROL | 1 + ports/mman/CONTROL | 1 + ports/mongo-c-driver/CONTROL | 1 + ports/mongo-cxx-driver/CONTROL | 1 + ports/monkeys-audio/CONTROL | 1 + ports/mozjpeg/CONTROL | 1 + ports/mpfr/CONTROL | 1 + ports/mpg123/CONTROL | 3 ++- ports/mpir/CONTROL | 1 + ports/ms-gsl/CONTROL | 3 ++- ports/msgpack/CONTROL | 1 + ports/msinttypes/CONTROL | 1 + ports/mujs/CONTROL | 1 + ports/muparser/CONTROL | 1 + ports/nana/CONTROL | 3 ++- ports/nanodbc/CONTROL | 1 + ports/netcdf-c/CONTROL | 1 + ports/netcdf-cxx4/CONTROL | 1 + ports/nghttp2/CONTROL | 1 + ports/nlohmann-json/CONTROL | 1 + ports/nlopt/CONTROL | 1 + ports/nmslib/CONTROL | 3 ++- ports/nuklear/CONTROL | 1 + ports/ode/CONTROL | 1 + ports/ogre/CONTROL | 1 + ports/openal-soft/CONTROL | 1 + ports/openblas/CONTROL | 1 + ports/opencl/CONTROL | 1 + ports/opencv/CONTROL | 1 + ports/openexr/CONTROL | 1 + ports/openimageio/CONTROL | 1 + ports/openjpeg/CONTROL | 1 + ports/openmama/CONTROL | 1 + ports/openni2/CONTROL | 1 + ports/openssl/CONTROL | 1 + ports/opentracing/CONTROL | 2 +- ports/openvdb/CONTROL | 1 + ports/openvr/CONTROL | 1 + ports/opus/CONTROL | 1 + ports/opusfile/CONTROL | 1 + ports/osg/CONTROL | 1 + ports/paho-mqtt/CONTROL | 1 + ports/pango/CONTROL | 1 + ports/pangolin/CONTROL | 1 + ports/pangomm/CONTROL | 1 + ports/parmetis/CONTROL | 1 + ports/pcl/CONTROL | 1 + ports/pcre2/CONTROL | 1 + ports/pdcurses/CONTROL | 1 + ports/physfs/CONTROL | 1 + ports/picojson/CONTROL | 1 + ports/picosha2/CONTROL | 1 + ports/piex/CONTROL | 1 + ports/pixman/CONTROL | 1 + ports/plibsys/CONTROL | 1 + ports/plog/CONTROL | 1 + ports/podofo/CONTROL | 1 + ports/portaudio/CONTROL | 1 + ports/portmidi/CONTROL | 1 + ports/pqp/CONTROL | 1 + ports/proj4/CONTROL | 1 + ports/protobuf/CONTROL | 1 + ports/ptex/CONTROL | 1 + ports/pthreads/CONTROL | 1 + ports/pugixml/CONTROL | 1 + ports/pybind11/CONTROL | 1 + ports/pystring/CONTROL | 1 + ports/python3/CONTROL | 1 + ports/qhull/CONTROL | 1 + ports/qpid-proton/CONTROL | 3 ++- ports/qscintilla/CONTROL | 1 + ports/qt5-base/CONTROL | 1 + ports/qt5/CONTROL | 1 + ports/qwt/CONTROL | 1 + ports/ragel/CONTROL | 1 + ports/range-v3/CONTROL | 1 + ports/rapidxml/CONTROL | 1 + ports/re2/CONTROL | 1 + ports/readosm/CONTROL | 1 + ports/realsense2/CONTROL | 1 + ports/recast/CONTROL | 1 + ports/refprop-headers/CONTROL | 1 + ports/rhash/CONTROL | 1 + ports/rocksdb/CONTROL | 1 + ports/rpclib/CONTROL | 1 + ports/rs-core-lib/CONTROL | 1 + ports/rtmidi/CONTROL | 1 + ports/rttr/CONTROL | 1 + ports/rxcpp/CONTROL | 1 + ports/scintilla/CONTROL | 1 + ports/sciter/CONTROL | 1 + ports/scylla-wrapper/CONTROL | 2 +- ports/sdl2-image/CONTROL | 1 + ports/sdl2-mixer/CONTROL | 1 + ports/sdl2-net/CONTROL | 1 + ports/sdl2-ttf/CONTROL | 1 + ports/sdl2/CONTROL | 1 + ports/secp256k1/CONTROL | 1 + ports/sfgui/CONTROL | 1 + ports/sfml/CONTROL | 1 + ports/shaderc/CONTROL | 1 + ports/shapelib/CONTROL | 1 + ports/signalrclient/CONTROL | 1 + ports/smpeg2/CONTROL | 1 + ports/snappy/CONTROL | 1 + ports/sobjectizer/CONTROL | 1 + ports/soci/CONTROL | 1 + ports/sol2/CONTROL | 1 + ports/sophus/CONTROL | 1 + ports/soundtouch/CONTROL | 1 + ports/spatialite-tools/CONTROL | 1 + ports/spdlog/CONTROL | 1 + ports/speex/CONTROL | 1 + ports/speexdsp/CONTROL | 1 + ports/spirit-po/CONTROL | 1 + ports/spirv-tools/CONTROL | 1 + ports/sqlite-modern-cpp/CONTROL | 1 + ports/sqlite3/CONTROL | 1 + ports/sqlitecpp/CONTROL | 1 + ports/stb/CONTROL | 1 + ports/string-theory/CONTROL | 1 + ports/strtk/CONTROL | 1 + ports/suitesparse/CONTROL | 1 + ports/sundials/CONTROL | 1 + ports/szip/CONTROL | 1 + ports/tacopie/CONTROL | 1 + ports/taglib/CONTROL | 1 + ports/tbb/CONTROL | 1 + ports/tclap/CONTROL | 1 + ports/telnetpp/CONTROL | 1 + ports/tesseract/CONTROL | 1 + ports/theia/CONTROL | 1 + ports/thor/CONTROL | 1 + ports/thrift/CONTROL | 1 + ports/tidy-html5/CONTROL | 1 + ports/tiff/CONTROL | 1 + ports/tiny-dnn/CONTROL | 1 + ports/tinydir/CONTROL | 1 + ports/tinyexif/CONTROL | 1 + ports/tinyexr/CONTROL | 1 + ports/tinythread/CONTROL | 1 + ports/tinytoml/CONTROL | 1 + ports/tinyxml/CONTROL | 1 + ports/tinyxml2/CONTROL | 1 + ports/torch-th/CONTROL | 1 + ports/tre/CONTROL | 1 + ports/unicorn-lib/CONTROL | 1 + ports/unicorn/CONTROL | 1 + ports/units/CONTROL | 1 + ports/unittest-cpp/CONTROL | 1 + ports/unrar/CONTROL | 1 + ports/urdfdom-headers/CONTROL | 1 + ports/urdfdom/CONTROL | 3 ++- ports/uriparser/CONTROL | 1 + ports/utf8proc/CONTROL | 1 + ports/utfcpp/CONTROL | 3 ++- ports/utfz/CONTROL | 1 + ports/uvatlas/CONTROL | 3 ++- ports/uwebsockets/CONTROL | 1 + ports/vlpp/CONTROL | 1 + ports/vtk/CONTROL | 1 + ports/websocketpp/CONTROL | 1 + ports/wildmidi/CONTROL | 3 ++- ports/winpcap/CONTROL | 1 + ports/wt/CONTROL | 1 + ports/wtl/CONTROL | 1 + ports/wxwidgets/CONTROL | 1 + ports/x264/CONTROL | 1 + ports/x265/CONTROL | 1 + ports/xalan-c/CONTROL | 1 + ports/xerces-c/CONTROL | 1 + ports/xlnt/CONTROL | 1 + ports/xxhash/CONTROL | 1 + ports/yaml-cpp/CONTROL | 1 + ports/yara/CONTROL | 1 + ports/yoga/CONTROL | 1 + ports/zeromq/CONTROL | 1 + ports/zlib/CONTROL | 1 + ports/zstd/CONTROL | 2 +- ports/zziplib/CONTROL | 3 ++- 597 files changed, 644 insertions(+), 65 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index 65c35d7ecade54..b611fe9e7eaa00 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,6 @@ Source: abseil -Version: 2019-05-08 +Version: 2019-05-08 +Homepage: https://github.com/abseil/abseil-cpp Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/ace/CONTROL b/ports/ace/CONTROL index 8b76f644a2af8c..4153cdc48a344a 100644 --- a/ports/ace/CONTROL +++ b/ports/ace/CONTROL @@ -1,5 +1,6 @@ Source: ace Version: 6.5.5-1 +Homepage: https://www.dre.vanderbilt.edu/~schmidt/ACE.html Description: The ADAPTIVE Communication Environment Feature: wchar diff --git a/ports/alac-decoder/CONTROL b/ports/alac-decoder/CONTROL index e2b3da2b1ae19d..dcbf3922e19187 100644 --- a/ports/alac-decoder/CONTROL +++ b/ports/alac-decoder/CONTROL @@ -1,3 +1,4 @@ Source: alac-decoder Version: 0.2-1 +Homepage: https://distfiles.macports.org/alac_decoder Description: ALAC C implementation of a decoder, written from reverse engineering the file format diff --git a/ports/alac/CONTROL b/ports/alac/CONTROL index 07ca2b5a2ad00a..1bea4dc14549c1 100644 --- a/ports/alac/CONTROL +++ b/ports/alac/CONTROL @@ -1,3 +1,4 @@ Source: alac Version: 2017-11-03-c38887c5-1 +Homepage: https://github.com/macosforge/alac Description: The Apple Lossless Audio Codec (ALAC) is a lossless audio codec developed by Apple and deployed on all of its platforms and devices. diff --git a/ports/alembic/CONTROL b/ports/alembic/CONTROL index 8b19b03cb0ea77..0adc152bb71043 100644 --- a/ports/alembic/CONTROL +++ b/ports/alembic/CONTROL @@ -2,4 +2,4 @@ Source: alembic Version: 1.7.11 Build-Depends: ilmbase, hdf5 Description: Alembic is an open framework for storing and sharing scene data that includes a C++ library, a file format, and client plugins and applications. -Homepage: http://alembic.io/ +Homepage: https://alembic.io/ diff --git a/ports/allegro5/CONTROL b/ports/allegro5/CONTROL index 0a18649f8bdfe4..defd1b481b44ae 100644 --- a/ports/allegro5/CONTROL +++ b/ports/allegro5/CONTROL @@ -1,4 +1,5 @@ Source: allegro5 Version: 5.2.5.0 +Homepage: https://github.com/liballeg/allegro5 Description: Allegro is a cross-platform library mainly aimed at video game and multimedia programming. It handles common, low-level tasks such as creating windows, accepting user input, loading data, drawing images, playing sounds, etc. and generally abstracting away the underlying platform. However, Allegro is not a game engine: you are free to design and structure your program as you like. Build-Depends: opengl, zlib, freetype, libogg, libvorbis, libflac, openal-soft, libpng, bzip2, physfs, libtheora, opus, opusfile diff --git a/ports/angle/CONTROL b/ports/angle/CONTROL index 8bc53822e57b3f..cac71fae2abffc 100644 --- a/ports/angle/CONTROL +++ b/ports/angle/CONTROL @@ -1,5 +1,6 @@ Source: angle Version: 2019-03-13-c2ee2cc-3 +Homepage: https://github.com/google/angle Description: A conformant OpenGL ES implementation for Windows, Mac and Linux. The goal of ANGLE is to allow users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform. ANGLE currently provides translation from OpenGL ES 2.0 and 3.0 to desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11. Support for translation from OpenGL ES to Vulkan is underway, and future plans include compute shader support (ES 3.1) and MacOS support. Build-Depends: egl-registry diff --git a/ports/antlr4/CONTROL b/ports/antlr4/CONTROL index 4af73fb8a5aa84..46852dbf5a42c6 100644 --- a/ports/antlr4/CONTROL +++ b/ports/antlr4/CONTROL @@ -1,4 +1,5 @@ Source: antlr4 Version: 4.7.1-3 +Homepage: https://www.antlr.org Description: ANother Tool for Language Recognition Build-Depends: libuuid (!uwp&!windows&!osx) \ No newline at end of file diff --git a/ports/apr-util/CONTROL b/ports/apr-util/CONTROL index 80ca3d94da4fda..8dcd5af03f103e 100644 --- a/ports/apr-util/CONTROL +++ b/ports/apr-util/CONTROL @@ -1,4 +1,5 @@ Source: apr-util Version: 1.6.0-3 +Homepage: https://apr.apache.org/ Description: Apache Portable Runtime (APR) project mission is to create and maintain software libraries that provide a predictable and consistent interface to underlying platform-specific implementation Build-Depends: expat, apr, openssl diff --git a/ports/apr/CONTROL b/ports/apr/CONTROL index 19be22b19fff7a..7a35c5b48dedc5 100644 --- a/ports/apr/CONTROL +++ b/ports/apr/CONTROL @@ -1,5 +1,6 @@ Source: apr Version: 1.6.5-1 +Homepage: https://apr.apache.org/ Description: The Apache Portable Runtime (APR) is a C library that forms a system portability layer that covers many operating systems. Feature: private-headers diff --git a/ports/arb/CONTROL b/ports/arb/CONTROL index 7505432983610d..02baf69b8c9ea0 100644 --- a/ports/arb/CONTROL +++ b/ports/arb/CONTROL @@ -1,4 +1,5 @@ Source: arb Version: 2.16.0 +Homepage: https://github.com/fredrik-johansson/arb Description: a C library for arbitrary-precision interval arithmetic Build-Depends: flint diff --git a/ports/args/CONTROL b/ports/args/CONTROL index 0b5bd4e948f710..8d9d88a5008100 100644 --- a/ports/args/CONTROL +++ b/ports/args/CONTROL @@ -1,3 +1,4 @@ Source: args Version: 2019-05-01 +Homepage: https://github.com/Taywee/args Description: A simple header-only C++ argument parser library. diff --git a/ports/arrow/CONTROL b/ports/arrow/CONTROL index 1b32c76b623744..ada95e2d078f37 100644 --- a/ports/arrow/CONTROL +++ b/ports/arrow/CONTROL @@ -1,4 +1,5 @@ Source: arrow Version: 0.13.0-4 Build-Depends: boost-system, boost-filesystem, boost-multiprecision, boost-algorithm, flatbuffers, rapidjson, zlib, lz4, brotli, zstd, snappy, gflags, thrift, double-conversion, glog, uriparser +Homepage: https://github.com/apache/arrow Description: Apache Arrow is a columnar in-memory analytics layer designed to accelerate big data. It houses a set of canonical in-memory representations of flat and hierarchical data along with multiple language-bindings for structure manipulation. It also provides IPC and common algorithm implementations. diff --git a/ports/asio/CONTROL b/ports/asio/CONTROL index 951c80e29ae7cd..49a2be94c96f30 100644 --- a/ports/asio/CONTROL +++ b/ports/asio/CONTROL @@ -1,3 +1,4 @@ Source: asio Version: 1.12.2-1 +Homepage: https://github.com/chriskohlhoff/asio Description: Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. diff --git a/ports/asmjit/CONTROL b/ports/asmjit/CONTROL index b4c5b6b5a12990..5387b8a1cf4e93 100644 --- a/ports/asmjit/CONTROL +++ b/ports/asmjit/CONTROL @@ -1,3 +1,4 @@ Source: asmjit Version: 2019-03-29 +Homepage: https://github.com/asmjit/asmjit Description: Complete x86/x64 JIT and Remote Assembler for C++ diff --git a/ports/assimp/CONTROL b/ports/assimp/CONTROL index 0756978d6acd19..ddc2627f0bfaf3 100644 --- a/ports/assimp/CONTROL +++ b/ports/assimp/CONTROL @@ -1,4 +1,5 @@ Source: assimp -Version: 4.1.0-5 +Version: 4.1.0-5 +Homepage: https://github.com/assimp/assimp Description: The Open Asset import library Build-Depends: zlib, rapidjson diff --git a/ports/atk/CONTROL b/ports/atk/CONTROL index 824052721fec4f..66890b039da39c 100644 --- a/ports/atk/CONTROL +++ b/ports/atk/CONTROL @@ -1,4 +1,5 @@ Source: atk Version: 2.24.0-3 +Homepage: https://developer.gnome.org/atk/ Description: GNOME Accessibility Toolkit Build-Depends: glib, gettext diff --git a/ports/atkmm/CONTROL b/ports/atkmm/CONTROL index 329a329b80dfd4..3900e1698fe2f5 100644 --- a/ports/atkmm/CONTROL +++ b/ports/atkmm/CONTROL @@ -1,4 +1,5 @@ Source: atkmm Version: 2.24.2-1 +Homepage: https://www.gtkmm.org Description: atkmm is the official C++ interface for the ATK accessibility toolkit library. It may be used, for instance, by user interfaces implemented with gtkmm. Build-Depends: glib, gettext, atk, glibmm diff --git a/ports/aubio/CONTROL b/ports/aubio/CONTROL index 1f97f467cb20a1..906fefe45477ce 100644 --- a/ports/aubio/CONTROL +++ b/ports/aubio/CONTROL @@ -1,4 +1,5 @@ Source: aubio -Version: 0.4.9 +Version: 0.4.9 +Homepage: https://github.com/aubio/aubio Description: Aubio is a tool designed for the extraction of annotations from audio signals. Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio. Build-Depends: ffmpeg, libsndfile, libogg, libflac, libvorbis, bzip2, liblzma diff --git a/ports/aurora/CONTROL b/ports/aurora/CONTROL index 172c019cd066b6..b99aed73eb48e7 100644 --- a/ports/aurora/CONTROL +++ b/ports/aurora/CONTROL @@ -1,3 +1,4 @@ Source: aurora Version: 2017-06-21-c75699d2a8caa726260c29b6d7a0fd35f8f28933 +Homepage: https://github.com/Bromeon/Aurora Description: Aurora is an open-source C++ library providing various rather uncommon C++ utilities diff --git a/ports/avro-c/CONTROL b/ports/avro-c/CONTROL index 527090f0ddb253..4374814d526510 100644 --- a/ports/avro-c/CONTROL +++ b/ports/avro-c/CONTROL @@ -1,4 +1,5 @@ Source: avro-c Version: 1.8.2-2 +Homepage: https://github.com/apache/avro Description: Apache Avro is a data serialization system Build-Depends: jansson, liblzma, zlib diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index b1c7f58ab245b8..194f4d2152e486 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,6 @@ Source: aws-sdk-cpp Version: 1.7.106 +Homepage: https://github.com/aws/aws-sdk-cpp Description: AWS SDK for C++ Build-Depends: openssl (!uwp&!windows), curl (!uwp&!windows), aws-c-event-stream Default-Features: dynamodb, s3, kinesis diff --git a/ports/azure-storage-cpp/CONTROL b/ports/azure-storage-cpp/CONTROL index d799b451218489..9eabe9faf6b056 100644 --- a/ports/azure-storage-cpp/CONTROL +++ b/ports/azure-storage-cpp/CONTROL @@ -3,4 +3,4 @@ Version: 6.1.0 Build-Depends: cpprestsdk[core], atlmfc (windows), boost-log (!windows&!uwp), boost-locale (!windows&!uwp), libxml2 (!windows&!uwp), libuuid (!windows&!uwp&!osx), gettext Description: Microsoft Azure Storage Client SDK for C++ A client library for working with Microsoft Azure storage services including blobs, files, tables, and queues. This client library enables working with the Microsoft Azure storage services which include the blob service for storing binary and text data, the file service for storing binary and text data, the table service for storing structured non-relational data, and the queue service for storing messages that may be accessed by a client. -Homepage: http://blogs.msdn.com/b/windowsazurestorage/ \ No newline at end of file +Homepage: https://blogs.msdn.com/b/windowsazurestorage/ \ No newline at end of file diff --git a/ports/benchmark/CONTROL b/ports/benchmark/CONTROL index 4df389778c740e..27c4c82562de6b 100644 --- a/ports/benchmark/CONTROL +++ b/ports/benchmark/CONTROL @@ -1,3 +1,4 @@ Source: benchmark Version: 1.5 +Homepage: https://github.com/google/benchmark Description: A library to support the benchmarking of functions, similar to unit-tests. diff --git a/ports/berkeleydb/CONTROL b/ports/berkeleydb/CONTROL index b4fd6dae06a81c..c1416e07bffaf4 100644 --- a/ports/berkeleydb/CONTROL +++ b/ports/berkeleydb/CONTROL @@ -1,3 +1,4 @@ Source: berkeleydb Version: 4.8.30-2 +Homepage: https://download.oracle.com/ Description: BDB - A high-performance embedded database for key/value data. diff --git a/ports/bigint/CONTROL b/ports/bigint/CONTROL index 9f508306ca3071..d862b4b5106678 100644 --- a/ports/bigint/CONTROL +++ b/ports/bigint/CONTROL @@ -1,3 +1,4 @@ Source: bigint Version: 2010.04.30-3 +Homepage: https://mattmccutchen.net/bigint Description: C++ Big Integer Library diff --git a/ports/blaze/CONTROL b/ports/blaze/CONTROL index c70a72a6c3fab7..8e91f8df6dca0a 100644 --- a/ports/blaze/CONTROL +++ b/ports/blaze/CONTROL @@ -1,4 +1,5 @@ Source: blaze Version: 3.5 Build-Depends: clapack (!osx), boost-exception +Homepage: https://bitbucket.org/blaze-lib/blaze Description: Blaze is an open-source, high-performance C++ math library for dense and sparse arithmetic. diff --git a/ports/blosc/CONTROL b/ports/blosc/CONTROL index 3a2f82d4f8da9d..7c0d95842aed93 100644 --- a/ports/blosc/CONTROL +++ b/ports/blosc/CONTROL @@ -1,4 +1,5 @@ Source: blosc Version: 1.16.3 Build-Depends: lz4, snappy, zlib, zstd +Homepage: https://github.com/Blosc/c-blosc Description: A blocking, shuffling and loss-less compression library that can be faster than `memcpy()` diff --git a/ports/boost-accumulators/CONTROL b/ports/boost-accumulators/CONTROL index 2133992d2f04d5..0d0be2efd0be6f 100644 --- a/ports/boost-accumulators/CONTROL +++ b/ports/boost-accumulators/CONTROL @@ -2,4 +2,5 @@ Source: boost-accumulators Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-circular-buffer, boost-concept-check, boost-config, boost-core, boost-detail, boost-fusion, boost-interval, boost-iterator, boost-mpl, boost-numeric-conversion, boost-odeint, boost-parameter, boost-preprocessor, boost-range, boost-static-assert, boost-throw-exception, boost-tuple, boost-typeof, boost-type-traits, boost-ublas, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/accumulators Description: Boost accumulators module diff --git a/ports/boost-algorithm/CONTROL b/ports/boost-algorithm/CONTROL index 38218d800c568c..bda5627cbdae6e 100644 --- a/ports/boost-algorithm/CONTROL +++ b/ports/boost-algorithm/CONTROL @@ -2,4 +2,5 @@ Source: boost-algorithm Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-bind, boost-concept-check, boost-config, boost-core, boost-detail, boost-exception, boost-function, boost-iterator, boost-mpl, boost-range, boost-regex, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/algorithm Description: Boost algorithm module diff --git a/ports/boost-align/CONTROL b/ports/boost-align/CONTROL index 5e196d31a16091..31d92ab53fb727 100644 --- a/ports/boost-align/CONTROL +++ b/ports/boost-align/CONTROL @@ -2,4 +2,5 @@ Source: boost-align Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-static-assert, boost-throw-exception, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/align Description: Boost align module diff --git a/ports/boost-any/CONTROL b/ports/boost-any/CONTROL index 184be2107195a3..b7f37834e32c7e 100644 --- a/ports/boost-any/CONTROL +++ b/ports/boost-any/CONTROL @@ -2,4 +2,5 @@ Source: boost-any Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-static-assert, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/any Description: Boost any module diff --git a/ports/boost-array/CONTROL b/ports/boost-array/CONTROL index 262b29c4a08479..442caaf0f67f6b 100644 --- a/ports/boost-array/CONTROL +++ b/ports/boost-array/CONTROL @@ -2,4 +2,5 @@ Source: boost-array Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-static-assert, boost-throw-exception, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/array Description: Boost array module diff --git a/ports/boost-asio/CONTROL b/ports/boost-asio/CONTROL index a0bff2adc2b09d..3d93e7c07344b8 100644 --- a/ports/boost-asio/CONTROL +++ b/ports/boost-asio/CONTROL @@ -2,4 +2,5 @@ Source: boost-asio Version: 1.70.0-1 Build-Depends: boost-array, boost-assert, boost-bind, boost-chrono, boost-compatibility, boost-config, boost-coroutine (!uwp), boost-date-time, boost-detail, boost-function, boost-integer, boost-regex, boost-smart-ptr, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, openssl +Homepage: https://github.com/boostorg/asio Description: Boost asio module diff --git a/ports/boost-assert/CONTROL b/ports/boost-assert/CONTROL index bc8c11951750ba..9b2b6f1e521f80 100644 --- a/ports/boost-assert/CONTROL +++ b/ports/boost-assert/CONTROL @@ -2,4 +2,5 @@ Source: boost-assert Version: 1.70.0 Build-Depends: boost-config, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/assert Description: Boost assert module diff --git a/ports/boost-assign/CONTROL b/ports/boost-assign/CONTROL index ce4050e10c9c91..60d906bb8d0049 100644 --- a/ports/boost-assign/CONTROL +++ b/ports/boost-assign/CONTROL @@ -2,4 +2,5 @@ Source: boost-assign Version: 1.70.0 Build-Depends: boost-array, boost-config, boost-detail, boost-move, boost-mpl, boost-preprocessor, boost-ptr-container, boost-range, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/assign Description: Boost assign module diff --git a/ports/boost-atomic/CONTROL b/ports/boost-atomic/CONTROL index 29061c6f033b3a..ffa7c49a3696b0 100644 --- a/ports/boost-atomic/CONTROL +++ b/ports/boost-atomic/CONTROL @@ -2,4 +2,5 @@ Source: boost-atomic Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-config, boost-integer, boost-modular-build-helper, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/atomic Description: Boost atomic module diff --git a/ports/boost-beast/CONTROL b/ports/boost-beast/CONTROL index a2fc18353aa525..7355df55bfdcdf 100644 --- a/ports/boost-beast/CONTROL +++ b/ports/boost-beast/CONTROL @@ -2,4 +2,5 @@ Source: boost-beast Version: 1.70.0 Build-Depends: boost-align, boost-asio, boost-assert, boost-bind, boost-config, boost-container, boost-core, boost-endian, boost-intrusive, boost-logic, boost-mp11, boost-optional, boost-smart-ptr, boost-static-assert, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/beast Description: Boost beast module diff --git a/ports/boost-bimap/CONTROL b/ports/boost-bimap/CONTROL index 4f4ea28d09f176..681ea87f24b571 100644 --- a/ports/boost-bimap/CONTROL +++ b/ports/boost-bimap/CONTROL @@ -2,4 +2,5 @@ Source: boost-bimap Version: 1.70.0 Build-Depends: boost-concept-check, boost-config, boost-container-hash, boost-functional, boost-iterator, boost-lambda, boost-mpl, boost-multi-index, boost-preprocessor, boost-property-map, boost-serialization, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/bimap Description: Boost bimap module diff --git a/ports/boost-bind/CONTROL b/ports/boost-bind/CONTROL index fa0f4cb573579f..93418102fd2e31 100644 --- a/ports/boost-bind/CONTROL +++ b/ports/boost-bind/CONTROL @@ -2,4 +2,5 @@ Source: boost-bind Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-detail, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/bind Description: Boost bind module diff --git a/ports/boost-build/CONTROL b/ports/boost-build/CONTROL index a2a96648ecee3e..ce5473df572991 100644 --- a/ports/boost-build/CONTROL +++ b/ports/boost-build/CONTROL @@ -1,3 +1,4 @@ Source: boost-build Version: 1.70.0-1 +Homepage: https://github.com/boostorg/build Description: Boost.Build diff --git a/ports/boost-callable-traits/CONTROL b/ports/boost-callable-traits/CONTROL index ac0c45c3b5dbf8..af030d66fe3358 100644 --- a/ports/boost-callable-traits/CONTROL +++ b/ports/boost-callable-traits/CONTROL @@ -2,4 +2,5 @@ Source: boost-callable-traits Version: 1.70.0 Build-Depends: boost-vcpkg-helpers +Homepage: https://github.com/boostorg/callable_traits Description: Boost callable_traits module diff --git a/ports/boost-chrono/CONTROL b/ports/boost-chrono/CONTROL index 6992e72d9d9c77..f2a630bb322a85 100644 --- a/ports/boost-chrono/CONTROL +++ b/ports/boost-chrono/CONTROL @@ -2,4 +2,5 @@ Source: boost-chrono Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-integer, boost-modular-build-helper, boost-move, boost-mpl, boost-predef, boost-ratio, boost-static-assert, boost-system, boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/chrono Description: Boost chrono module diff --git a/ports/boost-circular-buffer/CONTROL b/ports/boost-circular-buffer/CONTROL index 8119f6f86675f9..aa6d7121764d5e 100644 --- a/ports/boost-circular-buffer/CONTROL +++ b/ports/boost-circular-buffer/CONTROL @@ -2,4 +2,5 @@ Source: boost-circular-buffer Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-move, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/circular_buffer Description: Boost circular_buffer module diff --git a/ports/boost-compatibility/CONTROL b/ports/boost-compatibility/CONTROL index d3465c69fbf765..12d325b0680504 100644 --- a/ports/boost-compatibility/CONTROL +++ b/ports/boost-compatibility/CONTROL @@ -2,4 +2,5 @@ Source: boost-compatibility Version: 1.70.0 Build-Depends: boost-vcpkg-helpers +Homepage: https://github.com/boostorg/compatibility Description: Boost compatibility module diff --git a/ports/boost-compute/CONTROL b/ports/boost-compute/CONTROL index a4c5168b3de120..04534face9b945 100644 --- a/ports/boost-compute/CONTROL +++ b/ports/boost-compute/CONTROL @@ -2,4 +2,5 @@ Source: boost-compute Version: 1.70.0 Build-Depends: boost-algorithm, boost-array, boost-assert, boost-chrono, boost-config, boost-core, boost-filesystem (!uwp), boost-function, boost-function-types, boost-fusion, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-preprocessor, boost-property-tree, boost-proto, boost-range, boost-smart-ptr, boost-static-assert, boost-thread (!arm), boost-throw-exception, boost-tuple, boost-typeof, boost-type-traits, boost-utility, boost-uuid, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/compute Description: Boost compute module diff --git a/ports/boost-concept-check/CONTROL b/ports/boost-concept-check/CONTROL index d198dcec40df24..ca012575dd97d9 100644 --- a/ports/boost-concept-check/CONTROL +++ b/ports/boost-concept-check/CONTROL @@ -2,4 +2,5 @@ Source: boost-concept-check Version: 1.70.0 Build-Depends: boost-config, boost-preprocessor, boost-static-assert, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/concept_check Description: Boost concept_check module diff --git a/ports/boost-config/CONTROL b/ports/boost-config/CONTROL index b1b30fb3639b01..1d680a096e4413 100644 --- a/ports/boost-config/CONTROL +++ b/ports/boost-config/CONTROL @@ -2,4 +2,5 @@ Source: boost-config Version: 1.70.0 Build-Depends: boost-compatibility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/config Description: Boost config module diff --git a/ports/boost-container/CONTROL b/ports/boost-container/CONTROL index fa5d4f8f9ba91b..b96609d6a607ce 100644 --- a/ports/boost-container/CONTROL +++ b/ports/boost-container/CONTROL @@ -2,4 +2,5 @@ Source: boost-container Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-config, boost-container-hash, boost-core, boost-integer, boost-intrusive, boost-modular-build-helper, boost-move, boost-static-assert, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/container Description: Boost container module diff --git a/ports/boost-context/CONTROL b/ports/boost-context/CONTROL index 493f018e06e60f..8e476df79cb605 100644 --- a/ports/boost-context/CONTROL +++ b/ports/boost-context/CONTROL @@ -2,4 +2,5 @@ Source: boost-context Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-integer, boost-modular-build-helper, boost-pool, boost-predef, boost-smart-ptr, boost-thread (!arm), boost-vcpkg-helpers +Homepage: https://github.com/boostorg/context Description: Boost context module diff --git a/ports/boost-conversion/CONTROL b/ports/boost-conversion/CONTROL index 2d1fdf17aad7f3..194ae53474c118 100644 --- a/ports/boost-conversion/CONTROL +++ b/ports/boost-conversion/CONTROL @@ -2,4 +2,5 @@ Source: boost-conversion Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-throw-exception, boost-typeof, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/conversion Description: Boost conversion module diff --git a/ports/boost-convert/CONTROL b/ports/boost-convert/CONTROL index 33fa90d5045133..a21fc8f537a51d 100644 --- a/ports/boost-convert/CONTROL +++ b/ports/boost-convert/CONTROL @@ -2,4 +2,5 @@ Source: boost-convert Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-function-types, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-parameter, boost-range, boost-spirit, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/convert Description: Boost convert module diff --git a/ports/boost-core/CONTROL b/ports/boost-core/CONTROL index 41f16e86490767..af70d8a1422231 100644 --- a/ports/boost-core/CONTROL +++ b/ports/boost-core/CONTROL @@ -2,4 +2,5 @@ Source: boost-core Version: 1.70.0 Build-Depends: boost-config, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/core Description: Boost core module diff --git a/ports/boost-coroutine/CONTROL b/ports/boost-coroutine/CONTROL index c6bc86e945eb5a..5b5db2bdc25199 100644 --- a/ports/boost-coroutine/CONTROL +++ b/ports/boost-coroutine/CONTROL @@ -2,4 +2,5 @@ Source: boost-coroutine Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-config, boost-context (!uwp), boost-detail, boost-exception, boost-integer, boost-modular-build-helper, boost-move, boost-range, boost-system, boost-thread (!arm), boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/coroutine Description: Boost coroutine module diff --git a/ports/boost-coroutine2/CONTROL b/ports/boost-coroutine2/CONTROL index f1679befd7bd44..96706e78aa02de 100644 --- a/ports/boost-coroutine2/CONTROL +++ b/ports/boost-coroutine2/CONTROL @@ -2,4 +2,5 @@ Source: boost-coroutine2 Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-context (!uwp), boost-detail, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/coroutine2 Description: Boost coroutine2 module diff --git a/ports/boost-crc/CONTROL b/ports/boost-crc/CONTROL index 9dc0e2045e07be..33536aafab1310 100644 --- a/ports/boost-crc/CONTROL +++ b/ports/boost-crc/CONTROL @@ -2,4 +2,5 @@ Source: boost-crc Version: 1.70.0 Build-Depends: boost-array, boost-compatibility, boost-config, boost-integer, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/crc Description: Boost crc module diff --git a/ports/boost-date-time/CONTROL b/ports/boost-date-time/CONTROL index e8d85f41430031..2c9a8392f5c8dd 100644 --- a/ports/boost-date-time/CONTROL +++ b/ports/boost-date-time/CONTROL @@ -2,4 +2,5 @@ Source: boost-date-time Version: 1.70.0 Build-Depends: boost-algorithm, boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-integer, boost-io, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-numeric-conversion, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/date_time Description: Boost date_time module diff --git a/ports/boost-detail/CONTROL b/ports/boost-detail/CONTROL index 593adbba9aed2c..0f31662939523d 100644 --- a/ports/boost-detail/CONTROL +++ b/ports/boost-detail/CONTROL @@ -2,4 +2,5 @@ Source: boost-detail Version: 1.70.0 Build-Depends: boost-compatibility, boost-config, boost-preprocessor, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/detail Description: Boost detail module diff --git a/ports/boost-di/CONTROL b/ports/boost-di/CONTROL index 6243b1446f5aa8..d7c9aea416fed4 100644 --- a/ports/boost-di/CONTROL +++ b/ports/boost-di/CONTROL @@ -1,3 +1,4 @@ Source: boost-di Version: 1.1.0 -Description: C++14 Dependency Injection Library. +Homepage: https://github.com/boost-experimental/di +Description: C++14 Dependency Injection Library. \ No newline at end of file diff --git a/ports/boost-disjoint-sets/CONTROL b/ports/boost-disjoint-sets/CONTROL index 6ef6bfbbd1f414..56df8c910e0e15 100644 --- a/ports/boost-disjoint-sets/CONTROL +++ b/ports/boost-disjoint-sets/CONTROL @@ -2,4 +2,5 @@ Source: boost-disjoint-sets Version: 1.70.0 Build-Depends: boost-graph, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/disjoint_sets Description: Boost disjoint_sets module diff --git a/ports/boost-dll/CONTROL b/ports/boost-dll/CONTROL index 702bf37ef3f158..ae2ee519dd3432 100644 --- a/ports/boost-dll/CONTROL +++ b/ports/boost-dll/CONTROL @@ -2,4 +2,5 @@ Source: boost-dll Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-filesystem (!uwp), boost-function, boost-integer, boost-move, boost-mpl, boost-predef, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-throw-exception, boost-type-index, boost-type-traits, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/dll Description: Boost dll module diff --git a/ports/boost-dynamic-bitset/CONTROL b/ports/boost-dynamic-bitset/CONTROL index 86b48d7da44589..c7144e6079fe57 100644 --- a/ports/boost-dynamic-bitset/CONTROL +++ b/ports/boost-dynamic-bitset/CONTROL @@ -2,4 +2,5 @@ Source: boost-dynamic-bitset Version: 1.70.0 Build-Depends: boost-serialization, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/dynamic_bitset Description: Boost dynamic_bitset module diff --git a/ports/boost-endian/CONTROL b/ports/boost-endian/CONTROL index 33afff4cdc0929..a57b0e7dcb5df1 100644 --- a/ports/boost-endian/CONTROL +++ b/ports/boost-endian/CONTROL @@ -2,4 +2,5 @@ Source: boost-endian Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-integer, boost-predef, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/endian Description: Boost endian module diff --git a/ports/boost-exception/CONTROL b/ports/boost-exception/CONTROL index 869b64b78b2131..89927da4570c01 100644 --- a/ports/boost-exception/CONTROL +++ b/ports/boost-exception/CONTROL @@ -2,4 +2,5 @@ Source: boost-exception Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-config, boost-core, boost-modular-build-helper, boost-smart-ptr, boost-tuple, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/exception Description: Boost exception module diff --git a/ports/boost-fiber/CONTROL b/ports/boost-fiber/CONTROL index 5ef6fdd5560e11..2dc4f4e78996c9 100644 --- a/ports/boost-fiber/CONTROL +++ b/ports/boost-fiber/CONTROL @@ -2,4 +2,5 @@ Source: boost-fiber Version: 1.70.0 Build-Depends: boost-algorithm, boost-assert, boost-build, boost-config, boost-context (!uwp), boost-core, boost-detail, boost-filesystem (!uwp), boost-format, boost-intrusive, boost-modular-build-helper, boost-predef, boost-smart-ptr, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/fiber Description: Boost fiber module diff --git a/ports/boost-filesystem/CONTROL b/ports/boost-filesystem/CONTROL index db1233d5744b77..954ab287ac03a4 100644 --- a/ports/boost-filesystem/CONTROL +++ b/ports/boost-filesystem/CONTROL @@ -2,4 +2,5 @@ Source: boost-filesystem Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-io, boost-iterator, boost-modular-build-helper, boost-smart-ptr, boost-system, boost-type-traits, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/filesystem Description: Boost filesystem module diff --git a/ports/boost-flyweight/CONTROL b/ports/boost-flyweight/CONTROL index 491e7a1becfa59..61c80822ffa422 100644 --- a/ports/boost-flyweight/CONTROL +++ b/ports/boost-flyweight/CONTROL @@ -2,4 +2,5 @@ Source: boost-flyweight Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-functional, boost-interprocess, boost-mpl, boost-multi-index, boost-parameter, boost-preprocessor, boost-serialization, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/flyweight Description: Boost flyweight module diff --git a/ports/boost-foreach/CONTROL b/ports/boost-foreach/CONTROL index b168e81c27e5c9..3574b53c86a1ad 100644 --- a/ports/boost-foreach/CONTROL +++ b/ports/boost-foreach/CONTROL @@ -2,4 +2,5 @@ Source: boost-foreach Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-detail, boost-iterator, boost-mpl, boost-range, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/foreach Description: Boost foreach module diff --git a/ports/boost-format/CONTROL b/ports/boost-format/CONTROL index c4f20397b75e9f..689d74729e94ce 100644 --- a/ports/boost-format/CONTROL +++ b/ports/boost-format/CONTROL @@ -2,4 +2,5 @@ Source: boost-format Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-core, boost-detail, boost-optional, boost-smart-ptr, boost-throw-exception, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/format Description: Boost format module diff --git a/ports/boost-function-types/CONTROL b/ports/boost-function-types/CONTROL index d27f00231f4a6c..b71fffba52c50d 100644 --- a/ports/boost-function-types/CONTROL +++ b/ports/boost-function-types/CONTROL @@ -2,4 +2,5 @@ Source: boost-function-types Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-detail, boost-mpl, boost-preprocessor, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/function_types Description: Boost function_types module diff --git a/ports/boost-function/CONTROL b/ports/boost-function/CONTROL index e3b03f35cda50e..310e9b497260d1 100644 --- a/ports/boost-function/CONTROL +++ b/ports/boost-function/CONTROL @@ -2,4 +2,5 @@ Source: boost-function Version: 1.70.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-integer, boost-preprocessor, boost-throw-exception, boost-type-index, boost-typeof, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/function Description: Boost function module diff --git a/ports/boost-functional/CONTROL b/ports/boost-functional/CONTROL index e6628b2ed072bd..138c8c6e37f14f 100644 --- a/ports/boost-functional/CONTROL +++ b/ports/boost-functional/CONTROL @@ -2,4 +2,5 @@ Source: boost-functional Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-iterator, boost-mpl, boost-preprocessor, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/functional Description: Boost functional module diff --git a/ports/boost-fusion/CONTROL b/ports/boost-fusion/CONTROL index c91ce687091c05..28305e0827ddc4 100644 --- a/ports/boost-fusion/CONTROL +++ b/ports/boost-fusion/CONTROL @@ -2,4 +2,5 @@ Source: boost-fusion Version: 1.70.0 Build-Depends: boost-config, boost-container-hash, boost-core, boost-detail, boost-function-types, boost-mpl, boost-preprocessor, boost-static-assert, boost-tuple, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/fusion Description: Boost fusion module diff --git a/ports/boost-geometry/CONTROL b/ports/boost-geometry/CONTROL index 02bab4832786f0..a616793a962b2e 100644 --- a/ports/boost-geometry/CONTROL +++ b/ports/boost-geometry/CONTROL @@ -2,4 +2,5 @@ Source: boost-geometry Version: 1.70.0 Build-Depends: boost-algorithm, boost-array, boost-assert, boost-concept-check, boost-config, boost-container, boost-core, boost-detail, boost-function-types, boost-fusion, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-move, boost-mpl, boost-multiprecision, boost-numeric-conversion, boost-polygon, boost-qvm, boost-range, boost-rational, boost-serialization, boost-smart-ptr, boost-static-assert, boost-thread (!arm), boost-throw-exception, boost-tokenizer, boost-tuple, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/geometry Description: Boost geometry module diff --git a/ports/boost-gil/CONTROL b/ports/boost-gil/CONTROL index 0057978a47a7df..45c378a720af05 100644 --- a/ports/boost-gil/CONTROL +++ b/ports/boost-gil/CONTROL @@ -2,4 +2,5 @@ Source: boost-gil Version: 1.70.0 Build-Depends: boost-assert, boost-concept-check, boost-config, boost-core, boost-filesystem (!uwp), boost-integer, boost-iterator, boost-mpl, boost-numeric-conversion, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/gil Description: Boost gil module diff --git a/ports/boost-graph-parallel/CONTROL b/ports/boost-graph-parallel/CONTROL index 569ca21f95e6b5..f78581dc68c506 100644 --- a/ports/boost-graph-parallel/CONTROL +++ b/ports/boost-graph-parallel/CONTROL @@ -2,4 +2,5 @@ Source: boost-graph-parallel Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-container-hash, boost-detail, boost-dynamic-bitset, boost-filesystem (!uwp), boost-foreach, boost-function, boost-graph, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-property-map, boost-random, boost-serialization, boost-smart-ptr, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/graph_parallel Description: Boost graph_parallel module diff --git a/ports/boost-graph/CONTROL b/ports/boost-graph/CONTROL index d99a2c0133e81a..14d3555ad19aad 100644 --- a/ports/boost-graph/CONTROL +++ b/ports/boost-graph/CONTROL @@ -2,4 +2,5 @@ Source: boost-graph Version: 1.70.0 Build-Depends: boost-algorithm, boost-any, boost-array, boost-assert, boost-bimap, boost-bind, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-container-hash, boost-conversion, boost-core, boost-detail, boost-foreach, boost-function, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-multi-index, boost-optional, boost-parameter, boost-preprocessor, boost-property-map, boost-property-tree, boost-random, boost-range, boost-regex, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-test (!uwp), boost-throw-exception, boost-tti, boost-tuple, boost-typeof, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers, boost-xpressive +Homepage: https://github.com/boostorg/graph Description: Boost graph module diff --git a/ports/boost-hana/CONTROL b/ports/boost-hana/CONTROL index 4d7599dd27921e..26acfb0c13c48c 100644 --- a/ports/boost-hana/CONTROL +++ b/ports/boost-hana/CONTROL @@ -2,4 +2,5 @@ Source: boost-hana Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-fusion, boost-mpl, boost-tuple, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/hana Description: Boost hana module diff --git a/ports/boost-heap/CONTROL b/ports/boost-heap/CONTROL index ff2a65ea383231..f0865f26536156 100644 --- a/ports/boost-heap/CONTROL +++ b/ports/boost-heap/CONTROL @@ -2,4 +2,5 @@ Source: boost-heap Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-bind, boost-concept-check, boost-integer, boost-intrusive, boost-iterator, boost-parameter, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/heap Description: Boost heap module diff --git a/ports/boost-icl/CONTROL b/ports/boost-icl/CONTROL index 213b1a76a973f5..09e77e74476a7c 100644 --- a/ports/boost-icl/CONTROL +++ b/ports/boost-icl/CONTROL @@ -2,4 +2,5 @@ Source: boost-icl Version: 1.70.0 Build-Depends: boost-assert, boost-concept-check, boost-config, boost-container, boost-date-time, boost-detail, boost-iterator, boost-move, boost-mpl, boost-range, boost-rational, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/icl Description: Boost icl module diff --git a/ports/boost-integer/CONTROL b/ports/boost-integer/CONTROL index aadc1e67f7caac..72fe9d83feba91 100644 --- a/ports/boost-integer/CONTROL +++ b/ports/boost-integer/CONTROL @@ -2,4 +2,5 @@ Source: boost-integer Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-core, boost-detail, boost-static-assert, boost-throw-exception, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/integer Description: Boost integer module diff --git a/ports/boost-interprocess/CONTROL b/ports/boost-interprocess/CONTROL index 7ad6c8ef5abca5..d1aebd1e0c756b 100644 --- a/ports/boost-interprocess/CONTROL +++ b/ports/boost-interprocess/CONTROL @@ -2,4 +2,5 @@ Source: boost-interprocess Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-container, boost-core, boost-date-time, boost-detail, boost-integer, boost-intrusive, boost-move, boost-static-assert, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/interprocess Description: Boost interprocess module diff --git a/ports/boost-interval/CONTROL b/ports/boost-interval/CONTROL index 6418e0985f303b..0c74b3e4902228 100644 --- a/ports/boost-interval/CONTROL +++ b/ports/boost-interval/CONTROL @@ -2,4 +2,5 @@ Source: boost-interval Version: 1.70.0 Build-Depends: boost-compatibility, boost-config, boost-logic, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/interval Description: Boost interval module diff --git a/ports/boost-intrusive/CONTROL b/ports/boost-intrusive/CONTROL index 8a12b51aef2b3f..18a831adc04956 100644 --- a/ports/boost-intrusive/CONTROL +++ b/ports/boost-intrusive/CONTROL @@ -2,4 +2,5 @@ Source: boost-intrusive Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-container-hash, boost-core, boost-integer, boost-move, boost-static-assert, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/intrusive Description: Boost intrusive module diff --git a/ports/boost-io/CONTROL b/ports/boost-io/CONTROL index db01201eae4985..aa633c00b8d724 100644 --- a/ports/boost-io/CONTROL +++ b/ports/boost-io/CONTROL @@ -2,4 +2,5 @@ Source: boost-io Version: 1.70.0 Build-Depends: boost-detail, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/io Description: Boost io module diff --git a/ports/boost-iostreams/CONTROL b/ports/boost-iostreams/CONTROL index 84d1448b8b8042..e1dafa33b01d9c 100644 --- a/ports/boost-iostreams/CONTROL +++ b/ports/boost-iostreams/CONTROL @@ -2,4 +2,5 @@ Source: boost-iostreams Version: 1.70.0-1 Build-Depends: boost-assert, boost-bind, boost-build, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-iterator, boost-mpl, boost-numeric-conversion, boost-preprocessor, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, bzip2, liblzma, zlib, zstd +Homepage: https://github.com/boostorg/iostreams Description: Boost iostreams module diff --git a/ports/boost-iterator/CONTROL b/ports/boost-iterator/CONTROL index 5ce5195ae2e4ad..c13a8fdb9eb347 100644 --- a/ports/boost-iterator/CONTROL +++ b/ports/boost-iterator/CONTROL @@ -2,4 +2,5 @@ Source: boost-iterator Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-concept-check, boost-config, boost-conversion, boost-core, boost-detail, boost-function-types, boost-fusion, boost-mpl, boost-optional, boost-smart-ptr, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/iterator Description: Boost iterator module diff --git a/ports/boost-lambda/CONTROL b/ports/boost-lambda/CONTROL index 9cdda01cdd203c..645334323fed29 100644 --- a/ports/boost-lambda/CONTROL +++ b/ports/boost-lambda/CONTROL @@ -2,4 +2,5 @@ Source: boost-lambda Version: 1.70.0 Build-Depends: boost-bind, boost-config, boost-detail, boost-mpl, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/lambda Description: Boost lambda module diff --git a/ports/boost-lexical-cast/CONTROL b/ports/boost-lexical-cast/CONTROL index 3f4c4056bc045c..9ca38af91aed31 100644 --- a/ports/boost-lexical-cast/CONTROL +++ b/ports/boost-lexical-cast/CONTROL @@ -2,4 +2,5 @@ Source: boost-lexical-cast Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-compatibility, boost-config, boost-container, boost-core, boost-detail, boost-integer, boost-numeric-conversion, boost-range, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/lexical_cast Description: Boost lexical_cast module diff --git a/ports/boost-local-function/CONTROL b/ports/boost-local-function/CONTROL index a91ba64993e8df..b00904108d86b5 100644 --- a/ports/boost-local-function/CONTROL +++ b/ports/boost-local-function/CONTROL @@ -2,4 +2,5 @@ Source: boost-local-function Version: 1.70.0 Build-Depends: boost-config, boost-mpl, boost-preprocessor, boost-scope-exit, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/local_function Description: Boost local_function module diff --git a/ports/boost-locale/CONTROL b/ports/boost-locale/CONTROL index 218b75c9775392..d2b5a4e5a9c8c9 100644 --- a/ports/boost-locale/CONTROL +++ b/ports/boost-locale/CONTROL @@ -2,6 +2,7 @@ Source: boost-locale Version: 1.70.0-2 Build-Depends: boost-assert, boost-build, boost-config, boost-function, boost-integer, boost-iterator, boost-modular-build-helper, boost-smart-ptr, boost-static-assert, boost-system, boost-thread, boost-type-traits, boost-unordered, boost-vcpkg-helpers, libiconv (!uwp&!windows) +Homepage: https://github.com/boostorg/locale Description: Boost locale module Feature: icu diff --git a/ports/boost-lockfree/CONTROL b/ports/boost-lockfree/CONTROL index 9a362826f7a0d4..c7346cf6d06535 100644 --- a/ports/boost-lockfree/CONTROL +++ b/ports/boost-lockfree/CONTROL @@ -2,4 +2,5 @@ Source: boost-lockfree Version: 1.70.0 Build-Depends: boost-align, boost-array, boost-assert, boost-atomic, boost-config, boost-core, boost-integer, boost-mpl, boost-parameter, boost-predef, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/lockfree Description: Boost lockfree module diff --git a/ports/boost-log/CONTROL b/ports/boost-log/CONTROL index 211cd892e7c4e6..bb1ce39549340d 100644 --- a/ports/boost-log/CONTROL +++ b/ports/boost-log/CONTROL @@ -2,4 +2,5 @@ Source: boost-log Version: 1.70.0 Build-Depends: boost-align, boost-array, boost-asio, boost-assert, boost-atomic, boost-bind, boost-build, boost-compatibility, boost-config, boost-container, boost-core, boost-date-time, boost-detail, boost-exception, boost-filesystem (!uwp), boost-function-types, boost-fusion, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iterator, boost-lexical-cast, boost-locale (!uwp), boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-parameter, boost-phoenix, boost-predef, boost-preprocessor, boost-property-tree, boost-proto, boost-random, boost-range, boost-regex, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-thread (!arm), boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi, boost-xpressive +Homepage: https://github.com/boostorg/log Description: Boost log module diff --git a/ports/boost-logic/CONTROL b/ports/boost-logic/CONTROL index 4bac34876c6f3d..7d6f02fbbffd0b 100644 --- a/ports/boost-logic/CONTROL +++ b/ports/boost-logic/CONTROL @@ -2,4 +2,5 @@ Source: boost-logic Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-detail, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/logic Description: Boost logic module diff --git a/ports/boost-math/CONTROL b/ports/boost-math/CONTROL index 9fb6605b8cd7fc..a1ddd7c94da289 100644 --- a/ports/boost-math/CONTROL +++ b/ports/boost-math/CONTROL @@ -2,4 +2,5 @@ Source: boost-math Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-atomic, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-fusion, boost-integer, boost-lambda, boost-lexical-cast, boost-modular-build-helper, boost-mpl, boost-multiprecision, boost-predef, boost-range, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/math Description: Boost math module diff --git a/ports/boost-metaparse/CONTROL b/ports/boost-metaparse/CONTROL index 003fbb35958033..d5fd144287ced1 100644 --- a/ports/boost-metaparse/CONTROL +++ b/ports/boost-metaparse/CONTROL @@ -2,4 +2,5 @@ Source: boost-metaparse Version: 1.70.0 Build-Depends: boost-config, boost-mpl, boost-predef, boost-preprocessor, boost-static-assert, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/metaparse Description: Boost metaparse module diff --git a/ports/boost-move/CONTROL b/ports/boost-move/CONTROL index c8b221057972ac..90b2f4a60a127d 100644 --- a/ports/boost-move/CONTROL +++ b/ports/boost-move/CONTROL @@ -2,4 +2,5 @@ Source: boost-move Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-integer, boost-static-assert, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/move Description: Boost move module diff --git a/ports/boost-mp11/CONTROL b/ports/boost-mp11/CONTROL index ca170f489dc3d6..3ae9d9e6ff9dc4 100644 --- a/ports/boost-mp11/CONTROL +++ b/ports/boost-mp11/CONTROL @@ -2,4 +2,5 @@ Source: boost-mp11 Version: 1.70.0 Build-Depends: boost-vcpkg-helpers +Homepage: https://github.com/boostorg/mp11 Description: Boost mp11 module diff --git a/ports/boost-mpi/CONTROL b/ports/boost-mpi/CONTROL index b5b194de2e1826..3e788cd09aeb3b 100644 --- a/ports/boost-mpi/CONTROL +++ b/ports/boost-mpi/CONTROL @@ -2,4 +2,5 @@ Source: boost-mpi Version: 1.70.0-1 Build-Depends: boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-foreach, boost-function, boost-graph, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-optional, boost-property-map, boost-python (windows), boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, msmpi +Homepage: https://github.com/boostorg/mpi Description: Boost mpi module diff --git a/ports/boost-mpl/CONTROL b/ports/boost-mpl/CONTROL index 134fc468d24e1d..d29e93e4d51358 100644 --- a/ports/boost-mpl/CONTROL +++ b/ports/boost-mpl/CONTROL @@ -2,4 +2,5 @@ Source: boost-mpl Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-detail, boost-predef, boost-preprocessor, boost-static-assert, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/mpl Description: Boost mpl module diff --git a/ports/boost-msm/CONTROL b/ports/boost-msm/CONTROL index a3a1749c57c51f..6f9e70094d8d91 100644 --- a/ports/boost-msm/CONTROL +++ b/ports/boost-msm/CONTROL @@ -2,4 +2,5 @@ Source: boost-msm Version: 1.70.0 Build-Depends: boost-any, boost-assert, boost-bind, boost-circular-buffer, boost-config, boost-core, boost-detail, boost-function, boost-fusion, boost-mpl, boost-parameter, boost-phoenix, boost-preprocessor, boost-proto, boost-serialization, boost-tuple, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/msm Description: Boost msm module diff --git a/ports/boost-multi-array/CONTROL b/ports/boost-multi-array/CONTROL index 96721b8c7972e9..6250f68add8450 100644 --- a/ports/boost-multi-array/CONTROL +++ b/ports/boost-multi-array/CONTROL @@ -2,4 +2,5 @@ Source: boost-multi-array Version: 1.70.0 Build-Depends: boost-compatibility, boost-config, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/multi_array Description: Boost multi_array module diff --git a/ports/boost-multi-index/CONTROL b/ports/boost-multi-index/CONTROL index 2abdffb006ff23..19a250e3e91c6e 100644 --- a/ports/boost-multi-index/CONTROL +++ b/ports/boost-multi-index/CONTROL @@ -2,4 +2,5 @@ Source: boost-multi-index Version: 1.70.0 Build-Depends: boost-assert, boost-bind, boost-compatibility, boost-config, boost-container-hash, boost-core, boost-detail, boost-foreach, boost-functional, boost-integer, boost-iterator, boost-move, boost-mpl, boost-preprocessor, boost-serialization, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/multi_index Description: Boost multi_index module diff --git a/ports/boost-multiprecision/CONTROL b/ports/boost-multiprecision/CONTROL index 2c378325437f55..49d3fb4f012f80 100644 --- a/ports/boost-multiprecision/CONTROL +++ b/ports/boost-multiprecision/CONTROL @@ -2,4 +2,5 @@ Source: boost-multiprecision Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-config, boost-container-hash, boost-core, boost-functional, boost-integer, boost-lexical-cast, boost-mpl, boost-predef, boost-rational, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/multiprecision Description: Boost multiprecision module diff --git a/ports/boost-numeric-conversion/CONTROL b/ports/boost-numeric-conversion/CONTROL index 9f73c1b5717613..702c4f5de2df87 100644 --- a/ports/boost-numeric-conversion/CONTROL +++ b/ports/boost-numeric-conversion/CONTROL @@ -2,4 +2,5 @@ Source: boost-numeric-conversion Version: 1.70.0 Build-Depends: boost-compatibility, boost-config, boost-conversion, boost-core, boost-detail, boost-integer, boost-preprocessor, boost-throw-exception, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/numeric_conversion Description: Boost numeric_conversion module diff --git a/ports/boost-odeint/CONTROL b/ports/boost-odeint/CONTROL index 840af1954245d4..a4c0381f768838 100644 --- a/ports/boost-odeint/CONTROL +++ b/ports/boost-odeint/CONTROL @@ -2,4 +2,5 @@ Source: boost-odeint Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-bind, boost-compute, boost-config, boost-core, boost-function, boost-fusion, boost-iterator, boost-math, boost-mpl, boost-multi-array, boost-preprocessor, boost-range, boost-static-assert, boost-throw-exception, boost-type-traits, boost-units, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/odeint Description: Boost odeint module diff --git a/ports/boost-optional/CONTROL b/ports/boost-optional/CONTROL index 7ed366b76166b0..b97a5df25411a5 100644 --- a/ports/boost-optional/CONTROL +++ b/ports/boost-optional/CONTROL @@ -2,4 +2,5 @@ Source: boost-optional Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-move, boost-predef, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/optional Description: Boost optional module diff --git a/ports/boost-parameter/CONTROL b/ports/boost-parameter/CONTROL index bddf7d0fbbdedf..0e11e2e8bf9d43 100644 --- a/ports/boost-parameter/CONTROL +++ b/ports/boost-parameter/CONTROL @@ -2,4 +2,5 @@ Source: boost-parameter Version: 1.70.0 Build-Depends: boost-config, boost-detail, boost-mpl, boost-optional, boost-preprocessor, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/parameter Description: Boost parameter module diff --git a/ports/boost-phoenix/CONTROL b/ports/boost-phoenix/CONTROL index 0eefaa0d969dad..4ef5e2b67b0300 100644 --- a/ports/boost-phoenix/CONTROL +++ b/ports/boost-phoenix/CONTROL @@ -2,4 +2,5 @@ Source: boost-phoenix Version: 1.70.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-function, boost-fusion, boost-mpl, boost-predef, boost-preprocessor, boost-proto, boost-range, boost-smart-ptr, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/phoenix Description: Boost phoenix module diff --git a/ports/boost-poly-collection/CONTROL b/ports/boost-poly-collection/CONTROL index 763d6ac193114e..eccbe48353c5f7 100644 --- a/ports/boost-poly-collection/CONTROL +++ b/ports/boost-poly-collection/CONTROL @@ -2,4 +2,5 @@ Source: boost-poly-collection Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-iterator, boost-mp11, boost-mpl, boost-type-erasure (!arm), boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/poly_collection Description: Boost poly_collection module diff --git a/ports/boost-polygon/CONTROL b/ports/boost-polygon/CONTROL index 026765118ea02a..1f0f0bc1217bd7 100644 --- a/ports/boost-polygon/CONTROL +++ b/ports/boost-polygon/CONTROL @@ -2,4 +2,5 @@ Source: boost-polygon Version: 1.70.0 Build-Depends: boost-config, boost-integer, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/polygon Description: Boost polygon module diff --git a/ports/boost-pool/CONTROL b/ports/boost-pool/CONTROL index 3d6c00d2bf8079..95fff6e7d79d61 100644 --- a/ports/boost-pool/CONTROL +++ b/ports/boost-pool/CONTROL @@ -2,4 +2,5 @@ Source: boost-pool Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-detail, boost-integer, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/pool Description: Boost pool module diff --git a/ports/boost-predef/CONTROL b/ports/boost-predef/CONTROL index 8853e304a41c98..018f5737c45af2 100644 --- a/ports/boost-predef/CONTROL +++ b/ports/boost-predef/CONTROL @@ -2,4 +2,5 @@ Source: boost-predef Version: 1.70.0 Build-Depends: boost-vcpkg-helpers +Homepage: https://github.com/boostorg/predef Description: Boost predef module diff --git a/ports/boost-preprocessor/CONTROL b/ports/boost-preprocessor/CONTROL index 0d90c853b63b3e..6eacdff96315c2 100644 --- a/ports/boost-preprocessor/CONTROL +++ b/ports/boost-preprocessor/CONTROL @@ -2,4 +2,5 @@ Source: boost-preprocessor Version: 1.70.0 Build-Depends: boost-vcpkg-helpers +Homepage: https://github.com/boostorg/preprocessor Description: Boost preprocessor module diff --git a/ports/boost-process/CONTROL b/ports/boost-process/CONTROL index 684f323384870d..36d5b8ca69295a 100644 --- a/ports/boost-process/CONTROL +++ b/ports/boost-process/CONTROL @@ -2,4 +2,5 @@ Source: boost-process Version: 1.70.0 Build-Depends: boost-algorithm, boost-asio, boost-config, boost-core, boost-filesystem (!uwp), boost-fusion, boost-iterator, boost-move, boost-optional, boost-system, boost-tokenizer, boost-type-index, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/process Description: Boost process module diff --git a/ports/boost-program-options/CONTROL b/ports/boost-program-options/CONTROL index 51796a46d0d0d1..25d37164e01bf1 100644 --- a/ports/boost-program-options/CONTROL +++ b/ports/boost-program-options/CONTROL @@ -2,4 +2,5 @@ Source: boost-program-options Version: 1.70.0 Build-Depends: boost-any, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-function, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/program_options Description: Boost program_options module diff --git a/ports/boost-property-map/CONTROL b/ports/boost-property-map/CONTROL index 82f22f739429f3..9592eee2f807d1 100644 --- a/ports/boost-property-map/CONTROL +++ b/ports/boost-property-map/CONTROL @@ -2,4 +2,5 @@ Source: boost-property-map Version: 1.70.0 Build-Depends: boost-any, boost-assert, boost-bind, boost-concept-check, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-multi-index, boost-optional, boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/property_map Description: Boost property_map module diff --git a/ports/boost-property-tree/CONTROL b/ports/boost-property-tree/CONTROL index 9856fa6ff634e3..f896ed5cdb5d47 100644 --- a/ports/boost-property-tree/CONTROL +++ b/ports/boost-property-tree/CONTROL @@ -2,4 +2,5 @@ Source: boost-property-tree Version: 1.70.0 Build-Depends: boost-any, boost-assert, boost-bind, boost-compatibility, boost-config, boost-core, boost-format, boost-iterator, boost-mpl, boost-multi-index, boost-optional, boost-range, boost-serialization, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/property_tree Description: Boost property_tree module diff --git a/ports/boost-proto/CONTROL b/ports/boost-proto/CONTROL index 00b2ca8d4c0fe3..6f16038c2ad1f9 100644 --- a/ports/boost-proto/CONTROL +++ b/ports/boost-proto/CONTROL @@ -2,4 +2,5 @@ Source: boost-proto Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-detail, boost-fusion, boost-mpl, boost-preprocessor, boost-range, boost-static-assert, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/proto Description: Boost proto module diff --git a/ports/boost-ptr-container/CONTROL b/ports/boost-ptr-container/CONTROL index 8250e74e5d41cf..573dd2cedbce96 100644 --- a/ports/boost-ptr-container/CONTROL +++ b/ports/boost-ptr-container/CONTROL @@ -2,4 +2,5 @@ Source: boost-ptr-container Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-circular-buffer, boost-config, boost-core, boost-iterator, boost-mpl, boost-range, boost-serialization, boost-smart-ptr, boost-static-assert, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/ptr_container Description: Boost ptr_container module diff --git a/ports/boost-python/CONTROL b/ports/boost-python/CONTROL index f088b8ec18738f..2dc872ec0997ac 100644 --- a/ports/boost-python/CONTROL +++ b/ports/boost-python/CONTROL @@ -2,4 +2,5 @@ Source: boost-python Version: 1.70.0-1 Build-Depends: boost-bind, boost-compatibility, boost-config, boost-conversion, boost-core, boost-detail, boost-foreach, boost-function, boost-graph, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-numeric-conversion, boost-preprocessor, boost-property-map, boost-smart-ptr, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers, python3 +Homepage: https://github.com/boostorg/python Description: Boost python module diff --git a/ports/boost-qvm/CONTROL b/ports/boost-qvm/CONTROL index 7b338b30bee959..0cdc846b474f26 100644 --- a/ports/boost-qvm/CONTROL +++ b/ports/boost-qvm/CONTROL @@ -2,4 +2,5 @@ Source: boost-qvm Version: 1.70.0 Build-Depends: boost-assert, boost-exception, boost-static-assert, boost-throw-exception, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/qvm Description: Boost qvm module diff --git a/ports/boost-random/CONTROL b/ports/boost-random/CONTROL index f1af030cc21022..a76d33a7b992f5 100644 --- a/ports/boost-random/CONTROL +++ b/ports/boost-random/CONTROL @@ -2,4 +2,5 @@ Source: boost-random Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-dynamic-bitset, boost-integer, boost-io, boost-math, boost-modular-build-helper, boost-mpl, boost-multiprecision, boost-range, boost-static-assert, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/random Description: Boost random module diff --git a/ports/boost-range/CONTROL b/ports/boost-range/CONTROL index 8ba112604de57e..bfb40f155654a4 100644 --- a/ports/boost-range/CONTROL +++ b/ports/boost-range/CONTROL @@ -2,4 +2,5 @@ Source: boost-range Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-concept-check, boost-config, boost-container-hash, boost-core, boost-detail, boost-integer, boost-iterator, boost-mpl, boost-optional, boost-preprocessor, boost-regex, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/range Description: Boost range module diff --git a/ports/boost-ratio/CONTROL b/ports/boost-ratio/CONTROL index 38abf0e8c8e680..ac2e082145f0b1 100644 --- a/ports/boost-ratio/CONTROL +++ b/ports/boost-ratio/CONTROL @@ -2,4 +2,5 @@ Source: boost-ratio Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-integer, boost-mpl, boost-rational, boost-static-assert, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/ratio Description: Boost ratio module diff --git a/ports/boost-rational/CONTROL b/ports/boost-rational/CONTROL index d117dae1865827..9ec2449965d072 100644 --- a/ports/boost-rational/CONTROL +++ b/ports/boost-rational/CONTROL @@ -2,4 +2,5 @@ Source: boost-rational Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-integer, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/rational Description: Boost rational module diff --git a/ports/boost-regex/CONTROL b/ports/boost-regex/CONTROL index d10267c3f04119..c5f323543e6778 100644 --- a/ports/boost-regex/CONTROL +++ b/ports/boost-regex/CONTROL @@ -2,6 +2,7 @@ Source: boost-regex Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-container-hash, boost-core, boost-detail, boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-predef, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/regex Description: Boost regex module Feature: icu diff --git a/ports/boost-scope-exit/CONTROL b/ports/boost-scope-exit/CONTROL index d72178eae28370..0d088b73c21f11 100644 --- a/ports/boost-scope-exit/CONTROL +++ b/ports/boost-scope-exit/CONTROL @@ -2,4 +2,5 @@ Source: boost-scope-exit Version: 1.70.0 Build-Depends: boost-config, boost-detail, boost-function, boost-preprocessor, boost-typeof, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/scope_exit Description: Boost scope_exit module diff --git a/ports/boost-serialization/CONTROL b/ports/boost-serialization/CONTROL index 911fe09688c3ac..4d24cae11790cc 100644 --- a/ports/boost-serialization/CONTROL +++ b/ports/boost-serialization/CONTROL @@ -2,4 +2,5 @@ Source: boost-serialization Version: 1.70.0 Build-Depends: boost-array, boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-io, boost-iterator, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-preprocessor, boost-smart-ptr, boost-spirit, boost-static-assert, boost-type-traits, boost-unordered, boost-utility, boost-variant, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/serialization Description: Boost serialization module diff --git a/ports/boost-signals/CONTROL b/ports/boost-signals/CONTROL index 10f1465f30d731..5b58c978c09e90 100644 --- a/ports/boost-signals/CONTROL +++ b/ports/boost-signals/CONTROL @@ -2,4 +2,5 @@ Source: boost-signals Version: 1.68.0 Build-Depends: boost-any, boost-build, boost-config, boost-core, boost-function, boost-iterator, boost-modular-build-helper, boost-optional, boost-smart-ptr, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/signals Description: Boost signals module diff --git a/ports/boost-signals2/CONTROL b/ports/boost-signals2/CONTROL index b6ac55cf8e092a..d4b23677801cf9 100644 --- a/ports/boost-signals2/CONTROL +++ b/ports/boost-signals2/CONTROL @@ -2,4 +2,5 @@ Source: boost-signals2 Version: 1.70.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-function, boost-iterator, boost-mpl, boost-multi-index, boost-optional, boost-parameter, boost-predef, boost-preprocessor, boost-smart-ptr, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/signals2 Description: Boost signals2 module diff --git a/ports/boost-smart-ptr/CONTROL b/ports/boost-smart-ptr/CONTROL index d5167c23114cb1..dab71c99eb6bda 100644 --- a/ports/boost-smart-ptr/CONTROL +++ b/ports/boost-smart-ptr/CONTROL @@ -2,4 +2,5 @@ Source: boost-smart-ptr Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-integer, boost-move, boost-predef, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/smart_ptr Description: Boost smart_ptr module diff --git a/ports/boost-sort/CONTROL b/ports/boost-sort/CONTROL index 1aec3ee6831e46..db9a38674b4990 100644 --- a/ports/boost-sort/CONTROL +++ b/ports/boost-sort/CONTROL @@ -2,4 +2,5 @@ Source: boost-sort Version: 1.70.0 Build-Depends: boost-integer, boost-range, boost-serialization, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/sort Description: Boost sort module diff --git a/ports/boost-spirit/CONTROL b/ports/boost-spirit/CONTROL index e70aedd34d0d08..89644cb6184bf5 100644 --- a/ports/boost-spirit/CONTROL +++ b/ports/boost-spirit/CONTROL @@ -2,4 +2,5 @@ Source: boost-spirit Version: 1.70.0 Build-Depends: boost-algorithm, boost-array, boost-assert, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-endian, boost-filesystem (!uwp), boost-foreach, boost-function, boost-function-types, boost-fusion, boost-integer, boost-io, boost-iostreams (!uwp), boost-iterator, boost-lexical-cast, boost-locale (!uwp), boost-math, boost-move, boost-mpl, boost-optional, boost-phoenix, boost-pool, boost-predef, boost-preprocessor, boost-proto, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-thread (!arm), boost-throw-exception, boost-tti, boost-typeof, boost-type-traits, boost-unordered, boost-utility, boost-variant, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/spirit Description: Boost spirit module diff --git a/ports/boost-stacktrace/CONTROL b/ports/boost-stacktrace/CONTROL index 05c7148859b3a9..d1b709934b4ccb 100644 --- a/ports/boost-stacktrace/CONTROL +++ b/ports/boost-stacktrace/CONTROL @@ -2,4 +2,5 @@ Source: boost-stacktrace Version: 1.70.0 Build-Depends: boost-array, boost-build, boost-config, boost-container-hash, boost-core, boost-modular-build-helper, boost-predef, boost-static-assert, boost-type-traits, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/stacktrace Description: Boost stacktrace module diff --git a/ports/boost-statechart/CONTROL b/ports/boost-statechart/CONTROL index 9266a233be1146..242256a8c66199 100644 --- a/ports/boost-statechart/CONTROL +++ b/ports/boost-statechart/CONTROL @@ -2,4 +2,5 @@ Source: boost-statechart Version: 1.70.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-conversion, boost-core, boost-detail, boost-function, boost-mpl, boost-smart-ptr, boost-static-assert, boost-thread (!arm), boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/statechart Description: Boost statechart module diff --git a/ports/boost-static-assert/CONTROL b/ports/boost-static-assert/CONTROL index b3ffbb5e73d59e..0c8f3a53220a0b 100644 --- a/ports/boost-static-assert/CONTROL +++ b/ports/boost-static-assert/CONTROL @@ -2,4 +2,5 @@ Source: boost-static-assert Version: 1.70.0 Build-Depends: boost-config, boost-detail, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/static_assert Description: Boost static_assert module diff --git a/ports/boost-system/CONTROL b/ports/boost-system/CONTROL index d83a45a429d900..79089afd9215f0 100644 --- a/ports/boost-system/CONTROL +++ b/ports/boost-system/CONTROL @@ -2,4 +2,5 @@ Source: boost-system Version: 1.70.0 Build-Depends: boost-build, boost-config, boost-integer, boost-modular-build-helper, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/system Description: Boost system module diff --git a/ports/boost-test/CONTROL b/ports/boost-test/CONTROL index 9d86dfee28d748..e1c83b08a2c34b 100644 --- a/ports/boost-test/CONTROL +++ b/ports/boost-test/CONTROL @@ -2,4 +2,5 @@ Source: boost-test Version: 1.70.0-2 Build-Depends: boost-algorithm, boost-assert, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-exception, boost-function, boost-integer, boost-io, boost-iterator, boost-modular-build-helper, boost-mpl, boost-numeric-conversion, boost-optional, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/test Description: Boost test module diff --git a/ports/boost-thread/CONTROL b/ports/boost-thread/CONTROL index 41f0d4066c11b5..e38b6f31af7552 100644 --- a/ports/boost-thread/CONTROL +++ b/ports/boost-thread/CONTROL @@ -2,4 +2,5 @@ Source: boost-thread Version: 1.70.0-1 Build-Depends: boost-algorithm, boost-assert, boost-atomic, boost-bind, boost-build, boost-chrono, boost-concept-check, boost-config, boost-container, boost-container-hash, boost-core, boost-date-time, boost-detail, boost-exception, boost-function, boost-integer, boost-intrusive, boost-io, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-predef, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-system, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/thread Description: Boost thread module diff --git a/ports/boost-throw-exception/CONTROL b/ports/boost-throw-exception/CONTROL index b6cd1641abd96a..31502e60cf5a0b 100644 --- a/ports/boost-throw-exception/CONTROL +++ b/ports/boost-throw-exception/CONTROL @@ -2,4 +2,5 @@ Source: boost-throw-exception Version: 1.70.0 Build-Depends: boost-config, boost-detail, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/throw_exception Description: Boost throw_exception module diff --git a/ports/boost-timer/CONTROL b/ports/boost-timer/CONTROL index 271674b0360aab..213ccc19c85a32 100644 --- a/ports/boost-timer/CONTROL +++ b/ports/boost-timer/CONTROL @@ -2,4 +2,5 @@ Source: boost-timer Version: 1.70.0 Build-Depends: boost-build, boost-chrono, boost-compatibility, boost-config, boost-core, boost-integer, boost-io, boost-modular-build-helper, boost-predef, boost-system, boost-throw-exception, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/timer Description: Boost timer module diff --git a/ports/boost-tokenizer/CONTROL b/ports/boost-tokenizer/CONTROL index b223b9231799e0..3b7497e82091d0 100644 --- a/ports/boost-tokenizer/CONTROL +++ b/ports/boost-tokenizer/CONTROL @@ -2,4 +2,5 @@ Source: boost-tokenizer Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-detail, boost-iterator, boost-mpl, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/tokenizer Description: Boost tokenizer module diff --git a/ports/boost-tti/CONTROL b/ports/boost-tti/CONTROL index 4f6e98679f8488..f284303ea9255e 100644 --- a/ports/boost-tti/CONTROL +++ b/ports/boost-tti/CONTROL @@ -2,4 +2,5 @@ Source: boost-tti Version: 1.70.0 Build-Depends: boost-config, boost-detail, boost-function-types, boost-mpl, boost-preprocessor, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/tti Description: Boost tti module diff --git a/ports/boost-tuple/CONTROL b/ports/boost-tuple/CONTROL index 2b64a0472b4fe3..ba38ab26726663 100644 --- a/ports/boost-tuple/CONTROL +++ b/ports/boost-tuple/CONTROL @@ -2,4 +2,5 @@ Source: boost-tuple Version: 1.70.0 Build-Depends: boost-config, boost-core, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/tuple Description: Boost tuple module diff --git a/ports/boost-type-erasure/CONTROL b/ports/boost-type-erasure/CONTROL index f9fc4e24faeaa5..d9090d787ee0f9 100644 --- a/ports/boost-type-erasure/CONTROL +++ b/ports/boost-type-erasure/CONTROL @@ -2,4 +2,5 @@ Source: boost-type-erasure Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-fusion, boost-iterator, boost-modular-build-helper, boost-mp11, boost-mpl, boost-preprocessor, boost-smart-ptr, boost-thread (!arm), boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-vmd +Homepage: https://github.com/boostorg/type_erasure Description: Boost type_erasure module diff --git a/ports/boost-type-index/CONTROL b/ports/boost-type-index/CONTROL index 542bd4ea683346..4f52f63681b6b4 100644 --- a/ports/boost-type-index/CONTROL +++ b/ports/boost-type-index/CONTROL @@ -2,4 +2,5 @@ Source: boost-type-index Version: 1.70.0 Build-Depends: boost-config, boost-container-hash, boost-core, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/type_index Description: Boost type_index module diff --git a/ports/boost-type-traits/CONTROL b/ports/boost-type-traits/CONTROL index 825b9e87d64540..eeacc173677ce8 100644 --- a/ports/boost-type-traits/CONTROL +++ b/ports/boost-type-traits/CONTROL @@ -2,4 +2,5 @@ Source: boost-type-traits Version: 1.70.0-1 Build-Depends: boost-config, boost-detail, boost-static-assert, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/type_traits Description: Boost type_traits module diff --git a/ports/boost-typeof/CONTROL b/ports/boost-typeof/CONTROL index fbf241061b5925..aeca892fe15041 100644 --- a/ports/boost-typeof/CONTROL +++ b/ports/boost-typeof/CONTROL @@ -2,4 +2,5 @@ Source: boost-typeof Version: 1.70.0 Build-Depends: boost-config, boost-preprocessor, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/typeof Description: Boost typeof module diff --git a/ports/boost-ublas/CONTROL b/ports/boost-ublas/CONTROL index 0a801349ef178a..319b99bed394b5 100644 --- a/ports/boost-ublas/CONTROL +++ b/ports/boost-ublas/CONTROL @@ -2,4 +2,5 @@ Source: boost-ublas Version: 1.70.0 Build-Depends: boost-compute, boost-concept-check, boost-config, boost-core, boost-iterator, boost-mpl, boost-range, boost-serialization, boost-smart-ptr, boost-static-assert, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/ublas Description: Boost ublas module diff --git a/ports/boost-units/CONTROL b/ports/boost-units/CONTROL index ad757315d4c3e0..8e1fe4a8acf670 100644 --- a/ports/boost-units/CONTROL +++ b/ports/boost-units/CONTROL @@ -2,4 +2,5 @@ Source: boost-units Version: 1.70.0 Build-Depends: boost-assert, boost-config, boost-core, boost-integer, boost-io, boost-lambda, boost-math, boost-mpl, boost-preprocessor, boost-serialization, boost-static-assert, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/units Description: Boost units module diff --git a/ports/boost-unordered/CONTROL b/ports/boost-unordered/CONTROL index 518e7ac5e1e695..d128e273fa5701 100644 --- a/ports/boost-unordered/CONTROL +++ b/ports/boost-unordered/CONTROL @@ -2,4 +2,5 @@ Source: boost-unordered Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-container, boost-container-hash, boost-core, boost-detail, boost-functional, boost-move, boost-predef, boost-preprocessor, boost-smart-ptr, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/unordered Description: Boost unordered module diff --git a/ports/boost-utility/CONTROL b/ports/boost-utility/CONTROL index f1781fafce0604..7f54df7de0e021 100644 --- a/ports/boost-utility/CONTROL +++ b/ports/boost-utility/CONTROL @@ -2,4 +2,5 @@ Source: boost-utility Version: 1.70.0 Build-Depends: boost-config, boost-container-hash, boost-core, boost-detail, boost-integer, boost-preprocessor, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/utility Description: Boost utility module diff --git a/ports/boost-uuid/CONTROL b/ports/boost-uuid/CONTROL index a20805a971c4b6..efc4b3094a26d1 100644 --- a/ports/boost-uuid/CONTROL +++ b/ports/boost-uuid/CONTROL @@ -2,4 +2,5 @@ Source: boost-uuid Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-container-hash, boost-core, boost-integer, boost-io, boost-move, boost-numeric-conversion, boost-predef, boost-random, boost-serialization, boost-static-assert, boost-throw-exception, boost-tti, boost-type-traits, boost-vcpkg-helpers, boost-winapi +Homepage: https://github.com/boostorg/uuid Description: Boost uuid module diff --git a/ports/boost-variant/CONTROL b/ports/boost-variant/CONTROL index 45e40a9b8c6aac..395d00758de3ec 100644 --- a/ports/boost-variant/CONTROL +++ b/ports/boost-variant/CONTROL @@ -2,4 +2,5 @@ Source: boost-variant Version: 1.69.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-move, boost-mpl, boost-preprocessor, boost-static-assert, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/variant Description: Boost variant module diff --git a/ports/boost-vmd/CONTROL b/ports/boost-vmd/CONTROL index b274887075f00a..6c2bda21a43f3d 100644 --- a/ports/boost-vmd/CONTROL +++ b/ports/boost-vmd/CONTROL @@ -2,4 +2,5 @@ Source: boost-vmd Version: 1.70.0 Build-Depends: boost-preprocessor, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/vmd Description: Boost vmd module diff --git a/ports/boost-wave/CONTROL b/ports/boost-wave/CONTROL index 32235abb36e77b..279eb57006a501 100644 --- a/ports/boost-wave/CONTROL +++ b/ports/boost-wave/CONTROL @@ -2,4 +2,5 @@ Source: boost-wave Version: 1.70.0 Build-Depends: boost-assert, boost-build, boost-concept-check, boost-config, boost-core, boost-detail, boost-filesystem (!uwp), boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-multi-index, boost-pool, boost-preprocessor, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/wave Description: Boost wave module diff --git a/ports/boost-winapi/CONTROL b/ports/boost-winapi/CONTROL index 64912f1e3c2124..985612d10192da 100644 --- a/ports/boost-winapi/CONTROL +++ b/ports/boost-winapi/CONTROL @@ -2,4 +2,5 @@ Source: boost-winapi Version: 1.70.0 Build-Depends: boost-config, boost-predef, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/winapi Description: Boost winapi module diff --git a/ports/boost-xpressive/CONTROL b/ports/boost-xpressive/CONTROL index f0d61399f8ede1..d2960cf5b93b6d 100644 --- a/ports/boost-xpressive/CONTROL +++ b/ports/boost-xpressive/CONTROL @@ -2,4 +2,5 @@ Source: boost-xpressive Version: 1.70.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-conversion, boost-core, boost-detail, boost-exception, boost-fusion, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-numeric-conversion, boost-optional, boost-preprocessor, boost-proto, boost-range, boost-smart-ptr, boost-spirit, boost-static-assert, boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Homepage: https://github.com/boostorg/xpressive Description: Boost xpressive module diff --git a/ports/boost/CONTROL b/ports/boost/CONTROL index b97b99f9a4b007..54dfc3c7a643c4 100644 --- a/ports/boost/CONTROL +++ b/ports/boost/CONTROL @@ -1,6 +1,7 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost Version: 1.70.0 +Homepage: https://boost.org Description: Peer-reviewed portable C++ source libraries Build-Depends: boost-accumulators, boost-algorithm, boost-align, boost-any, boost-array, boost-asio, boost-assert, boost-assign, boost-atomic, boost-beast, boost-bimap, boost-bind, boost-callable-traits, boost-chrono, boost-circular-buffer, boost-compatibility, boost-compute, boost-concept-check, boost-config, boost-container, boost-container-hash, boost-context (!uwp), boost-contract (!arm), boost-conversion, boost-convert, boost-core, boost-coroutine (!uwp), boost-coroutine2, boost-crc, boost-date-time, boost-detail, boost-disjoint-sets, boost-dll, boost-dynamic-bitset, boost-endian, boost-exception, boost-fiber (windows), boost-filesystem (!uwp), boost-flyweight, boost-foreach, boost-format, boost-function, boost-functional, boost-function-types, boost-fusion, boost-geometry, boost-gil, boost-graph, boost-graph-parallel, boost-hana, boost-heap, boost-histogram, boost-hof, boost-icl, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iostreams (!uwp), boost-iterator, boost-lambda, boost-lexical-cast, boost-locale (!uwp), boost-local-function, boost-lockfree, boost-log (!uwp), boost-logic, boost-math, boost-metaparse, boost-move, boost-mp11, boost-mpl, boost-msm, boost-multiprecision, boost-multi-array, boost-multi-index, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas, boost-safe-numerics, boost-optional, boost-outcome, boost-parameter, boost-parameter-python (windows), boost-phoenix, boost-polygon, boost-poly-collection, boost-pool, boost-predef, boost-preprocessor, boost-process, boost-program-options, boost-property-map, boost-property-tree, boost-proto, boost-ptr-container, boost-python (windows), boost-qvm, boost-random, boost-range, boost-ratio, boost-rational, boost-regex, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas, boost-safe-numerics, boost-scope-exit, boost-serialization, boost-signals2, boost-smart-ptr, boost-sort, boost-spirit, boost-stacktrace (!uwp), boost-statechart, boost-static-assert, boost-system, boost-test (!uwp), boost-thread (!arm), boost-throw-exception, boost-timer, boost-tokenizer, boost-tti, boost-tuple, boost-typeof, boost-type-erasure (!arm), boost-type-index, boost-type-traits, boost-units, boost-unordered, boost-utility, boost-uuid, boost-variant, boost-vmd, boost-wave (!uwp), boost-winapi, boost-xpressive, boost-yap diff --git a/ports/botan/CONTROL b/ports/botan/CONTROL index 3961c2ccb89797..8ceb0118c9d0d8 100644 --- a/ports/botan/CONTROL +++ b/ports/botan/CONTROL @@ -1,3 +1,4 @@ Source: botan Version: 2.9.0 -Description: A cryptography library written in C++11 +Homepage: https://botan.randombit.net +Description: A cryptography library written in C++11 \ No newline at end of file diff --git a/ports/box2d/CONTROL b/ports/box2d/CONTROL index e95eea2ba4e239..98f6e2cbd5c7b0 100644 --- a/ports/box2d/CONTROL +++ b/ports/box2d/CONTROL @@ -1,4 +1,4 @@ Source: box2d Version: 2.3.1-374664b-2 Description: An open source C++ engine for simulating rigid bodies in 2D. -Homepage: http://box2d.org +Homepage: https://box2d.org diff --git a/ports/breakpad/CONTROL b/ports/breakpad/CONTROL index b9efe8ee6dad70..0f6ba1dcbfc395 100644 --- a/ports/breakpad/CONTROL +++ b/ports/breakpad/CONTROL @@ -1,4 +1,5 @@ Source: breakpad Version: 2019-05-08 Build-Depends: libdisasm +Homepage: https://github.com/google/breakpad Description: a set of client and server components which implement a crash-reporting system. diff --git a/ports/brotli/CONTROL b/ports/brotli/CONTROL index d61b8b25e46391..aef306101dd01d 100644 --- a/ports/brotli/CONTROL +++ b/ports/brotli/CONTROL @@ -1,3 +1,4 @@ Source: brotli -Version: 1.0.7 +Version: 1.0.7 +Homepage: https://github.com/google/brotli Description: a generic-purpose lossless compression algorithm that compresses data using a combination of a modern variant of the LZ77 algorithm, Huffman coding and 2nd order context modeling. diff --git a/ports/brynet/CONTROL b/ports/brynet/CONTROL index 9133017a1e7374..5566fad32413f1 100644 --- a/ports/brynet/CONTROL +++ b/ports/brynet/CONTROL @@ -1,4 +1,5 @@ Source: brynet Version: 1.0.2 +Homepage: https://github.com/IronsDu/brynet Description: A C++ cross platform high performance tcp network library, and support SSL/HTTP/Websocket. Build-Depends: openssl diff --git a/ports/bullet3/CONTROL b/ports/bullet3/CONTROL index efcb927d2d6b13..437908356e4e8e 100644 --- a/ports/bullet3/CONTROL +++ b/ports/bullet3/CONTROL @@ -1,3 +1,4 @@ Source: bullet3 -Version: 2.88 +Version: 2.88 +Homepage: https://github.com/bulletphysics/bullet3 Description: Bullet Physics is a professional collision detection, rigid body, and soft body dynamics library diff --git a/ports/butteraugli/CONTROL b/ports/butteraugli/CONTROL index 621e42a8afbaa1..d210263c3b679c 100644 --- a/ports/butteraugli/CONTROL +++ b/ports/butteraugli/CONTROL @@ -1,4 +1,5 @@ Source: butteraugli -Version: 2019-05-08 +Version: 2019-05-08 +Homepage: https://github.com/google/butteraugli Description: butteraugli estimates the psychovisual difference between two images Build-Depends: libpng, libjpeg-turbo diff --git a/ports/bzip2/CONTROL b/ports/bzip2/CONTROL index 00995aed95d0c3..5f52faad484320 100644 --- a/ports/bzip2/CONTROL +++ b/ports/bzip2/CONTROL @@ -1,3 +1,4 @@ Source: bzip2 Version: 1.0.6-4 +Homepage: http://www.bzip.org/ Description: High-quality data compressor. diff --git a/ports/c-ares/CONTROL b/ports/c-ares/CONTROL index 525bd8985960cd..dda2acde0948ce 100644 --- a/ports/c-ares/CONTROL +++ b/ports/c-ares/CONTROL @@ -1,4 +1,5 @@ Source: c-ares Version: 2019-5-2 +Homepage: https://github.com/c-ares/c-ares Description: A C library for asynchronous DNS requests Build-Depends: diff --git a/ports/caffe2/CONTROL b/ports/caffe2/CONTROL index 5cac9b00d41565..4d72fb76450316 100644 --- a/ports/caffe2/CONTROL +++ b/ports/caffe2/CONTROL @@ -1,4 +1,5 @@ Source: caffe2 Version: 0.8.1-3 Build-Depends: lmdb, gflags, glog, eigen3, protobuf +Homepage: https://github.com/caffe2/caffe2 Description: Caffe2 is a lightweight, modular, and scalable deep learning framework. diff --git a/ports/cairo/CONTROL b/ports/cairo/CONTROL index 3a82ccc9790af7..d53d5003da6b2f 100644 --- a/ports/cairo/CONTROL +++ b/ports/cairo/CONTROL @@ -1,4 +1,5 @@ Source: cairo Version: 1.16.0-1 +Homepage: https://cairographics.org Description: Cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB. Build-Depends: zlib, libpng, pixman, glib, freetype, fontconfig diff --git a/ports/cairomm/CONTROL b/ports/cairomm/CONTROL index df07bd81d1480f..4705065fc33b22 100644 --- a/ports/cairomm/CONTROL +++ b/ports/cairomm/CONTROL @@ -1,4 +1,5 @@ Source: cairomm Version: 1.15.3-3 +Homepage: https://www.cairographics.org Description: A C++ wrapper for the cairo graphics library Build-Depends: cairo, libsigcpp diff --git a/ports/capstone/CONTROL b/ports/capstone/CONTROL index e7baa3d974da72..d7d422d2578d11 100644 --- a/ports/capstone/CONTROL +++ b/ports/capstone/CONTROL @@ -1,5 +1,6 @@ Source: capstone Version: 4.0.1-120373dc +Homepage: https://github.com/aquynh/capstone Description: Multi-architecture disassembly framework Feature: arm diff --git a/ports/cartographer/CONTROL b/ports/cartographer/CONTROL index a1b0fb53c42c8b..b91c4a52eef24e 100644 --- a/ports/cartographer/CONTROL +++ b/ports/cartographer/CONTROL @@ -1,4 +1,5 @@ Source: cartographer -Version: 1.0.0 +Version: 1.0.0 Build-Depends: ceres[suitesparse], gflags, glog, lua, cairo, boost-iostreams, gtest, protobuf -Description: Google 2D & 3D SLAM package \ No newline at end of file +Homepage: https://github.com/googlecartographer/cartographer +Description: Google 2D & 3D SLAM package diff --git a/ports/catch-classic/CONTROL b/ports/catch-classic/CONTROL index af4d6a737177e1..bce6fc1060982c 100644 --- a/ports/catch-classic/CONTROL +++ b/ports/catch-classic/CONTROL @@ -1,5 +1,6 @@ Source: catch-classic Version: 1.12.2 +Homepage: https://github.com/catchorg/Catch2 Description: A modern, header-only test framework for unit tests This is specifically the legacy 1.x branch provided for compatibility with older compilers. diff --git a/ports/cccapstone/CONTROL b/ports/cccapstone/CONTROL index 05403f434dcfed..8681f2328267ea 100644 --- a/ports/cccapstone/CONTROL +++ b/ports/cccapstone/CONTROL @@ -1,4 +1,5 @@ Source: cccapstone Version: 9b4128ee1153e78288a1b5433e2c06a0d47a4c4e-1 +Homepage: https://github.com/zer0mem/cccapstone Description: c++ bindings for capstone disasembly framework Build-Depends: capstone diff --git a/ports/ccd/CONTROL b/ports/ccd/CONTROL index d621c107abd942..e2b4463ba83edb 100644 --- a/ports/ccd/CONTROL +++ b/ports/ccd/CONTROL @@ -1,3 +1,4 @@ Source: ccd Version: 2.1 +Homepage: https://github.com/danfis/libccd Description: Library for collision detection between two convex shapes diff --git a/ports/ccfits/CONTROL b/ports/ccfits/CONTROL index 5cd10f63db2736..18937d5e793b6b 100644 --- a/ports/ccfits/CONTROL +++ b/ports/ccfits/CONTROL @@ -1,4 +1,5 @@ Source: ccfits Version: 2.5-2 +Homepage: https://heasarc.gsfc.nasa.gov/fitsio/ccfits Description: CCfits is an object oriented interface to the cfitsio library. It is designed to make the capabilities of cfitsio available to programmers working in C++. Build-Depends: cfitsio diff --git a/ports/cctz/CONTROL b/ports/cctz/CONTROL index 2934951b44cdff..a223586d63e3d3 100644 --- a/ports/cctz/CONTROL +++ b/ports/cctz/CONTROL @@ -1,4 +1,5 @@ Source: cctz Version: 2.3-2 +Homepage: https://github.com/google/cctz Build-Depends: benchmark Description: two libraries that cooperate with to give C++ programmers all the necessary tools for computing with dates, times, and time zones in a simple and correct manner. diff --git a/ports/celero/CONTROL b/ports/celero/CONTROL index 6b762e572f0a99..c9670b14f82125 100644 --- a/ports/celero/CONTROL +++ b/ports/celero/CONTROL @@ -1,3 +1,4 @@ Source: celero Version: 2.5.0-1 +Homepage: https://github.com/DigitalInBlue/Celero Description: Celero is a modern cross-platform (Windows, Linux, MacOS) Microbenchmarking library for C++. diff --git a/ports/cereal/CONTROL b/ports/cereal/CONTROL index fc3c7921a45ea9..ce879198fa95ea 100644 --- a/ports/cereal/CONTROL +++ b/ports/cereal/CONTROL @@ -1,3 +1,4 @@ Source: cereal Version: 1.2.2-1 +Homepage: https://github.com/USCiLab/cereal Description: a header-only C++11 serialization library (built in support for binary, XML and JSon) diff --git a/ports/ceres/CONTROL b/ports/ceres/CONTROL index 47ae7051e5a520..8cd34102e55333 100644 --- a/ports/ceres/CONTROL +++ b/ports/ceres/CONTROL @@ -1,6 +1,7 @@ Source: ceres Version: 1.14.0-4 Build-Depends: glog, eigen3 +Homepage: https://github.com/ceres-solver/ceres-solver Description: non-linear optimization package Feature: lapack diff --git a/ports/cfitsio/CONTROL b/ports/cfitsio/CONTROL index 7c50b295d01639..316269f88fdb3b 100644 --- a/ports/cfitsio/CONTROL +++ b/ports/cfitsio/CONTROL @@ -1,3 +1,4 @@ Source: cfitsio Version: 3.410-2 +Homepage: https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c Description: Library of C and Fortran subroutines for reading and writing data files in FITS (Flexible Image Transport System) data format diff --git a/ports/cgal/CONTROL b/ports/cgal/CONTROL index d42389635ba44b..184d4f221f1b17 100644 --- a/ports/cgal/CONTROL +++ b/ports/cgal/CONTROL @@ -1,6 +1,7 @@ Source: cgal Version: 4.14-2 Build-Depends: mpfr, mpir, zlib, boost-format, boost-container, boost-iterator, boost-variant, boost-any, boost-unordered, boost-random, boost-foreach, boost-graph, boost-heap, boost-logic, boost-multiprecision +Homepage: https://github.com/CGAL/cgal Description: The Computational Geometry Algorithms Library (CGAL) is a C++ library that aims to provide easy access to efficient and reliable algorithms in computational geometry. Feature: qt diff --git a/ports/cgicc/CONTROL b/ports/cgicc/CONTROL index cf25b698d5d73b..9e18277a9a2d38 100644 --- a/ports/cgicc/CONTROL +++ b/ports/cgicc/CONTROL @@ -1,3 +1,4 @@ Source: cgicc Version: 3.2.19-1 +Homepage: https://www.gnu.org/software/cgicc/ Description: GNU Cgicc is an ANSI C++ compliant class library that greatly simplifies the creation of CGI applications for the World Wide Web diff --git a/ports/chaiscript/CONTROL b/ports/chaiscript/CONTROL index 8fbd830d96b598..fd55e973eb9a12 100644 --- a/ports/chaiscript/CONTROL +++ b/ports/chaiscript/CONTROL @@ -1,3 +1,4 @@ Source: chaiscript Version: 6.1.0 +Homepage: https://github.com/ChaiScript/ChaiScript Description: Embedded Scripting Language Designed for C++ diff --git a/ports/chakracore/CONTROL b/ports/chakracore/CONTROL index 6368fb5fb05908..919391eb6972bb 100644 --- a/ports/chakracore/CONTROL +++ b/ports/chakracore/CONTROL @@ -1,3 +1,4 @@ Source: chakracore Version: 1.11.9 +Homepage: https://github.com/Microsoft/ChakraCore Description: Core part of the Chakra Javascript engine diff --git a/ports/charls/CONTROL b/ports/charls/CONTROL index 562a6f68835733..00f6777a4adbe3 100644 --- a/ports/charls/CONTROL +++ b/ports/charls/CONTROL @@ -1,3 +1,4 @@ Source: charls Version: 2.0.0-1 +Homepage: https://github.com/team-charls/charls Description: CharLS, a C++ JPEG-LS library implementation. diff --git a/ports/chipmunk/CONTROL b/ports/chipmunk/CONTROL index 64b66067bde4a3..0a4d6a62f59b01 100644 --- a/ports/chipmunk/CONTROL +++ b/ports/chipmunk/CONTROL @@ -1,3 +1,4 @@ Source: chipmunk Version: 7.0.2 +Homepage: https://github.com/slembcke/Chipmunk2D Description: A fast and lightweight 2D game physics library. \ No newline at end of file diff --git a/ports/chmlib/CONTROL b/ports/chmlib/CONTROL index 32c86554e519bf..cde69a41e714e6 100644 --- a/ports/chmlib/CONTROL +++ b/ports/chmlib/CONTROL @@ -1,3 +1,4 @@ Source: chmlib Version: 0.40-3 +Homepage: https://www.jedrea.com/chmlib/ Description: CHMLIB is a library for dealing with Microsoft ITSS/CHM format files. Right now, it is a very simple library, but sufficient for dealing with all of the .chm files I've come across. Due to the fairly well-designed indexing built into this particular file format, even a small library is able to gain reasonably good performance indexing into ITSS archives. diff --git a/ports/cimg/CONTROL b/ports/cimg/CONTROL index af149556a7ec94..93a2e4ee708f60 100644 --- a/ports/cimg/CONTROL +++ b/ports/cimg/CONTROL @@ -1,3 +1,4 @@ Source: cimg Version: 2.6.2 +Homepage: https://github.com/dtschump/CImg Description: The CImg Library is a small, open-source, and modern C++ toolkit for image processing diff --git a/ports/clapack/CONTROL b/ports/clapack/CONTROL index 9cdebdf74ab0a5..75755fe211c326 100644 --- a/ports/clapack/CONTROL +++ b/ports/clapack/CONTROL @@ -1,4 +1,5 @@ Source: clapack Version: 3.2.1-6 +Homepage: https://www.netlib.org/clapack Description: CLAPACK (f2c'ed version of LAPACK) Build-Depends: openblas (!osx) diff --git a/ports/clara/CONTROL b/ports/clara/CONTROL index b471db07060565..cb0c84df3571d3 100644 --- a/ports/clara/CONTROL +++ b/ports/clara/CONTROL @@ -1,3 +1,4 @@ Source: clara Version: 2019-03-29 +Homepage: https://github.com/philsquared/Clara Description: A simple to use command line parser for C++ \ No newline at end of file diff --git a/ports/clfft/CONTROL b/ports/clfft/CONTROL index 0a109ac145acbc..d65da199511236 100644 --- a/ports/clfft/CONTROL +++ b/ports/clfft/CONTROL @@ -1,4 +1,5 @@ Source: clfft Version: 2.12.2 Build-Depends: opencl +Homepage: https://github.com/clMathLibraries/clFFT Description: clFFT is an OpenCL 1.2 accelerated Fast Fourier Transform library. diff --git a/ports/clockutils/CONTROL b/ports/clockutils/CONTROL index 37c5ec8cabaa8b..c555fd4182263b 100644 --- a/ports/clockutils/CONTROL +++ b/ports/clockutils/CONTROL @@ -1,3 +1,4 @@ Source: clockutils Version: 1.1.1-3651f232c27074c4ceead169e223edf5f00247c5-3 +Homepage: https://github.com/ClockworkOrigins/clockUtils Description: A lightweight c++ library for commonly needed tasks. Optimized for simplicity and speed. diff --git a/ports/console-bridge/CONTROL b/ports/console-bridge/CONTROL index 533c63944bca89..f9d10b7e046a7f 100644 --- a/ports/console-bridge/CONTROL +++ b/ports/console-bridge/CONTROL @@ -1,3 +1,4 @@ Source: console-bridge Version: 0.3.2-3 +Homepage: https://github.com/ros/console_bridge Description: a ROS-independent package for logging that seamlessly pipes into rosconsole/rosout for ROS-dependent packages. diff --git a/ports/constexpr/CONTROL b/ports/constexpr/CONTROL index 85b3bc0c70329d..78dc70aa42ae1a 100644 --- a/ports/constexpr/CONTROL +++ b/ports/constexpr/CONTROL @@ -1,3 +1,4 @@ Source: constexpr Version: 1.0-1 +Homepage: https://github.com/elbeno/constexpr Description: Small MIT License Library of general stdlib functions written as C++11 constexpr functions. diff --git a/ports/coolprop/CONTROL b/ports/coolprop/CONTROL index 01e67e0dfb5806..4f5390ca1eb72f 100644 --- a/ports/coolprop/CONTROL +++ b/ports/coolprop/CONTROL @@ -1,4 +1,5 @@ Source: coolprop Version: 6.1.0-4 +Homepage: https://github.com/CoolProp/CoolProp Description: Thermophysical properties for the masses Build-Depends: catch, eigen3, pybind11, if97, fmt, rapidjson, msgpack, refprop-headers diff --git a/ports/corrade/CONTROL b/ports/corrade/CONTROL index fdce7703325fe1..3cf18ab10a4447 100644 --- a/ports/corrade/CONTROL +++ b/ports/corrade/CONTROL @@ -1,7 +1,7 @@ Source: corrade Version: 2019.01-1 Description: C++11/C++14 multiplatform utility library -Homepage: http://magnum.graphics/corrade/ +Homepage: https://magnum.graphics/corrade/ Default-Features: interconnect, pluginmanager, testsuite, utility Feature: interconnect diff --git a/ports/cpp-redis/CONTROL b/ports/cpp-redis/CONTROL index 4030f9ce9dd3bc..7d8823866f6341 100644 --- a/ports/cpp-redis/CONTROL +++ b/ports/cpp-redis/CONTROL @@ -1,4 +1,5 @@ Source: cpp-redis Version: 4.3.1-1 Build-Depends: tacopie +Homepage: https://github.com/Cylix/cpp_redis Description: cpp-redis is a C++11 Asynchronous Multi-Platform Lightweight Redis Client, with support for synchronous operations and pipelining. diff --git a/ports/cppcms/CONTROL b/ports/cppcms/CONTROL index b2db0ffa1c7801..35296edc15eac1 100644 --- a/ports/cppcms/CONTROL +++ b/ports/cppcms/CONTROL @@ -1,4 +1,5 @@ Source: cppcms -Version: 1.2.1 +Version: 1.2.1 +Homepage: https://github.com/artyom-beilis/cppcms Description: CppCMS is a Free High Performance Web Development Framework (not a CMS) aimed at Rapid Web Application Development Build-Depends: icu, pcre, openssl, zlib diff --git a/ports/cpprestsdk/CONTROL b/ports/cpprestsdk/CONTROL index e5331ab1489ed0..016bad4544db92 100644 --- a/ports/cpprestsdk/CONTROL +++ b/ports/cpprestsdk/CONTROL @@ -1,6 +1,7 @@ Source: cpprestsdk Version: 2.10.13-1 Build-Depends: zlib, openssl (!uwp&!windows), boost-system (!uwp&!windows), boost-date-time (!uwp&!windows), boost-regex (!uwp&!windows), boost-thread (!uwp&!windows), boost-filesystem (!uwp&!windows), boost-random (!uwp&!windows), boost-chrono (!uwp&!windows), boost-asio (!uwp&!windows) +Homepage: https://github.com/Microsoft/cpprestsdk Description: C++11 JSON, REST, and OAuth library The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services. Default-Features: default-features diff --git a/ports/cppwinrt/CONTROL b/ports/cppwinrt/CONTROL index cd911b99e25830..df7cff03ea37f1 100644 --- a/ports/cppwinrt/CONTROL +++ b/ports/cppwinrt/CONTROL @@ -1,3 +1,4 @@ Source: cppwinrt Version: fall_2017_creators_update_for_vs_15.3-2 +Homepage: https://github.com/Microsoft/cppwinrt Description: C++/WinRT is a standard C++ language projection for the Windows Runtime. diff --git a/ports/cppzmq/CONTROL b/ports/cppzmq/CONTROL index d54de7494d2cad..f50dd41035e759 100644 --- a/ports/cppzmq/CONTROL +++ b/ports/cppzmq/CONTROL @@ -1,4 +1,5 @@ Source: cppzmq Version: 4.3.0-1 Build-Depends: zeromq +Homepage: https://github.com/zeromq/cppzmq Description: lightweight messaging kernel, C++ bindings diff --git a/ports/cpr/CONTROL b/ports/cpr/CONTROL index 89cc6b84746701..de5c3478f552f1 100644 --- a/ports/cpr/CONTROL +++ b/ports/cpr/CONTROL @@ -1,4 +1,5 @@ Source: cpr Version: 1.3.0-7 +Homepage: https://github.com/whoshuu/cpr Description: C++ Requests is a simple wrapper around libcurl inspired by the excellent Python Requests project. Build-Depends: curl[core] diff --git a/ports/crc32c/CONTROL b/ports/crc32c/CONTROL index 013cc542ec120c..329b5a3bf17f2d 100644 --- a/ports/crc32c/CONTROL +++ b/ports/crc32c/CONTROL @@ -1,3 +1,4 @@ Source: crc32c Version: 1.0.7 +Homepage: https://github.com/google/crc32c Description: CRC32C implementation with support for CPU-specific acceleration instructions. diff --git a/ports/crow/CONTROL b/ports/crow/CONTROL index e2200c81352952..96efb27bf16fea 100644 --- a/ports/crow/CONTROL +++ b/ports/crow/CONTROL @@ -1,3 +1,4 @@ Source: crow Version: 0.1-1 +Homepage: https://github.com/ipkn/crow Description: Very fast and easy to use C++ micro web framework diff --git a/ports/cryptopp/CONTROL b/ports/cryptopp/CONTROL index c65a43c90563a7..76c754565da534 100644 --- a/ports/cryptopp/CONTROL +++ b/ports/cryptopp/CONTROL @@ -1,3 +1,4 @@ Source: cryptopp Version: 8.1.0-1 +Homepage: https://github.com/weidai11/cryptopp Description: Crypto++ is a free C++ class library of cryptographic schemes. diff --git a/ports/ctemplate/CONTROL b/ports/ctemplate/CONTROL index 1125efc18d2529..d5fadf3eaddd3f 100644 --- a/ports/ctemplate/CONTROL +++ b/ports/ctemplate/CONTROL @@ -1,3 +1,4 @@ Source: ctemplate Version: 2017-06-23-44b7c5-3 +Homepage: https://github.com/OlafvdSpek/ctemplate Description: C++ CTemplate system diff --git a/ports/cunit/CONTROL b/ports/cunit/CONTROL index 4b43a0159dda86..93049499217a73 100644 --- a/ports/cunit/CONTROL +++ b/ports/cunit/CONTROL @@ -1,3 +1,4 @@ Source: cunit Version: 2.1.3-2 +Homepage: https://sourceforge.net/projects/cunit/ Description: CUnit is a lightweight system for writing, administering, and running unit tests in C. It provides C programmers a basic testing functionality with a flexible variety of user interfaces diff --git a/ports/curl/CONTROL b/ports/curl/CONTROL index 3f5539de792697..1c607bce3b4cf6 100644 --- a/ports/curl/CONTROL +++ b/ports/curl/CONTROL @@ -1,6 +1,7 @@ Source: curl Version: 7.65.0-1 Build-Depends: zlib +Homepage: https://github.com/curl/curl Description: A library for transferring data with URLs Default-Features: ssl diff --git a/ports/cxxopts/CONTROL b/ports/cxxopts/CONTROL index a13aeb7343e6ee..5d1a92d91550c6 100644 --- a/ports/cxxopts/CONTROL +++ b/ports/cxxopts/CONTROL @@ -1,3 +1,4 @@ Source: cxxopts Version: 2.1.2 +Homepage: https://github.com/jarro2783/cxxopts Description: This is a lightweight C++ option parser library, supporting the standard GNU style syntax for options diff --git a/ports/date/CONTROL b/ports/date/CONTROL index 0a67f589b885b2..93f4b37cd4b21d 100644 --- a/ports/date/CONTROL +++ b/ports/date/CONTROL @@ -1,5 +1,6 @@ Source: date Version: ed0368f +Homepage: https://github.com/HowardHinnant/date Description: A date and time library based on the C++11/14/17 header Feature: remote-api diff --git a/ports/devil/CONTROL b/ports/devil/CONTROL index 98c27363a72841..8c65b2ddf5bab2 100644 --- a/ports/devil/CONTROL +++ b/ports/devil/CONTROL @@ -1,6 +1,7 @@ Source: devil Version: 1.8.0-4 Build-Depends: +Homepage: https://github.com/DentonW/DevIL Description: A full featured cross-platform image library Default-Features: libpng, tiff, libjpeg, openexr, jasper, lcms diff --git a/ports/dimcli/CONTROL b/ports/dimcli/CONTROL index e9d17c1221217f..e98f115658a352 100644 --- a/ports/dimcli/CONTROL +++ b/ports/dimcli/CONTROL @@ -1,3 +1,4 @@ Source: dimcli Version: 4.1.0 +Homepage: https://github.com/gknowles/dimcli Description: C++ command line parser toolkit diff --git a/ports/directxmesh/CONTROL b/ports/directxmesh/CONTROL index a9f4aa9b78692f..700756964fd89c 100644 --- a/ports/directxmesh/CONTROL +++ b/ports/directxmesh/CONTROL @@ -1,3 +1,4 @@ Source: directxmesh Version: apr2019 -Description: DirectXMesh geometry processing library +Homepage: https://github.com/Microsoft/DirectXMesh +Description: DirectXMesh geometry processing library \ No newline at end of file diff --git a/ports/directxtex/CONTROL b/ports/directxtex/CONTROL index 6ca6a224bac261..69b6d2ee2c825e 100644 --- a/ports/directxtex/CONTROL +++ b/ports/directxtex/CONTROL @@ -1,3 +1,4 @@ Source: directxtex -Version: apr2019 -Description: DirectXTex texture processing library +Version: apr2019 +Homepage: https://github.com/Microsoft/DirectXTex +Description: DirectXTex texture processing library \ No newline at end of file diff --git a/ports/directxtk/CONTROL b/ports/directxtk/CONTROL index 035c5d3a45fb86..469788934ac900 100644 --- a/ports/directxtk/CONTROL +++ b/ports/directxtk/CONTROL @@ -1,3 +1,4 @@ Source: directxtk Version: apr2019 +Homepage: https://github.com/Microsoft/DirectXTK Description: A collection of helper classes for writing DirectX 11.x code in C++. diff --git a/ports/directxtk12/CONTROL b/ports/directxtk12/CONTROL index 41ffd54f75b774..466acece60d4cd 100644 --- a/ports/directxtk12/CONTROL +++ b/ports/directxtk12/CONTROL @@ -1,3 +1,4 @@ Source: directxtk12 Version: dec2016-1 +Homepage: https://github.com/Microsoft/DirectXTK12 Description: A collection of helper classes for writing DirectX 12 code in C++. diff --git a/ports/dirent/CONTROL b/ports/dirent/CONTROL index 8fb9b1fa8b3a02..b8444bc98985a5 100644 --- a/ports/dirent/CONTROL +++ b/ports/dirent/CONTROL @@ -1,3 +1,4 @@ Source: dirent Version: 1.23.2 +Homepage: https://github.com/tronkko/dirent Description: Dirent is a C/C++ programming interface that allows programmers to retrieve information about files and directories under Linux/UNIX. This project provides Linux compatible Dirent interface for Microsoft Windows. diff --git a/ports/discord-rpc/CONTROL b/ports/discord-rpc/CONTROL index e4d98f5247c5c7..094c4eaa39e3a9 100644 --- a/ports/discord-rpc/CONTROL +++ b/ports/discord-rpc/CONTROL @@ -1,4 +1,5 @@ Source: discord-rpc Version: 3.4.0 +Homepage: https://github.com/discordapp/discord-rpc Description: Rich Presence allows you to leverage the totally overhauled "Now Playing" section in a Discord user's profile to help people play your game together. Build-Depends: rapidjson diff --git a/ports/dlfcn-win32/CONTROL b/ports/dlfcn-win32/CONTROL index c8fd02dced7aac..24af3631fca5a2 100644 --- a/ports/dlfcn-win32/CONTROL +++ b/ports/dlfcn-win32/CONTROL @@ -1,3 +1,4 @@ Source: dlfcn-win32 Version: 1.1.1-1 +Homepage: https://github.com/dlfcn-win32/dlfcn-win32 Description: dlfcn-win32 is an implementation of dlfcn for Windows. diff --git a/ports/dlib/CONTROL b/ports/dlib/CONTROL index 713de97bb72a35..2342c57379c662 100644 --- a/ports/dlib/CONTROL +++ b/ports/dlib/CONTROL @@ -1,6 +1,7 @@ Source: dlib Version: 19.17-1 Build-Depends: libjpeg-turbo, libpng, sqlite3, fftw3, openblas (!osx), clapack (!osx) +Homepage: https://github.com/davisking/dlib Description: Modern C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ Feature: cuda diff --git a/ports/doctest/CONTROL b/ports/doctest/CONTROL index bf125349995f35..e623f8b8586f16 100644 --- a/ports/doctest/CONTROL +++ b/ports/doctest/CONTROL @@ -1,3 +1,4 @@ Source: doctest Version: 2.3.2 +Homepage: https://github.com/onqtam/doctest Description: The fastest feature-rich C++ single-header testing framework for unit tests and TDD diff --git a/ports/double-conversion/CONTROL b/ports/double-conversion/CONTROL index 47c9e063cf45e6..c6860524d67c5d 100644 --- a/ports/double-conversion/CONTROL +++ b/ports/double-conversion/CONTROL @@ -1,3 +1,4 @@ Source: double-conversion -Version: 3.1.4 +Version: 3.1.4 +Homepage: https://github.com/google/double-conversion Description: Efficient binary-decimal and decimal-binary conversion routines for IEEE doubles. diff --git a/ports/draco/CONTROL b/ports/draco/CONTROL index 555c66d0a99684..ace5fc65097478 100644 --- a/ports/draco/CONTROL +++ b/ports/draco/CONTROL @@ -1,4 +1,5 @@ Source: draco Version: 1.3.5 +Homepage: https://github.com/google/draco Description: A library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics. Build-Depends: diff --git a/ports/duktape/CONTROL b/ports/duktape/CONTROL index ea322ac05fc8b6..00702539845059 100644 --- a/ports/duktape/CONTROL +++ b/ports/duktape/CONTROL @@ -1,4 +1,5 @@ Source: duktape -Version: 2.3.0 +Version: 2.3.0 +Homepage: https://github.com/svaarala/duktape Description: Embeddable Javascript engine with a focus on portability and compact footprint. Build-Depends: diff --git a/ports/dx/CONTROL b/ports/dx/CONTROL index 8f901cad3c8194..d5ad978721d06e 100644 --- a/ports/dx/CONTROL +++ b/ports/dx/CONTROL @@ -1,3 +1,4 @@ Source: dx Version: 1.0.1-1 -Description: A modern C++ library for DirectX programming +Homepage: https://github.com/sdcb/dx +Description: A modern C++ library for DirectX programming \ No newline at end of file diff --git a/ports/dxut/CONTROL b/ports/dxut/CONTROL index e36c9d6f1e0d14..60046288274ff8 100644 --- a/ports/dxut/CONTROL +++ b/ports/dxut/CONTROL @@ -1,3 +1,4 @@ Source: dxut Version: 11.14-3 -Description: A "GLUT"-like framework for Direct3D 11.x Win32 desktop applications +Homepage: https://github.com/Microsoft/DXUT +Description: A "GLUT"-like framework for Direct3D 11.x Win32 desktop applications \ No newline at end of file diff --git a/ports/eastl/CONTROL b/ports/eastl/CONTROL index 2b6f5984ea1bae..f7f9c89a3412ed 100644 --- a/ports/eastl/CONTROL +++ b/ports/eastl/CONTROL @@ -1,4 +1,5 @@ Source: eastl -Version: 3.13.05-1 +Version: 3.13.05-1 +Homepage: https://github.com/electronicarts/EASTL Description: Electronic Arts Standard Template Library. It is a C++ template library of containers, algorithms, and iterators useful for runtime and tool development across multiple platforms. It is a fairly extensive and robust implementation of such a library and has an emphasis on high performance above all other considerations. diff --git a/ports/ebml/CONTROL b/ports/ebml/CONTROL index 0d1f5e97c4a2d7..0b2aac43262731 100644 --- a/ports/ebml/CONTROL +++ b/ports/ebml/CONTROL @@ -1,3 +1,4 @@ Source: ebml Version: 1.3.9 +Homepage: https://github.com/Matroska-Org/libebml Description: a C++ libary to parse EBML files diff --git a/ports/ecm/CONTROL b/ports/ecm/CONTROL index 0e05e6f720d146..075cf894f5a6e1 100644 --- a/ports/ecm/CONTROL +++ b/ports/ecm/CONTROL @@ -1,3 +1,4 @@ Source: ecm Version: 5.58.0 +Homepage: https://github.com/KDE/extra-cmake-modules Description: Extra CMake Modules (ECM), extra modules and scripts for CMake diff --git a/ports/eigen3/CONTROL b/ports/eigen3/CONTROL index 3993a35f03fe76..b67376ced0311b 100644 --- a/ports/eigen3/CONTROL +++ b/ports/eigen3/CONTROL @@ -1,3 +1,4 @@ Source: eigen3 Version: 3.3.7-1 +Homepage: https://bitbucket.org/eigen/eigen Description: C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. diff --git a/ports/embree2/CONTROL b/ports/embree2/CONTROL index 1c749f8f6e16b4..0fe3df484025aa 100644 --- a/ports/embree2/CONTROL +++ b/ports/embree2/CONTROL @@ -1,4 +1,5 @@ Source: embree2 Version: 2.17.7 +Homepage: https://github.com/embree/embree Description: High Performance Ray Tracing Kernels. Build-Depends: tbb diff --git a/ports/enet/CONTROL b/ports/enet/CONTROL index f75b49de936d52..7d2a87bf5e3d27 100644 --- a/ports/enet/CONTROL +++ b/ports/enet/CONTROL @@ -1,4 +1,5 @@ Source: enet Version: 1.3.13 +Homepage: https://github.com/lsalzman/enet Description: Reliable UDP networking library diff --git a/ports/epsilon/CONTROL b/ports/epsilon/CONTROL index 94f9e1db8d3f4b..3b740a976950b1 100644 --- a/ports/epsilon/CONTROL +++ b/ports/epsilon/CONTROL @@ -1,3 +1,4 @@ Source: epsilon Version: 0.9.2 +Homepage: https://sourceforge.net/projects/epsilon-project/ Description: EPSILON is an Open Source wavelet image compressor, that is aimed on parallel and robust image processing. \ No newline at end of file diff --git a/ports/evpp/CONTROL b/ports/evpp/CONTROL index 741a94a2289158..7c61e4ebd6a0d2 100644 --- a/ports/evpp/CONTROL +++ b/ports/evpp/CONTROL @@ -1,4 +1,5 @@ Source: evpp Version: 0.7.0 +Homepage: https://github.com/Qihoo360/evpp Description: A modern C++ network library based on libevent for developing high performance network services in TCP/UDP/HTTP protocols. Build-Depends: glog, libevent, rapidjson diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index d51354d43b2c66..505d4003c157bf 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -2,7 +2,7 @@ Source: exiv2 Version: 0.27 Build-Depends: zlib, expat, libiconv, gettext Description: Image metadata library and tools -Homepage: http://www.exiv2.org +Homepage: https://www.exiv2.org Feature: unicode Description: Compile with unicode support on windows \ No newline at end of file diff --git a/ports/expat/CONTROL b/ports/expat/CONTROL index 4cdb03f6e5ff73..f01b5b9e18cb00 100644 --- a/ports/expat/CONTROL +++ b/ports/expat/CONTROL @@ -1,3 +1,4 @@ Source: expat Version: 2.2.6 +Homepage: https://github.com/libexpat/libexpat Description: XML parser library written in C diff --git a/ports/exprtk/CONTROL b/ports/exprtk/CONTROL index e2de3bdf328361..d55d903ae701c3 100644 --- a/ports/exprtk/CONTROL +++ b/ports/exprtk/CONTROL @@ -1,3 +1,4 @@ Source: exprtk Version: 2019-03-29 +Homepage: https://github.com/ArashPartow/exprtk Description: Simple to use, easy to integrate and extremely efficient run-time C++ mathematical expression parser and evaluation engine. diff --git a/ports/fadbad/CONTROL b/ports/fadbad/CONTROL index ebf98796270cf3..103890c0ed6d85 100644 --- a/ports/fadbad/CONTROL +++ b/ports/fadbad/CONTROL @@ -1,3 +1,4 @@ Source: fadbad Version: 2.1.0 +Homepage: https://www.fadbad.com/ Description: FADBAD++ Templates for Automatic Differentiation diff --git a/ports/fastlz/CONTROL b/ports/fastlz/CONTROL index 354b8d5b86e19f..4154ea95332156 100644 --- a/ports/fastlz/CONTROL +++ b/ports/fastlz/CONTROL @@ -1,3 +1,4 @@ Source: fastlz Version: 1.0-2 +Homepage: https://github.com/ariya/FastLZ Description: A lightning-fast lossless compression library diff --git a/ports/fcl/CONTROL b/ports/fcl/CONTROL index 58b150645beeb5..bc1a27ccc83d8f 100644 --- a/ports/fcl/CONTROL +++ b/ports/fcl/CONTROL @@ -1,4 +1,5 @@ Source: fcl Version: 0.5.0-5 +Homepage: https://github.com/flexible-collision-library/fcl Description: a library for performing three types of proximity queries on a pair of geometric models composed of triangles Build-Depends: ccd, octomap diff --git a/ports/fdk-aac/CONTROL b/ports/fdk-aac/CONTROL index 5da063ee8ce9ac..c7262f86132d2b 100644 --- a/ports/fdk-aac/CONTROL +++ b/ports/fdk-aac/CONTROL @@ -1,3 +1,4 @@ Source: fdk-aac Version: 2018-07-08-1 +Homepage: https://github.com/mstorsjo/fdk-aac Description: A standalone library of the Fraunhofer FDK AAC code diff --git a/ports/ffmpeg/CONTROL b/ports/ffmpeg/CONTROL index ca28e399e41047..209bb2306b0399 100644 --- a/ports/ffmpeg/CONTROL +++ b/ports/ffmpeg/CONTROL @@ -1,5 +1,6 @@ Source: ffmpeg Version: 4.1-6 +Homepage: https://ffmpeg.org Description: a library to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc. under a wide variety of build environments, machine architectures, and configurations. diff --git a/ports/fftw3/CONTROL b/ports/fftw3/CONTROL index e8c796e5bb587b..4d378d8c390757 100644 --- a/ports/fftw3/CONTROL +++ b/ports/fftw3/CONTROL @@ -1,5 +1,6 @@ Source: fftw3 Version: 3.3.8-6 +Homepage: https://www.fftw.org/ Description: FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions, of arbitrary input size, and of both real and complex data (as well as of even/odd data, i.e. the discrete cosine/sine transforms or DCT/DST). Feature: openmp diff --git a/ports/flann/CONTROL b/ports/flann/CONTROL index 316ac10be8eb04..fd8ecebc1fc7dd 100644 --- a/ports/flann/CONTROL +++ b/ports/flann/CONTROL @@ -1,4 +1,5 @@ Source: flann Version: jan2019 +Homepage: https://github.com/mariusmuja/flann Build-Depends: lz4 Description: Fast Library for Approximate Nearest Neighbors diff --git a/ports/flatbuffers/CONTROL b/ports/flatbuffers/CONTROL index 432a2f877d9aee..8d553c1971a28c 100644 --- a/ports/flatbuffers/CONTROL +++ b/ports/flatbuffers/CONTROL @@ -2,4 +2,4 @@ Source: flatbuffers Version: 1.11.0 Description: Memory Efficient Serialization Library FlatBuffers is an efficient cross platform serialization library for games and other memory constrained apps. It allows you to directly access serialized data without unpacking/parsing it first, while still having great forwards/backwards compatibility. -Homepage: http://google.github.io/flatbuffers/ +Homepage: https://google.github.io/flatbuffers/ diff --git a/ports/flint/CONTROL b/ports/flint/CONTROL index 0526b782af14dd..9b45b660898cdc 100644 --- a/ports/flint/CONTROL +++ b/ports/flint/CONTROL @@ -1,4 +1,5 @@ Source: flint Version: 2.5.2-3 +Homepage: https://www.flintlib.org/ Description: Fast Library for Number Theory Build-Depends: mpir, mpfr, pthreads, gettimeofday diff --git a/ports/fltk/CONTROL b/ports/fltk/CONTROL index 90f186ae201fdc..da9d7223aec1e6 100644 --- a/ports/fltk/CONTROL +++ b/ports/fltk/CONTROL @@ -1,4 +1,5 @@ Source: fltk Version: 1.3.4-6 +Homepage: https://www.fltk.org/ Description: FLTK (pronounced fulltick) is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL and its built-in GLUT emulation. Build-Depends: zlib, libpng, libjpeg-turbo diff --git a/ports/fmilib/CONTROL b/ports/fmilib/CONTROL index 8d0a51f74367b8..4037af50699026 100644 --- a/ports/fmilib/CONTROL +++ b/ports/fmilib/CONTROL @@ -1,4 +1,4 @@ Source: fmilib Version: 2.0.3-1 Description: FMI library is intended as a foundation for applications interfacing FMUs (Functional Mockup Units) that follow FMI Standard. This version of the library supports FMI 1.0 and FMI2.0. -Homepage: http://www.fmi-standard.org/ +Homepage: https://www.fmi-standard.org/ diff --git a/ports/fmt/CONTROL b/ports/fmt/CONTROL index 7c2d5d930761ea..c789e86f8aa396 100644 --- a/ports/fmt/CONTROL +++ b/ports/fmt/CONTROL @@ -1,3 +1,4 @@ Source: fmt Version: 5.3.0-2 +Homepage: https://github.com/fmtlib/fmt Description: Formatting library for C++. It can be used as a safe alternative to printf or as a fast alternative to IOStreams. diff --git a/ports/folly/CONTROL b/ports/folly/CONTROL index c466edebbb87a7..1709a4515ea699 100644 --- a/ports/folly/CONTROL +++ b/ports/folly/CONTROL @@ -1,5 +1,6 @@ Source: folly Version: 2019.05.20.00 +Homepage: https://github.com/facebook/folly Description: An open-source C++ library developed and used at Facebook. The library is UNSTABLE on Windows Build-Depends: openssl, libevent, double-conversion, glog, gflags, boost-chrono, boost-context, boost-conversion, boost-crc, boost-date-time, boost-filesystem, boost-multi-index, boost-program-options, boost-regex, boost-system, boost-thread, boost-smart-ptr Default-Features: zlib diff --git a/ports/fontconfig/CONTROL b/ports/fontconfig/CONTROL index ec63c3a22b4b23..fbcc3f53674b8b 100644 --- a/ports/fontconfig/CONTROL +++ b/ports/fontconfig/CONTROL @@ -1,4 +1,5 @@ Source: fontconfig Version: 2.12.4-9 +Homepage: https://www.freedesktop.org/software/fontconfig/front.html Description: Library for configuring and customizing font access. Build-Depends: freetype, expat, libiconv, dirent diff --git a/ports/forest/CONTROL b/ports/forest/CONTROL index 32981a12fe6d28..2e3d50a6cda45f 100644 --- a/ports/forest/CONTROL +++ b/ports/forest/CONTROL @@ -1,3 +1,4 @@ Source: forest Version: 11.0.1 +Homepage: https://github.com/xorz57/forest Description: Template library of tree data structures diff --git a/ports/freeglut/CONTROL b/ports/freeglut/CONTROL index 15b0ac2e37826b..1ee44b7f370b8c 100644 --- a/ports/freeglut/CONTROL +++ b/ports/freeglut/CONTROL @@ -1,3 +1,4 @@ Source: freeglut Version: 3.0.0-6 +Homepage: https://sourceforge.net/projects/freeglut/ Description: Open source implementation of GLUT with source and binary backwards compatibility. diff --git a/ports/freeimage/CONTROL b/ports/freeimage/CONTROL index 51ebbbc6999aaf..2420b5a56b735e 100644 --- a/ports/freeimage/CONTROL +++ b/ports/freeimage/CONTROL @@ -1,4 +1,5 @@ Source: freeimage Version: 3.18.0-5 Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp[all], libraw, jxrlib, openexr +Homepage: https://sourceforge.net/projects/freeimage/ Description: Support library for graphics image formats diff --git a/ports/freerdp/CONTROL b/ports/freerdp/CONTROL index c96bb051a96da0..f880f30a38360a 100644 --- a/ports/freerdp/CONTROL +++ b/ports/freerdp/CONTROL @@ -1,4 +1,5 @@ Source: freerdp Version: 2.0.0-rc4-1 +Homepage: https://github.com/FreeRDP/FreeRDP Description: A free implementation of the Remote Desktop Protocol (RDP) Build-Depends: openssl diff --git a/ports/freetype-gl/CONTROL b/ports/freetype-gl/CONTROL index c76ba3681e6c87..57af93cbc74bd0 100644 --- a/ports/freetype-gl/CONTROL +++ b/ports/freetype-gl/CONTROL @@ -1,4 +1,5 @@ Source: freetype-gl Version: 2019-03-29-1 +Homepage: https://github.com/rougier/freetype-gl Description: OpenGL text using one vertex buffer, one texture and FreeType Build-Depends: glew, freetype diff --git a/ports/freetype/CONTROL b/ports/freetype/CONTROL index 15c9caffd13bf9..21b6c59f47f096 100644 --- a/ports/freetype/CONTROL +++ b/ports/freetype/CONTROL @@ -1,4 +1,5 @@ Source: freetype Version: 2.9.1-2 Build-Depends: zlib, bzip2, libpng +Homepage: https://www.freetype.org/ Description: A library to render fonts. diff --git a/ports/freexl/CONTROL b/ports/freexl/CONTROL index 128ef56a083af0..00f97f562d47c9 100644 --- a/ports/freexl/CONTROL +++ b/ports/freexl/CONTROL @@ -1,5 +1,6 @@ Source: freexl Version: 1.0.4-1 +Homepage: https://www.gaia-gis.it/gaia-sins/freexl-sources Description: FreeXL is an open source library to extract valid data from within an Excel (.xls) spreadsheet Build-Depends: libiconv diff --git a/ports/fuzzylite/CONTROL b/ports/fuzzylite/CONTROL index b6faaa30f1624e..4749c14232ee8c 100644 --- a/ports/fuzzylite/CONTROL +++ b/ports/fuzzylite/CONTROL @@ -1,3 +1,4 @@ Source: fuzzylite Version: 6.0-2 +Homepage: https://github.com/fuzzylite/fuzzylite Description: A fuzzy logic control library in C++ diff --git a/ports/g2o/CONTROL b/ports/g2o/CONTROL index f27951611fe4aa..4838241074fbee 100644 --- a/ports/g2o/CONTROL +++ b/ports/g2o/CONTROL @@ -2,4 +2,4 @@ Source: g2o Version: 20170730_git-4 Build-Depends: suitesparse, eigen3, clapack (!osx), ceres Description: g2o: A General Framework for Graph Optimization -Homepage: http://openslam.org/g2o.html +Homepage: https://openslam.org/g2o.html diff --git a/ports/gainput/CONTROL b/ports/gainput/CONTROL index 29ac472c590d5e..65b347dee85215 100644 --- a/ports/gainput/CONTROL +++ b/ports/gainput/CONTROL @@ -1,3 +1,4 @@ Source: gainput Version: 1.0.0-1 +Homepage: https://github.com/jkuhlmann/gainput Description: Gainput is a multiplatform C++ input library, supporting mouse, keyboard and controllers diff --git a/ports/gdal/CONTROL b/ports/gdal/CONTROL index c0b8820b2128df..5df9a7fa252ab0 100644 --- a/ports/gdal/CONTROL +++ b/ports/gdal/CONTROL @@ -1,5 +1,6 @@ Source: gdal Version: 2.4.1-5 +Homepage: https://gdal.org/ Description: The Geographic Data Abstraction Library for reading and writing geospatial raster and vector data. Build-Depends: proj, libpng, geos, sqlite3, curl, expat, libpq, openjpeg, libwebp, libxml2, liblzma, netcdf-c, hdf5, zlib diff --git a/ports/gdcm2/CONTROL b/ports/gdcm2/CONTROL index 88d473b65d88db..e7f43b1609f8ce 100644 --- a/ports/gdcm2/CONTROL +++ b/ports/gdcm2/CONTROL @@ -1,4 +1,5 @@ Source: gdcm2 Version: deprecated +Homepage: https://github.com/malaterre/GDCM Description: This port was renamed to gdcm. The gdcm2 name is deprecated. Build-Depends: gdcm \ No newline at end of file diff --git a/ports/gdk-pixbuf/CONTROL b/ports/gdk-pixbuf/CONTROL index 759dd57b048d82..7fa34b21ad4008 100644 --- a/ports/gdk-pixbuf/CONTROL +++ b/ports/gdk-pixbuf/CONTROL @@ -1,4 +1,5 @@ Source: gdk-pixbuf Version: 2.36.9-3 +Homepage: https://developer.gnome.org/gdk-pixbuf/ Description: Image loading library. Build-Depends: gettext, zlib, libpng, glib diff --git a/ports/geogram/CONTROL b/ports/geogram/CONTROL index 1a3daf4f9779bd..6d449c8829f9e6 100644 --- a/ports/geogram/CONTROL +++ b/ports/geogram/CONTROL @@ -1,5 +1,6 @@ Source: geogram Version: 1.6.9-3 +Homepage: https://gforge.inria.fr/projects/geogram/ Description: Geogram is a programming library of geometric algorithms. Build-Depends: openblas (!osx), clapack (!osx) diff --git a/ports/geographiclib/CONTROL b/ports/geographiclib/CONTROL index da326dc97737d9..0d585a28107899 100644 --- a/ports/geographiclib/CONTROL +++ b/ports/geographiclib/CONTROL @@ -1,3 +1,4 @@ Source: geographiclib Version: 1.47-patch1-5 +Homepage: https://sourceforge.net/projects/geographiclib/ Description: a small set of C++ classes for performing conversions between geographic, UTM, UPS, MGRS, geocentric, and local cartesian coordinates, for gravity (e.g., EGM2008), geoid height, and geomagnetic field (e.g., WMM2010) calculations, and for solving geodesic problems. diff --git a/ports/geos/CONTROL b/ports/geos/CONTROL index cb19bebd9ae409..3366b6a5e6368d 100644 --- a/ports/geos/CONTROL +++ b/ports/geos/CONTROL @@ -1,3 +1,4 @@ Source: geos Version: 3.6.3-3 +Homepage: https://www.osgeo.org/projects/geos/ Description: Geometry Engine Open Source diff --git a/ports/gettext/CONTROL b/ports/gettext/CONTROL index be85f1d661b2ae..a6adfefc63e888 100644 --- a/ports/gettext/CONTROL +++ b/ports/gettext/CONTROL @@ -1,4 +1,5 @@ Source: gettext Version: 0.19-10 +Homepage: https://www.gnu.org/software/gettext/ Description: The GNU gettext utilities are a set of tools that provides a framework to help other GNU packages produce multi-lingual messages. Provides libintl. Build-Depends: libiconv diff --git a/ports/gflags/CONTROL b/ports/gflags/CONTROL index b090f2ba519bcf..4cd423293a8a26 100644 --- a/ports/gflags/CONTROL +++ b/ports/gflags/CONTROL @@ -1,3 +1,4 @@ Source: gflags Version: 2.2.2-1 +Homepage: https://github.com/gflags/gflags Description: A C++ library that implements commandline flags processing diff --git a/ports/giflib/CONTROL b/ports/giflib/CONTROL index 169ddbd927b53c..4de8f8e224a9d3 100644 --- a/ports/giflib/CONTROL +++ b/ports/giflib/CONTROL @@ -1,3 +1,4 @@ Source: giflib Version: 5.1.4-3 +Homepage: https://sourceforge.net/projects/giflib/ Description: A library for reading and writing gif images. diff --git a/ports/gl2ps/CONTROL b/ports/gl2ps/CONTROL index 052835a34f3999..ae8aab8fabcc69 100644 --- a/ports/gl2ps/CONTROL +++ b/ports/gl2ps/CONTROL @@ -1,4 +1,5 @@ Source: gl2ps Version: 1.4.0-1 +Homepage: https://gitlab.onelab.info/gl2ps/gl2ps Description: OpenGL to PostScript Printing Library Build-Depends: freeglut, zlib, libpng diff --git a/ports/gl3w/CONTROL b/ports/gl3w/CONTROL index d2ce04972b7c1b..ff4f512067a105 100644 --- a/ports/gl3w/CONTROL +++ b/ports/gl3w/CONTROL @@ -1,4 +1,5 @@ Source: gl3w Version: 99ed3211 +Homepage: https://github.com/skaslev/gl3w Description: Simple OpenGL core profile loading Build-Depends: opengl-registry diff --git a/ports/glbinding/CONTROL b/ports/glbinding/CONTROL index 5e2d8a63897f2b..016283ca940bbb 100644 --- a/ports/glbinding/CONTROL +++ b/ports/glbinding/CONTROL @@ -1,4 +1,5 @@ Source: glbinding Version: 3.1.0-1 Description: glbinding is an MIT licensed, cross-platform C++ binding for the OpenGL API +Homepage: https://github.com/cginternals/glbinding Build-Depends: egl-registry diff --git a/ports/glew/CONTROL b/ports/glew/CONTROL index 13cc9223040810..8d336de5a3a111 100644 --- a/ports/glew/CONTROL +++ b/ports/glew/CONTROL @@ -1,3 +1,4 @@ -Source: glew -Version: 2.1.0-4 -Description: The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. +Source: glew +Version: 2.1.0-4 +Description: The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. +Homepage: https://github.com/nigels-com/glew diff --git a/ports/glfw3/CONTROL b/ports/glfw3/CONTROL index 96a63e0806180b..361820820e94a2 100644 --- a/ports/glfw3/CONTROL +++ b/ports/glfw3/CONTROL @@ -1,3 +1,4 @@ Source: glfw3 Version: 3.3 +Homepage: https://github.com/glfw/glfw Description: GLFW is a free, Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan application development. It provides a simple, platform-independent API for creating windows, contexts and surfaces, reading input, handling events, etc. diff --git a/ports/glib/CONTROL b/ports/glib/CONTROL index f2a619c9c8b115..e589ba426fbd66 100644 --- a/ports/glib/CONTROL +++ b/ports/glib/CONTROL @@ -1,4 +1,5 @@ Source: glib Version: 2.52.3-14-2 +Homepage: https://developer.gnome.org/glib/ Description: Portable, general-purpose utility library. Build-Depends: zlib, pcre, libffi, gettext, libiconv diff --git a/ports/glibmm/CONTROL b/ports/glibmm/CONTROL index f17df43e1e24b0..4b2b8283f40d80 100644 --- a/ports/glibmm/CONTROL +++ b/ports/glibmm/CONTROL @@ -1,5 +1,5 @@ Source: glibmm Version: 2.52.1-9 Description: This is glibmm, a C++ API for parts of glib that are useful for C++. -Homepage: http://www.gtkmm.org. +Homepage: https://www.gtkmm.org. Build-Depends: zlib, pcre, libffi, gettext, libiconv, glib, libsigcpp diff --git a/ports/glog/CONTROL b/ports/glog/CONTROL index 19b9a35bef370f..21625e159b27dd 100644 --- a/ports/glog/CONTROL +++ b/ports/glog/CONTROL @@ -1,4 +1,5 @@ Source: glog Version: 0.4.0 +Homepage: https://github.com/google/glog Description: C++ implementation of the Google logging module Build-Depends: gflags diff --git a/ports/glslang/CONTROL b/ports/glslang/CONTROL index 8f6bb6de944537..f3a25620c0d1c9 100644 --- a/ports/glslang/CONTROL +++ b/ports/glslang/CONTROL @@ -1,3 +1,4 @@ Source: glslang Version: 2018-03-02-2 +Homepage: https://github.com/KhronosGroup/glslang Description: Khronos reference front-end for GLSL and ESSL, and sample SPIR-V generator diff --git a/ports/gmime/CONTROL b/ports/gmime/CONTROL index 4c11abf2ad77a1..2b1a9842f786a6 100644 --- a/ports/gmime/CONTROL +++ b/ports/gmime/CONTROL @@ -1,4 +1,5 @@ Source: gmime Version: 3.2.3-1 Build-Depends: zlib, glib, libiconv, libidn2 +Homepage: https://developer.gnome.org/gmime/ Description: GMime is a C/C++ library which may be used for the creation and parsing of messages using the Multipurpose Internet Mail Extension (MIME). diff --git a/ports/graphicsmagick/CONTROL b/ports/graphicsmagick/CONTROL index 5b56e636c52677..b2ba96c95cfbd9 100644 --- a/ports/graphicsmagick/CONTROL +++ b/ports/graphicsmagick/CONTROL @@ -2,4 +2,5 @@ Source: graphicsmagick Maintainer: josuegomes@gmail.com Version: 1.3.31-1 Build-Depends: zlib, bzip2, freetype, libjpeg-turbo, libpng, tiff +Homepage: https://sourceforge.net/projects/graphicsmagick/ Description: Image processing library diff --git a/ports/graphite2/CONTROL b/ports/graphite2/CONTROL index f73126c5ad941a..e8af4d4a12887e 100644 --- a/ports/graphite2/CONTROL +++ b/ports/graphite2/CONTROL @@ -1,4 +1,5 @@ Source: graphite2 Version: 1.3.12 +Homepage: https://github.com/silnrsi/graphite Description: Graphite is a "smart font" system developed specifically to handle the complexities of lesser-known languages of the world. Graphite2 is a rework of the original Graphite engine that is faster, smaller, and uses an API that is better suited to the layout architecture of most text-processing applications. \ No newline at end of file diff --git a/ports/grpc/CONTROL b/ports/grpc/CONTROL index 4c73364c5023fa..5edad1a169aa6b 100644 --- a/ports/grpc/CONTROL +++ b/ports/grpc/CONTROL @@ -1,4 +1,5 @@ Source: grpc Version: 1.21.1 Build-Depends: zlib, openssl, protobuf, c-ares (!uwp) +Homepage: https://github.com/grpc/grpc Description: An RPC library and framework diff --git a/ports/gsl-lite/CONTROL b/ports/gsl-lite/CONTROL index dcb7c182c5952c..33149992dd0be8 100644 --- a/ports/gsl-lite/CONTROL +++ b/ports/gsl-lite/CONTROL @@ -1,3 +1,4 @@ Source: gsl-lite Version: 0.28.0 +Homepage: https://github.com/martinmoene/gsl-lite Description: A single-file header-only version of ISO C++ Guideline Support Library (GSL) for C++98, C++11 and later diff --git a/ports/gsl/CONTROL b/ports/gsl/CONTROL index f02ecc2eee346e..af68d6f027b8be 100644 --- a/ports/gsl/CONTROL +++ b/ports/gsl/CONTROL @@ -1,3 +1,4 @@ Source: gsl Version: 2.4-3 +Homepage: https://www.gnu.org/software/gsl/ Description: The GNU Scientific Library is a numerical library for C and C++ programmers diff --git a/ports/gtest/CONTROL b/ports/gtest/CONTROL index 187287cc0e7a1f..7c91eb25315dca 100644 --- a/ports/gtest/CONTROL +++ b/ports/gtest/CONTROL @@ -1,3 +1,4 @@ Source: gtest Version: 2019-01-04-2 +Homepage: https://github.com/google/googletest Description: GoogleTest and GoogleMock testing frameworks. diff --git a/ports/gtk/CONTROL b/ports/gtk/CONTROL index ac0d4764f806dc..56e660c5cbeee3 100644 --- a/ports/gtk/CONTROL +++ b/ports/gtk/CONTROL @@ -1,4 +1,5 @@ Source: gtk Version: 3.22.19-3 +Homepage: https://www.gtk.org/ Description: Portable library for creating graphical user interfaces. Build-Depends: glib, atk, gdk-pixbuf, pango, cairo, libepoxy, gettext diff --git a/ports/gtkmm/CONTROL b/ports/gtkmm/CONTROL index 36bcea3f734818..6ac1eede214b14 100644 --- a/ports/gtkmm/CONTROL +++ b/ports/gtkmm/CONTROL @@ -1,4 +1,5 @@ Source: gtkmm Version: 3.22.2-1 +Homepage: https://www.gtkmm.org/ Description: gtkmm is the official C++ interface for the popular GUI library GTK+. Build-Depends: glib, atk, gtk, gdk-pixbuf, pango, cairo, libepoxy, gettext, glibmm, atkmm, cairomm, pangomm diff --git a/ports/gts/CONTROL b/ports/gts/CONTROL index 0aa1251e4c007d..917d66bf86e43b 100644 --- a/ports/gts/CONTROL +++ b/ports/gts/CONTROL @@ -1,4 +1,5 @@ Source: gts Version: 0.7.6-1 +Homepage: https://github.com/finetjul/gts Description: A Library intended to provide a set of useful functions to deal with 3D surfaces meshed with interconnected triangles Build-Depends: glib diff --git a/ports/guetzli/CONTROL b/ports/guetzli/CONTROL index dd8e765752ebe1..8fe11f58dfe4af 100644 --- a/ports/guetzli/CONTROL +++ b/ports/guetzli/CONTROL @@ -1,4 +1,5 @@ Source: guetzli Version: 2018-07-30-2 +Homepage: https://github.com/google/guetzli Description: Perceptual JPEG encoder Build-Depends: libpng, butteraugli diff --git a/ports/gumbo/CONTROL b/ports/gumbo/CONTROL index 6889b526d32ba9..c6741b93417a92 100644 --- a/ports/gumbo/CONTROL +++ b/ports/gumbo/CONTROL @@ -1,3 +1,4 @@ Source: gumbo Version: 0.10.1-3 +Homepage: https://github.com/google/gumbo-parser Description: An HTML5 parsing library in pure C99 diff --git a/ports/halide/CONTROL b/ports/halide/CONTROL index 4418e56de58c68..cd7008837d701d 100644 --- a/ports/halide/CONTROL +++ b/ports/halide/CONTROL @@ -1,3 +1,4 @@ Source: halide Version: release_2018_02_15-1 +Homepage: https://github.com/halide/Halide Description: Halide is a programming language designed to make it easier to write high-performance image processing code on modern machines. diff --git a/ports/harfbuzz/CONTROL b/ports/harfbuzz/CONTROL index d0e544d7a70e61..39bce80107e13f 100644 --- a/ports/harfbuzz/CONTROL +++ b/ports/harfbuzz/CONTROL @@ -1,6 +1,7 @@ Source: harfbuzz Version: 2.5.1-1 Description: HarfBuzz OpenType text shaping engine +Homepage: https://github.com/behdad/harfbuzz Build-Depends: freetype, ragel, gettext (osx) Default-Features: ucdn diff --git a/ports/hdf5/CONTROL b/ports/hdf5/CONTROL index 19939c95aae0c7..b22ee7b8e60ab7 100644 --- a/ports/hdf5/CONTROL +++ b/ports/hdf5/CONTROL @@ -1,5 +1,6 @@ Source: hdf5 Version: 1.10.5-6 +Homepage: https://www.hdfgroup.org/downloads/hdf5/ Description: HDF5 is a data model, library, and file format for storing and managing data Build-Depends: zlib, szip diff --git a/ports/highfive/CONTROL b/ports/highfive/CONTROL index af4df7993f29ab..6152bdf3d901a8 100644 --- a/ports/highfive/CONTROL +++ b/ports/highfive/CONTROL @@ -1,4 +1,5 @@ Source: highfive Version: 2.0 +Homepage: https://github.com/BlueBrain/HighFive Description: HighFive is a modern C++/C++11 friendly interface for libhdf5 Build-Depends: hdf5 diff --git a/ports/hpx/CONTROL b/ports/hpx/CONTROL index cb25e174b4f8c3..99cc84d6f35846 100644 --- a/ports/hpx/CONTROL +++ b/ports/hpx/CONTROL @@ -1,5 +1,6 @@ Source: hpx Version: 1.3.0-1 Build-Depends: hwloc, boost-accumulators, boost-algorithm, boost-asio, boost-assign, boost-bimap, boost-chrono, boost-config, boost-context, boost-dynamic-bitset, boost-exception, boost-filesystem, boost-iostreams, boost-lockfree, boost-program-options, boost-range, boost-spirit, boost-system, boost-throw-exception, boost-variant, boost-winapi +Homepage: https://github.com/STEllAR-GROUP/hpx Description: The C++ Standards Library for Concurrency and Parallelism HPX is a C++ Standards Library for Concurrency and Parallelism. It implements all of the corresponding facilities as defined by the C++ Standard. Additionally, in HPX we implement functionalities proposed as part of the ongoing C++ standardization process. We also extend the C++ Standard APIs to the distributed case. diff --git a/ports/http-parser/CONTROL b/ports/http-parser/CONTROL index 486b2a78cc23a3..76cf8785935449 100644 --- a/ports/http-parser/CONTROL +++ b/ports/http-parser/CONTROL @@ -1,3 +1,4 @@ Source: http-parser -Version: 2.9.2 +Version: 2.9.2 +Homepage: https://github.com/nodejs/http-parser Description: HTTP Parser. diff --git a/ports/hunspell/CONTROL b/ports/hunspell/CONTROL index 160bab7e6a6471..d907a55362af52 100644 --- a/ports/hunspell/CONTROL +++ b/ports/hunspell/CONTROL @@ -1,3 +1,4 @@ Source: hunspell Version: 1.7.0 +Homepage: https://github.com/hunspell/hunspell Description: The most popular spellchecking library. diff --git a/ports/hwloc/CONTROL b/ports/hwloc/CONTROL index e2c820060b3772..f754a0fd840be9 100644 --- a/ports/hwloc/CONTROL +++ b/ports/hwloc/CONTROL @@ -1,4 +1,5 @@ Source: hwloc Version: 1.11.7-3 +Homepage: https://github.com/open-mpi/hwloc Description: Portable Hardware Locality (hwloc) The Portable Hardware Locality (hwloc) software package provides a portable abstraction (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various system attributes such as cache and memory information as well as the locality of I/O devices such as network interfaces, InfiniBand HCAs or GPUs. diff --git a/ports/hypre/CONTROL b/ports/hypre/CONTROL index c41f309301def2..907e64b87baa37 100644 --- a/ports/hypre/CONTROL +++ b/ports/hypre/CONTROL @@ -1,4 +1,5 @@ Source: hypre Version: 2.11.2-1 +Homepage: https://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods Description: SCALABLE LINEAR SOLVERS AND MULTIGRID METHODS Build-Depends: msmpi diff --git a/ports/icu/CONTROL b/ports/icu/CONTROL index 3fa81fd4d5d613..238ac176e03bdf 100644 --- a/ports/icu/CONTROL +++ b/ports/icu/CONTROL @@ -1,3 +1,4 @@ Source: icu Version: 61.1-7 +Homepage: http://icu-project.org/apiref/icu4c/ Description: Mature and widely used Unicode and localization library. diff --git a/ports/if97/CONTROL b/ports/if97/CONTROL index 6279dea80ad07a..787bc11828b740 100644 --- a/ports/if97/CONTROL +++ b/ports/if97/CONTROL @@ -1,3 +1,4 @@ Source: if97 Version: 2.1.2 +Homepage: https://github.com/CoolProp/IF97 Description: This repository implements the IF97 formulation for the properties of pure water substance. diff --git a/ports/imgui/CONTROL b/ports/imgui/CONTROL index e0843acd76aafe..87364545ac1fd0 100644 --- a/ports/imgui/CONTROL +++ b/ports/imgui/CONTROL @@ -1,3 +1,4 @@ Source: imgui Version: 1.70 +Homepage: https://github.com/ocornut/imgui Description: Bloat-free Immediate Mode Graphical User interface for C++ with minimal dependencies. diff --git a/ports/itk/CONTROL b/ports/itk/CONTROL index 7f7a12251e2cf5..b8ba70d0f3f4ed 100644 --- a/ports/itk/CONTROL +++ b/ports/itk/CONTROL @@ -1,8 +1,9 @@ -Source: itk +Source: itk Version: 5.0.0-1 -Description: Insight Segmentation and Registration Toolkit (ITK) is used for image processing and analysis. -Build-Depends: double-conversion, libjpeg-turbo, zlib, libpng, tiff, expat, eigen3, hdf5[cpp], openjpeg - -Feature: vtk -Description: Build ITKVtkGlue module. -Build-Depends: vtk +Description: Insight Segmentation and Registration Toolkit (ITK) is used for image processing and analysis. +Homepage: https://github.com/InsightSoftwareConsortium/ITK +Build-Depends: double-conversion, libjpeg-turbo, zlib, libpng, tiff, expat, eigen3, hdf5[cpp], openjpeg + +Feature: vtk +Description: Build ITKVtkGlue module. +Build-Depends: vtk diff --git a/ports/jack2/CONTROL b/ports/jack2/CONTROL index e011b2711497be..d665dbe2410530 100644 --- a/ports/jack2/CONTROL +++ b/ports/jack2/CONTROL @@ -1,4 +1,5 @@ Source: jack2 Version: 1.9.12-1 +Homepage: https://github.com/jackaudio/jack2 Description: Cross-platform API that enables device sharing and inter-application audio routing diff --git a/ports/jansson/CONTROL b/ports/jansson/CONTROL index ec808a999114d0..0ebcd2a5a6fa18 100644 --- a/ports/jansson/CONTROL +++ b/ports/jansson/CONTROL @@ -1,3 +1,4 @@ Source: jansson Version: 2.12 +Homepage: https://github.com/akheron/jansson Description: Jansson is a C library for encoding, decoding and manipulating JSON data diff --git a/ports/jasper/CONTROL b/ports/jasper/CONTROL index 6b8ee20c9877e2..858264411e2bc6 100644 --- a/ports/jasper/CONTROL +++ b/ports/jasper/CONTROL @@ -1,4 +1,5 @@ Source: jasper Version: 2.0.16-1 +Homepage: https://github.com/mdadams/jasper Description: Open source implementation of the JPEG-2000 Part-1 standard Build-Depends: libjpeg-turbo diff --git a/ports/jbig2dec/CONTROL b/ports/jbig2dec/CONTROL index 5045673b365a0d..5e11aa037a5d21 100644 --- a/ports/jbig2dec/CONTROL +++ b/ports/jbig2dec/CONTROL @@ -1,3 +1,4 @@ Source: jbig2dec Version: 0.16-1 +Homepage: https://github.com/ArtifexSoftware/jbig2dec Description: a decoder library and example utility implementing the JBIG2 bi-level image compression spec. Also known as ITU T.88 and ISO IEC 14492, and included by reference in Adobe's PDF version 1.4 and later. diff --git a/ports/jbigkit/CONTROL b/ports/jbigkit/CONTROL index f21907db428053..cc0a00aa211a69 100644 --- a/ports/jbigkit/CONTROL +++ b/ports/jbigkit/CONTROL @@ -1,3 +1,4 @@ Source: jbigkit Version: 2.1-3 +Homepage: https://www.cl.cam.ac.uk/~mgk25/jbigkit Description: A software implementation of the JBIG1 data compression standard (ITU-T T.82) diff --git a/ports/jemalloc/CONTROL b/ports/jemalloc/CONTROL index 19d4fbcc078f21..3f6be44a544c71 100644 --- a/ports/jemalloc/CONTROL +++ b/ports/jemalloc/CONTROL @@ -1,4 +1,5 @@ Source: jemalloc Version: 4.3.1-4 +Homepage: https://github.com/jemalloc/jemalloc-cmake Description: jemalloc is a general purpose malloc(3) implementation that emphasizes fragmentation avoidance and scalable concurrency support Build-Depends: diff --git a/ports/jsoncpp/CONTROL b/ports/jsoncpp/CONTROL index 4c7084d8e80684..6bbe46c0e0aaa5 100644 --- a/ports/jsoncpp/CONTROL +++ b/ports/jsoncpp/CONTROL @@ -1,3 +1,4 @@ Source: jsoncpp Version: 1.8.4-1 +Homepage: https://github.com/open-source-parsers/jsoncpp Description: jsoncpp is an implementation of a JSON reader and writer in C++. JSON (JavaScript Object Notation) is a lightweight data-interchange format that it is easy to parse and redeable for human. diff --git a/ports/jsonnet/CONTROL b/ports/jsonnet/CONTROL index c478c789c24692..35c8706585f461 100644 --- a/ports/jsonnet/CONTROL +++ b/ports/jsonnet/CONTROL @@ -1,3 +1,4 @@ Source: jsonnet Version: 2019-05-08 +Homepage: https://github.com/google/jsonnet Description: Jsonnet - The data templating language diff --git a/ports/jxrlib/CONTROL b/ports/jxrlib/CONTROL index 2f8ba2aaf7200a..908778681638f5 100644 --- a/ports/jxrlib/CONTROL +++ b/ports/jxrlib/CONTROL @@ -1,3 +1,4 @@ Source: jxrlib Version: 1.1-6 +Homepage: https://github.com/4creators/jxrlib Description: Open source implementation of the jpegxr image format standard. diff --git a/ports/kd-soap/CONTROL b/ports/kd-soap/CONTROL index 8c534ca82e1b71..b399126c1a311a 100644 --- a/ports/kd-soap/CONTROL +++ b/ports/kd-soap/CONTROL @@ -1,5 +1,5 @@ Source: kd-soap Version: 1.8.0 Description: A Qt-based client-side and server-side SOAP component -Homepage: http://www.kdab.com/products/kd-soap +Homepage: https://www.kdab.com/products/kd-soap Build-Depends: qt5-base diff --git a/ports/kealib/CONTROL b/ports/kealib/CONTROL index 6426fd5fa1c173..9e2b6549c6bec5 100644 --- a/ports/kealib/CONTROL +++ b/ports/kealib/CONTROL @@ -1,6 +1,7 @@ Source: kealib Version: 1.4.11 Build-Depends: hdf5[cpp], zlib, szip +Homepage: https://bitbucket.org/chchrsc/kealib Description: kealib is gdal model using HDF5 standard. Feature: parallel diff --git a/ports/kf5plotting/CONTROL b/ports/kf5plotting/CONTROL index ac2b98d6f3b0ed..0b75bd8c1c52e7 100644 --- a/ports/kf5plotting/CONTROL +++ b/ports/kf5plotting/CONTROL @@ -1,4 +1,5 @@ Source: kf5plotting Version: 5.58.0 +Homepage: https://api.kde.org/frameworks/kplotting/html/index.html Description: Lightweight plotting framework Build-Depends: ecm, qt5-base diff --git a/ports/lcm/CONTROL b/ports/lcm/CONTROL index 2621e23c598e5f..1eb187ef7add1b 100644 --- a/ports/lcm/CONTROL +++ b/ports/lcm/CONTROL @@ -1,5 +1,6 @@ Source: lcm Version: 1.4.0 Build-Depends: glib +Homepage: https://github.com/lcm-proj/lcm Description: Lightweight Communications and Marshalling (LCM) LCM is a set of libraries and tools for message passing and data marshalling, targeted at real-time systems where high-bandwidth and low latency are critical. It provides a publish/subscribe message passing model and automatic marshalling/unmarshalling code generation with bindings for applications in a variety of programming languages. diff --git a/ports/lcms/CONTROL b/ports/lcms/CONTROL index 96bb6e65808623..b42c827d460b26 100644 --- a/ports/lcms/CONTROL +++ b/ports/lcms/CONTROL @@ -1,4 +1,5 @@ Source: lcms Version: 2.9 Build-Depends: +Homepage: https://github.com/mm2/Little-CMS Description: Little CMS. diff --git a/ports/leptonica/CONTROL b/ports/leptonica/CONTROL index 5fd60614d129b2..2f48aa0d231f72 100644 --- a/ports/leptonica/CONTROL +++ b/ports/leptonica/CONTROL @@ -1,4 +1,5 @@ Source: leptonica Version: 1.76.0 +Homepage: https://github.com/DanBloomberg/leptonica Description: An open source library containing software that is broadly useful for image processing and image analysis applications Build-Depends: libjpeg-turbo, zlib, libpng, tiff, giflib diff --git a/ports/leveldb/CONTROL b/ports/leveldb/CONTROL index 5f95fda4b7f734..d1cc26aab0b615 100644 --- a/ports/leveldb/CONTROL +++ b/ports/leveldb/CONTROL @@ -1,3 +1,4 @@ Source: leveldb Version: 2017-10-25-8b1cd3753b184341e837b30383832645135d3d73-3 +Homepage: https://github.com/bitcoin-core/leveldb Description: LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. diff --git a/ports/libaiff/CONTROL b/ports/libaiff/CONTROL index 0ed9a9cf23cf9f..6dbed3fcf31670 100644 --- a/ports/libaiff/CONTROL +++ b/ports/libaiff/CONTROL @@ -1,3 +1,4 @@ Source: libaiff Version: 5.0-1 +Homepage: https://sourceforge.net/projects/aifftools Description: LibAiff is an open-source library, providing C applications transparent read & write operations for Audio Interchange File Format (AIFF) files, with the goal of supporting all of its features diff --git a/ports/libarchive/CONTROL b/ports/libarchive/CONTROL index 7cb34cd94724a5..b39593aa93eb2a 100644 --- a/ports/libarchive/CONTROL +++ b/ports/libarchive/CONTROL @@ -1,5 +1,6 @@ Source: libarchive Version: 3.3.3-3 +Homepage: https://github.com/libarchive/libarchive Description: Library for reading and writing streaming archives Build-Depends: zlib Default-Features: bzip2, libxml2, lz4, lzma, lzo, openssl diff --git a/ports/libbson/CONTROL b/ports/libbson/CONTROL index 21c9f9fdd6816c..eaa533a6150986 100644 --- a/ports/libbson/CONTROL +++ b/ports/libbson/CONTROL @@ -1,3 +1,4 @@ Source: libbson Version: 1.14.0 Description: libbson is a library providing useful routines related to building, parsing, and iterating BSON documents. +Homepage: https://github.com/mongodb/libbson diff --git a/ports/libcds/CONTROL b/ports/libcds/CONTROL index 1707512fde3b02..5c306231896c2c 100644 --- a/ports/libcds/CONTROL +++ b/ports/libcds/CONTROL @@ -1,4 +1,5 @@ Source: libcds Version: 2.3.3 Build-Depends: boost-system, boost-thread +Homepage: https://github.com/khizmax/libcds Description: a collection of concurrent containers that don't require external (manual) synchronization for shared access, and safe memory reclamation (SMR) algorithms like Hazard Pointer and user-space RCU that is used as an epoch-based SMR. diff --git a/ports/libconfig/CONTROL b/ports/libconfig/CONTROL index fceb37bd3657a5..8b64a280e0d7b0 100644 --- a/ports/libconfig/CONTROL +++ b/ports/libconfig/CONTROL @@ -1,3 +1,4 @@ Source: libconfig Version: 1.7.2 +Homepage: https://github.com/hyperrealm/libconfig Description: C/C++ library for processing configuration files diff --git a/ports/libdatrie/CONTROL b/ports/libdatrie/CONTROL index 8b9747fd762f3d..587063ec5e6e56 100644 --- a/ports/libdatrie/CONTROL +++ b/ports/libdatrie/CONTROL @@ -1,4 +1,5 @@ Source: libdatrie Version: 0.2.10-2 +Homepage: https://linux.thai.net/pub/ThaiLinux/software/libthai Description: implementation of double-array structure for representing trie Build-Depends: libiconv diff --git a/ports/libdisasm/CONTROL b/ports/libdisasm/CONTROL index e55dfab7db8e3e..dae49116db0423 100644 --- a/ports/libdisasm/CONTROL +++ b/ports/libdisasm/CONTROL @@ -1,3 +1,4 @@ Source: libdisasm Version: 0.23-2 +Homepage: https://sourceforge.net/projects/bastard Description: x86 Disassembler Library. diff --git a/ports/libepoxy/CONTROL b/ports/libepoxy/CONTROL index 876fa0ab9c1c2b..acab175c51639b 100644 --- a/ports/libepoxy/CONTROL +++ b/ports/libepoxy/CONTROL @@ -1,3 +1,4 @@ Source: libepoxy -Version: 1.5.3 +Version: 1.5.3 +Homepage: https://github.com/anholt/libepoxy Description: Epoxy is a library for handling OpenGL function pointer management for you diff --git a/ports/libevent/CONTROL b/ports/libevent/CONTROL index e9577f8038f9ed..2534bf1f6a6e32 100644 --- a/ports/libevent/CONTROL +++ b/ports/libevent/CONTROL @@ -1,4 +1,5 @@ Source: libevent Version: 2.1.8-5 Build-Depends: openssl +Homepage: https://github.com/libevent/libevent Description: An event notification library diff --git a/ports/libexif/CONTROL b/ports/libexif/CONTROL index 427d907f210ea9..d99eb31b93fbdc 100644 --- a/ports/libexif/CONTROL +++ b/ports/libexif/CONTROL @@ -1,3 +1,4 @@ Source: libexif Version: 0.6.21-1 +Homepage: https://sourceforge.net/projects/libexif/ Description: a library for parsing, editing, and saving EXIF data diff --git a/ports/libffi/CONTROL b/ports/libffi/CONTROL index 882d7ca946418c..b393491e1173d2 100644 --- a/ports/libffi/CONTROL +++ b/ports/libffi/CONTROL @@ -1,3 +1,4 @@ Source: libffi Version: 3.1-5 +Homepage: https://github.com/libffi/libffi Description: Portable, high level programming interface to various calling conventions diff --git a/ports/libflac/CONTROL b/ports/libflac/CONTROL index afdb70cbe267c5..53ec5a95bd7f7c 100644 --- a/ports/libflac/CONTROL +++ b/ports/libflac/CONTROL @@ -1,4 +1,5 @@ Source: libflac Version: 1.3.2-6 +Homepage: https://xiph.org/flac/ Description: Library for manipulating FLAC files Build-Depends: libogg diff --git a/ports/libfreenect2/CONTROL b/ports/libfreenect2/CONTROL index 7f6ba98dfa0153..82befaac0d0b72 100644 --- a/ports/libfreenect2/CONTROL +++ b/ports/libfreenect2/CONTROL @@ -1,4 +1,5 @@ Source: libfreenect2 Version: 0.2.0-1 Build-Depends: libusb, libjpeg-turbo +Homepage: https://github.com/OpenKinect/libfreenect2 Description: Open source drivers for the Kinect for Windows v2 device diff --git a/ports/libgd/CONTROL b/ports/libgd/CONTROL index 56f297798b2227..1d16b2f27ad2be 100644 --- a/ports/libgd/CONTROL +++ b/ports/libgd/CONTROL @@ -1,5 +1,6 @@ Source: libgd Version: 2.2.5-3 +Homepage: https://github.com/libgd/libgd Description: Open source code library for the dynamic creation of images by programmers. Default-Features: fontconfig, freetype, jpeg, png, tiff, webp diff --git a/ports/libgeotiff/CONTROL b/ports/libgeotiff/CONTROL index 28cbee52d53a5a..2e8d4836c19d7b 100644 --- a/ports/libgeotiff/CONTROL +++ b/ports/libgeotiff/CONTROL @@ -1,4 +1,5 @@ Source: libgeotiff Version: 1.4.2-9 +Homepage: https://download.osgeo.org/geotiff/libgeotiff Description: Libgeotiff is an open source library normally hosted on top of libtiff for reading, and writing GeoTIFF information tags. Build-Depends: tiff, proj4, zlib, libjpeg-turbo diff --git a/ports/libgit2/CONTROL b/ports/libgit2/CONTROL index 71ba1a4c95375f..5c396d473d22b7 100644 --- a/ports/libgit2/CONTROL +++ b/ports/libgit2/CONTROL @@ -1,4 +1,5 @@ Source: libgit2 -Version: 0.28.2 +Version: 0.28.2 +Homepage: https://github.com/libgit2/libgit2 Build-Depends: openssl (!windows&&!uwp) Description: Git linkable library diff --git a/ports/libgta/CONTROL b/ports/libgta/CONTROL index 344c44c4d001ec..d338243cf12ab6 100644 --- a/ports/libgta/CONTROL +++ b/ports/libgta/CONTROL @@ -1,4 +1,5 @@ Source: libgta Version: 1.0.8-1 +Homepage: https://download.savannah.nongnu.org/releases/gta Description: Libgta is a portable library that implements the Generic Tagged Array (GTA) file format. Build-Depends: bzip2, zlib, liblzma diff --git a/ports/libharu/CONTROL b/ports/libharu/CONTROL index 72778aa6bda60b..33fa2e3cb33bd7 100644 --- a/ports/libharu/CONTROL +++ b/ports/libharu/CONTROL @@ -1,4 +1,5 @@ Source: libharu Version: 2017-08-15-d84867ebf9f-6 +Homepage: https://github.com/libharu/libharu Description: libharu - free PDF library Build-Depends: zlib, libpng diff --git a/ports/libiconv/CONTROL b/ports/libiconv/CONTROL index a5e4d0cc4e929f..c24bac49d2745c 100644 --- a/ports/libiconv/CONTROL +++ b/ports/libiconv/CONTROL @@ -1,3 +1,4 @@ Source: libiconv Version: 1.15-5 +Homepage: https://www.gnu.org/software/libiconv/ Description: GNU Unicode text conversion diff --git a/ports/libidn2/CONTROL b/ports/libidn2/CONTROL index 5fcac82b636fa1..01d89d69bfb9b6 100644 --- a/ports/libidn2/CONTROL +++ b/ports/libidn2/CONTROL @@ -1,4 +1,5 @@ Source: libidn2 Version: 2.1.1-1 Build-Depends: libiconv +Homepage: https://www.gnu.org/software/libidn/ Description: GNU Libidn is an implementation of the Stringprep, Punycode and IDNA 2003 specifications. Libidn's purpose is to encode and decode internationalized domain names. diff --git a/ports/libjpeg-turbo/CONTROL b/ports/libjpeg-turbo/CONTROL index fca49054240bb0..d64af9bb4c2a51 100644 --- a/ports/libjpeg-turbo/CONTROL +++ b/ports/libjpeg-turbo/CONTROL @@ -1,3 +1,4 @@ Source: libjpeg-turbo Version: 2.0.2 +Homepage: https://github.com/libjpeg-turbo/libjpeg-turbo Description: libjpeg-turbo is a JPEG image codec that uses SIMD instructions (MMX, SSE2, NEON, AltiVec) to accelerate baseline JPEG compression and decompression on x86, x86-64, ARM, and PowerPC systems. diff --git a/ports/libkml/CONTROL b/ports/libkml/CONTROL index b5ea568c72255d..7e54d2c1cd24af 100644 --- a/ports/libkml/CONTROL +++ b/ports/libkml/CONTROL @@ -1,4 +1,5 @@ Source: libkml Version: 1.3.0-2 +Homepage: https://github.com/libkml/libkml Description: Reference implementation of OGC KML 2.2 Build-Depends: zlib, expat, minizip, uriparser, boost-smart-ptr diff --git a/ports/liblo/CONTROL b/ports/liblo/CONTROL index 5e05c95e3ed723..b2fc4def749e77 100644 --- a/ports/liblo/CONTROL +++ b/ports/liblo/CONTROL @@ -1,3 +1,4 @@ Source: liblo Version: 0.30 +Homepage: https://github.com/radarsat1/liblo Description: liblo is an implementation of the Open Sound Control protocol for POSIX systems \ No newline at end of file diff --git a/ports/liblzma/CONTROL b/ports/liblzma/CONTROL index 1a2ee8147c45a3..967b3b16c877ee 100644 --- a/ports/liblzma/CONTROL +++ b/ports/liblzma/CONTROL @@ -1,3 +1,4 @@ Source: liblzma Version: 5.2.4-2 +Homepage: https://github.com/xz-mirror/xz Description: Compression library with an API similar to that of zlib. diff --git a/ports/libmariadb/CONTROL b/ports/libmariadb/CONTROL index 147cf11a24d5ae..986eb5d231142d 100644 --- a/ports/libmariadb/CONTROL +++ b/ports/libmariadb/CONTROL @@ -1,3 +1,4 @@ Source: libmariadb -Version: 3.0.10-1 +Version: 3.0.10-1 +Homepage: https://github.com/MariaDB/mariadb-connector-c Description: MariaDB Connector/C is used to connect C/C++ applications to MariaDB and MySQL databases diff --git a/ports/libmicrohttpd/CONTROL b/ports/libmicrohttpd/CONTROL index 2c24d44976fa52..8bc6ac22912375 100644 --- a/ports/libmicrohttpd/CONTROL +++ b/ports/libmicrohttpd/CONTROL @@ -1,3 +1,4 @@ Source: libmicrohttpd Version: 0.9.63 +Homepage: https://www.gnu.org/software/libmicrohttpd/ Description: GNU libmicrohttpd is a small C library that is supposed to make it easy to run an HTTP server as part of another application diff --git a/ports/libmikmod/CONTROL b/ports/libmikmod/CONTROL index 820a861c6c445d..57d399a268ec66 100644 --- a/ports/libmikmod/CONTROL +++ b/ports/libmikmod/CONTROL @@ -1,4 +1,5 @@ Source: libmikmod Version: 3.3.11.1-2 +Homepage: https://sourceforge.net/projects/mikmod/ Description: Mikmod is a module player and library supporting many formats, including mod, s3m, it, and xm. Build-Depends: openal-soft diff --git a/ports/libmodplug/CONTROL b/ports/libmodplug/CONTROL index 2a6cb4638ce5fb..c486d4eb91eacd 100644 --- a/ports/libmodplug/CONTROL +++ b/ports/libmodplug/CONTROL @@ -1,3 +1,4 @@ Source: libmodplug Version: 0.8.9.0-4 +Homepage: https://github.com/Konstanty/libmodplug Description: The ModPlug mod file playing library. diff --git a/ports/libmspack/CONTROL b/ports/libmspack/CONTROL index cf08e5acc2350b..de476a430ce621 100644 --- a/ports/libmspack/CONTROL +++ b/ports/libmspack/CONTROL @@ -1,4 +1,5 @@ Source: libmspack Version: 0.10.1 Build-Depends: +Homepage: https://www.cabextract.org.uk/libmspack Description: libmspack is a portable library for some loosely related Microsoft compression formats. diff --git a/ports/libmupdf/CONTROL b/ports/libmupdf/CONTROL index ea253427f459e9..4de343cb30d02d 100644 --- a/ports/libmupdf/CONTROL +++ b/ports/libmupdf/CONTROL @@ -1,4 +1,5 @@ Source: libmupdf Version: 1.12.0-2 Build-Depends: freetype, libjpeg-turbo, harfbuzz, zlib, curl, glfw3, openjpeg, jbig2dec +Homepage: https://github.com/ArtifexSoftware/mupdf Description: a lightweight PDF, XPS, and E-book library diff --git a/ports/libmysql/CONTROL b/ports/libmysql/CONTROL index a6f97e1fe2ee27..37c42943eb52f3 100644 --- a/ports/libmysql/CONTROL +++ b/ports/libmysql/CONTROL @@ -1,4 +1,5 @@ Source: libmysql Version: 8.0.4-4 +Homepage: https://github.com/mysql/mysql-server Build-Depends: boost-algorithm, boost-geometry, boost-optional, boost-functional, boost-graph, openssl, icu, libevent, liblzma, lz4, zlib Description: A MySQL client library for C development. diff --git a/ports/libnice/CONTROL b/ports/libnice/CONTROL index 7a33f14239d370..2d542c41d9d788 100644 --- a/ports/libnice/CONTROL +++ b/ports/libnice/CONTROL @@ -1,4 +1,5 @@ Source: libnice Version: 0.1.15 +Homepage: https://nice.freedesktop.org Description: Libnice is an implementation of the IETF's Interactive Connectivity Establishment (ICE) standard (RFC 5245) and the Session Traversal Utilities for NAT (STUN) standard (RFC 5389). Build-Depends: glib, openssl diff --git a/ports/libodb-mysql/CONTROL b/ports/libodb-mysql/CONTROL index 3a728cb581d5ba..fe5a28e8acf48f 100644 --- a/ports/libodb-mysql/CONTROL +++ b/ports/libodb-mysql/CONTROL @@ -1,4 +1,5 @@ Source: libodb-mysql Version: 2.4.0-2 +Homepage: https://www.codesynthesis.com/products/odb/ Description: MySQL support for the ODB ORM library Build-Depends: libodb, libmysql \ No newline at end of file diff --git a/ports/libodb-pgsql/CONTROL b/ports/libodb-pgsql/CONTROL index d6be72f0841516..d35291135e582a 100644 --- a/ports/libodb-pgsql/CONTROL +++ b/ports/libodb-pgsql/CONTROL @@ -1,4 +1,5 @@ Source: libodb-pgsql Version: 2.4.0-2 +Homepage: https://www.codesynthesis.com/products/odb/ Description: Description: PostgreSQL support for the ODB ORM library Build-Depends: libodb, libpq diff --git a/ports/libodb-sqlite/CONTROL b/ports/libodb-sqlite/CONTROL index e523de989a70ff..a8d9ef41f22723 100644 --- a/ports/libodb-sqlite/CONTROL +++ b/ports/libodb-sqlite/CONTROL @@ -1,4 +1,5 @@ Source: libodb-sqlite Version: 2.4.0-3 +Homepage: https://www.codesynthesis.com/products/odb/ Description: Sqlite support for the ODB ORM library Build-Depends: libodb, sqlite3 diff --git a/ports/libodb/CONTROL b/ports/libodb/CONTROL index 9e963c89bacb79..049a1bd1273d36 100644 --- a/ports/libodb/CONTROL +++ b/ports/libodb/CONTROL @@ -1,3 +1,4 @@ Source: libodb Version: 2.4.0-4 +Homepage: https://www.codesynthesis.com/products/odb/ Description: ODB library, base runtime for the ODB ORM solution diff --git a/ports/libogg/CONTROL b/ports/libogg/CONTROL index 3d52a9dcac2241..abce418396c291 100644 --- a/ports/libogg/CONTROL +++ b/ports/libogg/CONTROL @@ -1,3 +1,4 @@ -Source: libogg -Version: 1.3.3-3 -Description: Ogg is a multimedia container format, and the native file and stream format for the Xiph.org multimedia codecs. +Source: libogg +Version: 1.3.3-3 +Description: Ogg is a multimedia container format, and the native file and stream format for the Xiph.org multimedia codecs. +Homepage: https://github.com/xiph/ogg diff --git a/ports/libopenmpt/CONTROL b/ports/libopenmpt/CONTROL index b12a2ee6402942..32fa988d1366ac 100644 --- a/ports/libopenmpt/CONTROL +++ b/ports/libopenmpt/CONTROL @@ -1,4 +1,5 @@ Source: libopenmpt Version: 2017-01-28-cf2390140 +Homepage: https://github.com/OpenMPT/openmpt Description: a library to render tracker music Build-Depends: zlib, mpg123, libogg, libvorbis, portaudio, libflac diff --git a/ports/libopusenc/CONTROL b/ports/libopusenc/CONTROL index 9ca75cde2d9e25..844b22d499bddf 100644 --- a/ports/libopusenc/CONTROL +++ b/ports/libopusenc/CONTROL @@ -1,4 +1,5 @@ Source: libopusenc Version: 0.2.1 +Homepage: https://github.com/xiph/libopusenc Description: Library for encoding .opus audio files and live streams. Build-Depends: opus diff --git a/ports/libp7-baical/CONTROL b/ports/libp7-baical/CONTROL index 8369b65f413767..698334f58b313a 100644 --- a/ports/libp7-baical/CONTROL +++ b/ports/libp7-baical/CONTROL @@ -1,3 +1,4 @@ Source: libp7-baical Version: 4.4-4 +Homepage: https://baical.net/ Description: P7 is a library for high-speed sending telemetry & trace data from application diff --git a/ports/libpng-apng/CONTROL b/ports/libpng-apng/CONTROL index e6b75f486b246b..cb199b9fe230f6 100644 --- a/ports/libpng-apng/CONTROL +++ b/ports/libpng-apng/CONTROL @@ -1,4 +1,5 @@ Source: libpng-apng Version: 1.6.37 Build-Depends: zlib +Homepage: https://github.com/glennrp/libpng Description: libpng-apng is a library implementing an interface for reading and writing (A)PNG ((Animated) Portable Network Graphics) format files. This is backward compatible with the regular libpng, both in library usage and format. diff --git a/ports/libpng/CONTROL b/ports/libpng/CONTROL index 1baecccf3b183e..1b07ce1e25338a 100644 --- a/ports/libpng/CONTROL +++ b/ports/libpng/CONTROL @@ -1,4 +1,5 @@ Source: libpng Version: 1.6.37-1 Build-Depends: zlib +Homepage: https://github.com/glennrp/libpng Description: libpng is a library implementing an interface for reading and writing PNG (Portable Network Graphics) format files. diff --git a/ports/libpq/CONTROL b/ports/libpq/CONTROL index 54b2259e881d26..f6c0ce34ea631c 100644 --- a/ports/libpq/CONTROL +++ b/ports/libpq/CONTROL @@ -1,4 +1,5 @@ Source: libpq Version: 9.6.1-7 +Homepage: https://www.postgresql.org/ Description: The official database access API of postgresql Build-Depends: openssl, zlib (linux) diff --git a/ports/libpqxx/CONTROL b/ports/libpqxx/CONTROL index 1b7bc76497ef53..8653afe5a0e98c 100644 --- a/ports/libpqxx/CONTROL +++ b/ports/libpqxx/CONTROL @@ -1,4 +1,5 @@ Source: libpqxx Version: 6.4.4 +Homepage: https://github.com/jtv/libpqxx Description: The official C++ client API for PostgreSQL Build-Depends: libpq diff --git a/ports/libqrencode/CONTROL b/ports/libqrencode/CONTROL index c2c126cad5dd04..9bfd8fa85842d0 100644 --- a/ports/libqrencode/CONTROL +++ b/ports/libqrencode/CONTROL @@ -1,4 +1,5 @@ Source: libqrencode Version: 4.0.2 Build-Depends: libpng, libiconv +Homepage: https://github.com/fukuchi/libqrencode Description: libqrencode - a fast and compact QR Code encoding library diff --git a/ports/librabbitmq/CONTROL b/ports/librabbitmq/CONTROL index afd552b9bfd8f7..38287971d47660 100644 --- a/ports/librabbitmq/CONTROL +++ b/ports/librabbitmq/CONTROL @@ -1,4 +1,5 @@ Source: librabbitmq Version: 0.9.0 Build-Depends: openssl +Homepage: https://github.com/alanxz/rabbitmq-c Description: A C-language AMQP client library for use with v2.0+ of the RabbitMQ broker. diff --git a/ports/libraw/CONTROL b/ports/libraw/CONTROL index 1a13a37d931577..1d0c172032f434 100644 --- a/ports/libraw/CONTROL +++ b/ports/libraw/CONTROL @@ -1,4 +1,5 @@ Source: libraw Version: 201903-1 Build-Depends: lcms, jasper +Homepage: https://www.libraw.org Description: raw image decoder library diff --git a/ports/librtmp/CONTROL b/ports/librtmp/CONTROL index 957f5ee164d988..f43270e5d73c3c 100644 --- a/ports/librtmp/CONTROL +++ b/ports/librtmp/CONTROL @@ -1,4 +1,5 @@ Source: librtmp Version: 2.4-1 Build-Depends: zlib, openssl +Homepage: https://rtmpdump.mplayerhq.hu Description: RTMPDump Real-Time Messaging Protocol API diff --git a/ports/libsamplerate/CONTROL b/ports/libsamplerate/CONTROL index d8a8f5f4e26381..dc0bf20dc25fda 100644 --- a/ports/libsamplerate/CONTROL +++ b/ports/libsamplerate/CONTROL @@ -1,3 +1,4 @@ Source: libsamplerate Version: 0.1.9.0 +Homepage: https://www.mega-nerd.com/SRC Description: Sample Rate Converter for audio diff --git a/ports/libsndfile/CONTROL b/ports/libsndfile/CONTROL index 657a24424e53ba..91a28e6b34bbe3 100644 --- a/ports/libsndfile/CONTROL +++ b/ports/libsndfile/CONTROL @@ -1,6 +1,7 @@ Source: libsndfile Version: 1.0.29-6830c42-7 Description: Library to read, write and manipulate many soundfile types. Authored by Eric de Castro Lopo +Homepage: https://github.com/erikd/libsndfile Default-Features: external-libs Feature: external-libs diff --git a/ports/libsodium/CONTROL b/ports/libsodium/CONTROL index cff52a1b2df1bc..9a7a7e3bace15a 100644 --- a/ports/libsodium/CONTROL +++ b/ports/libsodium/CONTROL @@ -1,3 +1,4 @@ Source: libsodium Version: 1.0.17-3 Description: A modern and easy-to-use crypto library +Homepage: https://github.com/jedisct1/libsodium diff --git a/ports/libspatialite/CONTROL b/ports/libspatialite/CONTROL index c535d33e1bdb4d..55d3f4577614a1 100644 --- a/ports/libspatialite/CONTROL +++ b/ports/libspatialite/CONTROL @@ -1,5 +1,6 @@ Source: libspatialite Version: 4.3.0a-3 +Homepage: https://www.gaia-gis.it/gaia-sins/libspatialite-sources Description: SpatiaLite is an open source library intended to extend the SQLite core to support fully fledged Spatial SQL capabilities. Build-Depends: libxml2, sqlite3, geos, proj4, zlib, freexl, libiconv diff --git a/ports/libssh/CONTROL b/ports/libssh/CONTROL index 9f652f46143c5c..a819253d075168 100644 --- a/ports/libssh/CONTROL +++ b/ports/libssh/CONTROL @@ -1,5 +1,6 @@ Source: libssh Version: 0.7.6-1 +Homepage: https://www.libssh.org/ Description: libssh is a multiplatform C library implementing the SSHv2 and SSHv1 protocol on client and server side Build-Depends: openssl diff --git a/ports/libssh2/CONTROL b/ports/libssh2/CONTROL index 79cca78675fb76..b8579332e4c77b 100644 --- a/ports/libssh2/CONTROL +++ b/ports/libssh2/CONTROL @@ -1,4 +1,5 @@ Source: libssh2 Version: 1.8.2 Build-Depends: zlib, openssl +Homepage: https://www.libssh2.org Description: The SSH library diff --git a/ports/libstemmer/CONTROL b/ports/libstemmer/CONTROL index a5275ea7193d20..a1949a2be6bc6d 100644 --- a/ports/libstemmer/CONTROL +++ b/ports/libstemmer/CONTROL @@ -1,3 +1,4 @@ Source: libstemmer Version: 2017-9-4 +Homepage: https://snowball.tartarus.org/ Description: Snowball is a small string processing language designed for creating stemming algorithms for use in Information Retrieval diff --git a/ports/libtheora/CONTROL b/ports/libtheora/CONTROL index 114d42b0553f86..6c5f93b2ccaacd 100644 --- a/ports/libtheora/CONTROL +++ b/ports/libtheora/CONTROL @@ -1,4 +1,5 @@ Source: libtheora Version: 1.2.0alpha1-20170719~vcpkg1-3 +Homepage: https://github.com/xiph/theora Description: Theora is a free and open video compression format from the Xiph.org Foundation. Build-Depends: libogg diff --git a/ports/libtorrent/CONTROL b/ports/libtorrent/CONTROL index 7712808c05695e..2fe8e85ed6c351 100644 --- a/ports/libtorrent/CONTROL +++ b/ports/libtorrent/CONTROL @@ -1,4 +1,5 @@ Source: libtorrent Version: 2019-04-19 +Homepage: https://github.com/arvidn/libtorrent Description: An efficient feature complete C++ BitTorrent implementation Build-Depends: openssl, boost-system, boost-date-time, boost-chrono, boost-random, boost-asio, boost-crc, boost-config, boost-iterator, boost-scope-exit, boost-multiprecision diff --git a/ports/libudis86/CONTROL b/ports/libudis86/CONTROL index 661ad785956af5..8e67b89cc4261d 100644 --- a/ports/libudis86/CONTROL +++ b/ports/libudis86/CONTROL @@ -1,3 +1,4 @@ Source: libudis86 Version: 2018-01-28-56ff6c87 +Homepage: https://github.com/vmt/udis86 Description: Disassembler Library for x86 and x86-64 diff --git a/ports/libunibreak/CONTROL b/ports/libunibreak/CONTROL index 76f9b3432d0c8c..12e3933229107a 100644 --- a/ports/libunibreak/CONTROL +++ b/ports/libunibreak/CONTROL @@ -1,3 +1,4 @@ Source: libunibreak -Version: 4.2 +Version: 4.2 +Homepage: https://github.com/adah1972/libunibreak Description: an implementation of the line breaking and word breaking algorithms as described in [Unicode Standard Annex 14] 1 and [Unicode Standard Annex 29] 2. Check the project's [home page] 3 for up-to-date information. diff --git a/ports/libusb-win32/CONTROL b/ports/libusb-win32/CONTROL index 17a57128703c2f..a85b6a11cbe121 100644 --- a/ports/libusb-win32/CONTROL +++ b/ports/libusb-win32/CONTROL @@ -1,3 +1,4 @@ Source: libusb-win32 Version: 1.2.6.0-2 +Homepage: https://sourceforge.net/projects/libusb-win32 Description: Allows user space applications to access many USB device on Windows. diff --git a/ports/libusb/CONTROL b/ports/libusb/CONTROL index f7eabbc225f09e..ecd2301447886a 100644 --- a/ports/libusb/CONTROL +++ b/ports/libusb/CONTROL @@ -1,3 +1,4 @@ Source: libusb Version: 1.0.22-2 +Homepage: https://github.com/libusb/libusb Description: a cross-platform library to access USB devices diff --git a/ports/libuv/CONTROL b/ports/libuv/CONTROL index 79033b5a0ebf0f..f50e6fbeac149c 100644 --- a/ports/libuv/CONTROL +++ b/ports/libuv/CONTROL @@ -1,3 +1,4 @@ Source: libuv Version: 1.29.1 +Homepage: https://github.com/libuv/libuv Description: libuv is a multi-platform support library with a focus on asynchronous I/O. diff --git a/ports/libvorbis/CONTROL b/ports/libvorbis/CONTROL index 780d94a25d414d..33a30095753f8a 100644 --- a/ports/libvorbis/CONTROL +++ b/ports/libvorbis/CONTROL @@ -1,4 +1,5 @@ Source: libvorbis Version: 1.3.6-9eadecc-3 +Homepage: https://github.com/xiph/vorbis Description: Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format. Build-Depends: libogg diff --git a/ports/libvpx/CONTROL b/ports/libvpx/CONTROL index fabd020953b89c..5aa726c1e6a816 100644 --- a/ports/libvpx/CONTROL +++ b/ports/libvpx/CONTROL @@ -1,3 +1,4 @@ Source: libvpx Version: 1.7.0-3 +Homepage: https://github.com/webmproject/libvpx Description: The reference software implementation for the video coding formats VP8 and VP9. diff --git a/ports/libwebm/CONTROL b/ports/libwebm/CONTROL index 9634893b343b67..c2d9d878f75b34 100644 --- a/ports/libwebm/CONTROL +++ b/ports/libwebm/CONTROL @@ -1,3 +1,4 @@ Source: libwebm Version: 1.0.0.27-5 +Homepage: https://github.com/webmproject/libwebm Description: WebM File Parser diff --git a/ports/libwebp/CONTROL b/ports/libwebp/CONTROL index f4f01570a5758c..a22b389b49e729 100644 --- a/ports/libwebp/CONTROL +++ b/ports/libwebp/CONTROL @@ -1,5 +1,6 @@ Source: libwebp Version: 1.0.2-4 +Homepage: https://github.com/webmproject/libwebp Description: Lossy compression of digital photographic images. Build-Depends: opengl diff --git a/ports/libwebsockets/CONTROL b/ports/libwebsockets/CONTROL index 449b34fc53ece3..97a755677d4244 100644 --- a/ports/libwebsockets/CONTROL +++ b/ports/libwebsockets/CONTROL @@ -1,4 +1,5 @@ Source: libwebsockets Version: 3.1.0 Build-Depends: zlib, openssl +Homepage: https://github.com/warmcat/libwebsockets Description: Libwebsockets is a lightweight pure C library built to use minimal CPU and memory resources, and provide fast throughput in both directions as client or server. diff --git a/ports/libxml2/CONTROL b/ports/libxml2/CONTROL index d4b6c6b1b72b9b..7a4b02ceaf3887 100644 --- a/ports/libxml2/CONTROL +++ b/ports/libxml2/CONTROL @@ -1,4 +1,5 @@ Source: libxml2 Version: 2.9.9-4 +Homepage: https://xmlsoft.org/ Description: Libxml2 is the XML C parser and toolkit developed for the Gnome project (but usable outside of the Gnome platform) Build-Depends: zlib, libiconv, liblzma diff --git a/ports/libxmp-lite/CONTROL b/ports/libxmp-lite/CONTROL index bc1b7ef36c1943..cbc01c58f49f0e 100644 --- a/ports/libxmp-lite/CONTROL +++ b/ports/libxmp-lite/CONTROL @@ -1,3 +1,4 @@ Source: libxmp-lite Version: 4.4.1-1 +Homepage: https://sourceforge.net/projects/xmp/ Description: Lightweight version of libxmp that supports MOD, S3M, XM and IT modules. diff --git a/ports/libxslt/CONTROL b/ports/libxslt/CONTROL index c329b870541616..965079523af29e 100644 --- a/ports/libxslt/CONTROL +++ b/ports/libxslt/CONTROL @@ -1,4 +1,5 @@ Source: libxslt Version: 1.1.29 +Homepage: http://xmlsoft.org/XSLT/ Description: Libxslt is a XSLT library implemented in C for XSLT 1.0 and most of EXSLT Build-Depends: libxml2 diff --git a/ports/libzip/CONTROL b/ports/libzip/CONTROL index b3683b1a9c860e..bac06fac9b0f9c 100644 --- a/ports/libzip/CONTROL +++ b/ports/libzip/CONTROL @@ -1,5 +1,6 @@ Source: libzip Version: rel-1-5-2 +Homepage: https://github.com/nih-at/libzip Build-Depends: zlib Default-Features: openssl, bzip2 Description: A library for reading, creating, and modifying zip archives. diff --git a/ports/live555/CONTROL b/ports/live555/CONTROL index 39c8e4a655e3c9..e2f44db66db05e 100644 --- a/ports/live555/CONTROL +++ b/ports/live555/CONTROL @@ -1,3 +1,4 @@ Source: live555 Version: latest +Homepage: https://www.live555.com/liveMedia Description: A complete RTSP server application diff --git a/ports/llvm/CONTROL b/ports/llvm/CONTROL index 1bc8335fc08477..f700235a64c111 100644 --- a/ports/llvm/CONTROL +++ b/ports/llvm/CONTROL @@ -1,4 +1,5 @@ Source: llvm Version: 7.0.0-3 +Homepage: https://llvm.org/ Description: The LLVM Compiler Infrastructure Build-Depends: atlmfc (windows) diff --git a/ports/lmdb/CONTROL b/ports/lmdb/CONTROL index 6072f7d8eab517..247d812d57d9de 100644 --- a/ports/lmdb/CONTROL +++ b/ports/lmdb/CONTROL @@ -1,3 +1,4 @@ Source: lmdb Version: 0.9.23 +Homepage: https://github.com/LMDB/lmdb Description: LMDB is an extraordinarily fast, memory-efficient database diff --git a/ports/lodepng/CONTROL b/ports/lodepng/CONTROL index 2c881316c175ea..16d0cb794309e4 100644 --- a/ports/lodepng/CONTROL +++ b/ports/lodepng/CONTROL @@ -1,3 +1,4 @@ Source: lodepng Version: 2018-09-18-2 +Homepage: https://github.com/lvandeve/lodepng Description: PNG encoder and decoder in C and C++ diff --git a/ports/log4cplus/CONTROL b/ports/log4cplus/CONTROL index 278285dc5269bd..bdcb159b7486c8 100644 --- a/ports/log4cplus/CONTROL +++ b/ports/log4cplus/CONTROL @@ -1,4 +1,5 @@ Source: log4cplus Version: 2.0.4 +Homepage: https://github.com/log4cplus/log4cplus Description: A simple to use C++ logging API providing thread--safe, flexible, and arbitrarily granular control over log management and configuration Build-Depends: catch diff --git a/ports/lpeg/CONTROL b/ports/lpeg/CONTROL index 9896815b8e9fb4..c779b2888073da 100644 --- a/ports/lpeg/CONTROL +++ b/ports/lpeg/CONTROL @@ -1,4 +1,5 @@ Source: lpeg Version: 1.0.1-3 +Homepage: https://www.inf.puc-rio.br/~roberto/lpeg Description: LPeg is a pattern-matching library for Lua, based on Parsing Expression Grammars (PEGs). Build-Depends: lua diff --git a/ports/lua/CONTROL b/ports/lua/CONTROL index 23f31a1fd7374e..738aabdfde064d 100644 --- a/ports/lua/CONTROL +++ b/ports/lua/CONTROL @@ -1,3 +1,4 @@ Source: lua Version: 5.3.5-1 +Homepage: https://www.lua.org Description: a powerful, fast, lightweight, embeddable scripting language diff --git a/ports/luafilesystem/CONTROL b/ports/luafilesystem/CONTROL index 4ff18cda4d9616..d6d96910cc8b16 100644 --- a/ports/luafilesystem/CONTROL +++ b/ports/luafilesystem/CONTROL @@ -1,4 +1,5 @@ Source: luafilesystem Version: 1.7.0.2 +Homepage: https://github.com/keplerproject/luafilesystem Description: LuaFileSystem is a Lua library developed to complement the set of functions related to file systems offered by the standard Lua distribution. Build-Depends: lua diff --git a/ports/luajit/CONTROL b/ports/luajit/CONTROL index e81524ec7f462c..fb9c9d6467fa64 100644 --- a/ports/luajit/CONTROL +++ b/ports/luajit/CONTROL @@ -1,3 +1,4 @@ Source: luajit Version: 2.0.5-1 +Homepage: https://github.com/LuaJIT/LuaJIT Description: LuaJIT is a Just-In-Time (JIT) compiler for the Lua programming language. diff --git a/ports/luasocket/CONTROL b/ports/luasocket/CONTROL index 609af7ae5be1fc..e50ca87fb23d2e 100644 --- a/ports/luasocket/CONTROL +++ b/ports/luasocket/CONTROL @@ -1,4 +1,5 @@ Source: luasocket Version: 2019-05-07 +Homepage: https://github.com/diegonehab/luasocket Description: LuaSocket is a Lua extension library that is composed by two parts: a C core that provides support for the TCP and UDP transport layers, and a set of Lua modules that add support for functionality commonly needed by applications that deal with the Internet. Build-Depends: lua diff --git a/ports/lz4/CONTROL b/ports/lz4/CONTROL index 2e69cbd2500238..e6e99dd6a405ef 100644 --- a/ports/lz4/CONTROL +++ b/ports/lz4/CONTROL @@ -1,4 +1,5 @@ Source: lz4 Version: 1.9.1-2 +Homepage: https://github.com/lz4/lz4 Description: Lossless compression algorithm, providing compression speed at 400 MB/s per core. Build-Depends: xxhash \ No newline at end of file diff --git a/ports/lzfse/CONTROL b/ports/lzfse/CONTROL index 34276814fc952e..98fdf6c0df2f78 100644 --- a/ports/lzfse/CONTROL +++ b/ports/lzfse/CONTROL @@ -1,3 +1,4 @@ Source: lzfse Version: 1.0-1 +Homepage: https://github.com/lzfse/lzfse Description: Lempel-Ziv style data compressor using Finite State Entropy coding. diff --git a/ports/lzo/CONTROL b/ports/lzo/CONTROL index d124020b835c8b..cd1149f61ae1cb 100644 --- a/ports/lzo/CONTROL +++ b/ports/lzo/CONTROL @@ -1,3 +1,4 @@ Source: lzo Version: 2.10-2 +Homepage: https://www.oberhumer.com/opensource/lzo/ Description: Lossless data compression library diff --git a/ports/magnum-extras/CONTROL b/ports/magnum-extras/CONTROL index 36da8ed0c067d3..7ff04cb63010f1 100644 --- a/ports/magnum-extras/CONTROL +++ b/ports/magnum-extras/CONTROL @@ -2,7 +2,7 @@ Source: magnum-extras Version: 2019.01-1 Build-Depends: magnum[core] Description: Extras for magnum, C++11/C++14 graphics middleware for games and data visualization -Homepage: http://magnum.graphics/ +Homepage: https://magnum.graphics/ Default-Features: Feature: ui diff --git a/ports/magnum-integration/CONTROL b/ports/magnum-integration/CONTROL index 99fa4779bc2b99..5383204972fb71 100644 --- a/ports/magnum-integration/CONTROL +++ b/ports/magnum-integration/CONTROL @@ -2,7 +2,7 @@ Source: magnum-integration Version: 2019.01-1 Build-Depends: magnum[core] Description: Integrations for magnum, C++11/C++14 graphics middleware for games and data visualization -Homepage: http://magnum.graphics/ +Homepage: https://magnum.graphics/ Default-Features: Feature: bullet diff --git a/ports/magnum-plugins/CONTROL b/ports/magnum-plugins/CONTROL index ed3ec451042cf7..ef4c4084cf78d3 100644 --- a/ports/magnum-plugins/CONTROL +++ b/ports/magnum-plugins/CONTROL @@ -2,7 +2,7 @@ Source: magnum-plugins Version: 2019.01-1 Build-Depends: magnum[core] Description: Plugins for magnum, C++11/C++14 graphics middleware for games and data visualization -Homepage: http://magnum.graphics/ +Homepage: https://magnum.graphics/ Default-Features: ddsimporter, miniexrimageconverter, opengeximporter, stanfordimporter, stbimageconverter, stbimageimporter Feature: assimpimporter diff --git a/ports/magnum/CONTROL b/ports/magnum/CONTROL index d1d527786134f4..89bcff28ed1d06 100644 --- a/ports/magnum/CONTROL +++ b/ports/magnum/CONTROL @@ -2,7 +2,7 @@ Source: magnum Version: 2019.01-1 Build-Depends: corrade[utility] Description: C++11/C++14 graphics middleware for games and data visualization -Homepage: http://magnum.graphics/ +Homepage: https://magnum.graphics/ Default-Features: anyimageimporter, anyaudioimporter, anyimageconverter, anysceneimporter, debugtools, gl, meshtools, primitives, scenegraph, shaders, text, texturetools, trade, sdl2application Feature: al-info diff --git a/ports/matio/CONTROL b/ports/matio/CONTROL index a501977d63daab..6877c29721c01c 100644 --- a/ports/matio/CONTROL +++ b/ports/matio/CONTROL @@ -1,4 +1,5 @@ Source: matio Version: 1.5.15 +Homepage: https://github.com/tbeu/matio Description: MATLAB MAT File I/O Library Build-Depends: zlib, hdf5 diff --git a/ports/matroska/CONTROL b/ports/matroska/CONTROL index eca20aca6d5c6a..29cef7e80ec657 100644 --- a/ports/matroska/CONTROL +++ b/ports/matroska/CONTROL @@ -1,4 +1,5 @@ Source: matroska Version: 1.5.2 +Homepage: https://github.com/Matroska-Org/libmatroska Description: a C++ libary to parse Matroska files (.mkv and .mka) Build-Depends: ebml diff --git a/ports/mbedtls/CONTROL b/ports/mbedtls/CONTROL index 0a4183cb75faa6..ac4a4a131c2eb4 100644 --- a/ports/mbedtls/CONTROL +++ b/ports/mbedtls/CONTROL @@ -1,3 +1,4 @@ Source: mbedtls Version: 2.15.1 +Homepage: https://github.com/ARMmbed/mbedtls Description: An open source, portable, easy to use, readable and flexible SSL library diff --git a/ports/mdnsresponder/CONTROL b/ports/mdnsresponder/CONTROL index f1ee35042f9243..cfac2cca99b3d5 100644 --- a/ports/mdnsresponder/CONTROL +++ b/ports/mdnsresponder/CONTROL @@ -1,4 +1,4 @@ Source: mdnsresponder Version: 765.30.11 Description: The mDNSResponder project is a component of Bonjour, Apple's ease-of-use IP networking initiative. -Homepage: http://developer.apple.com/bonjour/ \ No newline at end of file +Homepage: https://developer.apple.com/bonjour/ \ No newline at end of file diff --git a/ports/meschach/CONTROL b/ports/meschach/CONTROL index 84a3bf0d403a29..d54e03952fe5bc 100644 --- a/ports/meschach/CONTROL +++ b/ports/meschach/CONTROL @@ -1,3 +1,4 @@ Source: meschach Version: 1.2b-2 +Homepage: https://homepage.math.uiowa.edu/~dstewart/meschach Description: Matrix computations in C diff --git a/ports/metis/CONTROL b/ports/metis/CONTROL index 65571b0bdbf37a..6db70e59902ed6 100644 --- a/ports/metis/CONTROL +++ b/ports/metis/CONTROL @@ -1,3 +1,4 @@ Source: metis Version: 5.1.0-3 +Homepage: https://glaros.dtc.umn.edu/gkhome/metis/metis/overview Description: Serial Graph Partitioning and Fill-reducing Matrix Ordering diff --git a/ports/minizip/CONTROL b/ports/minizip/CONTROL index b0c606deda56e7..93d453ca23d992 100644 --- a/ports/minizip/CONTROL +++ b/ports/minizip/CONTROL @@ -1,4 +1,5 @@ Source: minizip Version: 1.2.11-4 +Homepage: https://github.com/madler/zlib Description: Zip compression library Build-Depends: bzip2, zlib diff --git a/ports/mman/CONTROL b/ports/mman/CONTROL index dad1b19da446ae..6ef51acb91d294 100644 --- a/ports/mman/CONTROL +++ b/ports/mman/CONTROL @@ -1,3 +1,4 @@ Source: mman Version: git-f5ff813-2 +Homepage: https://github.com/witwall/mman-win32 Description: A light implementation of the mmap functions for MinGW. diff --git a/ports/mongo-c-driver/CONTROL b/ports/mongo-c-driver/CONTROL index 577cea1aaf5315..35f29143d63a05 100644 --- a/ports/mongo-c-driver/CONTROL +++ b/ports/mongo-c-driver/CONTROL @@ -2,3 +2,4 @@ Source: mongo-c-driver Version: 1.14.0-1 Build-Depends: libbson, openssl (!windows), zlib Description: Client library written in C for MongoDB. +Homepage: https://github.com/mongodb/mongo-c-driver diff --git a/ports/mongo-cxx-driver/CONTROL b/ports/mongo-cxx-driver/CONTROL index 8d98763dd61810..50a2a6efdf2936 100644 --- a/ports/mongo-cxx-driver/CONTROL +++ b/ports/mongo-cxx-driver/CONTROL @@ -1,6 +1,7 @@ Source: mongo-cxx-driver Version: 3.4.0-1 Build-Depends: libbson, mongo-c-driver, boost-smart-ptr, boost-optional, boost-utility +Homepage: https://github.com/mongodb/mongo-cxx-driver Description: MongoDB C++ Driver. Feature: mnmlstc diff --git a/ports/monkeys-audio/CONTROL b/ports/monkeys-audio/CONTROL index e81e943bfa41a4..2b6447dbef99cd 100644 --- a/ports/monkeys-audio/CONTROL +++ b/ports/monkeys-audio/CONTROL @@ -1,4 +1,5 @@ Source: monkeys-audio Version: 4.3.3-1 +Homepage: https://monkeysaudio.com Description: Monkey's Audio is an excellent audio compression tool which has multiple advantages over traditional methods. Audio files compressed with it ends with .ape extension. diff --git a/ports/mozjpeg/CONTROL b/ports/mozjpeg/CONTROL index 2fa0f2d02db257..c5180d1405fac5 100644 --- a/ports/mozjpeg/CONTROL +++ b/ports/mozjpeg/CONTROL @@ -1,3 +1,4 @@ Source: mozjpeg Version: 3.2-2 +Homepage: https://github.com/mozilla/mozjpeg Description: MozJPEG reduces file sizes of JPEG images while retaining quality and compatibility with the vast majority of the world's deployed decoders. It's compatible with libjpeg API and ABI, and can be used as a drop-in replacement for libjpeg. diff --git a/ports/mpfr/CONTROL b/ports/mpfr/CONTROL index e9f4451bead12f..6b64b765162ac2 100644 --- a/ports/mpfr/CONTROL +++ b/ports/mpfr/CONTROL @@ -1,4 +1,5 @@ Source: mpfr Version: 4.0.1 +Homepage: https://www.mpfr.org Description: The MPFR library is a C library for multiple-precision floating-point computations with correct rounding Build-Depends: mpir diff --git a/ports/mpg123/CONTROL b/ports/mpg123/CONTROL index ca4f01835e9022..ad360039c78742 100644 --- a/ports/mpg123/CONTROL +++ b/ports/mpg123/CONTROL @@ -1,3 +1,4 @@ Source: mpg123 Version: 1.25.8-5 -Description: mpg123 is a real time MPEG 1.0/2.0/2.5 audio player/decoder for layers 1, 2 and 3 (MPEG 1.0 layer 3 also known as MP3). +Homepage: https://sourceforge.net/projects/mpg123/ +Description: mpg123 is a real time MPEG 1.0/2.0/2.5 audio player/decoder for layers 1, 2 and 3 (MPEG 1.0 layer 3 also known as MP3). \ No newline at end of file diff --git a/ports/mpir/CONTROL b/ports/mpir/CONTROL index 5a944e6bd3fc4d..12f9d38ea234d7 100644 --- a/ports/mpir/CONTROL +++ b/ports/mpir/CONTROL @@ -1,3 +1,4 @@ Source: mpir Version: 3.0.0-7 +Homepage: https://github.com/wbhart/mpir Description: Multiple Precision Integers and Rationals. diff --git a/ports/ms-gsl/CONTROL b/ports/ms-gsl/CONTROL index 4d32f7770efb4c..75741b4d4adb5d 100644 --- a/ports/ms-gsl/CONTROL +++ b/ports/ms-gsl/CONTROL @@ -1,3 +1,4 @@ Source: ms-gsl Version: 2019-04-19 -Description: Microsoft implementation of the Guidelines Support Library +Homepage: https://github.com/Microsoft/GSL +Description: Microsoft implementation of the Guidelines Support Library \ No newline at end of file diff --git a/ports/msgpack/CONTROL b/ports/msgpack/CONTROL index e75f0743fd3ad9..0b22d5c69b9c7a 100644 --- a/ports/msgpack/CONTROL +++ b/ports/msgpack/CONTROL @@ -1,3 +1,4 @@ Source: msgpack Version: 3.1.1 +Homepage: https://github.com/msgpack/msgpack-c Description: MessagePack is an efficient binary serialization format, which lets you exchange data among multiple languages like JSON, except that it's faster and smaller. diff --git a/ports/msinttypes/CONTROL b/ports/msinttypes/CONTROL index 8b9840e0bced4d..51939d075dc85d 100644 --- a/ports/msinttypes/CONTROL +++ b/ports/msinttypes/CONTROL @@ -1,3 +1,4 @@ Source: msinttypes Version: 2018-02-25 +Homepage: https://github.com/chemeris/msinttypes Description: msinttypes is a package to provide missing ISO C9x compliant headers for Microsoft Visual Studio diff --git a/ports/mujs/CONTROL b/ports/mujs/CONTROL index a15fdf7bb94cf0..1444af126ee44a 100644 --- a/ports/mujs/CONTROL +++ b/ports/mujs/CONTROL @@ -1,3 +1,4 @@ Source: mujs Version: 2018-07-30-1 +Homepage: https://github.com/ccxvii/mujs Description: An embeddable Javascript interpreter in C diff --git a/ports/muparser/CONTROL b/ports/muparser/CONTROL index 5a62e603c0c97b..734214a49d04ff 100644 --- a/ports/muparser/CONTROL +++ b/ports/muparser/CONTROL @@ -1,3 +1,4 @@ Source: muparser Version: 2.2.6.1 +Homepage: https://github.com/beltoforion/muparser Description: Fast math parser library diff --git a/ports/nana/CONTROL b/ports/nana/CONTROL index fdf241afbe27ed..0e832f7e876c9b 100644 --- a/ports/nana/CONTROL +++ b/ports/nana/CONTROL @@ -1,4 +1,5 @@ Source: nana -Version: 1.7.1 +Version: 1.7.1 +Homepage: https://github.com/cnjinhao/nana Description: Cross-platform library for GUI programming in modern C++ style. Build-Depends: libpng, libjpeg-turbo, freetype (!uwp&&!windows), fontconfig (!uwp&&!windows) diff --git a/ports/nanodbc/CONTROL b/ports/nanodbc/CONTROL index 075bd4d8285af4..bf1aaa69ed3c47 100644 --- a/ports/nanodbc/CONTROL +++ b/ports/nanodbc/CONTROL @@ -1,3 +1,4 @@ Source: nanodbc Version: 2.12.4-3 +Homepage: https://github.com/lexicalunit/nanodbc Description: A small C++ wrapper for the native C ODBC API. diff --git a/ports/netcdf-c/CONTROL b/ports/netcdf-c/CONTROL index 91d73cacb624ef..c82acf055e7a40 100644 --- a/ports/netcdf-c/CONTROL +++ b/ports/netcdf-c/CONTROL @@ -1,4 +1,5 @@ Source: netcdf-c Version: 4.7.0-2 Build-Depends: hdf5, curl +Homepage: https://github.com/Unidata/netcdf-c Description: a set of self-describing, machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. diff --git a/ports/netcdf-cxx4/CONTROL b/ports/netcdf-cxx4/CONTROL index b926a25228784f..8ef872966fb830 100644 --- a/ports/netcdf-cxx4/CONTROL +++ b/ports/netcdf-cxx4/CONTROL @@ -1,4 +1,5 @@ Source: netcdf-cxx4 Version: 4.3.0-4 Build-Depends: netcdf-c +Homepage: https://github.com/Unidata/netcdf-cxx4 Description: a set of machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. diff --git a/ports/nghttp2/CONTROL b/ports/nghttp2/CONTROL index d68720137eeb6f..176a1c30a22681 100644 --- a/ports/nghttp2/CONTROL +++ b/ports/nghttp2/CONTROL @@ -1,3 +1,4 @@ Source: nghttp2 Version: 1.35.0 +Homepage: https://github.com/nghttp2/nghttp2 Description: Implementation of the Hypertext Transfer Protocol version 2 in C diff --git a/ports/nlohmann-json/CONTROL b/ports/nlohmann-json/CONTROL index 5d25a4eaa5802b..275914a940f2f1 100644 --- a/ports/nlohmann-json/CONTROL +++ b/ports/nlohmann-json/CONTROL @@ -1,3 +1,4 @@ Source: nlohmann-json Version: 3.6.1 +Homepage: https://github.com/nlohmann/json Description: JSON for Modern C++ diff --git a/ports/nlopt/CONTROL b/ports/nlopt/CONTROL index f6d91c7854075c..81a24bef7dba7d 100644 --- a/ports/nlopt/CONTROL +++ b/ports/nlopt/CONTROL @@ -1,3 +1,4 @@ Source: nlopt Version: 2.6.1 +Homepage: https://github.com/stevengj/nlopt Description: a library for nonlinear local and global optimization, for functions with and without gradient information. diff --git a/ports/nmslib/CONTROL b/ports/nmslib/CONTROL index 111bcc8589a277..262c4068235e36 100644 --- a/ports/nmslib/CONTROL +++ b/ports/nmslib/CONTROL @@ -1,5 +1,6 @@ Source: nmslib -Version: 1.7.3.6 +Version: 1.7.3.6 +Homepage: https://github.com/searchivarius/nmslib Description: Non-Metric Space Library (NMSLIB) is an efficient similarity search library and a toolkit for evaluation of k-NN methods for generic non-metric spaces. # # ## Extras are currently unsupported for Windows, waiting for fixes. diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index cefb1656cbd14f..1a923c8576630e 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,4 @@ Source: nuklear Version: 2019-03-29 +Homepage: https://github.com/vurtun/nuklear Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/ode/CONTROL b/ports/ode/CONTROL index 6f88319e672828..605db9d18e3e96 100644 --- a/ports/ode/CONTROL +++ b/ports/ode/CONTROL @@ -1,3 +1,4 @@ Source: ode Version: 0.15.1-1 +Homepage: https://bitbucket.org/odedevs/ode/src/default/ Description: Open Dynamics Engine diff --git a/ports/ogre/CONTROL b/ports/ogre/CONTROL index 828f2165e8835e..a454a69f1a71ed 100644 --- a/ports/ogre/CONTROL +++ b/ports/ogre/CONTROL @@ -1,6 +1,7 @@ Source: ogre Version: 1.12.0 Build-Depends: freeimage, freetype, zlib, zziplib +Homepage: https://github.com/OGRECave/ogre Description: 3D Object-Oriented Graphics Rendering Engine Feature: d3d9 diff --git a/ports/openal-soft/CONTROL b/ports/openal-soft/CONTROL index 3591a3f70c12e4..ccea6a482d5909 100644 --- a/ports/openal-soft/CONTROL +++ b/ports/openal-soft/CONTROL @@ -1,3 +1,4 @@ Source: openal-soft Version: 1.19.1-2 +Homepage: https://github.com/kcat/openal-soft Description: OpenAL Soft is an LGPL-licensed, cross-platform, software implementation of the OpenAL 3D audio API. diff --git a/ports/openblas/CONTROL b/ports/openblas/CONTROL index 40249c33201b1f..dd4e01732742ce 100644 --- a/ports/openblas/CONTROL +++ b/ports/openblas/CONTROL @@ -1,3 +1,4 @@ Source: openblas Version: 0.3.6-2 +Homepage: https://github.com/xianyi/OpenBLAS Description: OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. diff --git a/ports/opencl/CONTROL b/ports/opencl/CONTROL index 633c95e5110c2a..32308ad5d1a6c4 100644 --- a/ports/opencl/CONTROL +++ b/ports/opencl/CONTROL @@ -1,3 +1,4 @@ Source: opencl Version: 2.2 (2017.07.18)-1 +Homepage: https://github.com/KhronosGroup/OpenCL-Headers Description: C/C++ headers and ICD loader (Installable Client Driver) for OpenCL diff --git a/ports/opencv/CONTROL b/ports/opencv/CONTROL index 3b5145535325c3..90d81258e0d16c 100644 --- a/ports/opencv/CONTROL +++ b/ports/opencv/CONTROL @@ -1,6 +1,7 @@ Source: opencv Version: 3.4.3-8 Build-Depends: zlib +Homepage: https://github.com/opencv/opencv Description: computer vision library Default-Features: opengl, jpeg, png, tiff, eigen, flann diff --git a/ports/openexr/CONTROL b/ports/openexr/CONTROL index 5fd21f6daa080d..8795b9dce986e3 100644 --- a/ports/openexr/CONTROL +++ b/ports/openexr/CONTROL @@ -1,4 +1,5 @@ Source: openexr Version: 2.3.0-3 +Homepage: https://www.openexr.com/ Description: OpenEXR is a high dynamic-range (HDR) image file format developed by Industrial Light & Magic for use in computer imaging applications Build-Depends: zlib diff --git a/ports/openimageio/CONTROL b/ports/openimageio/CONTROL index 86ae5bd5508c5e..be2dab3c943741 100644 --- a/ports/openimageio/CONTROL +++ b/ports/openimageio/CONTROL @@ -1,5 +1,6 @@ Source: openimageio Version: 1.8.16 +Homepage: https://github.com/OpenImageIO/oiio Description: A library for reading and writing images, and a bunch of related classes, utilities, and application Build-Depends: libjpeg-turbo, tiff, libpng, openexr, boost-thread, boost-smart-ptr, boost-foreach, boost-regex, boost-type-traits, boost-static-assert, boost-unordered, boost-config, boost-algorithm, boost-filesystem, boost-system, boost-thread, boost-asio, boost-random, robin-map diff --git a/ports/openjpeg/CONTROL b/ports/openjpeg/CONTROL index 110bae11a945cb..0fd7d64a6a0ca2 100644 --- a/ports/openjpeg/CONTROL +++ b/ports/openjpeg/CONTROL @@ -1,3 +1,4 @@ Source: openjpeg Version: 2.3.1-1 +Homepage: https://github.com/uclouvain/openjpeg Description: JPEG 2000 image library diff --git a/ports/openmama/CONTROL b/ports/openmama/CONTROL index 3b281e8c7eb1c9..899f47b9310079 100644 --- a/ports/openmama/CONTROL +++ b/ports/openmama/CONTROL @@ -1,4 +1,5 @@ Source: openmama Version: 6.2.3 Build-Depends: libevent, apr, qpid-proton +Homepage: https://github.com/OpenMAMA/OpenMAMA Description: OpenMAMA is a high performance vendor neutral lightweight wrapper that provides a common API interface to different middleware and messaging solutions across a variety of platforms and languages. diff --git a/ports/openni2/CONTROL b/ports/openni2/CONTROL index d7e75fb7dd6b09..3d13ea26bb4d02 100644 --- a/ports/openni2/CONTROL +++ b/ports/openni2/CONTROL @@ -1,4 +1,5 @@ Source: openni2 Version: 2.2.0.33-8 Build-Depends: kinectsdk1 +Homepage: https://github.com/OpenNI/OpenNI2 Description: OpenNI is open source library for access to Natural Interaction (NI) devices such as RGB-D camera. diff --git a/ports/openssl/CONTROL b/ports/openssl/CONTROL index 4d81a196286151..a398b409d0fd4b 100644 --- a/ports/openssl/CONTROL +++ b/ports/openssl/CONTROL @@ -1,4 +1,5 @@ Source: openssl Version: 0 +Homepage: https://www.openssl.org Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library. Build-Depends: openssl-windows (windows), openssl-uwp (uwp), openssl-unix (!uwp&!windows) diff --git a/ports/opentracing/CONTROL b/ports/opentracing/CONTROL index ac0cbf6f289a09..c533de1f8ec6bf 100644 --- a/ports/opentracing/CONTROL +++ b/ports/opentracing/CONTROL @@ -1,4 +1,4 @@ Source: opentracing Version: 1.5.1 Description: C++ implementation of the OpenTracing API -Homepage: http://opentracing.io +Homepage: https://opentracing.io diff --git a/ports/openvdb/CONTROL b/ports/openvdb/CONTROL index 663e290b28a93d..77a06c78cfaed4 100644 --- a/ports/openvdb/CONTROL +++ b/ports/openvdb/CONTROL @@ -1,6 +1,7 @@ Source: openvdb Version: 6.0.0-2 Build-Depends: boost-ptr-container, openexr, tbb, blosc, boost-iostreams, boost-system, boost-thread, boost-date-time, boost-any, boost-uuid, boost-interprocess +Homepage: https://github.com/dreamworksanimation/openvdb Description: Sparse volume data structure and tools Feature: tools diff --git a/ports/openvr/CONTROL b/ports/openvr/CONTROL index dfaf95c1e9a03b..6e43972bf839b8 100644 --- a/ports/openvr/CONTROL +++ b/ports/openvr/CONTROL @@ -1,3 +1,4 @@ Source: openvr Version: 1.4.18 +Homepage: https://github.com/ValveSoftware/openvr Description: an API and runtime that allows access to VR hardware from multiple vendors without requiring that applications have specific knowledge of the hardware they are targeting. diff --git a/ports/opus/CONTROL b/ports/opus/CONTROL index 4314774ab533ba..c7b8d246f5ce2c 100644 --- a/ports/opus/CONTROL +++ b/ports/opus/CONTROL @@ -1,3 +1,4 @@ Source: opus Version: 1.3.1 +Homepage: https://github.com/xiph/opus Description: Totally open, royalty-free, highly versatile audio codec diff --git a/ports/opusfile/CONTROL b/ports/opusfile/CONTROL index 65f6bada71d1b8..3e80d47771e22b 100644 --- a/ports/opusfile/CONTROL +++ b/ports/opusfile/CONTROL @@ -1,5 +1,6 @@ Source: opusfile Version: 0.11-2 +Homepage: https://github.com/xiph/opusfile Description: Stand-alone decoder library for .opus streams Build-Depends: libogg, opus diff --git a/ports/osg/CONTROL b/ports/osg/CONTROL index f5690f9bc798c3..9b981af9d51927 100644 --- a/ports/osg/CONTROL +++ b/ports/osg/CONTROL @@ -1,5 +1,6 @@ Source: osg Version: 3.6.3-1 +Homepage: https://github.com/openscenegraph/OpenSceneGraph Description: The OpenSceneGraph is an open source high performance 3D graphics toolkit. Build-Depends: freetype, jasper, openexr, zlib, gdal, giflib, libjpeg-turbo, libpng, tiff diff --git a/ports/paho-mqtt/CONTROL b/ports/paho-mqtt/CONTROL index 590968f0a092ed..bd0781fad796e4 100644 --- a/ports/paho-mqtt/CONTROL +++ b/ports/paho-mqtt/CONTROL @@ -1,4 +1,5 @@ Source: paho-mqtt Version: 1.3.0 +Homepage: https://github.com/eclipse/paho.mqtt.c Description: Paho project provides open-source client implementations of MQTT and MQTT-SN messaging protocols aimed at new, existing, and emerging applications for the Internet of Things Build-Depends: openssl diff --git a/ports/pango/CONTROL b/ports/pango/CONTROL index f58bf18ec57f5a..192c5c0489e763 100644 --- a/ports/pango/CONTROL +++ b/ports/pango/CONTROL @@ -1,4 +1,5 @@ Source: pango Version: 1.40.11-4 +Homepage: https://ftp.gnome.org/pub/GNOME/sources/pango/ Description: Text and font handling library. Build-Depends: glib, gettext, cairo, fontconfig, freetype, harfbuzz[glib] (!windows-static) diff --git a/ports/pangolin/CONTROL b/ports/pangolin/CONTROL index 593c753b21361e..77e836cb395d08 100644 --- a/ports/pangolin/CONTROL +++ b/ports/pangolin/CONTROL @@ -1,4 +1,5 @@ Source: pangolin Version: 0.5-6 Build-Depends: eigen3, glew, libpng, libjpeg-turbo, ffmpeg +Homepage: https://github.com/stevenlovegrove/Pangolin Description: Lightweight GUI Library diff --git a/ports/pangomm/CONTROL b/ports/pangomm/CONTROL index 68860b305fbb0b..8109a58893b4ff 100644 --- a/ports/pangomm/CONTROL +++ b/ports/pangomm/CONTROL @@ -1,4 +1,5 @@ Source: pangomm Version: 2.40.1 +Homepage: https://ftp.gnome.org/pub/GNOME/sources/pangomm Description: pangomm is the official C++ interface for the Pango font layout library. See, for instance, the Pango::Layout class. Build-Depends: glib, gettext, cairo, fontconfig, freetype, harfbuzz, pango, cairomm, glibmm diff --git a/ports/parmetis/CONTROL b/ports/parmetis/CONTROL index bdc95557ad29c9..7e5e3b21b65321 100644 --- a/ports/parmetis/CONTROL +++ b/ports/parmetis/CONTROL @@ -1,4 +1,5 @@ Source: parmetis Version: 4.0.3-2 +Homepage: https://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview Description: Parallel Graph Partitioning and Fill-reducing Matrix Ordering Build-Depends: metis, msmpi diff --git a/ports/pcl/CONTROL b/ports/pcl/CONTROL index 3e3884c4842623..dcd8c7aadc8939 100644 --- a/ports/pcl/CONTROL +++ b/ports/pcl/CONTROL @@ -1,5 +1,6 @@ Source: pcl Version: 1.9.1-3 +Homepage: https://github.com/PointCloudLibrary/pcl Description: Point Cloud Library (PCL) is open source library for 2D/3D image and point cloud processing. Build-Depends: eigen3, flann, qhull, vtk, libpng, boost-system, boost-filesystem, boost-thread, boost-date-time, boost-iostreams, boost-random, boost-foreach, boost-dynamic-bitset, boost-property-map, boost-graph, boost-multi-array, boost-signals2, boost-ptr-container, boost-uuid, boost-interprocess, boost-asio diff --git a/ports/pcre2/CONTROL b/ports/pcre2/CONTROL index c9b3438a6ab8d4..3d7824a27ca087 100644 --- a/ports/pcre2/CONTROL +++ b/ports/pcre2/CONTROL @@ -1,3 +1,4 @@ Source: pcre2 Version: 10.30-4 +Homepage: https://pcre.org/ Description: PCRE2 is a re-working of the original Perl Compatible Regular Expressions library diff --git a/ports/pdcurses/CONTROL b/ports/pdcurses/CONTROL index 75bce7928d5abb..3ea97de0b087dd 100644 --- a/ports/pdcurses/CONTROL +++ b/ports/pdcurses/CONTROL @@ -1,3 +1,4 @@ Source: pdcurses Version: 3.8 +Homepage: https://sourceforge.net/projects/pdcurses/ Description: Public Domain Curses - a curses library for environments that don't fit the termcap/terminfo model. diff --git a/ports/physfs/CONTROL b/ports/physfs/CONTROL index 3900d77a8b6dac..07b90bcdf000cb 100644 --- a/ports/physfs/CONTROL +++ b/ports/physfs/CONTROL @@ -1,4 +1,5 @@ Source: physfs Version: 3.0.2 +Homepage: https://icculus.org/physfs/ Description: a library to provide abstract access to various archives Build-Depends: zlib diff --git a/ports/picojson/CONTROL b/ports/picojson/CONTROL index a871ae3d451ee3..4a3614202dec3c 100644 --- a/ports/picojson/CONTROL +++ b/ports/picojson/CONTROL @@ -1,4 +1,5 @@ Source: picojson Version: 1.3.0 +Homepage: https://github.com/kazuho/picojson Description: A header-file-only, JSON parser serializer in C++. diff --git a/ports/picosha2/CONTROL b/ports/picosha2/CONTROL index 7203b8aeea64b1..a388045a2289c0 100644 --- a/ports/picosha2/CONTROL +++ b/ports/picosha2/CONTROL @@ -1,3 +1,4 @@ Source: picosha2 Version: 2018-07-30 +Homepage: https://github.com/okdshin/PicoSHA2 Description: PicoSHA2 - a C++ SHA256 hash generator diff --git a/ports/piex/CONTROL b/ports/piex/CONTROL index 3fb98201f9b8b2..3f257fa203229d 100644 --- a/ports/piex/CONTROL +++ b/ports/piex/CONTROL @@ -1,3 +1,4 @@ Source: piex Version: 2018-03-13-1 +Homepage: https://github.com/google/piex Description: The Preview Image Extractor (PIEX) is designed to find and extract the largest diff --git a/ports/pixman/CONTROL b/ports/pixman/CONTROL index 066d81076feccb..129ba37fe1f34d 100644 --- a/ports/pixman/CONTROL +++ b/ports/pixman/CONTROL @@ -1,3 +1,4 @@ Source: pixman Version: 0.38.0-3 +Homepage: https://www.cairographics.org/releases Description: Pixman is a low-level software library for pixel manipulation, providing features such as image compositing and trapezoid rasterization. diff --git a/ports/plibsys/CONTROL b/ports/plibsys/CONTROL index 3bb95f45bf1af2..2c71346bbfc7f6 100644 --- a/ports/plibsys/CONTROL +++ b/ports/plibsys/CONTROL @@ -1,3 +1,4 @@ Source: plibsys Version: 0.0.4-1 +Homepage: https://github.com/saprykin/plibsys Description: Highly portable C system library: threads and synchronization, sockets, IPC, data structures and more. diff --git a/ports/plog/CONTROL b/ports/plog/CONTROL index d1abd52a641bac..0d6adaa08ac6ac 100644 --- a/ports/plog/CONTROL +++ b/ports/plog/CONTROL @@ -1,3 +1,4 @@ Source: plog Version: 1.1.4 +Homepage: https://github.com/SergiusTheBest/plog Description: Portable, simple and extensible C++ logging library. diff --git a/ports/podofo/CONTROL b/ports/podofo/CONTROL index 083248c3ced23e..630b9efcf3c0e3 100644 --- a/ports/podofo/CONTROL +++ b/ports/podofo/CONTROL @@ -1,5 +1,6 @@ Source: podofo Version: 0.9.6-7 +Homepage: https://sourceforge.net/projects/podofo/ Description: PoDoFo is a library to work with the PDF file format Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openssl, freetype diff --git a/ports/portaudio/CONTROL b/ports/portaudio/CONTROL index d72ff808c39660..a60d598593ad93 100644 --- a/ports/portaudio/CONTROL +++ b/ports/portaudio/CONTROL @@ -1,3 +1,4 @@ Source: portaudio Version: 19.0.6.00-5 +Homepage: https://www.portaudio.com/ Description: PortAudio Portable Cross-platform Audio I/O API PortAudio is a free, cross-platform, open-source, audio I/O library. It lets you write simple audio programs in 'C' or C++ that will compile and run on many platforms including Windows, Macintosh OS X, and Unix (OSS/ALSA). It is intended to promote the exchange of audio software between developers on different platforms. Many applications use PortAudio for Audio I/O. diff --git a/ports/portmidi/CONTROL b/ports/portmidi/CONTROL index 3534c18566ae20..57550e485a8422 100644 --- a/ports/portmidi/CONTROL +++ b/ports/portmidi/CONTROL @@ -1,3 +1,4 @@ Source: portmidi Version: 0.217.1 +Homepage: https://sourceforge.net/projects/portmedia/ Description: Free, cross-platform, open-source I/O library for MIDI diff --git a/ports/pqp/CONTROL b/ports/pqp/CONTROL index 5eb701bc6db2b4..35986cf9f930c7 100644 --- a/ports/pqp/CONTROL +++ b/ports/pqp/CONTROL @@ -1,3 +1,4 @@ Source: pqp Version: 1.3-3 +Homepage: https://gamma.cs.unc.edu/SSV/ Description: a proximity query package diff --git a/ports/proj4/CONTROL b/ports/proj4/CONTROL index cf2519b12cb258..d1aecc21f0d205 100644 --- a/ports/proj4/CONTROL +++ b/ports/proj4/CONTROL @@ -1,3 +1,4 @@ Source: proj4 Version: 4.9.3-1 +Homepage: https://download.osgeo.org/proj Description: PROJ.4 library for cartographic projections diff --git a/ports/protobuf/CONTROL b/ports/protobuf/CONTROL index 6cd33935c7a545..caca652975d2bd 100644 --- a/ports/protobuf/CONTROL +++ b/ports/protobuf/CONTROL @@ -1,5 +1,6 @@ Source: protobuf Version: 3.7.1 +Homepage: https://github.com/google/protobuf Description: Protocol Buffers - Google's data interchange format Feature: zlib diff --git a/ports/ptex/CONTROL b/ports/ptex/CONTROL index e41db76783aeb7..17e2bbe5ecafde 100644 --- a/ports/ptex/CONTROL +++ b/ports/ptex/CONTROL @@ -1,4 +1,5 @@ Source: ptex Version: 2.1.28-1 +Homepage: https://github.com/wdas/ptex Description: Per-Face Texture Mapping for Production Rendering. Build-Depends: zlib diff --git a/ports/pthreads/CONTROL b/ports/pthreads/CONTROL index 70f3af246ddd8e..e1b96a4380230e 100644 --- a/ports/pthreads/CONTROL +++ b/ports/pthreads/CONTROL @@ -1,3 +1,4 @@ Source: pthreads Version: 3.0.0-1 +Homepage: https://sourceware.org/pub/pthreads-win32/ Description: pthreads for windows diff --git a/ports/pugixml/CONTROL b/ports/pugixml/CONTROL index 5e2dad5999743b..96adad3fb7bee0 100644 --- a/ports/pugixml/CONTROL +++ b/ports/pugixml/CONTROL @@ -1,3 +1,4 @@ Source: pugixml Version: 1.9-1 +Homepage: https://github.com/zeux/pugixml Description: C++ XML processing library diff --git a/ports/pybind11/CONTROL b/ports/pybind11/CONTROL index 880d6c3b7b585a..634afca381b06f 100644 --- a/ports/pybind11/CONTROL +++ b/ports/pybind11/CONTROL @@ -1,4 +1,5 @@ Source: pybind11 Version: 2.2.4 +Homepage: https://github.com/pybind/pybind11 Description: pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, mainly to create Python bindings of existing C++ code. Build-Depends: python3 (windows) \ No newline at end of file diff --git a/ports/pystring/CONTROL b/ports/pystring/CONTROL index 9bdd7daf2d7947..698e0466dea16d 100644 --- a/ports/pystring/CONTROL +++ b/ports/pystring/CONTROL @@ -1,3 +1,4 @@ Source: pystring Version: 1.1.3-2 +Homepage: https://github.com/imageworks/pystring Description: Pystring is a collection of C++ functions which match the interface and behavior of python's string class methods using std::string diff --git a/ports/python3/CONTROL b/ports/python3/CONTROL index db8f63766d423d..1b9a01988776cc 100644 --- a/ports/python3/CONTROL +++ b/ports/python3/CONTROL @@ -1,3 +1,4 @@ Source: python3 Version: 3.7.3 +Homepage: https://github.com/python/cpython Description: The Python programming language as an embeddable library \ No newline at end of file diff --git a/ports/qhull/CONTROL b/ports/qhull/CONTROL index f14eb4344feec0..d8a4020494a730 100644 --- a/ports/qhull/CONTROL +++ b/ports/qhull/CONTROL @@ -1,3 +1,4 @@ Source: qhull Version: 7.2.1-3 +Homepage: https://github.com/qhull/qhull Description: computes the convex hull, Delaunay triangulation, Voronoi diagram diff --git a/ports/qpid-proton/CONTROL b/ports/qpid-proton/CONTROL index 88fa09d74f5d8f..8544cb959169dc 100644 --- a/ports/qpid-proton/CONTROL +++ b/ports/qpid-proton/CONTROL @@ -1,4 +1,5 @@ Source: qpid-proton Version: 0.28.0 Build-Depends: openssl (!windows&!uwp), libuv (osx), jsoncpp -Description: Qpid Proton is a high-performance, lightweight messaging library. +Homepage: https://github.com/apache/qpid-proton +Description: Qpid Proton is a high-performance, lightweight messaging library. \ No newline at end of file diff --git a/ports/qscintilla/CONTROL b/ports/qscintilla/CONTROL index 41b86bba9e0d90..ee8a7be2f18f80 100644 --- a/ports/qscintilla/CONTROL +++ b/ports/qscintilla/CONTROL @@ -1,4 +1,5 @@ Source: qscintilla Version: 2.10-8 +Homepage: https://sourceforge.net/projects/pyqt Description: QScintilla is a port to Qt of the Scintilla editing component. Features syntax highlighting, code-completion and much more (Barebone build without python bindings (missing dependeny PyQt) and without QtDesigner plugin) Build-Depends: qt5-base, qt5-macextras (osx), qt5-winextras (windows) diff --git a/ports/qt5-base/CONTROL b/ports/qt5-base/CONTROL index 8ad87a0aeee750..0082dc46cff12b 100644 --- a/ports/qt5-base/CONTROL +++ b/ports/qt5-base/CONTROL @@ -1,4 +1,5 @@ Source: qt5-base Version: 5.12.3-1 +Homepage: https://www.qt.io/ Description: Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components. Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion, openssl diff --git a/ports/qt5/CONTROL b/ports/qt5/CONTROL index e22f4609b6a6fc..74b69467ae9b1d 100644 --- a/ports/qt5/CONTROL +++ b/ports/qt5/CONTROL @@ -1,4 +1,5 @@ Source: qt5 Version: 5.12.3 +Homepage: https://www.qt.io/ Description: Qt5 Application Framework Build-Depends: qt5-3d, qt5-activeqt, qt5-base, qt5-charts, qt5-datavis3d, qt5-declarative, qt5-gamepad, qt5-graphicaleffects, qt5-imageformats, qt5-location, qt5-multimedia, qt5-mqtt, qt5-networkauth, qt5-purchasing, qt5-quickcontrols, qt5-quickcontrols2, qt5-script, qt5-scxml, qt5-sensors, qt5-serialport, qt5-speech, qt5-svg, qt5-tools, qt5-virtualkeyboard, qt5-webchannel, qt5-websockets, qt5-winextras (windows), qt5-macextras (osx), qt5-xmlpatterns diff --git a/ports/qwt/CONTROL b/ports/qwt/CONTROL index fad52600fdfaff..230203b34ae29c 100644 --- a/ports/qwt/CONTROL +++ b/ports/qwt/CONTROL @@ -1,4 +1,5 @@ Source: qwt Version: 6.1.3-6 +Homepage: https://sourceforge.net/projects/qwt Description: Qt widgets library for technical applications Build-Depends: qt5-base, qt5-svg, qt5-tools diff --git a/ports/ragel/CONTROL b/ports/ragel/CONTROL index bb6595ac5c807d..112128a5216665 100644 --- a/ports/ragel/CONTROL +++ b/ports/ragel/CONTROL @@ -1,3 +1,4 @@ Source: ragel Version: 6.10-1 +Homepage: https://www.colm.net/files/ragel Description: Ragel State Machine Compiler diff --git a/ports/range-v3/CONTROL b/ports/range-v3/CONTROL index ec7d32cf8b7088..fb534ac2975b1f 100644 --- a/ports/range-v3/CONTROL +++ b/ports/range-v3/CONTROL @@ -1,3 +1,4 @@ Source: range-v3 Version: 0.5.0 +Homepage: https://github.com/Microsoft/Range-V3-VS2015 Description: Range library for C++11/14/17. diff --git a/ports/rapidxml/CONTROL b/ports/rapidxml/CONTROL index cfd7e0cd521965..bfc1eb77b6f28d 100644 --- a/ports/rapidxml/CONTROL +++ b/ports/rapidxml/CONTROL @@ -1,3 +1,4 @@ Source: rapidxml Version: 1.13 +Homepage: https://sourceforge.net/projects/rapidxml Description: RapidXml is an attempt to create the fastest XML parser possible, while retaining useability, portability and reasonable W3C compatibility. diff --git a/ports/re2/CONTROL b/ports/re2/CONTROL index bcfa9c7242055d..32a1726ab4575b 100644 --- a/ports/re2/CONTROL +++ b/ports/re2/CONTROL @@ -1,3 +1,4 @@ Source: re2 Version: 2019-05-07 +Homepage: https://github.com/google/re2 Description: RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python. It is a C++ library. \ No newline at end of file diff --git a/ports/readosm/CONTROL b/ports/readosm/CONTROL index 08e696e6ddc8b9..caf32bf4b48a8c 100644 --- a/ports/readosm/CONTROL +++ b/ports/readosm/CONTROL @@ -1,4 +1,5 @@ Source: readosm Version: 1.1.0-1 +Homepage: https://www.gaia-gis.it/gaia-sins/readosm-sources Description: ReadOSM is an open source library to extract valid data from within an Open Street Map input file (.osm or .osm.pbf) Build-Depends: expat, zlib diff --git a/ports/realsense2/CONTROL b/ports/realsense2/CONTROL index 2802c0f9d0a69c..5147c77cf316f4 100644 --- a/ports/realsense2/CONTROL +++ b/ports/realsense2/CONTROL @@ -1,5 +1,6 @@ Source: realsense2 Version: 2.16.1-2 +Homepage: https://github.com/IntelRealSense/librealsense Description: Intel® RealSense™ SDK 2.0 is a cross-platform library for Intel® RealSense™ depth cameras (D400 series and the SR300). Feature: tools diff --git a/ports/recast/CONTROL b/ports/recast/CONTROL index 969b9d172579f2..e19df38c8f6f75 100644 --- a/ports/recast/CONTROL +++ b/ports/recast/CONTROL @@ -1,3 +1,4 @@ Source: recast Version: 1.5.1-2 +Homepage: https://github.com/recastnavigation/recastnavigation Description: Navigation-mesh Toolset for Games diff --git a/ports/refprop-headers/CONTROL b/ports/refprop-headers/CONTROL index 00b78cc55a7670..c9356556e2bc3c 100644 --- a/ports/refprop-headers/CONTROL +++ b/ports/refprop-headers/CONTROL @@ -1,3 +1,4 @@ Source: refprop-headers Version: 2017-11-7-882aec454b2bc3d5323b8691736ff09c288f4ed6 +Homepage: https://github.com/CoolProp/REFPROP-headers Description: The REFPROP Headers diff --git a/ports/rhash/CONTROL b/ports/rhash/CONTROL index a25c1190b77016..a2bb52c2f26ead 100644 --- a/ports/rhash/CONTROL +++ b/ports/rhash/CONTROL @@ -1,3 +1,4 @@ Source: rhash Version: 1.3.8 +Homepage: https://github.com/rhash/RHash Description: C library for computing a wide variety of hash sums diff --git a/ports/rocksdb/CONTROL b/ports/rocksdb/CONTROL index 10562f779f0a2d..6e35d8a9b2aca1 100644 --- a/ports/rocksdb/CONTROL +++ b/ports/rocksdb/CONTROL @@ -1,5 +1,6 @@ Source: rocksdb Version: 6.0.2 +Homepage: https://github.com/facebook/rocksdb Description: A library that provides an embeddable, persistent key-value store for fast storage Default-Features: zlib diff --git a/ports/rpclib/CONTROL b/ports/rpclib/CONTROL index d3531e9b511225..15e6abd3edabad 100644 --- a/ports/rpclib/CONTROL +++ b/ports/rpclib/CONTROL @@ -1,3 +1,4 @@ Source: rpclib Version: 2.2.1-1 +Homepage: https://github.com/rpclib/rpclib Description: a RPC library for C++, providing both a client and server implementation. It is built using modern C++14. diff --git a/ports/rs-core-lib/CONTROL b/ports/rs-core-lib/CONTROL index 0350e206f3cb50..1a766286b64865 100644 --- a/ports/rs-core-lib/CONTROL +++ b/ports/rs-core-lib/CONTROL @@ -1,4 +1,5 @@ Source: rs-core-lib Version: 2019-05-07 +Homepage: https://github.com/CaptainCrowbar/rs-core-lib Description: Minimal common utilities by Ross Smith diff --git a/ports/rtmidi/CONTROL b/ports/rtmidi/CONTROL index 2c3d38dd4c1266..3742ec9b16a450 100644 --- a/ports/rtmidi/CONTROL +++ b/ports/rtmidi/CONTROL @@ -1,3 +1,4 @@ Source: rtmidi Version: 4.0.0 +Homepage: https://github.com/thestk/rtmidi Description: A set of C++ classes that provide a common API for realtime MIDI input/output across Linux (ALSA & JACK), Macintosh OS X (CoreMidi & JACK) and Windows (Multimedia) diff --git a/ports/rttr/CONTROL b/ports/rttr/CONTROL index 55e6e6b6730472..7394927840ad71 100644 --- a/ports/rttr/CONTROL +++ b/ports/rttr/CONTROL @@ -1,3 +1,4 @@ Source: rttr Version: 0.9.6-1 +Homepage: https://github.com/rttrorg/rttr Description: an easy and intuitive way to use reflection in C++ diff --git a/ports/rxcpp/CONTROL b/ports/rxcpp/CONTROL index c94e71b769f0e8..2ada65d3bda85e 100644 --- a/ports/rxcpp/CONTROL +++ b/ports/rxcpp/CONTROL @@ -1,3 +1,4 @@ Source: rxcpp Version: 4.1.0 +Homepage: https://github.com/Reactive-Extensions/RxCpp Description: Reactive Extensions for C++ \ No newline at end of file diff --git a/ports/scintilla/CONTROL b/ports/scintilla/CONTROL index 8f1b2f38c0c0d3..6b7aa54f6199ed 100644 --- a/ports/scintilla/CONTROL +++ b/ports/scintilla/CONTROL @@ -1,3 +1,4 @@ Source: scintilla Version: 4.1.2 +Homepage: https://www.scintilla.org/ Description: A free source code editing component for Win32, GTK+, and OS X diff --git a/ports/sciter/CONTROL b/ports/sciter/CONTROL index 69f2d68a099d9b..0cd3bb219eb2ab 100644 --- a/ports/sciter/CONTROL +++ b/ports/sciter/CONTROL @@ -1,4 +1,5 @@ Source: sciter Version: 4.2.6.9-1 +Homepage: https://github.com/c-smile/sciter-sdk Description: Sciter is an embeddable HTML/CSS/scripting engine. Maintainer: andrew.fedoniouk@gmail.com, ehysta@gmail.com diff --git a/ports/scylla-wrapper/CONTROL b/ports/scylla-wrapper/CONTROL index e320224b008ec4..bbe37c1171e75b 100644 --- a/ports/scylla-wrapper/CONTROL +++ b/ports/scylla-wrapper/CONTROL @@ -1,4 +1,4 @@ Source: scylla-wrapper Version: 2018-08-26-16e6f435 Build-Depends: distorm -Description: This is a wrapper around Scylla. It exports functions for IAT fixing, dumping and PE rebuilding. based on http://github.com/NtQuery/Scylla commit 0f6b7198be (v0.9.6b). \ No newline at end of file +Description: This is a wrapper around Scylla. It exports functions for IAT fixing, dumping and PE rebuilding. based on https://github.com/NtQuery/Scylla commit 0f6b7198be (v0.9.6b). \ No newline at end of file diff --git a/ports/sdl2-image/CONTROL b/ports/sdl2-image/CONTROL index 2788f032a2f430..388e08d5afd2c4 100644 --- a/ports/sdl2-image/CONTROL +++ b/ports/sdl2-image/CONTROL @@ -1,6 +1,7 @@ Source: sdl2-image Version: 2.0.4-2 Build-Depends: sdl2, libpng +Homepage: https://www.libsdl.org/projects/SDL_image Description: SDL_image is an image file loading library. It loads images as SDL surfaces and textures, and supports the following formats: BMP, GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, WEBP, XCF, XPM, XV Feature: libjpeg-turbo diff --git a/ports/sdl2-mixer/CONTROL b/ports/sdl2-mixer/CONTROL index 4c55575f452940..57827c0e693dce 100644 --- a/ports/sdl2-mixer/CONTROL +++ b/ports/sdl2-mixer/CONTROL @@ -1,5 +1,6 @@ Source: sdl2-mixer Version: 2.0.4-2 +Homepage: https://www.libsdl.org/projects/SDL_mixer Description: Multi-channel audio mixer library for SDL. Build-Depends: sdl2 diff --git a/ports/sdl2-net/CONTROL b/ports/sdl2-net/CONTROL index e855e2656f0339..848691145e386c 100644 --- a/ports/sdl2-net/CONTROL +++ b/ports/sdl2-net/CONTROL @@ -1,4 +1,5 @@ Source: sdl2-net Version: 2.0.1-6 +Homepage: https://www.libsdl.org/projects/SDL_net Description: Networking library for SDL Build-Depends: sdl2 diff --git a/ports/sdl2-ttf/CONTROL b/ports/sdl2-ttf/CONTROL index 22598164e03d84..9154c52da4181d 100644 --- a/ports/sdl2-ttf/CONTROL +++ b/ports/sdl2-ttf/CONTROL @@ -1,4 +1,5 @@ Source: sdl2-ttf Version: 2.0.15-2 +Homepage: https://www.libsdl.org/projects/SDL_ttf/ Description: A library for rendering TrueType fonts with SDL Build-Depends: sdl2, freetype diff --git a/ports/sdl2/CONTROL b/ports/sdl2/CONTROL index b03d96e818b414..bfda1f10b2cb57 100644 --- a/ports/sdl2/CONTROL +++ b/ports/sdl2/CONTROL @@ -1,5 +1,6 @@ Source: sdl2 Version: 2.0.9-3 +Homepage: https://github.com/SDL-Mirror/SDL Description: Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. Feature: vulkan diff --git a/ports/secp256k1/CONTROL b/ports/secp256k1/CONTROL index 16761cc4d43878..a0414b60c0af59 100644 --- a/ports/secp256k1/CONTROL +++ b/ports/secp256k1/CONTROL @@ -1,3 +1,4 @@ Source: secp256k1 Version: 2017-19-10-0b7024185045a49a1a6a4c5615bf31c94f63d9c4-2 +Homepage: https://github.com/bitcoin-core/secp256k1 Description: Optimized C library for EC operations on curve diff --git a/ports/sfgui/CONTROL b/ports/sfgui/CONTROL index da3ee41a9e990b..cd9f17ab9d5aa3 100644 --- a/ports/sfgui/CONTROL +++ b/ports/sfgui/CONTROL @@ -1,4 +1,5 @@ Source: sfgui Version: 0.4.0 +Homepage: https://github.com/TankOs/SFGUI Description: simple and fast graphical user interface library Build-Depends: sfml diff --git a/ports/sfml/CONTROL b/ports/sfml/CONTROL index 8fcda5bc12955d..d23645a30179e8 100644 --- a/ports/sfml/CONTROL +++ b/ports/sfml/CONTROL @@ -1,4 +1,5 @@ Source: sfml Version: 2.5.1-1 +Homepage: https://github.com/sfml/sfml Description: Simple and fast multimedia library Build-Depends: freetype, libflac, libogg, libvorbis, openal-soft, stb diff --git a/ports/shaderc/CONTROL b/ports/shaderc/CONTROL index c428c0ea9e8ff0..36f82852a168e4 100644 --- a/ports/shaderc/CONTROL +++ b/ports/shaderc/CONTROL @@ -1,4 +1,5 @@ Source: shaderc Version: 12fb656ab20ea9aa06e7084a74e5ff832b7ce2da-2 +Homepage: https://github.com/google/shaderc Description: A collection of tools, libraries and tests for shader compilation. Build-Depends: glslang, spirv-tools diff --git a/ports/shapelib/CONTROL b/ports/shapelib/CONTROL index 57fbecb53f1ab6..338be3ebe7bbaa 100644 --- a/ports/shapelib/CONTROL +++ b/ports/shapelib/CONTROL @@ -1,3 +1,4 @@ Source: shapelib Version: 1.4.1-1 +Homepage: https://download.osgeo.org/shapelib Description: Shapefile C Library is simple C API for reading and writing ESRI Shapefiles diff --git a/ports/signalrclient/CONTROL b/ports/signalrclient/CONTROL index 12f9dcfe23f86e..e64b920baecc3d 100644 --- a/ports/signalrclient/CONTROL +++ b/ports/signalrclient/CONTROL @@ -1,4 +1,5 @@ Source: signalrclient Version: 1.0.0-beta1-6 Build-Depends: cpprestsdk, openssl +Homepage: https://github.com/aspnet/SignalR-Client-Cpp Description: C++ client for SignalR. diff --git a/ports/smpeg2/CONTROL b/ports/smpeg2/CONTROL index fc1e1604c65da0..3a761287ee730c 100644 --- a/ports/smpeg2/CONTROL +++ b/ports/smpeg2/CONTROL @@ -1,4 +1,5 @@ Source: smpeg2 Version: 2.0.0-6 +Homepage: https://www.libsdl.org/projects/smpeg/ Description: SDL MPEG Player Library Build-Depends: sdl2 diff --git a/ports/snappy/CONTROL b/ports/snappy/CONTROL index d90f5039c13191..a0a0cae03fdeaa 100644 --- a/ports/snappy/CONTROL +++ b/ports/snappy/CONTROL @@ -1,3 +1,4 @@ Source: snappy Version: 1.1.7-2 +Homepage: https://github.com/google/snappy Description: A fast compressor/decompressor. diff --git a/ports/sobjectizer/CONTROL b/ports/sobjectizer/CONTROL index 27cb2971fe3bee..12b0968d96540b 100644 --- a/ports/sobjectizer/CONTROL +++ b/ports/sobjectizer/CONTROL @@ -1,3 +1,4 @@ Source: sobjectizer Version: 5.5.24.4 +Homepage: https://sourceforge.net/projects/sobjectizer Description: SObjectizer is a C++ in-process message dispatching framework with implementation of Actor Model, Publish-Subscribe Model and CSP-like channels. diff --git a/ports/soci/CONTROL b/ports/soci/CONTROL index 33de13eb78ef7c..224e3de64e26de 100644 --- a/ports/soci/CONTROL +++ b/ports/soci/CONTROL @@ -1,5 +1,6 @@ Source: soci Version: 3.2.3-4 +Homepage: https://github.com/SOCI/soci Description: SOCI database access library Feature: boost diff --git a/ports/sol2/CONTROL b/ports/sol2/CONTROL index 5d702333ca675f..a43b1c7b45b458 100644 --- a/ports/sol2/CONTROL +++ b/ports/sol2/CONTROL @@ -1,4 +1,5 @@ Source: sol2 Version: 3.0.2 +Homepage: https://github.com/ThePhD/sol2 Description: Sol v2.0 - a C++ <-> Lua API wrapper with advanced features and top notch performance - is here, and it's great Build-Depends: lua (windows) \ No newline at end of file diff --git a/ports/sophus/CONTROL b/ports/sophus/CONTROL index e6cf512f20b9c4..91e97c90ba8a4c 100644 --- a/ports/sophus/CONTROL +++ b/ports/sophus/CONTROL @@ -1,4 +1,5 @@ Source: sophus Version: 1.0.0-3 Build-Depends: eigen3, ceres, suitesparse +Homepage: https://github.com/strasdat/Sophus Description: Lie group library for C++ diff --git a/ports/soundtouch/CONTROL b/ports/soundtouch/CONTROL index 012b7c9df95c57..2e358f55ec93b3 100644 --- a/ports/soundtouch/CONTROL +++ b/ports/soundtouch/CONTROL @@ -1,4 +1,5 @@ Source: soundtouch Version: 2.0.0-2 +Homepage: https://www.surina.net/soundtouch Description: SoundTouch is an open-source audio processing library for changing the Tempo, Pitch and Playback Rates of audio streams or audio files. Build-Depends: atlmfc diff --git a/ports/spatialite-tools/CONTROL b/ports/spatialite-tools/CONTROL index 19b2aafbba0e90..3ba32121c129b0 100644 --- a/ports/spatialite-tools/CONTROL +++ b/ports/spatialite-tools/CONTROL @@ -1,4 +1,5 @@ Source: spatialite-tools Version: 4.3.0-1 +Homepage: https://www.gaia-gis.it/fossil/spatialite-tools/index Description: Contains spatialite.exe and other command line tools to work with SpatiaLite databases (import, export, SQL queries) Build-Depends: sqlite3, libspatialite, geos, readosm, proj4, zlib, libiconv, expat diff --git a/ports/spdlog/CONTROL b/ports/spdlog/CONTROL index 801cd3697fa044..38149a55c764db 100644 --- a/ports/spdlog/CONTROL +++ b/ports/spdlog/CONTROL @@ -1,4 +1,5 @@ Source: spdlog Version: 1.3.1 +Homepage: https://github.com/gabime/spdlog Description: Very fast, header only, C++ logging library Build-Depends: fmt diff --git a/ports/speex/CONTROL b/ports/speex/CONTROL index 6fcda84be3bc56..3291927c2888ba 100644 --- a/ports/speex/CONTROL +++ b/ports/speex/CONTROL @@ -1,3 +1,4 @@ Source: speex Version: 1.2.0-4 +Homepage: https://github.com/xiph/speex Description: Speex is an Open Source/Free Software patent-free audio compression format designed for speech. diff --git a/ports/speexdsp/CONTROL b/ports/speexdsp/CONTROL index d7e8bac98b0fc7..d96eb11c1d78bc 100644 --- a/ports/speexdsp/CONTROL +++ b/ports/speexdsp/CONTROL @@ -1,4 +1,5 @@ Source: speexdsp Version: 1.2rc3-2 +Homepage: https://ftp.osuosl.org/pub/xiph/releases/speex/ Description: A patent-free, Open Source/Free Software DSP library. Build-Depends: diff --git a/ports/spirit-po/CONTROL b/ports/spirit-po/CONTROL index eb3b319b7c6da6..e31bdcb2e6229f 100644 --- a/ports/spirit-po/CONTROL +++ b/ports/spirit-po/CONTROL @@ -1,4 +1,5 @@ Source: spirit-po Version: 1.1.2-1 +Homepage: https://github.com/cbeck88/spirit-po Description: A header-only C++ library for localization using GNU gettext po files, based on Boost.Spirit. Build-Depends: boost diff --git a/ports/spirv-tools/CONTROL b/ports/spirv-tools/CONTROL index 38995e35679215..b5f0c536a3e846 100644 --- a/ports/spirv-tools/CONTROL +++ b/ports/spirv-tools/CONTROL @@ -1,4 +1,5 @@ Source: spirv-tools Version: 2018.1-2 +Homepage: https://github.com/KhronosGroup/SPIRV-Tools Description: API and commands for processing SPIR-V modules Build-Depends: spirv-headers diff --git a/ports/sqlite-modern-cpp/CONTROL b/ports/sqlite-modern-cpp/CONTROL index c3e3b38be89f55..c8e3ccb642d606 100644 --- a/ports/sqlite-modern-cpp/CONTROL +++ b/ports/sqlite-modern-cpp/CONTROL @@ -1,4 +1,5 @@ Source: sqlite-modern-cpp Version: 3.2-936cd0c8 Build-Depends: sqlite3 +Homepage: https://github.com/aminroosta/sqlite_modern_cpp Description: The C++14 wrapper around sqlite library diff --git a/ports/sqlite3/CONTROL b/ports/sqlite3/CONTROL index ab5f103fd8eee5..c829193a2a32a5 100644 --- a/ports/sqlite3/CONTROL +++ b/ports/sqlite3/CONTROL @@ -1,5 +1,6 @@ Source: sqlite3 Version: 3.27.2 +Homepage: https://sqlite.org/ Description: SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. Feature: tool diff --git a/ports/sqlitecpp/CONTROL b/ports/sqlitecpp/CONTROL index ecb0f16e5f5ba2..8d0fb047e7b33d 100644 --- a/ports/sqlitecpp/CONTROL +++ b/ports/sqlitecpp/CONTROL @@ -1,4 +1,5 @@ Source: sqlitecpp Version: 2.3.0 Build-Depends: sqlite3 +Homepage: https://github.com/SRombauts/SQLiteCpp Description: SQLiteC++ (SQLiteCpp) is a smart and easy to use C++ SQLite3 wrapper. diff --git a/ports/stb/CONTROL b/ports/stb/CONTROL index 7ffc04be05a45e..ff7778020ea1b2 100644 --- a/ports/stb/CONTROL +++ b/ports/stb/CONTROL @@ -1,3 +1,4 @@ Source: stb Version: 2019-05-07 +Homepage: https://github.com/nothings/stb Description: stb single-file public domain libraries for C/C++ diff --git a/ports/string-theory/CONTROL b/ports/string-theory/CONTROL index 841f6abefff7d3..e1c0c8af0e4ad2 100644 --- a/ports/string-theory/CONTROL +++ b/ports/string-theory/CONTROL @@ -1,3 +1,4 @@ Source: string-theory Version: 2.1 +Homepage: https://github.com/zrax/string_theory Description: Flexible C++11 string library with type-safe formatting. diff --git a/ports/strtk/CONTROL b/ports/strtk/CONTROL index 861e148a798c58..0effa1bb04b12e 100644 --- a/ports/strtk/CONTROL +++ b/ports/strtk/CONTROL @@ -1,4 +1,5 @@ Source: strtk Version: 2019-01-09 +Homepage: https://github.com/ArashPartow/strtk Description: robust, optimized and portable string processing algorithms for the C++ language Build-Depends: boost diff --git a/ports/suitesparse/CONTROL b/ports/suitesparse/CONTROL index 5182a90cd3706f..352a28a6da17b1 100644 --- a/ports/suitesparse/CONTROL +++ b/ports/suitesparse/CONTROL @@ -1,6 +1,7 @@ Source: suitesparse Version: 5.4.0-1 Build-Depends: clapack (!osx) +Homepage: http://faculty.cse.tamu.edu/davis/SuiteSparse Description: algebra library Feature: metis diff --git a/ports/sundials/CONTROL b/ports/sundials/CONTROL index 7651993bf2fc67..dc6955d40df21d 100644 --- a/ports/sundials/CONTROL +++ b/ports/sundials/CONTROL @@ -1,3 +1,4 @@ Source: sundials Version: 3.1.1 +Homepage: https://computation.llnl.gov/projects/sundials Description: SUNDIALS (SUite of Nonlinear and DIfferential/ALgebraic equation Solvers) diff --git a/ports/szip/CONTROL b/ports/szip/CONTROL index 79a99911de42cf..a2ea5f275bfa6f 100644 --- a/ports/szip/CONTROL +++ b/ports/szip/CONTROL @@ -1,3 +1,4 @@ Source: szip Version: 2.1.1-3 +Homepage: https://support.hdfgroup.org/ftp/lib-external/szip Description: Szip compression software, providing lossless compression of scientific data diff --git a/ports/tacopie/CONTROL b/ports/tacopie/CONTROL index 47493a02233d7f..a800a26be0ff58 100644 --- a/ports/tacopie/CONTROL +++ b/ports/tacopie/CONTROL @@ -1,3 +1,4 @@ Source: tacopie Version: 3.2.0-1 +Homepage: https://github.com/Cylix/tacopie Description: Tacopie is a TCP Client & Server C++11 library diff --git a/ports/taglib/CONTROL b/ports/taglib/CONTROL index fe0567998edb95..9756e8e8c9dcf3 100644 --- a/ports/taglib/CONTROL +++ b/ports/taglib/CONTROL @@ -1,4 +1,5 @@ Source: taglib Version: 1.11.1-20190531 Description: TagLib Audio Meta-Data Library +Homepage: https://github.com/taglib/taglib Build-Depends: zlib diff --git a/ports/tbb/CONTROL b/ports/tbb/CONTROL index 70e21589a3a3ed..e3ae7893634a9e 100644 --- a/ports/tbb/CONTROL +++ b/ports/tbb/CONTROL @@ -1,3 +1,4 @@ Source: tbb Version: 2019_U7 +Homepage: https://github.com/01org/tbb Description: Intel's Threading Building Blocks. diff --git a/ports/tclap/CONTROL b/ports/tclap/CONTROL index e4276ca0369da3..652593d40c26d1 100644 --- a/ports/tclap/CONTROL +++ b/ports/tclap/CONTROL @@ -1,3 +1,4 @@ Source: tclap Version: 1.2.2 +Homepage: https://sourceforge.net/projects/tclap/ Description: Templatized command-line argument parser for C++ diff --git a/ports/telnetpp/CONTROL b/ports/telnetpp/CONTROL index 27ebdb31b1ffc1..563a12f5618336 100644 --- a/ports/telnetpp/CONTROL +++ b/ports/telnetpp/CONTROL @@ -1,4 +1,5 @@ Source: telnetpp Version: 1.2.4-1 +Homepage: https://github.com/KazDragon/telnetpp Description: Telnet++ is an implementation of the Telnet Session Layer protocol using C++14 Build-Depends: boost, gtest, zlib diff --git a/ports/tesseract/CONTROL b/ports/tesseract/CONTROL index 11ff55640eddf4..85e76cc0356ceb 100644 --- a/ports/tesseract/CONTROL +++ b/ports/tesseract/CONTROL @@ -1,4 +1,5 @@ Source: tesseract Version: 4.0.0-2 +Homepage: https://github.com/tesseract-ocr/tesseract Description: An OCR Engine that was developed at HP Labs between 1985 and 1995... and now at Google. Build-Depends: leptonica, icu diff --git a/ports/theia/CONTROL b/ports/theia/CONTROL index d29e6b3fef3b6b..2d527adcdf1295 100644 --- a/ports/theia/CONTROL +++ b/ports/theia/CONTROL @@ -1,4 +1,5 @@ Source: theia Version: 0.8-2 Build-Depends: flann, cereal, ceres[suitesparse], openimageio, glew, freeglut (!osx) +Homepage: https://github.com/sweeneychris/TheiaSfM Description: An open source library for multiview geometry and structure from motion diff --git a/ports/thor/CONTROL b/ports/thor/CONTROL index 4ff531d142a748..afdc2aafb9fed2 100644 --- a/ports/thor/CONTROL +++ b/ports/thor/CONTROL @@ -1,4 +1,5 @@ Source: thor Version: 2.0-2 +Homepage: https://github.com/Bromeon/Thor Description: Extends the multimedia library SFML with higher-level features Build-Depends: sfml, aurora diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index e1afc6ccf54695..47a85dfa5a194c 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,5 @@ Source: thrift Version: 2019-05-07-1 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit +Homepage: https://github.com/apache/thrift Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/tidy-html5/CONTROL b/ports/tidy-html5/CONTROL index ff74c197327817..0f608ea2de226c 100644 --- a/ports/tidy-html5/CONTROL +++ b/ports/tidy-html5/CONTROL @@ -1,3 +1,4 @@ Source: tidy-html5 Version: 5.6.0 +Homepage: https://github.com/htacg/tidy-html5 Description: Tidy tidies HTML and XML. It can tidy your documents by itself, and developers can easily integrate its features into even more powerful tools. diff --git a/ports/tiff/CONTROL b/ports/tiff/CONTROL index d4ad07dc625d26..9c88261a6b904a 100644 --- a/ports/tiff/CONTROL +++ b/ports/tiff/CONTROL @@ -1,4 +1,5 @@ Source: tiff Version: 4.0.10-6 Build-Depends: zlib, libjpeg-turbo, liblzma +Homepage: https://download.osgeo.org/libtiff Description: A library that supports the manipulation of TIFF image files diff --git a/ports/tiny-dnn/CONTROL b/ports/tiny-dnn/CONTROL index 9198ef7fdcad5b..2a31c833a8ccc1 100644 --- a/ports/tiny-dnn/CONTROL +++ b/ports/tiny-dnn/CONTROL @@ -1,3 +1,4 @@ Source: tiny-dnn Version: 2018-10-25 +Homepage: https://github.com/tiny-dnn/tiny-dnn Description: A C++14 implementation of deep learning. It is suitable for deep learning on limited computational resource. diff --git a/ports/tinydir/CONTROL b/ports/tinydir/CONTROL index 8ee419763a40d9..04a6b7b60b47a8 100644 --- a/ports/tinydir/CONTROL +++ b/ports/tinydir/CONTROL @@ -1,3 +1,4 @@ Source: tinydir Version: 1.2.4 +Homepage: https://github.com/cxong/tinydir Description: Lightweight, portable and easy to integrate C directory and file reader diff --git a/ports/tinyexif/CONTROL b/ports/tinyexif/CONTROL index 8302333d53154b..861520321b56f2 100644 --- a/ports/tinyexif/CONTROL +++ b/ports/tinyexif/CONTROL @@ -1,4 +1,5 @@ Source: tinyexif Version: 1.0.2-4 Build-Depends: tinyxml2 +Homepage: https://github.com/cdcseacave/TinyEXIF Description: tiny ISO-compliant C++ EXIF and XMP parsing library for JPEG images diff --git a/ports/tinyexr/CONTROL b/ports/tinyexr/CONTROL index 3dbc26101103f3..076322a0fbd39e 100644 --- a/ports/tinyexr/CONTROL +++ b/ports/tinyexr/CONTROL @@ -1,3 +1,4 @@ Source: tinyexr Version: 0.9.5-d16ea6-1 +Homepage: https://github.com/syoyo/tinyexr Description: Library to load and save OpenEXR(.exr) images diff --git a/ports/tinythread/CONTROL b/ports/tinythread/CONTROL index 6b5de12e1d4148..c837708ce713d7 100644 --- a/ports/tinythread/CONTROL +++ b/ports/tinythread/CONTROL @@ -1,3 +1,4 @@ Source: tinythread Version: 1.1-2 +Homepage: https://tinythreadpp.bitsnbites.eu/ Description: Implements a fairly compatible subset of the C++11 thread management classes diff --git a/ports/tinytoml/CONTROL b/ports/tinytoml/CONTROL index b656fccc489446..ba262920f9dd73 100644 --- a/ports/tinytoml/CONTROL +++ b/ports/tinytoml/CONTROL @@ -1,3 +1,4 @@ Source: tinytoml Version: 20180219-1 +Homepage: https://github.com/mayah/tinytoml Description: A header only C++11 library for parsing TOML. diff --git a/ports/tinyxml/CONTROL b/ports/tinyxml/CONTROL index 4eacee3b26d361..749dc2e7e686ac 100644 --- a/ports/tinyxml/CONTROL +++ b/ports/tinyxml/CONTROL @@ -1,3 +1,4 @@ Source: tinyxml Version: 2.6.2-4 +Homepage: https://sourceforge.net/projects/tinyxml Description: A simple, small, minimal, C++ XML parser that can be easily integrating into other programs. diff --git a/ports/tinyxml2/CONTROL b/ports/tinyxml2/CONTROL index 5c4fb87a25c27c..f3b7655e98de0e 100644 --- a/ports/tinyxml2/CONTROL +++ b/ports/tinyxml2/CONTROL @@ -1,3 +1,4 @@ Source: tinyxml2 Version: 7.0.1 +Homepage: https://github.com/leethomason/tinyxml2 Description: A simple, small, efficient, C++ XML parser diff --git a/ports/torch-th/CONTROL b/ports/torch-th/CONTROL index edaaef3d49d2c3..1ffe36b0a5b80a 100644 --- a/ports/torch-th/CONTROL +++ b/ports/torch-th/CONTROL @@ -1,3 +1,4 @@ Source: torch-th Version: 2019-04-19-1 +Homepage: https://github.com/torch/torch7 Description: Torch's TH library diff --git a/ports/tre/CONTROL b/ports/tre/CONTROL index a5df8cd111f316..70a5ce003fd175 100644 --- a/ports/tre/CONTROL +++ b/ports/tre/CONTROL @@ -1,3 +1,4 @@ Source: tre Version: 0.8.0-1 +Homepage: https://github.com/laurikari/tre Description: TRE is a lightweight, robust, and efficient POSIX compliant regexp matching library with some exciting features such as approximate (fuzzy) matching. diff --git a/ports/unicorn-lib/CONTROL b/ports/unicorn-lib/CONTROL index 655dd26d7209e4..9da8c56e9187b7 100644 --- a/ports/unicorn-lib/CONTROL +++ b/ports/unicorn-lib/CONTROL @@ -1,4 +1,5 @@ Source: unicorn-lib Version: 2019-05-07-1 +Homepage: https://github.com/CaptainCrowbar/unicorn-lib Description: Unicode library for C++ by Ross Smith Build-Depends: rs-core-lib, pcre2, zlib, libiconv diff --git a/ports/unicorn/CONTROL b/ports/unicorn/CONTROL index 0753670c296400..71a3bd18cc5a41 100644 --- a/ports/unicorn/CONTROL +++ b/ports/unicorn/CONTROL @@ -1,3 +1,4 @@ Source: unicorn Version: 2019-04-19 +Homepage: https://github.com/unicorn-engine/unicorn Description: Unicorn is a lightweight multi-platform, multi-architecture CPU emulator framework diff --git a/ports/units/CONTROL b/ports/units/CONTROL index b66a3b828b155c..21c7f44b13153c 100644 --- a/ports/units/CONTROL +++ b/ports/units/CONTROL @@ -1,3 +1,4 @@ Source: units Version: 2.3.0 +Homepage: https://github.com/nholthaus/units Description: A compile-time, header-only, dimensional analysis and unit conversion library built on c++14 with no dependencies. diff --git a/ports/unittest-cpp/CONTROL b/ports/unittest-cpp/CONTROL index 9279cd127b881a..195b41fe40f8ce 100644 --- a/ports/unittest-cpp/CONTROL +++ b/ports/unittest-cpp/CONTROL @@ -1,3 +1,4 @@ Source: unittest-cpp Version: 2.0.0-1 +Homepage: https://github.com/unittest-cpp/unittest-cpp Description: A lightweight unit testing framework for C++ diff --git a/ports/unrar/CONTROL b/ports/unrar/CONTROL index 5e54ed37fe703a..f105d84bc095d6 100644 --- a/ports/unrar/CONTROL +++ b/ports/unrar/CONTROL @@ -1,3 +1,4 @@ Source: unrar Version: 5.5.8-2 +Homepage: https://www.rarlab.com Description: rarlab's unrar libary diff --git a/ports/urdfdom-headers/CONTROL b/ports/urdfdom-headers/CONTROL index 4eb0a976b09fc0..3d005dd601b6bc 100644 --- a/ports/urdfdom-headers/CONTROL +++ b/ports/urdfdom-headers/CONTROL @@ -1,3 +1,4 @@ Source: urdfdom-headers Version: 1.0.4 +Homepage: https://github.com/ros/urdfdom_headers Description: The URDF (U-Robot Description Format) headers provides core data structure headers for URDF. diff --git a/ports/urdfdom/CONTROL b/ports/urdfdom/CONTROL index c2a76b5c870727..0d81ec662fb094 100644 --- a/ports/urdfdom/CONTROL +++ b/ports/urdfdom/CONTROL @@ -1,4 +1,5 @@ Source: urdfdom -Version: 1.0.3 +Version: 1.0.3 +Homepage: https://github.com/ros/urdfdom Description: Provides core data structures and a simple XML parsers for populating the class data structures from an URDF file. Build-Depends: console-bridge, tinyxml, urdfdom-headers diff --git a/ports/uriparser/CONTROL b/ports/uriparser/CONTROL index a0e37aebab5105..af57f871a0d2e5 100644 --- a/ports/uriparser/CONTROL +++ b/ports/uriparser/CONTROL @@ -1,5 +1,6 @@ Source: uriparser Version: 0.9.3-4 +Homepage: https://github.com/uriparser/uriparser Description: uriparser is a strictly RFC 3986 compliant URI parsing and handling library written in C89 ("ANSI C"). uriparser is cross-platform, fast, supports Unicode, and is licensed under the New BSD license. Feature: tool diff --git a/ports/utf8proc/CONTROL b/ports/utf8proc/CONTROL index 183f1bb3963312..4afe2da7ce7b20 100644 --- a/ports/utf8proc/CONTROL +++ b/ports/utf8proc/CONTROL @@ -1,3 +1,4 @@ Source: utf8proc Version: 2.4.0 +Homepage: https://github.com/JuliaLang/utf8proc Description: Clean C library for processing UTF-8 Unicode data. diff --git a/ports/utfcpp/CONTROL b/ports/utfcpp/CONTROL index f3800dd21d8838..fd18722416cdac 100644 --- a/ports/utfcpp/CONTROL +++ b/ports/utfcpp/CONTROL @@ -1,3 +1,4 @@ Source: utfcpp -Version: 3.1 +Version: 3.1 +Homepage: https://github.com/nemtrif/utfcpp Description: UTF-8 with C++ in a Portable Way diff --git a/ports/utfz/CONTROL b/ports/utfz/CONTROL index fd18544679ad01..1212c4d6d8b83c 100644 --- a/ports/utfz/CONTROL +++ b/ports/utfz/CONTROL @@ -1,3 +1,4 @@ Source: utfz Version: 1.2-1 +Homepage: https://github.com/IMQS/utfz Description: A tiny C++ library for parsing and encoding utf-8 diff --git a/ports/uvatlas/CONTROL b/ports/uvatlas/CONTROL index c028ad14e98ced..972c6741b12296 100644 --- a/ports/uvatlas/CONTROL +++ b/ports/uvatlas/CONTROL @@ -1,3 +1,4 @@ Source: uvatlas -Version: apr2019 +Version: apr2019 +Homepage: https://github.com/Microsoft/UVAtlas Description: UVAtlas isochart texture atlas \ No newline at end of file diff --git a/ports/uwebsockets/CONTROL b/ports/uwebsockets/CONTROL index daf53b28b0a3dd..663538f9646a09 100644 --- a/ports/uwebsockets/CONTROL +++ b/ports/uwebsockets/CONTROL @@ -1,4 +1,5 @@ Source: uwebsockets Version: 0.15.6 Build-Depends: zlib, usockets +Homepage: https://github.com/uWebSockets/uWebSockets Description: Simple, secure & standards compliant web I/O for the most demanding of applications diff --git a/ports/vlpp/CONTROL b/ports/vlpp/CONTROL index 13a64dfc85a0a8..bd453ffc239e0f 100644 --- a/ports/vlpp/CONTROL +++ b/ports/vlpp/CONTROL @@ -1,3 +1,4 @@ Source: vlpp Version: 0.10.0.0 +Homepage: https://github.com/vczh-libraries/Release Description: Common C++ construction, including string operation / generic container / linq / General-LR parser generator / multithreading / reflection for C++ / etc diff --git a/ports/vtk/CONTROL b/ports/vtk/CONTROL index 5917bbf6868ee0..7b07132d25f46d 100644 --- a/ports/vtk/CONTROL +++ b/ports/vtk/CONTROL @@ -1,6 +1,7 @@ Source: vtk Version: 8.2.0-4 Description: Software system for 3D computer graphics, image processing, and visualization +Homepage: https://github.com/Kitware/VTK Build-Depends: zlib, libpng, tiff, libxml2, jsoncpp, glew, freetype, expat, hdf5, libjpeg-turbo, proj4, lz4, libtheora, atlmfc (windows), eigen3, double-conversion, pugixml, libharu, sqlite3, netcdf-c Feature: openvr diff --git a/ports/websocketpp/CONTROL b/ports/websocketpp/CONTROL index 206b0d4dd54727..4a284f09e46296 100644 --- a/ports/websocketpp/CONTROL +++ b/ports/websocketpp/CONTROL @@ -1,4 +1,5 @@ Source: websocketpp Version: 0.8.1-1 Build-Depends: zlib, openssl, boost-asio +Homepage: https://github.com/zaphoyd/websocketpp Description: Library that implements RFC6455 The WebSocket Protocol \ No newline at end of file diff --git a/ports/wildmidi/CONTROL b/ports/wildmidi/CONTROL index 33e9cde1fc89cd..35e0bfffc4199f 100644 --- a/ports/wildmidi/CONTROL +++ b/ports/wildmidi/CONTROL @@ -1,3 +1,4 @@ Source: wildmidi -Version: 0.4.3 +Version: 0.4.3 +Homepage: https://github.com/Mindwerks/wildmidi Description: MIDI software synthesizer library. diff --git a/ports/winpcap/CONTROL b/ports/winpcap/CONTROL index 1454948d288757..ddddcab1cbcdff 100644 --- a/ports/winpcap/CONTROL +++ b/ports/winpcap/CONTROL @@ -1,3 +1,4 @@ Source: winpcap Version: 4.1.3-2 +Homepage: https://www.winpcap.org Description: WinPcap is the industry-standard tool for link-layer network access in Windows environments. diff --git a/ports/wt/CONTROL b/ports/wt/CONTROL index 5db330a5c13382..3379d8ff081c8d 100644 --- a/ports/wt/CONTROL +++ b/ports/wt/CONTROL @@ -1,4 +1,5 @@ Source: wt Version: 4.0.5 +Homepage: https://github.com/emweb/wt Description: Wt is a C++ library for developing web applications Build-Depends: openssl, sqlite3, libpq, pango, glew, boost-date-time, boost-regex, boost-program-options, boost-signals, boost-system, boost-filesystem, boost-thread, boost-random, boost-multi-index, boost-signals2, boost-asio, boost-ublas, boost-conversion, boost-array, boost-smart-ptr, boost-tuple, boost-algorithm, boost-logic, boost-interprocess diff --git a/ports/wtl/CONTROL b/ports/wtl/CONTROL index 0eb3cf372af17a..126b4d7681c3d5 100644 --- a/ports/wtl/CONTROL +++ b/ports/wtl/CONTROL @@ -1,5 +1,6 @@ Source: wtl Maintainer: jfrederich@gmail.com Version: 10.0-2 +Homepage: https://sourceforge.net/projects/wtl/ Description: Windows Template Library (WTL) is a C++ library for developing Windows applications and UI components. Build-Depends: diff --git a/ports/wxwidgets/CONTROL b/ports/wxwidgets/CONTROL index b922c1a24f531c..542fdf327693b8 100644 --- a/ports/wxwidgets/CONTROL +++ b/ports/wxwidgets/CONTROL @@ -1,4 +1,5 @@ Source: wxwidgets Version: 3.1.2-1 +Homepage: https://github.com/wxWidgets/wxWidgets Description: wxWidgets is a widget toolkit and tools library for creating graphical user interfaces (GUIs) for cross-platform applications. Build-Depends: zlib, libpng, tiff, expat diff --git a/ports/x264/CONTROL b/ports/x264/CONTROL index 0d6d6a56de0bcf..ef3e80bcb44bd0 100644 --- a/ports/x264/CONTROL +++ b/ports/x264/CONTROL @@ -1,3 +1,4 @@ Source: x264 Version: 157-303c484ec828ed0-2 +Homepage: https://github.com/mirror/x264 Description: x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC compression format diff --git a/ports/x265/CONTROL b/ports/x265/CONTROL index ae598d613d71f9..fcfb78170b4f73 100644 --- a/ports/x265/CONTROL +++ b/ports/x265/CONTROL @@ -1,3 +1,4 @@ Source: x265 Version: 3.0-1 +Homepage: https://bitbucket.org/multicoreware/x265 Description: x265 is a H.265 / HEVC video encoder application library, designed to encode video or images into an H.265 / HEVC encoded bitstream. diff --git a/ports/xalan-c/CONTROL b/ports/xalan-c/CONTROL index eb882eb3862d6f..06ab8967de10b5 100644 --- a/ports/xalan-c/CONTROL +++ b/ports/xalan-c/CONTROL @@ -1,4 +1,5 @@ Source: xalan-c Version: 1.11-5 +Homepage: https://www-us.apache.org/dist/xalan/xalan-c/ Description: Xalan is an XSLT processor for transforming XML documents into HTML, text, or other XML document types Build-Depends: xerces-c diff --git a/ports/xerces-c/CONTROL b/ports/xerces-c/CONTROL index 7d0881a8138f63..2fde766e17332a 100644 --- a/ports/xerces-c/CONTROL +++ b/ports/xerces-c/CONTROL @@ -1,5 +1,6 @@ Source: xerces-c Version: 3.2.2-9 +Homepage: https://github.com/apache/xerces-c Description: Xerces-C++ is a XML parser, for parsing, generating, manipulating, and validating XML documents using the DOM, SAX, and SAX2 APIs. Feature: icu diff --git a/ports/xlnt/CONTROL b/ports/xlnt/CONTROL index 80606821ba8d0a..6433b748e7b669 100644 --- a/ports/xlnt/CONTROL +++ b/ports/xlnt/CONTROL @@ -1,3 +1,4 @@ Source: xlnt Version: 1.3.0-1 +Homepage: https://github.com/tfussell/xlnt Description: Cross-platform user-friendly xlsx library for C++14 diff --git a/ports/xxhash/CONTROL b/ports/xxhash/CONTROL index 4b4f4617202fba..be4cc2900c2e8b 100644 --- a/ports/xxhash/CONTROL +++ b/ports/xxhash/CONTROL @@ -1,3 +1,4 @@ Source: xxhash Version: 0.7.0 +Homepage: https://github.com/Cyan4973/xxHash Description: Extremely fast hash algorithm diff --git a/ports/yaml-cpp/CONTROL b/ports/yaml-cpp/CONTROL index 0689f8d4e10932..93988ece9e7791 100644 --- a/ports/yaml-cpp/CONTROL +++ b/ports/yaml-cpp/CONTROL @@ -1,3 +1,4 @@ Source: yaml-cpp Version: 0.6.2-2 +Homepage: https://github.com/jbeder/yaml-cpp Description: yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 spec. diff --git a/ports/yara/CONTROL b/ports/yara/CONTROL index 5e2832bb5947b0..b1d90b471590b4 100644 --- a/ports/yara/CONTROL +++ b/ports/yara/CONTROL @@ -1,4 +1,5 @@ Source: yara Version: e3439e4ead4ed5d3b75a0b46eaf15ddda2110bb9-2 +Homepage: https://github.com/VirusTotal/yara Description: The pattern matching swiss knife Build-Depends: openssl, jansson diff --git a/ports/yoga/CONTROL b/ports/yoga/CONTROL index 650808140fc898..14ed48f163f8f1 100644 --- a/ports/yoga/CONTROL +++ b/ports/yoga/CONTROL @@ -1,3 +1,4 @@ Source: yoga Version: 1.14.0 +Homepage: https://github.com/facebook/yoga Description: Yoga is a cross-platform layout engine which implements Flexbox diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index a73b94fc3964e6..24796e15583987 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,5 +1,6 @@ Source: zeromq Version: 2019-05-07 +Homepage: https://github.com/zeromq/libzmq Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products Feature: sodium diff --git a/ports/zlib/CONTROL b/ports/zlib/CONTROL index 2138e31aff41d1..aa7c7b6e92b665 100644 --- a/ports/zlib/CONTROL +++ b/ports/zlib/CONTROL @@ -1,3 +1,4 @@ Source: zlib Version: 1.2.11-5 +Homepage: https://www.zlib.net/ Description: A compression library diff --git a/ports/zstd/CONTROL b/ports/zstd/CONTROL index 507c23f3ad43ac..bab75367d7d3aa 100644 --- a/ports/zstd/CONTROL +++ b/ports/zstd/CONTROL @@ -1,4 +1,4 @@ Source: zstd Version: 1.4.0 Description: Zstandard - Fast real-time compression algorithm -Homepage: http://www.zstd.net +Homepage: https://facebook.github.io/zstd/ diff --git a/ports/zziplib/CONTROL b/ports/zziplib/CONTROL index 362fdee03164e4..f756d19ae3c392 100644 --- a/ports/zziplib/CONTROL +++ b/ports/zziplib/CONTROL @@ -1,4 +1,5 @@ Source: zziplib Version: 0.13.69-3 Build-Depends: zlib -Description: library providing read access on ZIP-archives \ No newline at end of file +Homepage: https://github.com/gdraheim/zziplib +Description: library providing read access on ZIP-archives From 8cd2d17460d7c8d1dc74491cd890691f9546dc8c Mon Sep 17 00:00:00 2001 From: TheGoddessInari Date: Sun, 16 Jun 2019 23:09:07 -0700 Subject: [PATCH 029/123] [vcpkg] Bootstrap should use Get-CimInstance instead of Get-WmiObject. (#6788) * [vcpkg] Bootstrap should use Get-CimInstance instead of Get-WmiObject. This lets it work with Powershell Core 6.0. --- scripts/bootstrap.ps1 | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/bootstrap.ps1 b/scripts/bootstrap.ps1 index b195cc60522e3c..6234efaa3d3d8f 100644 --- a/scripts/bootstrap.ps1 +++ b/scripts/bootstrap.ps1 @@ -339,7 +339,14 @@ if ($disableMetrics) $platform = "x86" $vcpkgReleaseDir = "$vcpkgSourcesPath\msbuild.x86.release" -$architecture=(Get-WmiObject win32_operatingsystem | Select-Object osarchitecture).osarchitecture +if($PSVersionTable.PSVersion.Major -le 2) +{ + $architecture=(Get-WmiObject win32_operatingsystem | Select-Object osarchitecture).osarchitecture +} +else +{ + $architecture=(Get-CimInstance win32_operatingsystem | Select-Object osarchitecture).osarchitecture +} if ($win64) { if (-not $architecture -like "*64*") From d2e21397f48f6a8b0beaec9d382764928cdfbc29 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Tue, 18 Jun 2019 01:24:41 +0800 Subject: [PATCH 030/123] [greatest] Add new port (#6934) --- ports/greatest/CONTROL | 4 ++++ ports/greatest/portfile.cmake | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 ports/greatest/CONTROL create mode 100644 ports/greatest/portfile.cmake diff --git a/ports/greatest/CONTROL b/ports/greatest/CONTROL new file mode 100644 index 00000000000000..05c679d8ec19de --- /dev/null +++ b/ports/greatest/CONTROL @@ -0,0 +1,4 @@ +Source: greatest +Version: 1.4.2 +Description: Single-file testing system for C +Homepage: https://github.com/silentbicycle/greatest diff --git a/ports/greatest/portfile.cmake b/ports/greatest/portfile.cmake new file mode 100644 index 00000000000000..479287ccbf581a --- /dev/null +++ b/ports/greatest/portfile.cmake @@ -0,0 +1,16 @@ +# header-only library + +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO silentbicycle/greatest + REF v1.4.2 + SHA512 8f2767ac2be017d2ecee3a903ab79834e783df464e3fd0e1e8c4397fdf8dabcc4fb2367163dcb9e944c404d00cf8960ec56c0345f43836182a6e058d9eaf6b0a + HEAD_REF master +) + +file(COPY ${SOURCE_PATH}/greatest.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) + +# Handle copyright +configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) From 38f969e9d21d04d55fbada2238eb9d8c561d12d3 Mon Sep 17 00:00:00 2001 From: eao197 Date: Mon, 17 Jun 2019 20:25:02 +0300 Subject: [PATCH 031/123] RESTinio updated to v.0.5.1 (#6933) --- ports/restinio/CONTROL | 2 +- ports/restinio/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/restinio/CONTROL b/ports/restinio/CONTROL index 23abf439e086ce..b608f12b5aacb8 100644 --- a/ports/restinio/CONTROL +++ b/ports/restinio/CONTROL @@ -1,4 +1,4 @@ Source: restinio -Version: 0.5.0 +Version: 0.5.1 Description: A header-only C++14 library that gives you an embedded HTTP/Websocket server targeted primarily for asynchronous processing of HTTP-requests. Build-Depends: asio, fmt, http-parser diff --git a/ports/restinio/portfile.cmake b/ports/restinio/portfile.cmake index 33895629f8ba66..9ab82bc4a0f0eb 100644 --- a/ports/restinio/portfile.cmake +++ b/ports/restinio/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_bitbucket( OUT_SOURCE_PATH SOURCE_PATH REPO sobjectizerteam/restinio - REF v.0.5.0 - SHA512 2031abf6928456d9f93b965c0fd0114070b0aeac055edc78442284ad8a2dea47d9eaa8cb1761e76fa31286e7881559fa7d99e404e3c0d2639e6a0afab6bedd4f + REF v.0.5.1 + SHA512 e8d1f9ac6dcb87012a656ba9f80412db93280b436199013ed36aa31398f0c0e65b634e2e714b9709afae717e2bc432891d5125f4af01b0d3a0ce79169de40870 ) vcpkg_configure_cmake( From 1e297085c76fe81afbbb38f35ae0a851e9058e6b Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Tue, 18 Jun 2019 01:25:39 +0800 Subject: [PATCH 032/123] [aws-sdk-cpp]Upgrade to 1.7.116 (#6932) --- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index 194f4d2152e486..81078404f32c65 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.7.106 +Version: 1.7.116 Homepage: https://github.com/aws/aws-sdk-cpp Description: AWS SDK for C++ Build-Depends: openssl (!uwp&!windows), curl (!uwp&!windows), aws-c-event-stream diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 4f334875dffa9b..c6b5278165b97c 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -10,8 +10,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.7.106 - SHA512 58b03f25468ee5c57c47cf92fe6e1d9228754464af83a1253fdd14f2a6dabb6f5f49f1f003597c29cd1ce96649afae0560953d1f1d2c478c575b0d4c0f918635 + REF 1.7.116 + SHA512 2d10aebf1c10bb7e7a0efa1fd930b8743d9bce1d7d36f72c55fd13612be4fd30cf0a67ebe4f8d7c05146306084b10d8657ff26ac3bafaaa9efaa4c67707acb49 HEAD_REF master ) From 1dbb58814f69f99abe535214b64a088db18097cc Mon Sep 17 00:00:00 2001 From: wangli28 <47812810+wangli28@users.noreply.github.com> Date: Tue, 18 Jun 2019 01:30:25 +0800 Subject: [PATCH 033/123] [wt] Fix XML file installation path (#6925) --- ports/wt/0005-XML_file_path.patch | 17 +++++++++++++++++ ports/wt/CONTROL | 2 +- ports/wt/portfile.cmake | 2 ++ 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 ports/wt/0005-XML_file_path.patch diff --git a/ports/wt/0005-XML_file_path.patch b/ports/wt/0005-XML_file_path.patch new file mode 100644 index 00000000000000..b2be62c9d8b3c4 --- /dev/null +++ b/ports/wt/0005-XML_file_path.patch @@ -0,0 +1,17 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ca19b30..4765632 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -197,7 +197,11 @@ SET(CMAKE_INSTALL_DIR "${LIB_INSTALL_DIR}/cmake" CACHE STRING + + IF(WIN32) + +- SET(RUNDIR "c:/witty") # Does not apply to win32 ++ if (NOT INSTALL_CONFIG_FILE_PATH) ++ SET(RUNDIR "c:/witty") # Does not apply to win32 ++ else() ++ SET(RUNDIR ${INSTALL_CONFIG_FILE_PATH}) # Does not apply to win32 ++ endif() + + IF(NOT DEFINED CONFIGDIR) + SET(CONFIGDIR ${RUNDIR} CACHE STRING "Path for the configuration files") diff --git a/ports/wt/CONTROL b/ports/wt/CONTROL index 3379d8ff081c8d..b712ca73887857 100644 --- a/ports/wt/CONTROL +++ b/ports/wt/CONTROL @@ -1,5 +1,5 @@ Source: wt -Version: 4.0.5 +Version: 4.0.5-1 Homepage: https://github.com/emweb/wt Description: Wt is a C++ library for developing web applications Build-Depends: openssl, sqlite3, libpq, pango, glew, boost-date-time, boost-regex, boost-program-options, boost-signals, boost-system, boost-filesystem, boost-thread, boost-random, boost-multi-index, boost-signals2, boost-asio, boost-ublas, boost-conversion, boost-array, boost-smart-ptr, boost-tuple, boost-algorithm, boost-logic, boost-interprocess diff --git a/ports/wt/portfile.cmake b/ports/wt/portfile.cmake index c9fb520f69f4fc..8fb8af205ab223 100644 --- a/ports/wt/portfile.cmake +++ b/ports/wt/portfile.cmake @@ -10,6 +10,7 @@ vcpkg_from_github( 0002-link-glew.patch 0003-disable-boost-autolink.patch 0004-link-ssl.patch + 0005-XML_file_path.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" SHARED_LIBS) @@ -18,6 +19,7 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS + -DINSTALL_CONFIG_FILE_PATH="${DOWNLOADS}/wt" -DSHARED_LIBS=${SHARED_LIBS} -DBOOST_DYNAMIC=ON -DDISABLE_BOOST_AUTOLINK=ON From 8de7aa163317885a84e39a3dc81726e74537ba32 Mon Sep 17 00:00:00 2001 From: Kevin Lu <6320810+kevinlul@users.noreply.github.com> Date: Mon, 17 Jun 2019 13:32:14 -0400 Subject: [PATCH 034/123] [sqlite3] Update to 3.28.0 (#6921) --- ports/sqlite3/CONTROL | 2 +- ports/sqlite3/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sqlite3/CONTROL b/ports/sqlite3/CONTROL index c829193a2a32a5..7bba4d78c9d180 100644 --- a/ports/sqlite3/CONTROL +++ b/ports/sqlite3/CONTROL @@ -1,5 +1,5 @@ Source: sqlite3 -Version: 3.27.2 +Version: 3.28.0 Homepage: https://sqlite.org/ Description: SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. diff --git a/ports/sqlite3/portfile.cmake b/ports/sqlite3/portfile.cmake index 789cfe94825ac9..131469c12ca477 100644 --- a/ports/sqlite3/portfile.cmake +++ b/ports/sqlite3/portfile.cmake @@ -1,7 +1,7 @@ include(vcpkg_common_functions) -set(SQLITE_VERSION 3270200) -set(SQLITE_HASH f84a6a3101c989164f17b85a6c2674ae2728a75d70daf5e33627a6eaa399adaf763deb968d891ad0660f1ebe660d27fbd55ace379d807f3bb8af4e95c01b68c4) +set(SQLITE_VERSION 3280000) +set(SQLITE_HASH 6a2b9c0accd286b09d7e077393a627e22112ef11c76ff6a5896f5ff1a11eb62a8b2700f5a99eebda82df63b3968814ca460582aa4619852f96a899d2f59b9f8d) vcpkg_download_distfile(ARCHIVE URLS "https://sqlite.org/2019/sqlite-amalgamation-${SQLITE_VERSION}.zip" From b03dd0714cb81c8e7379ddbc17045a8a346d3e96 Mon Sep 17 00:00:00 2001 From: Gregory Popovitch Date: Mon, 17 Jun 2019 13:35:44 -0400 Subject: [PATCH 035/123] [parallel-hashmap] Update to current 1.23 version and include natvis file. (#6917) --- ports/parallel-hashmap/CONTROL | 4 ++-- ports/parallel-hashmap/portfile.cmake | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ports/parallel-hashmap/CONTROL b/ports/parallel-hashmap/CONTROL index 1f839fed1843d9..91be82ab3d766b 100644 --- a/ports/parallel-hashmap/CONTROL +++ b/ports/parallel-hashmap/CONTROL @@ -1,3 +1,3 @@ Source: parallel-hashmap -Version: 1.22 -Description: A header-only, very fast and memory-friendly hash map family. +Version: 1.23 +Description: A header-only, very fast and memory-friendly family of C++ hash maps. diff --git a/ports/parallel-hashmap/portfile.cmake b/ports/parallel-hashmap/portfile.cmake index a94d30c4542770..d42dee4fd65b27 100644 --- a/ports/parallel-hashmap/portfile.cmake +++ b/ports/parallel-hashmap/portfile.cmake @@ -4,8 +4,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO greg7mdp/parallel-hashmap - REF 1.22 - SHA512 930ad0a2fd95310bd2d99c858a09416ca1c02bb823a49f96ec38cfc9ec4029b95b3dc3eacff88dc93df2cad968008b2db3cbb1c458c6cceddc542bb0ca74fad9 + REF 1.23 + SHA512 efdc717d965292949dc47c2614d97274d52e409a70b283d2b12a957bf3135c6682ed6f77a5b130b70f77eb2cc5c522626cc4b08cd792a7037844df5ba1538985 HEAD_REF master ) @@ -19,6 +19,8 @@ vcpkg_install_cmake() # Delete redundant directories file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/share/doc) +file(COPY ${SOURCE_PATH}/phmap.natvis DESTINATION ${CURRENT_PACKAGES_DIR}/include) + # Put the licence file where vcpkg expects it file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/parallel-hashmap) file(RENAME ${CURRENT_PACKAGES_DIR}/share/parallel-hashmap/LICENSE ${CURRENT_PACKAGES_DIR}/share/parallel-hashmap/copyright) From f00fbcb2e55fb518cdd16d5917275acffdc40a6a Mon Sep 17 00:00:00 2001 From: JackBister Date: Mon, 17 Jun 2019 19:36:41 +0200 Subject: [PATCH 036/123] [libmodplug] Always use the upstream repository (#6912) --- ports/libmodplug/portfile.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/libmodplug/portfile.cmake b/ports/libmodplug/portfile.cmake index 2876160880eed4..01b1081d6d8124 100644 --- a/ports/libmodplug/portfile.cmake +++ b/ports/libmodplug/portfile.cmake @@ -15,7 +15,7 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static) else() vcpkg_from_github(ARCHIVE OUT_SOURCE_PATH SOURCE_PATH - REPO JackBister/libmodplug + REPO Konstanty/libmodplug REF ${MODPLUG_HASH} SHA512 c43bb3190b62c3a4e3636bba121b5593bbf8e6577ca9f2aa04d90b03730ea7fb590e640cdadeb565758b92e81187bc456e693fe37f1f4deace9b9f37556e3ba1 PATCHES From 783fa14d0bfb90ec608e92f9e4cacdcfb5fbe955 Mon Sep 17 00:00:00 2001 From: Samuel Marks <807580+SamuelMarks@users.noreply.github.com> Date: Tue, 18 Jun 2019 03:46:34 +1000 Subject: [PATCH 037/123] [ppconsul] Add new port (#6911) --- ports/ppconsul/CONTROL | 5 +++++ ports/ppconsul/cmake_build.patch | 37 ++++++++++++++++++++++++++++++++ ports/ppconsul/portfile.cmake | 25 +++++++++++++++++++++ 3 files changed, 67 insertions(+) create mode 100644 ports/ppconsul/CONTROL create mode 100644 ports/ppconsul/cmake_build.patch create mode 100644 ports/ppconsul/portfile.cmake diff --git a/ports/ppconsul/CONTROL b/ports/ppconsul/CONTROL new file mode 100644 index 00000000000000..4591b6a0153bca --- /dev/null +++ b/ports/ppconsul/CONTROL @@ -0,0 +1,5 @@ +Source: ppconsul +Version: 0.3 +Homepage: https://github.com/oliora/ppconsul +Description: A C++ client library for Consul. Consul is a distributed tool for discovering and configuring services in your infrastructure. +Build-Depends: boost-core, boost-variant, curl[openssl] diff --git a/ports/ppconsul/cmake_build.patch b/ports/ppconsul/cmake_build.patch new file mode 100644 index 00000000000000..f607e37e42c186 --- /dev/null +++ b/ports/ppconsul/cmake_build.patch @@ -0,0 +1,37 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 92e4698..002981e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -75,6 +75,8 @@ else () + set (CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "${CURL_ROOT}/lib") + endif () + find_package(CURL REQUIRED) ++ find_package(OpenSSL REQUIRED) ++ find_package(ZLIB REQUIRED) + endif () + + set(LIBB64_DIR "${PROJECT_SOURCE_DIR}/ext/b64") +@@ -89,7 +91,6 @@ endif() + + add_subdirectory(ext/json11) + add_subdirectory(src) +-add_subdirectory(tests) + + install( + DIRECTORY "${HEADERS_DIR}" +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 8e24aab..beaac68 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -85,7 +85,10 @@ if (${USE_CPPNETLIB}) + target_link_libraries(${PROJECT_NAME} PRIVATE ${CPPNETLIB_LIBRARIES}) + else () + target_include_directories(${PROJECT_NAME} PRIVATE ${CURL_INCLUDE_DIR}) +- target_link_libraries(${PROJECT_NAME} PRIVATE ${CURL_LIBRARIES}) ++ target_link_libraries(${PROJECT_NAME} PRIVATE ${CURL_LIBRARIES} ${OPENSSL_LIBRARIES} ZLIB::ZLIB) ++ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") ++ target_link_libraries(${PROJECT_NAME} PRIVATE "-framework CoreFoundation" "-framework Security") ++ endif () + endif () + + source_group(${PROJECT_NAME} FILES ${SOURCES}) diff --git a/ports/ppconsul/portfile.cmake b/ports/ppconsul/portfile.cmake new file mode 100644 index 00000000000000..43e7eaecad09ad --- /dev/null +++ b/ports/ppconsul/portfile.cmake @@ -0,0 +1,25 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO oliora/ppconsul + REF fd3a22eba03a49623832a8f8c990fee499e3f8fb + SHA512 098f2fa0fdc3f219f5958d0d5b2a620231e3cd94dc3110cfbedb87e787e8402a7b0294f7ffa4fcb4169b0428b4f65376b621e5840706ff7cc8f02ac7fc1d7757 + HEAD_REF master + PATCHES "cmake_build.patch" +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) + + +file(INSTALL ${SOURCE_PATH}/LICENSE_1_0.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/ppconsul RENAME copyright) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + + +vcpkg_copy_pdbs() From fd18a7d3a9ec08a6edb9965ee14d2d03d965468d Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Mon, 17 Jun 2019 10:51:34 -0700 Subject: [PATCH 038/123] [forest] move to 12.0.0 (#6938) --- ports/forest/CONTROL | 2 +- ports/forest/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/forest/CONTROL b/ports/forest/CONTROL index 2e3d50a6cda45f..39fda46724f134 100644 --- a/ports/forest/CONTROL +++ b/ports/forest/CONTROL @@ -1,4 +1,4 @@ Source: forest -Version: 11.0.1 +Version: 12.0.0 Homepage: https://github.com/xorz57/forest Description: Template library of tree data structures diff --git a/ports/forest/portfile.cmake b/ports/forest/portfile.cmake index 7dcccb979b1d8d..b142d181ed4b54 100644 --- a/ports/forest/portfile.cmake +++ b/ports/forest/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO xorz57/forest - REF 11.0.1 - SHA512 cb9245445c52c9e2e544c556cd87ecfd1e598bf0ed71a20368b32bd47b611f9696a8e50e06ecb98814af8e6e254bde9e7f98ca0d28c62f86ce9ff45805c2a1e5 + REF 12.0.0 + SHA512 c6f7a7ca098755bc6ac2f02048962d9f1d619c2d76671e9bb558524f760c3e28604db21991c2d9ebc90ffdb12ea00708d9a4fee1f4416ee216f3ef1dea0a1b97 HEAD_REF master ) From f86fc80db48cb60da62e73894cbb832b166cdc34 Mon Sep 17 00:00:00 2001 From: Miguel Date: Mon, 17 Jun 2019 19:52:52 +0200 Subject: [PATCH 039/123] [mlpack] Updated to version 3.1.1 (#6907) * [mlpack] Updated to version 3.1.0 * [mlpack] Updated to version 3.1.1 --- ports/mlpack/CONTROL | 2 +- ports/mlpack/cmakelists.patch | 106 +++++++++++++++++----------------- ports/mlpack/portfile.cmake | 4 +- 3 files changed, 55 insertions(+), 57 deletions(-) diff --git a/ports/mlpack/CONTROL b/ports/mlpack/CONTROL index 75cc21eb4fdd83..0902ce8940ae93 100644 --- a/ports/mlpack/CONTROL +++ b/ports/mlpack/CONTROL @@ -1,5 +1,5 @@ Source: mlpack -Version: 3.1.0-1 +Version: 3.1.1 Description: mlpack is a fast, flexible machine learning library, written in C++, that aims to provide fast, extensible implementations of cutting-edge machine learning algorithms. Build-Depends: openblas (!osx), clapack (!osx), boost, armadillo, ensmallen diff --git a/ports/mlpack/cmakelists.patch b/ports/mlpack/cmakelists.patch index a4ef8f119c0748..05810f57f88ba4 100644 --- a/ports/mlpack/cmakelists.patch +++ b/ports/mlpack/cmakelists.patch @@ -1,54 +1,52 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 26dfd6e..5e287d8 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -283,25 +283,8 @@ endif() - # and find LAPACK and BLAS ourselves, using a slightly modified variant of the - # script Armadillo uses to find these. - if (WIN32) -- find_library(LAPACK_LIBRARY -- NAMES lapack liblapack lapack_win32_MT lapack_win32 -- PATHS "C:/Program Files/Armadillo" -- PATH_SUFFIXES "examples/lib_win32/") -- -- if (NOT LAPACK_LIBRARY) -- message(FATAL_ERROR "Cannot find LAPACK library (.lib)!") -- endif () -- -- find_library(BLAS_LIBRARY -- NAMES blas libblas blas_win32_MT blas_win32 -- PATHS "C:/Program Files/Armadillo" -- PATH_SUFFIXES "examples/lib_win32/") -- -- if (NOT BLAS_LIBRARY) -- message(FATAL_ERROR "Cannot find BLAS library (.lib)!") -- endif () -- -- # Piggyback LAPACK and BLAS linking into Armadillo link. -+ find_package(LAPACK) -+ find_package(BLAS) - set(ARMADILLO_LIBRARIES - ${ARMADILLO_LIBRARIES} ${BLAS_LIBRARY} ${LAPACK_LIBRARY}) - endif () -@@ -392,19 +375,11 @@ find_package(Boost 1.49 - REQUIRED - ) - --link_directories(${Boost_LIBRARY_DIRS}) -- --# In Visual Studio, automatic linking is performed, so we don't need to worry --# about it. Clear the list of libraries to link against and let Visual Studio --# handle it. --if (MSVC) -- link_directories(${Boost_LIBRARY_DIRS}) -- set(Boost_LIBRARIES "") --endif () -+link_directories(${Boost_LIBRARIES}) - - set(MLPACK_INCLUDE_DIRS ${MLPACK_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS}) - set(MLPACK_LIBRARIES ${MLPACK_LIBRARIES} ${Boost_LIBRARIES}) --set(MLPACK_LIBRARY_DIRS ${MLPACK_LIBRARY_DIRS} ${Boost_LIBRARY_DIRS}) -+set(MLPACK_LIBRARY_DIRS ${MLPACK_LIBRARY_DIRS} ${Boost_LIBRARIES}) - - # For Boost testing framework (will have no effect on non-testing executables). - # This specifies to Boost that we are dynamically linking to the Boost test +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -283,25 +283,8 @@ + # and find LAPACK and BLAS ourselves, using a slightly modified variant of the + # script Armadillo uses to find these. + if (WIN32) +- find_library(LAPACK_LIBRARY +- NAMES lapack liblapack lapack_win32_MT lapack_win32 +- PATHS "C:/Program Files/Armadillo" +- PATH_SUFFIXES "examples/lib_win32/") +- +- if (NOT LAPACK_LIBRARY) +- message(FATAL_ERROR "Cannot find LAPACK library (.lib)!") +- endif () +- +- find_library(BLAS_LIBRARY +- NAMES blas libblas blas_win32_MT blas_win32 +- PATHS "C:/Program Files/Armadillo" +- PATH_SUFFIXES "examples/lib_win32/") +- +- if (NOT BLAS_LIBRARY) +- message(FATAL_ERROR "Cannot find BLAS library (.lib)!") +- endif () +- +- # Piggyback LAPACK and BLAS linking into Armadillo link. ++ find_package(LAPACK) ++ find_package(BLAS) + set(ARMADILLO_LIBRARIES + ${ARMADILLO_LIBRARIES} ${BLAS_LIBRARY} ${LAPACK_LIBRARY}) + endif () +@@ -395,19 +378,11 @@ + REQUIRED + ) + +-link_directories(${Boost_LIBRARY_DIRS}) +- +-# In Visual Studio, automatic linking is performed, so we don't need to worry +-# about it. Clear the list of libraries to link against and let Visual Studio +-# handle it. +-if (MSVC) +- link_directories(${Boost_LIBRARY_DIRS}) +- set(Boost_LIBRARIES "") +-endif () ++link_directories(${Boost_LIBRARIES}) + + set(MLPACK_INCLUDE_DIRS ${MLPACK_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS}) + set(MLPACK_LIBRARIES ${MLPACK_LIBRARIES} ${Boost_LIBRARIES}) +-set(MLPACK_LIBRARY_DIRS ${MLPACK_LIBRARY_DIRS} ${Boost_LIBRARY_DIRS}) ++set(MLPACK_LIBRARY_DIRS ${MLPACK_LIBRARY_DIRS} ${Boost_LIBRARIES}) + + # For Boost testing framework (will have no effect on non-testing executables). + # This specifies to Boost that we are dynamically linking to the Boost test diff --git a/ports/mlpack/portfile.cmake b/ports/mlpack/portfile.cmake index 20cbc882e38951..0a5bcb6d1272e4 100644 --- a/ports/mlpack/portfile.cmake +++ b/ports/mlpack/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mlpack/mlpack - REF mlpack-3.1.0 - SHA512 dc305a9a2f7232d3957206a346d0ac97ba13b933d5dbef45329002b8380ecc0982621c0b97f6c5ee82d0a26ad53b1cdd7a9b991fb749efc8546394988ac40a5b + REF mlpack-3.1.1 + SHA512 4acef74da951934b9bd1cabd87b9d6d002c80eb3218f69755277fa654d928aed379a5e63987f32ec162cc005c2952e618d6d528c2311aebb8cd2cc01cab71f86 HEAD_REF master PATCHES cmakelists.patch From a861441498eb6aeb7b69f7fffc4a721fdeaa43b5 Mon Sep 17 00:00:00 2001 From: Jason Juang Date: Mon, 17 Jun 2019 10:53:40 -0700 Subject: [PATCH 040/123] [Exiv2] update to 0.27.1 (#6905) --- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 505d4003c157bf..a4ea220305c553 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,5 +1,5 @@ Source: exiv2 -Version: 0.27 +Version: 0.27.1 Build-Depends: zlib, expat, libiconv, gettext Description: Image metadata library and tools Homepage: https://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 44daf8717e4480..64ecfc28f21df4 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF 0.27 - SHA512 ec605db73abcf3cc2df78c1fc3aae5335a51192f660668e39a4f20fc7f372b18c3cec9b704e1c71c356315fd75e791622de1dffe576432ee0fb12bf63a98a423 + REF 0.27.1 + SHA512 1b637138cee019122d98ae3c54e84416ba1a90531b3f541748697c9f1a8faee18699f10cef5a63bf60b8588e8c670925cbac3ad6c82e41160442f8a66380d407 HEAD_REF master PATCHES iconv.patch @@ -29,7 +29,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/exiv2/cmake") +vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/exiv2/cmake") configure_file( ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake @@ -41,6 +41,7 @@ vcpkg_copy_pdbs() # Clean file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/exiv2 ${CURRENT_PACKAGES_DIR}/lib/exiv2) if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) From f63ddfec5e412ce77961daaae751ae829b34f3c3 Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Tue, 18 Jun 2019 01:54:44 +0800 Subject: [PATCH 041/123] [opencv]Fix build error with feature gdcm: cannot find openjp2. (#6901) --- ports/opencv/0006-fix-missing-openjp2.patch | 16 ++++++++++++++++ ports/opencv/CONTROL | 2 +- ports/opencv/portfile.cmake | 12 +++++++----- 3 files changed, 24 insertions(+), 6 deletions(-) create mode 100644 ports/opencv/0006-fix-missing-openjp2.patch diff --git a/ports/opencv/0006-fix-missing-openjp2.patch b/ports/opencv/0006-fix-missing-openjp2.patch new file mode 100644 index 00000000000000..c0afb99529d538 --- /dev/null +++ b/ports/opencv/0006-fix-missing-openjp2.patch @@ -0,0 +1,16 @@ +diff --git a/modules/imgcodecs/CMakeLists.txt b/modules/imgcodecs/CMakeLists.txt +index 434278c..0d8f4d8 100644 +--- a/modules/imgcodecs/CMakeLists.txt ++++ b/modules/imgcodecs/CMakeLists.txt +@@ -36,6 +36,11 @@ if(HAVE_PNG) + endif() + + if(HAVE_GDCM) ++ if (CMAKE_BUILD_TYPE STREQUAL "Release") ++ link_directories("${CURRENT_INSTALLED_DIR}/lib") ++ else() ++ link_directories("${CURRENT_INSTALLED_DIR}/debug/lib") ++ endif() + ocv_include_directories(${GDCM_INCLUDE_DIRS}) + list(APPEND GRFMT_LIBS ${GDCM_LIBRARIES}) + endif() diff --git a/ports/opencv/CONTROL b/ports/opencv/CONTROL index 90d81258e0d16c..42f5c1c47f2319 100644 --- a/ports/opencv/CONTROL +++ b/ports/opencv/CONTROL @@ -1,5 +1,5 @@ Source: opencv -Version: 3.4.3-8 +Version: 3.4.3-9 Build-Depends: zlib Homepage: https://github.com/opencv/opencv Description: computer vision library diff --git a/ports/opencv/portfile.cmake b/ports/opencv/portfile.cmake index a3d8c894b096fd..cbbf4918d082b4 100644 --- a/ports/opencv/portfile.cmake +++ b/ports/opencv/portfile.cmake @@ -9,11 +9,12 @@ vcpkg_from_github( SHA512 d653a58eb5e3939b9fdb7438ac35f77cf4385cf72d5d22bfd21722a109e1b3283dbb9407985061b7548114f0d05c9395aac9bb62b4d2bc1f68da770a49987fef HEAD_REF master PATCHES - "${CMAKE_CURRENT_LIST_DIR}/0001-winrt-fixes.patch" - "${CMAKE_CURRENT_LIST_DIR}/0002-install-options.patch" - "${CMAKE_CURRENT_LIST_DIR}/0003-disable-downloading.patch" - "${CMAKE_CURRENT_LIST_DIR}/0004-use-find-package-required.patch" - "${CMAKE_CURRENT_LIST_DIR}/0005-remove-custom-protobuf-find-package.patch" + 0001-winrt-fixes.patch + 0002-install-options.patch + 0003-disable-downloading.patch + 0004-use-find-package-required.patch + 0005-remove-custom-protobuf-find-package.patch + 0006-fix-missing-openjp2.patch ) string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_WITH_STATIC_CRT) @@ -321,6 +322,7 @@ vcpkg_configure_cmake( -DWITH_VTK=${WITH_VTK} -DWITH_WEBP=${WITH_WEBP} -DWITH_ZLIB=${WITH_ZLIB} + -DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR} OPTIONS_DEBUG -DINSTALL_HEADERS=OFF -DINSTALL_OTHER=OFF From 578139ece7607c3697d1db59dfe3a030993f767c Mon Sep 17 00:00:00 2001 From: wangli28 <47812810+wangli28@users.noreply.github.com> Date: Tue, 18 Jun 2019 01:56:03 +0800 Subject: [PATCH 042/123] [leveldb] Port update (#6900) --- ports/leveldb/CMakeLists.txt | 92 ---------------------------- ports/leveldb/CONTROL | 8 +-- ports/leveldb/fix-install_path.patch | 19 ++++++ ports/leveldb/msvc_code_fix.diff | 63 ------------------- ports/leveldb/portfile.cmake | 18 +++--- 5 files changed, 32 insertions(+), 168 deletions(-) delete mode 100644 ports/leveldb/CMakeLists.txt create mode 100644 ports/leveldb/fix-install_path.patch delete mode 100644 ports/leveldb/msvc_code_fix.diff diff --git a/ports/leveldb/CMakeLists.txt b/ports/leveldb/CMakeLists.txt deleted file mode 100644 index d19032582d4a68..00000000000000 --- a/ports/leveldb/CMakeLists.txt +++ /dev/null @@ -1,92 +0,0 @@ -cmake_minimum_required(VERSION 3.8) -project(leveldb C CXX) - -option(INSTALL_HEADERS "Install header files" ON) - -set(CMAKE_CXX_STANDARD 11) -set(CMAKE_CXX_STANDARD_REQUIRED ON) - -IF (MSVC) -add_definitions( - -DWIN32 - -D_CRT_NONSTDC_NO_DEPRECATE - -D_SCL_SECURE_NO_WARNINGS - -D_CRT_SECURE_NO_WARNINGS - -DNOMINMAX - -DLEVELDB_PLATFORM_WINDOWS - -DLEVELDB_ATOMIC_PRESENT -) -else () -add_definitions( - -DLEVELDB_PLATFORM_POSIX - -DLEVELDB_ATOMIC_PRESENT -) -endif() -set(SRCS - db/builder.cc - db/c.cc - db/dbformat.cc - db/db_impl.cc - db/db_iter.cc - db/dumpfile.cc - db/filename.cc - db/log_reader.cc - db/log_writer.cc - db/memtable.cc - db/repair.cc - db/table_cache.cc - db/version_edit.cc - db/version_set.cc - db/write_batch.cc - helpers/memenv/memenv.cc - port/port_posix_sse.cc - table/block.cc - table/block_builder.cc - table/filter_block.cc - table/format.cc - table/iterator.cc - table/merger.cc - table/table.cc - table/table_builder.cc - table/two_level_iterator.cc - util/arena.cc - util/bloom.cc - util/cache.cc - util/coding.cc - util/comparator.cc - util/crc32c.cc - util/env.cc - util/filter_policy.cc - util/hash.cc - util/histogram.cc - util/logging.cc - util/options.cc - util/status.cc -) - -if (MSVC) -set(SRCS ${SRCS} port/port_win.cc util/env_win.cc) -else () -set(SRCS ${SRCS} port/port_posix.cc util/env_posix.cc) -ENDIF() - -add_library(leveldb ${SRCS}) - -target_include_directories(leveldb - PUBLIC include - PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} -) - -target_link_libraries(leveldb PUBLIC Iphlpapi.lib Shlwapi.lib) - -install(TARGETS leveldb - RUNTIME DESTINATION bin - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib -) - -if(INSTALL_HEADERS) - file(GLOB HEADERS include/leveldb/*.h) - install(FILES ${HEADERS} DESTINATION include/leveldb) - install(FILES helpers/memenv/memenv.h DESTINATION include) -endif() diff --git a/ports/leveldb/CONTROL b/ports/leveldb/CONTROL index d1cc26aab0b615..022415d26a2bd9 100644 --- a/ports/leveldb/CONTROL +++ b/ports/leveldb/CONTROL @@ -1,4 +1,4 @@ -Source: leveldb -Version: 2017-10-25-8b1cd3753b184341e837b30383832645135d3d73-3 -Homepage: https://github.com/bitcoin-core/leveldb -Description: LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. +Source: leveldb +Version: 1.22 +Homepage: https://github.com/bitcoin-core/leveldb +Description: LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. diff --git a/ports/leveldb/fix-install_path.patch b/ports/leveldb/fix-install_path.patch new file mode 100644 index 00000000000000..11a71a41ac5554 --- /dev/null +++ b/ports/leveldb/fix-install_path.patch @@ -0,0 +1,19 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 1409c06..c81d219 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -440,12 +440,12 @@ if(LEVELDB_INSTALL) + install( + EXPORT leveldbTargets + NAMESPACE leveldb:: +- DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/leveldb" ++ DESTINATION "${CMAKE_INSTALL_LIBDIR}/../share/leveldb" + ) + install( + FILES + "${PROJECT_SOURCE_DIR}/cmake/leveldbConfig.cmake" + "${PROJECT_BINARY_DIR}/leveldbConfigVersion.cmake" +- DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/leveldb" ++ DESTINATION "${CMAKE_INSTALL_LIBDIR}/../share/leveldb" + ) + endif(LEVELDB_INSTALL) diff --git a/ports/leveldb/msvc_code_fix.diff b/ports/leveldb/msvc_code_fix.diff deleted file mode 100644 index 6cab006d34a43b..00000000000000 --- a/ports/leveldb/msvc_code_fix.diff +++ /dev/null @@ -1,63 +0,0 @@ - db/c.cc | 2 ++ - port/port_win.h | 7 +++++++ - util/env_win.cc | 6 ++++-- - 3 files changed, 13 insertions(+), 2 deletions(-) - -diff --git a/db/c.cc b/db/c.cc -index 08ff0ad..b23e3dc 100644 ---- a/db/c.cc -+++ b/db/c.cc -@@ -5,7 +5,9 @@ - #include "leveldb/c.h" - - #include -+#ifndef WIN32 - #include -+#endif - #include "leveldb/cache.h" - #include "leveldb/comparator.h" - #include "leveldb/db.h" -diff --git a/port/port_win.h b/port/port_win.h -index e8bf46e..989c15c 100644 ---- a/port/port_win.h -+++ b/port/port_win.h -@@ -32,9 +32,16 @@ - #define STORAGE_LEVELDB_PORT_PORT_WIN_H_ - - #ifdef _MSC_VER -+#if !(_MSC_VER >= 1900) - #define snprintf _snprintf -+#endif - #define close _close - #define fread_unlocked _fread_nolock -+#ifdef _WIN64 -+#define ssize_t int64_t -+#else -+#define ssize_t int32_t -+#endif - #endif - - #include -diff --git a/util/env_win.cc b/util/env_win.cc -index d32c4e6..3b4c92b 100644 ---- a/util/env_win.cc -+++ b/util/env_win.cc -@@ -761,14 +761,16 @@ uint64_t Win32Env::NowMicros() - static Status CreateDirInner( const std::string& dirname ) - { - Status sRet; -- DWORD attr = ::GetFileAttributes(dirname.c_str()); -+ std::wstring dirnameW; -+ ToWidePath(dirname, dirnameW); -+ DWORD attr = ::GetFileAttributesW(dirnameW.c_str()); - if (attr == INVALID_FILE_ATTRIBUTES) { // doesn't exist: - std::size_t slash = dirname.find_last_of("\\"); - if (slash != std::string::npos){ - sRet = CreateDirInner(dirname.substr(0, slash)); - if (!sRet.ok()) return sRet; - } -- BOOL result = ::CreateDirectory(dirname.c_str(), NULL); -+ BOOL result = ::CreateDirectoryW(dirnameW.c_str(), NULL); - if (result == FALSE) { - sRet = Status::IOError(dirname, "Could not create directory."); - return sRet; diff --git a/ports/leveldb/portfile.cmake b/ports/leveldb/portfile.cmake index 6a2555e5c9353b..02e18c430d0f7d 100644 --- a/ports/leveldb/portfile.cmake +++ b/ports/leveldb/portfile.cmake @@ -4,17 +4,14 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH - BRANCH "bitcoin-fork" - REPO "bitcoin-core/leveldb" - REF "8b1cd3753b184341e837b30383832645135d3d73" - SHA512 f5ad5fd21fb28ee052a4f3873abd58dab508c71621bcd482ab9e6ef4b57eca182c81502ddfe59736f5b2a54f2d05b397dd15982b3bd5d9039cd481eae3c7b958 + REPO "google/leveldb" + REF 1.22 + SHA512 f9bbf5f466e7f707b94e19261762319ea9f65d41911690e84f59098551e2e69beccf756a414d705ade74ee96fd979bdb8b94c171c6f2cc83873cbd4a9380dbab + HEAD_REF master + PATCHES + fix-install_path.patch ) -vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/msvc_code_fix.diff) - -file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA # Disable this option if project cannot be built with Ninja @@ -23,5 +20,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + # Handle copyright file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/leveldb RENAME copyright) From ec5e9c282c1470b831ab55c8b93e087f125b2599 Mon Sep 17 00:00:00 2001 From: Nikita Date: Mon, 17 Jun 2019 21:30:41 +0300 Subject: [PATCH 043/123] [restclient-cpp] new port (#6936) --- .../0001_fix_cmake_linking.patch | 13 ++++++++ ports/restclient-cpp/CONTROL | 4 +++ ports/restclient-cpp/portfile.cmake | 30 +++++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 ports/restclient-cpp/0001_fix_cmake_linking.patch create mode 100644 ports/restclient-cpp/CONTROL create mode 100644 ports/restclient-cpp/portfile.cmake diff --git a/ports/restclient-cpp/0001_fix_cmake_linking.patch b/ports/restclient-cpp/0001_fix_cmake_linking.patch new file mode 100644 index 00000000000000..815c2198cc25a0 --- /dev/null +++ b/ports/restclient-cpp/0001_fix_cmake_linking.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 45fc887..8b90048 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -39,7 +39,7 @@ find_package(Threads REQUIRED) + find_package(CURL REQUIRED) + find_package(jsoncpp) + +-add_library(restclient-cpp SHARED ++add_library(restclient-cpp + source/restclient.cc + source/connection.cc + source/helpers.cc diff --git a/ports/restclient-cpp/CONTROL b/ports/restclient-cpp/CONTROL new file mode 100644 index 00000000000000..5cb43b1d42a569 --- /dev/null +++ b/ports/restclient-cpp/CONTROL @@ -0,0 +1,4 @@ +Source: restclient-cpp +Version: 0.5.1 +Build-Depends: curl +Description: Binn is a binary data serialization format designed to be compact, fast and easy to use. diff --git a/ports/restclient-cpp/portfile.cmake b/ports/restclient-cpp/portfile.cmake new file mode 100644 index 00000000000000..116e609202ba04 --- /dev/null +++ b/ports/restclient-cpp/portfile.cmake @@ -0,0 +1,30 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO mrtazz/restclient-cpp + REF 0.5.1 + SHA512 d5e17a984af44f863bc7cdc7307c2b06cae9252f86c6c6c2377cdb317f61b6419d8e9aedc5e5ccdb08fd1ee13848ec3b9ef8067a8d26dcf438a5c8793b5a2ce3 + HEAD_REF master + PATCHES + 0001_fix_cmake_linking.patch +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/restclient-cpp) + +# Remove includes in debug +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib ${CURRENT_PACKAGES_DIR}/bin) + +# Handle copyright +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/restclient-cpp) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/restclient-cpp/LICENSE ${CURRENT_PACKAGES_DIR}/share/restclient-cpp/copyright) + +# Copy pdb files +vcpkg_copy_pdbs() From ba0b34c2e88c50626bb38a6f21ffcc7b2f93ad4d Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Mon, 17 Jun 2019 11:31:14 -0700 Subject: [PATCH 044/123] [blosc] Fix the bug when building release-only. (#6928) --- ports/blosc/CONTROL | 2 +- ports/blosc/portfile.cmake | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/ports/blosc/CONTROL b/ports/blosc/CONTROL index 7c0d95842aed93..4dc7bf81f830c7 100644 --- a/ports/blosc/CONTROL +++ b/ports/blosc/CONTROL @@ -1,5 +1,5 @@ Source: blosc -Version: 1.16.3 +Version: 1.16.3-1 Build-Depends: lz4, snappy, zlib, zstd Homepage: https://github.com/Blosc/c-blosc Description: A blocking, shuffling and loss-less compression library that can be faster than `memcpy()` diff --git a/ports/blosc/portfile.cmake b/ports/blosc/portfile.cmake index a0d974b7471e1e..367c591944f051 100644 --- a/ports/blosc/portfile.cmake +++ b/ports/blosc/portfile.cmake @@ -32,14 +32,16 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_copy_pdbs() - if (BLOSC_SHARED) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) - - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/blosc.dll ${CURRENT_PACKAGES_DIR}/debug/bin/blosc.dll) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/blosc.dll ${CURRENT_PACKAGES_DIR}/bin/blosc.dll) +vcpkg_copy_pdbs() + if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/blosc.dll") + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/blosc.dll ${CURRENT_PACKAGES_DIR}/bin/blosc.dll) + endif() + if(EXISTS "${CURRENT_PACKAGES_DIR}/debug/lib/blosc.dll") + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/blosc.dll ${CURRENT_PACKAGES_DIR}/debug/bin/blosc.dll) + endif() endif() # cleanup From b4ae1fb52109e5f1359583d49a0d274412f3bd50 Mon Sep 17 00:00:00 2001 From: wangli28 <47812810+wangli28@users.noreply.github.com> Date: Tue, 18 Jun 2019 02:32:15 +0800 Subject: [PATCH 045/123] [libwebsockets] Fix build error on Linux (#6855) --- ports/libwebsockets/0001-Fix-UWP.patch | 99 -------------------------- ports/libwebsockets/CONTROL | 2 +- ports/libwebsockets/portfile.cmake | 14 ++-- 3 files changed, 10 insertions(+), 105 deletions(-) delete mode 100644 ports/libwebsockets/0001-Fix-UWP.patch diff --git a/ports/libwebsockets/0001-Fix-UWP.patch b/ports/libwebsockets/0001-Fix-UWP.patch deleted file mode 100644 index c4cf221404e155..00000000000000 --- a/ports/libwebsockets/0001-Fix-UWP.patch +++ /dev/null @@ -1,99 +0,0 @@ -diff --git a/lib/plat/lws-plat-win.c b/lib/plat/lws-plat-win.c -index dd3e95a..eb1690a 100644 ---- a/lib/plat/lws-plat-win.c -+++ b/lib/plat/lws-plat-win.c -@@ -157,7 +157,7 @@ _lws_plat_service_tsi(struct lws_context *context, int timeout_ms, int tsi) - { - struct lws_context_per_thread *pt; - WSANETWORKEVENTS networkevents; -- struct lws_pollfd *pfd; -+ struct lws_pollfd *pfd = NULL; - struct lws *wsi; - unsigned int i; - DWORD ev; -@@ -591,6 +591,7 @@ lws_plat_inet_pton(int af, const char *src, void *dst) - return ok ? 1 : -1; - } - -+#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP) - LWS_VISIBLE lws_fop_fd_t - _lws_plat_file_open(const struct lws_plat_file_ops *fops, const char *filename, - const char *vpath, lws_fop_flags_t *flags) -@@ -631,6 +632,49 @@ _lws_plat_file_open(const struct lws_plat_file_ops *fops, const char *filename, - bail: - return NULL; - } -+#else -+LWS_VISIBLE lws_fop_fd_t -+_lws_plat_file_open(const struct lws_plat_file_ops *fops, const char *filename, -+ const char *vpath, lws_fop_flags_t *flags) -+{ -+ HANDLE ret; -+ WCHAR buf[MAX_PATH]; -+ lws_fop_fd_t fop_fd; -+ LARGE_INTEGER llFileSize = {0}; -+ -+ MultiByteToWideChar(CP_UTF8, 0, filename, -1, buf, ARRAY_SIZE(buf)); -+ if (((*flags) & 7) == _O_RDONLY) { -+ ret = CreateFile2(buf, GENERIC_READ, FILE_SHARE_READ, -+ OPEN_EXISTING, NULL); -+ } else { -+ lwsl_err("%s: open for write not implemented\n", __func__); -+ *filelen = 0; -+ ret = LWS_INVALID_FILE; -+ } -+ -+ if (ret == LWS_INVALID_FILE) -+ goto bail; -+ -+ fop_fd = malloc(sizeof(*fop_fd)); -+ if (!fop_fd) -+ goto bail; -+ -+ fop_fd->fops = fops; -+ fop_fd->fd = ret; -+ fop_fd->filesystem_priv = NULL; /* we don't use it */ -+ fop_fd->flags = *flags; -+ fop_fd->len = GetFileSize(ret, NULL); -+ if(GetFileSizeEx(ret, &llFileSize)) -+ fop_fd->len = llFileSize.QuadPart; -+ -+ fop_fd->pos = 0; -+ -+ return fop_fd; -+ -+bail: -+ return NULL; -+} -+#endif - - LWS_VISIBLE int - _lws_plat_file_close(lws_fop_fd_t *fop_fd) -diff --git a/lib/private-libwebsockets.h b/lib/private-libwebsockets.h -index 23f8f4d..bc32aef 100644 ---- a/lib/private-libwebsockets.h -+++ b/lib/private-libwebsockets.h -@@ -111,12 +111,23 @@ - #define WIN32_LEAN_AND_MEAN - #endif - -+#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP) -+#ifndef WINVER -+#define WINVER 0x0602 -+#define _WIN32_WINNT WINVER -+#endif -+ -+#define getenv(x) NULL -+#define _WINSOCK_DEPRECATED_NO_WARNINGS -+#else -+ - #if (WINVER < 0x0501) - #undef WINVER - #undef _WIN32_WINNT - #define WINVER 0x0501 - #define _WIN32_WINNT WINVER - #endif -+#endif - #define LWS_NO_DAEMONIZE - #define LWS_ERRNO WSAGetLastError() - #define LWS_EAGAIN WSAEWOULDBLOCK diff --git a/ports/libwebsockets/CONTROL b/ports/libwebsockets/CONTROL index 97a755677d4244..ae9c3d6ee3551e 100644 --- a/ports/libwebsockets/CONTROL +++ b/ports/libwebsockets/CONTROL @@ -1,5 +1,5 @@ Source: libwebsockets -Version: 3.1.0 +Version: 3.1.0-1 Build-Depends: zlib, openssl Homepage: https://github.com/warmcat/libwebsockets Description: Libwebsockets is a lightweight pure C library built to use minimal CPU and memory resources, and provide fast throughput in both directions as client or server. diff --git a/ports/libwebsockets/portfile.cmake b/ports/libwebsockets/portfile.cmake index b869fcc2ab364d..c23f99042242c5 100644 --- a/ports/libwebsockets/portfile.cmake +++ b/ports/libwebsockets/portfile.cmake @@ -6,8 +6,6 @@ vcpkg_from_github( REF v3.1.0 SHA512 e2a4c1b25bc6f028654a63fc01a2732e6c63414868f8d3d01fa477752fdabe0f61e8d271fe7dd2734db0e15b1250f6b0101285b6d694f971ec4bf67ba7ee067c HEAD_REF master - PATCHES - 0001-Fix-UWP.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" LWS_WITH_STATIC) @@ -28,7 +26,11 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake") +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "windows" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake") +else() + vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/libwebsockets" TARGET_PATH "share/libwebsockets") +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) @@ -45,7 +47,9 @@ file(WRITE ${CURRENT_PACKAGES_DIR}/share/libwebsockets/LibwebsocketsTargets-rele file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libwebsockets) file(RENAME ${CURRENT_PACKAGES_DIR}/share/libwebsockets/LICENSE ${CURRENT_PACKAGES_DIR}/share/libwebsockets/copyright) if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/websockets_static.lib ${CURRENT_PACKAGES_DIR}/debug/lib/websockets.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/websockets_static.lib ${CURRENT_PACKAGES_DIR}/lib/websockets.lib) + if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "windows" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/websockets_static.lib ${CURRENT_PACKAGES_DIR}/debug/lib/websockets.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/websockets_static.lib ${CURRENT_PACKAGES_DIR}/lib/websockets.lib) + endif() endif () vcpkg_copy_pdbs() From 70c615012fa3c3a66fb2bae715055a6d59085861 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Tue, 18 Jun 2019 04:19:39 +0800 Subject: [PATCH 046/123] [libsodium] Update to 1.0.18 (#6778) --- ports/libsodium/CONTROL | 2 +- ports/libsodium/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/libsodium/CONTROL b/ports/libsodium/CONTROL index 9a7a7e3bace15a..333f080318c55e 100644 --- a/ports/libsodium/CONTROL +++ b/ports/libsodium/CONTROL @@ -1,4 +1,4 @@ Source: libsodium -Version: 1.0.17-3 +Version: 1.0.18 Description: A modern and easy-to-use crypto library Homepage: https://github.com/jedisct1/libsodium diff --git a/ports/libsodium/portfile.cmake b/ports/libsodium/portfile.cmake index c18f079923cc8a..2d61a45505374f 100644 --- a/ports/libsodium/portfile.cmake +++ b/ports/libsodium/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO jedisct1/libsodium - REF 1.0.17 - SHA512 faf6ab57d113b6b1614b51390823a646f059018327b6f493e9e918a908652d0932a75a1a6683032b7a3869f516f387d67acdf944568387feddff7b2f5b6e77d6 + REF 1.0.18 + SHA512 727fe50a5fb1df86ec5d807770f408a52609cbeb8510b4f4183b2a35a537905719bdb6348afcb103ff00ce946a8094ac9559b6e3e5b2ccc2a2d0c08f75577eeb HEAD_REF master ) From 302c43f9319b5d8e432619262920b8608855f769 Mon Sep 17 00:00:00 2001 From: Claudio Fantacci Date: Mon, 17 Jun 2019 23:38:05 +0200 Subject: [PATCH 047/123] [realsense2] Update to v2.19.0 (#5777) * [realsense2] Update to v2.19.0 * [realsense2] Update to version 2.22.0 --- ports/realsense2/CONTROL | 16 ++++++------- ports/realsense2/portfile.cmake | 41 +++++++++++++++++---------------- 2 files changed, 29 insertions(+), 28 deletions(-) diff --git a/ports/realsense2/CONTROL b/ports/realsense2/CONTROL index 5147c77cf316f4..34698dbd65e961 100644 --- a/ports/realsense2/CONTROL +++ b/ports/realsense2/CONTROL @@ -1,8 +1,8 @@ -Source: realsense2 -Version: 2.16.1-2 -Homepage: https://github.com/IntelRealSense/librealsense -Description: Intel® RealSense™ SDK 2.0 is a cross-platform library for Intel® RealSense™ depth cameras (D400 series and the SR300). - -Feature: tools -Build-Depends: opengl -Description: Build Intel® RealSense™ examples and tools +Source: realsense2 +Version: 2.22.0 +Homepage: https://github.com/IntelRealSense/librealsense +Description: Intel® RealSense™ SDK 2.0 is a cross-platform library for Intel® RealSense™ depth cameras (D400 series and the SR300). + +Feature: tools +Build-Depends: opengl +Description: Build Intel® RealSense™ examples and tools diff --git a/ports/realsense2/portfile.cmake b/ports/realsense2/portfile.cmake index 0d8ae7cdc768c8..8d5def7c80455f 100644 --- a/ports/realsense2/portfile.cmake +++ b/ports/realsense2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO IntelRealSense/librealsense - REF v2.16.1 - SHA512 e030f7b1833db787b8976ead734535fb2209a19317d74d4f68bd8f8cae38abe2343d584e88131a1a66bf6f9f1c0a17bc2c64540841a74cf6300fecf3e69f9dff + REF v2.22.0 + SHA512 7595780c1955a2d4a91df5b70ab6366c672f389bc3d2dcb9f2e78a2ea1fc875c65f878103df483205e17f62dfd024ee5f7ccb15afc5d18978d3c25aa071652ab HEAD_REF development ) @@ -13,47 +13,48 @@ string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_CRT_LINKAGE) set(BUILD_EXAMPLES OFF) set(BUILD_GRAPHICAL_EXAMPLES OFF) if("tools" IN_LIST FEATURES) - set(BUILD_EXAMPLES ON) - set(BUILD_GRAPHICAL_EXAMPLES ON) + set(BUILD_EXAMPLES ON) + set(BUILD_GRAPHICAL_EXAMPLES ON) endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA OPTIONS - #Ungrouped Entries -DENFORCE_METADATA=ON - # BUILD - -DBUILD_EXAMPLES=${BUILD_EXAMPLES} - -DBUILD_GRAPHICAL_EXAMPLES=${BUILD_GRAPHICAL_EXAMPLES} - -DBUILD_UNIT_TESTS=OFF + -DBUILD_WITH_TM2=OFF -DBUILD_WITH_OPENMP=OFF + -DBUILD_UNIT_TESTS=OFF -DBUILD_WITH_STATIC_CRT=${BUILD_CRT_LINKAGE} + OPTIONS_RELEASE + -DBUILD_EXAMPLES=${BUILD_EXAMPLES} + -DBUILD_GRAPHICAL_EXAMPLES=${BUILD_GRAPHICAL_EXAMPLES} OPTIONS_DEBUG - # BUILD -DBUILD_EXAMPLES=OFF -DBUILD_GRAPHICAL_EXAMPLES=OFF - # CMAKE - -DCMAKE_PDB_OUTPUT_DIRECTORY=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg - -DCMAKE_DEBUG_POSTFIX=_d ) vcpkg_install_cmake() + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/realsense2) + vcpkg_copy_pdbs() + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) if(BUILD_EXAMPLES) - file(GLOB EXEFILES_RELEASE ${CURRENT_PACKAGES_DIR}/bin/rs-* ${CURRENT_PACKAGES_DIR}/bin/realsense-*) + file(GLOB EXEFILES_RELEASE + ${CURRENT_PACKAGES_DIR}/bin/rs-* + ${CURRENT_PACKAGES_DIR}/bin/realsense-* + ) + if (EXEFILES_RELEASE) file(COPY ${EXEFILES_RELEASE} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/realsense2) file(REMOVE ${EXEFILES_RELEASE}) endif() - file(GLOB EXEFILES_DEBUG ${CURRENT_PACKAGES_DIR}/debug/bin/*) - if (EXEFILES_DEBUG) - file(REMOVE ${EXEFILES_RELEASE} ${EXEFILES_DEBUG}) - endif() + vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/realsense2) file(GLOB BINS ${CURRENT_PACKAGES_DIR}/bin/*) @@ -62,5 +63,5 @@ if(BUILD_EXAMPLES) endif() endif() -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/realsense2) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/realsense2/COPYING ${CURRENT_PACKAGES_DIR}/share/realsense2/copyright) +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/realsense2) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/realsense2/LICENSE ${CURRENT_PACKAGES_DIR}/share/realsense2/copyright) From 5e9ccbc4a56970b36817e8adfbaa586962ef587f Mon Sep 17 00:00:00 2001 From: Tsukasa Sugiura Date: Tue, 18 Jun 2019 08:04:18 +0900 Subject: [PATCH 048/123] [realsense2] Enable OpenNI2 driver option (#5275) * [realsense2] Update to v2.18.0 Update realsense2 port to librealsense v2.18.0. * [realsense2] Add OpenNI2 driver option Add OpenNI2 driver option. * [realsense2] Fix OpenNI2 driver option * [realsense2] Remove unnecessary patch * [realsense2] Bump CONTROL version --- ports/realsense2/CONTROL | 6 +++++- ports/realsense2/fix_openni2.patch | 18 ++++++++++++++++++ ports/realsense2/portfile.cmake | 27 ++++++++++++++++++++------- 3 files changed, 43 insertions(+), 8 deletions(-) create mode 100644 ports/realsense2/fix_openni2.patch diff --git a/ports/realsense2/CONTROL b/ports/realsense2/CONTROL index 34698dbd65e961..40341f080a3bb6 100644 --- a/ports/realsense2/CONTROL +++ b/ports/realsense2/CONTROL @@ -1,8 +1,12 @@ Source: realsense2 -Version: 2.22.0 +Version: 2.22.0-1 Homepage: https://github.com/IntelRealSense/librealsense Description: Intel® RealSense™ SDK 2.0 is a cross-platform library for Intel® RealSense™ depth cameras (D400 series and the SR300). Feature: tools Build-Depends: opengl Description: Build Intel® RealSense™ examples and tools + +Feature: openni2 +Build-Depends: openni2 +Description: Build Intel® RealSense™ OpenNI2 driver diff --git a/ports/realsense2/fix_openni2.patch b/ports/realsense2/fix_openni2.patch new file mode 100644 index 00000000000000..541f8376af4fab --- /dev/null +++ b/ports/realsense2/fix_openni2.patch @@ -0,0 +1,18 @@ +diff --git a/wrappers/openni2/CMakeLists.txt b/wrappers/openni2/CMakeLists.txt +index 0eee84c2..769e67ff 100755 +--- a/wrappers/openni2/CMakeLists.txt ++++ b/wrappers/openni2/CMakeLists.txt +@@ -6,12 +6,7 @@ set(OPENNI2_DIR "c:/Program Files/OpenNI2" CACHE FILEPATH "OpenNI2 SDK directory + set(REALSENSE2_DIR "c:/Program Files (x86)/Intel RealSense SDK 2.0" CACHE FILEPATH "RealSense2 SDK directory") + + # INCLUDE DIR +-if (UNIX) +- include_directories (${OPENNI2_DIR}) +-else () +- include_directories (${OPENNI2_DIR}/Include) +-endif () +- ++include_directories (${OPENNI2_DIR}) + include_directories (${REALSENSE2_DIR}/include) + include_directories (src) + diff --git a/ports/realsense2/portfile.cmake b/ports/realsense2/portfile.cmake index 8d5def7c80455f..decc9b504b273c 100644 --- a/ports/realsense2/portfile.cmake +++ b/ports/realsense2/portfile.cmake @@ -6,15 +6,20 @@ vcpkg_from_github( REF v2.22.0 SHA512 7595780c1955a2d4a91df5b70ab6366c672f389bc3d2dcb9f2e78a2ea1fc875c65f878103df483205e17f62dfd024ee5f7ccb15afc5d18978d3c25aa071652ab HEAD_REF development + PATCHES + "fix_openni2.patch" ) string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_CRT_LINKAGE) -set(BUILD_EXAMPLES OFF) -set(BUILD_GRAPHICAL_EXAMPLES OFF) +set(BUILD_TOOLS OFF) if("tools" IN_LIST FEATURES) - set(BUILD_EXAMPLES ON) - set(BUILD_GRAPHICAL_EXAMPLES ON) + set(BUILD_TOOLS ON) +endif() + +set(BUILD_OPENNI2_BINDINGS OFF) +if(("openni2" IN_LIST FEATURES) AND (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")) + set(BUILD_OPENNI2_BINDINGS ON) endif() vcpkg_configure_cmake( @@ -26,9 +31,11 @@ vcpkg_configure_cmake( -DBUILD_WITH_OPENMP=OFF -DBUILD_UNIT_TESTS=OFF -DBUILD_WITH_STATIC_CRT=${BUILD_CRT_LINKAGE} + -DBUILD_OPENNI2_BINDINGS=${BUILD_OPENNI2_BINDINGS} + -DOPENNI2_DIR=${CURRENT_INSTALLED_DIR}/include/openni2 OPTIONS_RELEASE - -DBUILD_EXAMPLES=${BUILD_EXAMPLES} - -DBUILD_GRAPHICAL_EXAMPLES=${BUILD_GRAPHICAL_EXAMPLES} + -DBUILD_EXAMPLES=${BUILD_TOOLS} + -DBUILD_GRAPHICAL_EXAMPLES=${BUILD_TOOLS} OPTIONS_DEBUG -DBUILD_EXAMPLES=OFF -DBUILD_GRAPHICAL_EXAMPLES=OFF @@ -44,7 +51,7 @@ vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -if(BUILD_EXAMPLES) +if(BUILD_TOOLS) file(GLOB EXEFILES_RELEASE ${CURRENT_PACKAGES_DIR}/bin/rs-* ${CURRENT_PACKAGES_DIR}/bin/realsense-* @@ -63,5 +70,11 @@ if(BUILD_EXAMPLES) endif() endif() + +if(BUILD_OPENNI2_BINDINGS) + file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/_out/rs2driver* + DESTINATION ${CURRENT_PACKAGES_DIR}/tools/openni2/OpenNI2/Drivers) +endif() + file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/realsense2) file(RENAME ${CURRENT_PACKAGES_DIR}/share/realsense2/LICENSE ${CURRENT_PACKAGES_DIR}/share/realsense2/copyright) From 5bbba1c92b4730ef68b304cd668168539a11d13f Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Tue, 18 Jun 2019 07:36:07 +0800 Subject: [PATCH 049/123] [nvtt]Upgrade version to 2.1.1 and fix build error on windows. (#6765) * [nvtt]Upgrade version to 2.1.1 and fix build error on windows. * [nvtt]Fix build error on OSX. * [nvtt]Merge two patches. * [nvtt]Re-trigger CI system. * [nvtt]Fix build error on OSX. --- ...ne-value-for-HAVE_UNISTD_H-in-mac-os.patch | 32 +++++++-------- ports/nvtt/CONTROL | 2 +- ports/nvtt/fix-build-error.patch | 39 +++++++++++++++++++ ports/nvtt/portfile.cmake | 7 ++-- 4 files changed, 60 insertions(+), 20 deletions(-) create mode 100644 ports/nvtt/fix-build-error.patch diff --git a/ports/nvtt/001-define-value-for-HAVE_UNISTD_H-in-mac-os.patch b/ports/nvtt/001-define-value-for-HAVE_UNISTD_H-in-mac-os.patch index 915f247c840cbd..366cff84f6d7a3 100644 --- a/ports/nvtt/001-define-value-for-HAVE_UNISTD_H-in-mac-os.patch +++ b/ports/nvtt/001-define-value-for-HAVE_UNISTD_H-in-mac-os.patch @@ -1,16 +1,16 @@ -diff --git a/src/nvconfig.h.in b/src/nvconfig.h.in -index 16da646..ada6be0 100644 ---- a/src/nvconfig.h.in -+++ b/src/nvconfig.h.in -@@ -1,7 +1,11 @@ - #ifndef NV_CONFIG - #define NV_CONFIG - -+#if NV_OS_DARWIN & !NV_OS_IOS -+#cmakedefine01 HAVE_UNISTD_H -+#else - #cmakedefine HAVE_UNISTD_H -+#endif - #cmakedefine HAVE_STDARG_H - #cmakedefine HAVE_SIGNAL_H - #cmakedefine HAVE_EXECINFO_H +diff --git a/src/nvconfig.h.in b/src/nvconfig.h.in +index 16da646..ada6be0 100644 +--- a/src/nvconfig.h.in ++++ b/src/nvconfig.h.in +@@ -1,7 +1,11 @@ + #ifndef NV_CONFIG + #define NV_CONFIG + ++#if NV_OS_DARWIN & !NV_OS_IOS ++#cmakedefine01 HAVE_UNISTD_H ++#else + #cmakedefine HAVE_UNISTD_H ++#endif + #cmakedefine HAVE_STDARG_H + #cmakedefine HAVE_SIGNAL_H + #cmakedefine HAVE_EXECINFO_H diff --git a/ports/nvtt/CONTROL b/ports/nvtt/CONTROL index e52645ba7693a9..189ff6caf8e51f 100644 --- a/ports/nvtt/CONTROL +++ b/ports/nvtt/CONTROL @@ -1,3 +1,3 @@ Source: nvtt -Version: 2.1.0-3 +Version: 2.1.1 Description: Texture processing tools with support for Direct3D 10 and 11 formats. diff --git a/ports/nvtt/fix-build-error.patch b/ports/nvtt/fix-build-error.patch new file mode 100644 index 00000000000000..7ba1c19763fad6 --- /dev/null +++ b/ports/nvtt/fix-build-error.patch @@ -0,0 +1,39 @@ +diff --git a/extern/butteraugli/butteraugli.h b/extern/butteraugli/butteraugli.h +index 31824b8..c116a73 100644 +--- a/extern/butteraugli/butteraugli.h ++++ b/extern/butteraugli/butteraugli.h +@@ -134,7 +134,14 @@ bool ButteraugliAdaptiveQuantization(size_t xsize, size_t ysize, + // The conventional syntax uint8_t* const RESTRICT is more confusing - it is + // not immediately obvious that the pointee is non-const. + template ++#ifdef _MSC_VER ++// Due to MSVC bug: ++// https://developercommunity.visualstudio.com/content/problem/32196/msvc-cant-compile-a-templated-using-without-instan.html ++// , we cannot use __restrict now. Loss some performance instead of can't use this code. ++using ConstRestrict = T const; ++#else + using ConstRestrict = T const BUTTERAUGLI_RESTRICT; ++#endif + + // Functions that depend on the cache line size. + class CacheAligned { +diff --git a/src/nvthread/Atomic.h b/src/nvthread/Atomic.h +index 212b9cb..b8eaedb 100644 +--- a/src/nvthread/Atomic.h ++++ b/src/nvthread/Atomic.h +@@ -183,7 +183,6 @@ namespace nv { + + + #elif NV_CC_CLANG && (NV_OS_IOS || NV_OS_DARWIN) +- NV_COMPILER_CHECK(sizeof(uint32) == sizeof(long)); + + //ACS: Use Apple's atomics instead? I don't know if these are better in any way; there are non-barrier versions too. There's no OSAtomicSwap32 tho' + /* +@@ -254,7 +253,6 @@ namespace nv { + + + #elif NV_CC_CLANG && POSH_CPU_STRONGARM +- NV_COMPILER_CHECK(sizeof(uint32) == sizeof(long)); + + inline uint32 atomicIncrement(uint32 * value) + { diff --git a/ports/nvtt/portfile.cmake b/ports/nvtt/portfile.cmake index cd60088530304e..bacdebbbc4cdc7 100644 --- a/ports/nvtt/portfile.cmake +++ b/ports/nvtt/portfile.cmake @@ -5,14 +5,15 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO castano/nvidia-texture-tools - REF 2.1.0 - SHA512 6c5c9588af57023fc384de080cbe5c5ccd8707d04a9533384c606efd09730d780cb21bcf2d3576102a3facd2f281cacb2625958d74575e71550fd98da92e38b6 + REF 2.1.1 + SHA512 3e6fef5977ca29daa7dc97afe11d61de57a8556c9caf30902db8c5c167d9c38f736bcb62eebdaaf7558299b39975bc269d41ab980c813b67dd1fc85064c853c9 HEAD_REF master PATCHES 001-define-value-for-HAVE_UNISTD_H-in-mac-os.patch bc6h.patch bc7.patch squish.patch + fix-build-error.patch ) vcpkg_configure_cmake( @@ -37,4 +38,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) # Handle copyright file(REMOVE ${CURRENT_PACKAGES_DIR}/share/doc/nvtt/LICENSE) file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/nvtt) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/nvtt/LICENSE ${CURRENT_PACKAGES_DIR}/share/nvtt/copyright) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/nvtt/LICENSE ${CURRENT_PACKAGES_DIR}/share/nvtt/copyright) \ No newline at end of file From f10cfbe064e1c79340e2366361f5de2b3997ad41 Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Tue, 18 Jun 2019 08:10:45 +0800 Subject: [PATCH 050/123] [log4cplus]Fix lnk2019 errors when using log4cplus. (#6930) --- ports/log4cplus/CONTROL | 2 +- ports/log4cplus/fix-usage-error.patch | 105 ++++++++++++++++++++++++++ ports/log4cplus/portfile.cmake | 1 + 3 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 ports/log4cplus/fix-usage-error.patch diff --git a/ports/log4cplus/CONTROL b/ports/log4cplus/CONTROL index bdcb159b7486c8..99771644a14b04 100644 --- a/ports/log4cplus/CONTROL +++ b/ports/log4cplus/CONTROL @@ -1,5 +1,5 @@ Source: log4cplus -Version: 2.0.4 +Version: 2.0.4-1 Homepage: https://github.com/log4cplus/log4cplus Description: A simple to use C++ logging API providing thread--safe, flexible, and arbitrarily granular control over log management and configuration Build-Depends: catch diff --git a/ports/log4cplus/fix-usage-error.patch b/ports/log4cplus/fix-usage-error.patch new file mode 100644 index 00000000000000..4a2753ffc10100 --- /dev/null +++ b/ports/log4cplus/fix-usage-error.patch @@ -0,0 +1,105 @@ +diff --git a/qt4debugappender/CMakeLists.txt b/qt4debugappender/CMakeLists.txt +index 2f28be5..0a98704 100644 +--- a/qt4debugappender/CMakeLists.txt ++++ b/qt4debugappender/CMakeLists.txt +@@ -4,15 +4,17 @@ set (qt4debugappender_sources + if (${BUILD_SHARED_LIBS}) + add_definitions (-D${log4cplus}_EXPORTS) + endif () +-if (UNICODE) +- add_definitions (-DUNICODE -D_UNICODE -UMBCS -U_MBCS) +-endif (UNICODE) + + find_package (Qt4 REQUIRED) + include (${QT_USE_FILE}) + + set (qt4debugappender log4cplusqt4debugappender${log4cplus_postfix}) + add_library (${qt4debugappender} ${qt4debugappender_sources}) ++if (UNICODE) ++ target_compile_definitions (${qt4debugappender} PUBLIC UNICODE) ++ target_compile_definitions (${qt4debugappender} PUBLIC _UNICODE) ++ add_definitions (-UMBCS -U_MBCS) ++endif (UNICODE) + target_link_libraries (${qt4debugappender} + ${log4cplus} + ${QT_LIBRARIES} +diff --git a/qt5debugappender/CMakeLists.txt b/qt5debugappender/CMakeLists.txt +index 9570e76..de6fecf 100644 +--- a/qt5debugappender/CMakeLists.txt ++++ b/qt5debugappender/CMakeLists.txt +@@ -4,15 +4,17 @@ set (qt5debugappender_sources + if (${BUILD_SHARED_LIBS}) + add_definitions (-D${log4cplus}_EXPORTS) + endif () +-if (UNICODE) +- add_definitions (-DUNICODE -D_UNICODE -UMBCS -U_MBCS) +-endif (UNICODE) + + find_package (Qt5Core REQUIRED) + #include (${QT_USE_FILE}) + + set (qt5debugappender log4cplusqt5debugappender${log4cplus_postfix}) + add_library (${qt5debugappender} ${qt5debugappender_sources}) ++if (UNICODE) ++ target_compile_definitions (${qt5debugappender} PUBLIC UNICODE) ++ target_compile_definitions (${qt5debugappender} PUBLIC _UNICODE) ++ add_definitions (-UMBCS -U_MBCS) ++endif (UNICODE) + target_link_libraries (${qt5debugappender} + ${log4cplus} + ${Qt5Widgets_LIBRARIES} +diff --git a/simpleserver/CMakeLists.txt b/simpleserver/CMakeLists.txt +index e535120..5202f42 100644 +--- a/simpleserver/CMakeLists.txt ++++ b/simpleserver/CMakeLists.txt +@@ -1,14 +1,15 @@ +-if (UNICODE) +- add_definitions (-DUNICODE -D_UNICODE -UMBCS -U_MBCS) +-endif (UNICODE) +- + message (STATUS "Threads: ${CMAKE_THREAD_LIBS_INIT}") +- + set (loggingserver_sources loggingserver.cxx) + + message (STATUS "Sources: ${loggingserver_sources}") + +-add_executable (loggingserver ${loggingserver_sources}) +-target_link_libraries (loggingserver ${log4cplus}) ++set (loggingserver loggingserver${log4cplus_postfix}) ++add_executable (${loggingserver} ${loggingserver_sources}) ++if (UNICODE) ++ target_compile_definitions (${loggingserver} PUBLIC UNICODE) ++ target_compile_definitions (${loggingserver} PUBLIC _UNICODE) ++ add_definitions (-UMBCS -U_MBCS) ++endif (UNICODE) ++target_link_libraries (${loggingserver} ${log4cplus}) + +-install(TARGETS loggingserver DESTINATION ${CMAKE_INSTALL_BINDIR}) ++install(TARGETS ${loggingserver} DESTINATION ${CMAKE_INSTALL_BINDIR}) +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index b7b7ad8..91e0c63 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -67,9 +67,6 @@ endif () + + # Define _GNU_SOURCE so that functions like `pipe2()` are visible. + add_definitions (-D_GNU_SOURCE=1) +-if (UNICODE) +- add_definitions (-DUNICODE -D_UNICODE -UMBCS -U_MBCS) +-endif (UNICODE) + if (WIN32) + add_definitions (-DMINGW_HAS_SECURE_API=1) + add_definitions (-D_WIN32_WINNT=${_WIN32_WINNT}) +@@ -85,6 +82,12 @@ endif (WIN32) + + add_library (${log4cplus} ${log4cplus_sources}) + ++if (UNICODE) ++ target_compile_definitions (${log4cplus} PUBLIC UNICODE) ++ target_compile_definitions (${log4cplus} PUBLIC _UNICODE) ++ add_definitions (-UMBCS -U_MBCS) ++endif (UNICODE) ++ + set (log4cplus_LIBS ${CMAKE_THREAD_LIBS_INIT}) + if (LIBRT) + list (APPEND log4cplus_LIBS ${LIBRT}) diff --git a/ports/log4cplus/portfile.cmake b/ports/log4cplus/portfile.cmake index 748311b2411998..b2c1035da0b5c9 100644 --- a/ports/log4cplus/portfile.cmake +++ b/ports/log4cplus/portfile.cmake @@ -5,6 +5,7 @@ vcpkg_from_github( REF REL_2_0_4 SHA512 194e37b8de7be377dabe911d1cec831de41f5ce14dd617b5333739a7ab8dbc3061aa24351abe811588db507aa1563a637023b26684fb21bbfc88d24b4e4ce062 HEAD_REF master + PATCHES fix-usage-error.patch ) set(THREADPOOL_REF cc0b6371d3963f7028c2da5fc007733f9f3bf205) From 0b24f31aadfff8e0b43903dc7632640d32d6a343 Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Tue, 18 Jun 2019 08:12:00 +0800 Subject: [PATCH 051/123] [sdl2-mixer]Fix build error with feature opusfile. (#6929) --- ports/sdl2-mixer/CMakeLists.txt | 4 +++- ports/sdl2-mixer/CONTROL | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ports/sdl2-mixer/CMakeLists.txt b/ports/sdl2-mixer/CMakeLists.txt index f9912346c8c2fa..1265145fa6266b 100644 --- a/ports/sdl2-mixer/CMakeLists.txt +++ b/ports/sdl2-mixer/CMakeLists.txt @@ -49,9 +49,11 @@ endif() # Opus support if(SDL_MIXER_ENABLE_OPUS) find_path(OPUS_INCLUDE_DIR opus/opusfile.h) + find_package(ogg CONFIG REQUIRED) + find_package(Opus CONFIG REQUIRED) find_library(OPUSFILE_LIBRARY opusfile) list(APPEND SDL_MIXER_INCLUDES ${OPUS_INCLUDE_DIR}) - list(APPEND SDL_MIXER_LIBRARIES ${OPUSFILE_LIBRARY}) + list(APPEND SDL_MIXER_LIBRARIES ${OPUSFILE_LIBRARY} Ogg::ogg Opus::opus) list(APPEND SDL_MIXER_DEFINES MUSIC_OPUS) endif() diff --git a/ports/sdl2-mixer/CONTROL b/ports/sdl2-mixer/CONTROL index 57827c0e693dce..2c76639dcd6908 100644 --- a/ports/sdl2-mixer/CONTROL +++ b/ports/sdl2-mixer/CONTROL @@ -1,5 +1,5 @@ Source: sdl2-mixer -Version: 2.0.4-2 +Version: 2.0.4-3 Homepage: https://www.libsdl.org/projects/SDL_mixer Description: Multi-channel audio mixer library for SDL. Build-Depends: sdl2 From 09d8df72aabf7bae33a88615d09a3f4591400936 Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Tue, 18 Jun 2019 08:12:44 +0800 Subject: [PATCH 052/123] [qt5-declarative]Fix error when building release-only. (#6927) --- ports/qt5-declarative/CONTROL | 2 +- ports/qt5-declarative/portfile.cmake | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/ports/qt5-declarative/CONTROL b/ports/qt5-declarative/CONTROL index 1ef033d17ce662..1e7e6f6e64f101 100644 --- a/ports/qt5-declarative/CONTROL +++ b/ports/qt5-declarative/CONTROL @@ -1,4 +1,4 @@ Source: qt5-declarative -Version: 5.12.3 +Version: 5.12.3-1 Description: Qt5 Declarative (Quick 2) Module. Includes QtQuick, QtQuickParticles, QtQuickWidgets, QtQml, and QtPacketProtocol. Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5-declarative/portfile.cmake b/ports/qt5-declarative/portfile.cmake index badeab8825705e..1056d1b9f3ecce 100644 --- a/ports/qt5-declarative/portfile.cmake +++ b/ports/qt5-declarative/portfile.cmake @@ -6,7 +6,9 @@ qt_modular_library(qtdeclarative 0caddcfee36cbf52bacd3a400d304511255715e2b5a58c1 file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/tools/qt5-declarative/plugins/platforminputcontexts) -set(qt5decpath ${CURRENT_PACKAGES_DIR}/share/qt5/debug/mkspecs/modules/qt_lib_qmldevtools_private.pri) -file(READ "${qt5decpath}" _contents) -string(REPLACE [[QT.qmldevtools_private.libs = $$QT_MODULE_HOST_LIB_BASE]] [[QT.qmldevtools_private.libs = $$QT_MODULE_LIB_BASE]] _contents "${_contents}") -file(WRITE "${qt5decpath}" "${_contents}") \ No newline at end of file +if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + set(qt5decpath ${CURRENT_PACKAGES_DIR}/share/qt5/debug/mkspecs/modules/qt_lib_qmldevtools_private.pri) + file(READ "${qt5decpath}" _contents) + string(REPLACE [[QT.qmldevtools_private.libs = $$QT_MODULE_HOST_LIB_BASE]] [[QT.qmldevtools_private.libs = $$QT_MODULE_LIB_BASE]] _contents "${_contents}") + file(WRITE "${qt5decpath}" "${_contents}") +endif() \ No newline at end of file From e4acc60b3c9acb7fe7a323f146234e3aeab7cab6 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Tue, 18 Jun 2019 00:01:32 -0700 Subject: [PATCH 053/123] address qhull flaky build with msvc linker (#6943) --- scripts/cmake/vcpkg_execute_build_process.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/cmake/vcpkg_execute_build_process.cmake b/scripts/cmake/vcpkg_execute_build_process.cmake index 27e8c816325f0d..d440ba2f6c97c9 100644 --- a/scripts/cmake/vcpkg_execute_build_process.cmake +++ b/scripts/cmake/vcpkg_execute_build_process.cmake @@ -59,7 +59,8 @@ function(vcpkg_execute_build_process) if(out_contents MATCHES "LINK : fatal error LNK1102:" OR out_contents MATCHES " fatal error C1060: " OR err_contents MATCHES "LINK : fatal error LNK1102:" OR err_contents MATCHES " fatal error C1060: " OR out_contents MATCHES "LINK : fatal error LNK1318: Unexpected PDB error; ACCESS_DENIED" - OR out_contents MATCHES "LINK : fatal error LNK1104:") + OR out_contents MATCHES "LINK : fatal error LNK1104:" + OR out_contents MATCHES "LINK : fatal error LNK1201:") # The linker ran out of memory during execution. We will try continuing once more, with parallelism disabled. message(STATUS "Restarting Build without parallelism because memory exceeded") set(LOG_OUT "${CURRENT_BUILDTREES_DIR}/${_ebp_LOGNAME}-out-1.log") From 49d1759ec85c31eb50d07b42d245b989b99df37c Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Wed, 19 Jun 2019 02:11:06 +0800 Subject: [PATCH 054/123] [spdlog]Add feature[benchmark] (#6924) * [spdlog]Add feature[benchmark] --- ports/spdlog/CONTROL | 6 +++++- ports/spdlog/fix-feature-export.patch | 14 ++++++++++++++ ports/spdlog/portfile.cmake | 10 ++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 ports/spdlog/fix-feature-export.patch diff --git a/ports/spdlog/CONTROL b/ports/spdlog/CONTROL index 38149a55c764db..aa547470990406 100644 --- a/ports/spdlog/CONTROL +++ b/ports/spdlog/CONTROL @@ -1,5 +1,9 @@ Source: spdlog -Version: 1.3.1 +Version: 1.3.1-1 Homepage: https://github.com/gabime/spdlog Description: Very fast, header only, C++ logging library Build-Depends: fmt + +Feature: benchmark +Description: Use google benchmark +Build-Depends: benchmark \ No newline at end of file diff --git a/ports/spdlog/fix-feature-export.patch b/ports/spdlog/fix-feature-export.patch new file mode 100644 index 00000000000000..ad1239fd797c82 --- /dev/null +++ b/ports/spdlog/fix-feature-export.patch @@ -0,0 +1,14 @@ +diff --git a/bench/CMakeLists.txt b/bench/CMakeLists.txt +index 3c4a3f9..3bc3813 100644 +--- a/bench/CMakeLists.txt ++++ b/bench/CMakeLists.txt +@@ -46,3 +46,8 @@ add_executable(formatter-bench formatter-bench.cpp) + target_link_libraries(formatter-bench PRIVATE benchmark::benchmark spdlog::spdlog Threads::Threads) + + file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/logs") ++ ++install(TARGETS bench async_bench latency ++ RUNTIME DESTINATION tools/spdlog ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) +\ No newline at end of file diff --git a/ports/spdlog/portfile.cmake b/ports/spdlog/portfile.cmake index 530e8b08443e1d..37cd8644f0e645 100644 --- a/ports/spdlog/portfile.cmake +++ b/ports/spdlog/portfile.cmake @@ -1,5 +1,6 @@ #header-only library include(vcpkg_common_functions) + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO gabime/spdlog @@ -8,19 +9,28 @@ vcpkg_from_github( HEAD_REF v1.x PATCHES disable-master-project-check.patch + fix-feature-export.patch ) +set(SPDLOG_USE_BENCHMARK OFF) +if("benchmark" IN_LIST FEATURES) + set(SPDLOG_USE_BENCHMARK ON) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DSPDLOG_FMT_EXTERNAL=ON + -DSPDLOG_BUILD_BENCH=${SPDLOG_USE_BENCHMARK} ) vcpkg_install_cmake() vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/spdlog) +vcpkg_copy_pdbs() + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib) From bd5007625e2c44e4474361d9cba5e03fa6e5aab7 Mon Sep 17 00:00:00 2001 From: Josue Andrade Gomes Date: Tue, 18 Jun 2019 15:18:37 -0300 Subject: [PATCH 055/123] Graphicsmagick 1.3.32 (#6947) * GraphicsMagick 1.3.32 * Fix missing header install --- ports/graphicsmagick/CMakeLists.txt | 10 ++++++---- ports/graphicsmagick/CONTROL | 2 +- ports/graphicsmagick/portfile.cmake | 4 ++-- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/ports/graphicsmagick/CMakeLists.txt b/ports/graphicsmagick/CMakeLists.txt index 34c05a7b2710fe..cf375e96da7c7e 100644 --- a/ports/graphicsmagick/CMakeLists.txt +++ b/ports/graphicsmagick/CMakeLists.txt @@ -28,6 +28,7 @@ include_directories("magick") include_directories("Magick++") include_directories("Magick++/lib") include_directories("wand") +include_directories("jbig/libjbig") file(READ "magick/magick_config.h.in" CONFIG_H) string(REPLACE "#undef HasBZLIB" "#define HasBZLIB" CONFIG_H "${CONFIG_H}") @@ -38,6 +39,7 @@ string(REPLACE "#undef HasTTF" "#define HasTTF" CONFIG_H "${CONFIG_H}") string(REPLACE "#undef HasTTF" "#define HasTTF" CONFIG_H "${CONFIG_H}") string(REPLACE "#undef HAVE_FT2BUILD_H" "#define HAVE_FT2BUILD_H" CONFIG_H "${CONFIG_H}") string(REPLACE "#undef HasZLIB" "#define HasZLIB" CONFIG_H "${CONFIG_H}") +string(REPLACE "#undef HasJBIG" "#define HasJBIG" CONFIG_H "${CONFIG_H}") string(REPLACE "#undef QuantumDepth" "#define QuantumDepth 16" CONFIG_H "${CONFIG_H}") string(REPLACE "#undef restrict" "#define restrict" CONFIG_H "${CONFIG_H}") string(REPLACE "#undef size_t" "/* #undef size_t */" CONFIG_H "${CONFIG_H}") @@ -57,7 +59,7 @@ string(REPLACE "#undef size_t" "/* #undef size_t */" CONFIG_API_H "${CONFIG_API_ file(WRITE "magick/magick_config_api.h" "${CONFIG_API_H}") add_library(graphicsmagick coders/art.c coders/avs.c - coders/bmp.c coders/cals.c coders/caption.c + coders/bmp.c coders/braille.c coders/cals.c coders/caption.c coders/cineon.c coders/clipboard.c coders/cmyk.c coders/cut.c coders/dcm.c coders/dcraw.c coders/dib.c coders/dps.c coders/dpx.c coders/emf.c coders/ept.c @@ -108,7 +110,8 @@ add_library(graphicsmagick coders/art.c coders/avs.c Magick++/lib/ImageRef.cpp Magick++/lib/Montage.cpp Magick++/lib/Options.cpp Magick++/lib/Pixels.cpp Magick++/lib/STL.cpp Magick++/lib/Thread.cpp Magick++/lib/TypeMetric.cpp - wand/drawing_wand.c wand/magick_compat.c wand/magick_wand.c wand/pixel_wand.c) + wand/drawing_wand.c wand/magick_compat.c wand/magick_wand.c wand/pixel_wand.c + jbig/libjbig/jbig.c jbig/libjbig/jbig_tab.c) TARGET_LINK_LIBRARIES(graphicsmagick PRIVATE ZLIB::ZLIB @@ -158,7 +161,6 @@ option(INSTALL_HEADERS "Install development header files" ON) if (INSTALL_HEADERS) install(FILES magick/alpha_composite.h DESTINATION include/magick) install(FILES magick/analyze.h DESTINATION include/magick) - install(FILES magick/animate.h DESTINATION include/magick) install(FILES magick/api.h DESTINATION include/magick) install(FILES magick/attribute.h DESTINATION include/magick) install(FILES magick/average.h DESTINATION include/magick) @@ -181,7 +183,6 @@ if (INSTALL_HEADERS) install(FILES magick/delegate.h DESTINATION include/magick) install(FILES magick/deprecate.h DESTINATION include/magick) install(FILES magick/describe.h DESTINATION include/magick) - install(FILES magick/display.h DESTINATION include/magick) install(FILES magick/draw.h DESTINATION include/magick) install(FILES magick/effect.h DESTINATION include/magick) install(FILES magick/enhance.h DESTINATION include/magick) @@ -206,6 +207,7 @@ if (INSTALL_HEADERS) install(FILES magick/map.h DESTINATION include/magick) install(FILES magick/memory.h DESTINATION include/magick) install(FILES magick/module.h DESTINATION include/magick) + install(FILES magick/module_aliases.h DESTINATION include/magick) install(FILES magick/monitor.h DESTINATION include/magick) install(FILES magick/montage.h DESTINATION include/magick) install(FILES magick/nt_base.h DESTINATION include/magick) diff --git a/ports/graphicsmagick/CONTROL b/ports/graphicsmagick/CONTROL index b2ba96c95cfbd9..631fd52f3c6693 100644 --- a/ports/graphicsmagick/CONTROL +++ b/ports/graphicsmagick/CONTROL @@ -1,6 +1,6 @@ Source: graphicsmagick Maintainer: josuegomes@gmail.com -Version: 1.3.31-1 +Version: 1.3.32 Build-Depends: zlib, bzip2, freetype, libjpeg-turbo, libpng, tiff Homepage: https://sourceforge.net/projects/graphicsmagick/ Description: Image processing library diff --git a/ports/graphicsmagick/portfile.cmake b/ports/graphicsmagick/portfile.cmake index 87d03bd1f66d3d..b976bfbee0cf6e 100644 --- a/ports/graphicsmagick/portfile.cmake +++ b/ports/graphicsmagick/portfile.cmake @@ -1,11 +1,11 @@ include(vcpkg_common_functions) -set(GM_VERSION 1.3.31) +set(GM_VERSION 1.3.32) vcpkg_download_distfile(ARCHIVE URLS "https://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/${GM_VERSION}/GraphicsMagick-${GM_VERSION}-windows-source.7z" FILENAME "GraphicsMagick-${GM_VERSION}-windows-source.7z" - SHA512 ff67f5e6adf352527264e7a6a76d45ce34470263dc764760d876b9ab5d5078e3a46b9d9cb2e7ab52d53106ffe584d44c66b42f3d4d62c972662d488c86510881 + SHA512 1636f704bac65587d6526a10e7002a6158f951643a4e9eb936b0b734c1eb187155aa4d67febe897f9a2397ecadff736ba84cfe21704348e2d8481af01eff02f6 ) vcpkg_extract_source_archive_ex( From 1a63672f8fa796b044c839c777f7113ccea6e635 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Wed, 19 Jun 2019 04:34:43 +0800 Subject: [PATCH 056/123] [protobuf] Update to 3.8.0 (#6739) * [protobuf] Update to 3.8.0 * [nlopt] set options off * [shogun] should not use CMAKE_SYSTEM_PROCESSOR in port file * [protobuf] Add Homepage * [protobuf] turn warning flag off * [protobuf] Fix orc build error on macOS * bump shogun, fix nlopt --- ports/nlopt/CONTROL | 4 ++-- ports/nlopt/portfile.cmake | 7 +++++++ ports/orc/CONTROL | 2 +- ports/orc/no-werror.patch | 16 ++++++++++++++++ ports/orc/portfile.cmake | 3 ++- ports/protobuf/CONTROL | 4 ++-- ports/protobuf/portfile.cmake | 4 ++-- ports/shogun/CONTROL | 2 +- ports/shogun/portfile.cmake | 12 +----------- ports/shogun/use_proper_cmake_symbol.patch | 22 ---------------------- 10 files changed, 34 insertions(+), 42 deletions(-) create mode 100644 ports/orc/no-werror.patch delete mode 100644 ports/shogun/use_proper_cmake_symbol.patch diff --git a/ports/nlopt/CONTROL b/ports/nlopt/CONTROL index 81a24bef7dba7d..0cc7666bbe19a4 100644 --- a/ports/nlopt/CONTROL +++ b/ports/nlopt/CONTROL @@ -1,4 +1,4 @@ Source: nlopt -Version: 2.6.1 +Version: 2.6.1-1 Homepage: https://github.com/stevengj/nlopt -Description: a library for nonlinear local and global optimization, for functions with and without gradient information. +Description: a library for nonlinear local and global optimization, for functions with and without gradient information. \ No newline at end of file diff --git a/ports/nlopt/portfile.cmake b/ports/nlopt/portfile.cmake index 301c92e305710e..c5017f4f8ee64f 100644 --- a/ports/nlopt/portfile.cmake +++ b/ports/nlopt/portfile.cmake @@ -13,6 +13,13 @@ vcpkg_from_github( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + OPTIONS + -DNLOPT_FORTRAN=OFF + -DNLOPT_PYTHON=OFF + -DNLOPT_OCTAVE=OFF + -DNLOPT_MATLAB=OFF + -DNLOPT_GUILE=OFF + -DNLOPT_SWIG=OFF ) vcpkg_install_cmake() diff --git a/ports/orc/CONTROL b/ports/orc/CONTROL index 1cb8967ed6a63f..4cb08a81414164 100644 --- a/ports/orc/CONTROL +++ b/ports/orc/CONTROL @@ -1,4 +1,4 @@ Source: orc -Version: 1.5.5 +Version: 1.5.5-1 Build-Depends: zlib, protobuf, lz4, snappy, zstd, gtest Description: The smallest, fastest columnar storage for Hadoop workloads. diff --git a/ports/orc/no-werror.patch b/ports/orc/no-werror.patch new file mode 100644 index 00000000000000..d2572612f0e5bb --- /dev/null +++ b/ports/orc/no-werror.patch @@ -0,0 +1,16 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 4484e373..87b5ed41 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -81,9 +81,9 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + set (WARN_FLAGS "${WARN_FLAGS} -Wno-covered-switch-default") + set (WARN_FLAGS "${WARN_FLAGS} -Wno-missing-noreturn -Wno-unknown-pragmas") + set (WARN_FLAGS "${WARN_FLAGS} -Wno-gnu-zero-variadic-macro-arguments") +- set (WARN_FLAGS "${WARN_FLAGS} -Wconversion -Werror") ++ set (WARN_FLAGS "${WARN_FLAGS} -Wconversion") + elseif (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") +- set (WARN_FLAGS "-Wall -Wno-unknown-pragmas -Wconversion -Werror") ++ set (WARN_FLAGS "-Wall -Wno-unknown-pragmas -Wconversion") + if (CMAKE_CXX_COMPILER_VERSION STREQUAL "" OR + CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.7") + set (CXX11_FLAGS "-std=c++0x") diff --git a/ports/orc/portfile.cmake b/ports/orc/portfile.cmake index e72f9fd6990e2e..f993755e9f4b11 100644 --- a/ports/orc/portfile.cmake +++ b/ports/orc/portfile.cmake @@ -8,7 +8,8 @@ vcpkg_from_github( HEAD_REF master PATCHES 0003-dependencies-from-vcpkg.patch - ) + no-werror.patch +) file(REMOVE "${SOURCE_PATH}/cmake_modules/FindGTest.cmake") file(REMOVE "${SOURCE_PATH}/cmake_modules/FindLZ4.cmake") diff --git a/ports/protobuf/CONTROL b/ports/protobuf/CONTROL index caca652975d2bd..bce258d24b84a7 100644 --- a/ports/protobuf/CONTROL +++ b/ports/protobuf/CONTROL @@ -1,8 +1,8 @@ Source: protobuf -Version: 3.7.1 +Version: 3.8.0 Homepage: https://github.com/google/protobuf Description: Protocol Buffers - Google's data interchange format Feature: zlib Description: ZLib based features like Gzip streams -Build-Depends: zlib +Build-Depends: zlib \ No newline at end of file diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake index 9e0bc15d72daa1..982345db1af19a 100644 --- a/ports/protobuf/portfile.cmake +++ b/ports/protobuf/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/protobuf - REF v3.7.1 - SHA512 7d4cfabd4bd55926336a3baafa0bc1f1f15380b1b2af945f70a2bb3ba24c6ac6567f49c492326d6d1c43a488166bff178f9266377758a05d8541d8b242f4f80f + REF v3.8.0 + SHA512 ba27c64e5193cd4a144bf0c9dc0d195fbbe6e580aaca01960362f0f185074588ca40046d3bcea76e1deae7508b722f6c5be484ea957122ae8e98229c7c3a4ad2 HEAD_REF master PATCHES fix-uwp.patch diff --git a/ports/shogun/CONTROL b/ports/shogun/CONTROL index e57f129febb458..69b7968db84648 100644 --- a/ports/shogun/CONTROL +++ b/ports/shogun/CONTROL @@ -1,4 +1,4 @@ Source: shogun -Version: 6.1.3-3 +Version: 6.1.3-4 Build-Depends: bzip2, eigen3, liblzma, libxml2, openblas (x64&!osx), nlopt, rxcpp, snappy, zlib, protobuf, curl, lzo, dirent Description: Unified and efficient Machine Learning diff --git a/ports/shogun/portfile.cmake b/ports/shogun/portfile.cmake index dfabdf4aa57e1a..1f46e6ba753db3 100644 --- a/ports/shogun/portfile.cmake +++ b/ports/shogun/portfile.cmake @@ -10,7 +10,6 @@ vcpkg_from_github( HEAD_REF master PATCHES cmake.patch - use_proper_cmake_symbol.patch ) file(REMOVE_RECURSE ${SOURCE_PATH}/cmake/external) @@ -23,17 +22,9 @@ else() set(CMAKE_DISABLE_FIND_PACKAGE_BLAS 1) endif() -if(NOT CMAKE_SYSTEM_PROCESSOR) - if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") - set(CMAKE_SYSTEM_PROCESSOR "__x86_64__") - elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") - set(CMAKE_SYSTEM_PROCESSOR "__i386__") - endif() -endif() - vcpkg_find_acquire_program(PYTHON3) get_filename_component(PYTHON3_DIR "${PYTHON3}" DIRECTORY) -set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") +vcpkg_add_to_path(${PYTHON3_DIR}) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} @@ -65,7 +56,6 @@ vcpkg_configure_cmake( -DCMAKE_DISABLE_FIND_PACKAGE_BLAS=${CMAKE_DISABLE_FIND_PACKAGE_BLAS} -DINSTALL_TARGETS=shogun-static - -DCMAKE_SYSTEM_PROCESSOR=${CMAKE_SYSTEM_PROCESSOR} ) vcpkg_install_cmake() diff --git a/ports/shogun/use_proper_cmake_symbol.patch b/ports/shogun/use_proper_cmake_symbol.patch deleted file mode 100644 index 627c5bd77991d9..00000000000000 --- a/ports/shogun/use_proper_cmake_symbol.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 6f97c8b..a10b599 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -145,7 +145,7 @@ ENDIF() - DetectSystemName() - - # Get processor type, sets MACHINE macro --SET(MACHINE ${CMAKE_SYSTEM_PROCESSOR}) -+add_definitions(-DMACHINE=${CMAKE_SYSTEM_PROCESSOR}) - - SET(EXT_LIB_SWIG_RUBY ".so") - if(DARWIN) -@@ -174,7 +174,7 @@ ENDIF() - - IF(CMAKE_COMPILER_IS_GNUCXX) - SET(RELEASE_COMPILER_FLAGS "-fexpensive-optimizations -frerun-cse-after-loop -fcse-follow-jumps -finline-functions -fschedule-insns2 -fthread-jumps -fforce-addr -fstrength-reduce -funroll-loops") -- IF (${MACHINE} MATCHES "x86_64" OR ${MACHINE} MATCHES "i686") -+ IF (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64" OR CMAKE_SYSTEM_PROCESSOR MATCHES "i686") - SET(RELEASE_COMPILER_FLAGS "${RELEASE_COMPILER_FLAGS} -mfpmath=sse") - ENDIF() - ELSEIF(${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang") From 99b39077441c17e2433c8ef0f7970611b039d377 Mon Sep 17 00:00:00 2001 From: Philipp Hasper Date: Tue, 18 Jun 2019 22:37:48 +0200 Subject: [PATCH 057/123] [opencv] Fixed OpenCV versioning using wrong commit (#6812) * [opencv] Fixed OpenCV versioning using wrong commit As there is no OpenCV repository, the hash is wrongly determined Closes #6708 * [opencv] cmake disable find package git --- ports/opencv/portfile.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/ports/opencv/portfile.cmake b/ports/opencv/portfile.cmake index cbbf4918d082b4..55fd6a68041677 100644 --- a/ports/opencv/portfile.cmake +++ b/ports/opencv/portfile.cmake @@ -285,6 +285,7 @@ vcpkg_configure_cmake( -DPROTOBUF_UPDATE_FILES=${PROTOBUF_UPDATE_FILES} -DUPDATE_PROTO_FILES=${UPDATE_PROTO_FILES} # CMAKE + -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON -DCMAKE_DISABLE_FIND_PACKAGE_JNI=ON "-DCMAKE_MODULE_PATH=${CMAKE_MODULE_PATH}" # ENABLE From bba0b6b98d2cfbb9efb49d64e1a5a5a7eff23f1d Mon Sep 17 00:00:00 2001 From: Stijn Herfst Date: Wed, 19 Jun 2019 01:27:42 +0200 Subject: [PATCH 058/123] [casclib] Add new port (#6744) * [casclib] Add new port --- ports/casclib/CMakeLists.txt | 74 +++++++++++++++++++++++++++++++ ports/casclib/CONTROL | 4 ++ ports/casclib/ctype_for_mac.patch | 27 +++++++++++ ports/casclib/portfile.cmake | 23 ++++++++++ 4 files changed, 128 insertions(+) create mode 100644 ports/casclib/CMakeLists.txt create mode 100644 ports/casclib/CONTROL create mode 100644 ports/casclib/ctype_for_mac.patch create mode 100644 ports/casclib/portfile.cmake diff --git a/ports/casclib/CMakeLists.txt b/ports/casclib/CMakeLists.txt new file mode 100644 index 00000000000000..4165814f56042d --- /dev/null +++ b/ports/casclib/CMakeLists.txt @@ -0,0 +1,74 @@ +cmake_minimum_required(VERSION 3.9) +project(CascLib) + +set(HEADER_FILES + src/CascCommon.h + src/CascLib.h + src/CascLib.def + src/CascPort.h + src/common/Array.h + src/common/Common.h + src/common/Csv.h + src/common/FileStream.h + src/common/FileTree.h + src/common/ListFile.h + src/common/Map.h + src/jenkins/lookup.h +) + +set(SRC_FILES + src/CascCommon.cpp + src/CascDecompress.cpp + src/CascDecrypt.cpp + src/CascDumpData.cpp + src/CascFiles.cpp + src/CascFindFile.cpp + src/CascIndexFiles.cpp + src/CascOpenFile.cpp + src/CascOpenStorage.cpp + src/CascReadFile.cpp + src/CascRootFile_Diablo3.cpp + src/CascRootFile_Install.cpp + src/CascRootFile_MNDX.cpp + src/CascRootFile_OW.cpp + src/CascRootFile_Text.cpp + src/CascRootFile_TVFS.cpp + src/CascRootFile_WoW.cpp + src/common/Common.cpp + src/common/Csv.cpp + src/common/Directory.cpp + src/common/FileStream.cpp + src/common/FileTree.cpp + src/common/ListFile.cpp + src/common/RootHandler.cpp + src/jenkins/lookup3.c +) + +set(MD5_FILES + src/md5/md5.cpp +) + +set(ZLIB_FILES + src/zlib/adler32.c + src/zlib/crc32.c + src/zlib/inffast.c + src/zlib/inflate.c + src/zlib/inftrees.c + src/zlib/zutil.c +) + +if(WIN32) + add_definitions(-DUNICODE -D_UNICODE) +endif() + +add_library(CascLib ${SRC_FILES} ${HEADER_FILES} ${TOMCRYPT_FILES} ${ZLIB_FILES} ${MD5_FILES}) + +set_target_properties(CascLib PROPERTIES PUBLIC_HEADER "src/CascLib.h;src/CascPort.h") + +install(TARGETS CascLib + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib + FRAMEWORK DESTINATION /Library/Frameworks + PUBLIC_HEADER DESTINATION include + INCLUDES DESTINATION include) \ No newline at end of file diff --git a/ports/casclib/CONTROL b/ports/casclib/CONTROL new file mode 100644 index 00000000000000..a9a10ac9bfcfd2 --- /dev/null +++ b/ports/casclib/CONTROL @@ -0,0 +1,4 @@ +Source: casclib +Version: 1.50 +Build-Depends: zlib +Description: An open-source implementation of library for reading CASC storage from Blizzard games since 2014 \ No newline at end of file diff --git a/ports/casclib/ctype_for_mac.patch b/ports/casclib/ctype_for_mac.patch new file mode 100644 index 00000000000000..30f790c1f9b603 --- /dev/null +++ b/ports/casclib/ctype_for_mac.patch @@ -0,0 +1,27 @@ +diff --git a/src/CascPort.h b/src/CascPort.h +index 87a2f2f..da74aef 100644 +--- a/src/CascPort.h ++++ b/src/CascPort.h +@@ -79,14 +79,19 @@ + #include + #include + #include +- #include + #include +- #include + #include +- #include ++ #include + #include ++ #include ++ #include ++ #include ++ #include + #include ++ #include ++ #include + #include ++ #include + + // Support for PowerPC on Max OS X + #if (__ppc__ == 1) || (__POWERPC__ == 1) || (_ARCH_PPC == 1) diff --git a/ports/casclib/portfile.cmake b/ports/casclib/portfile.cmake new file mode 100644 index 00000000000000..bf17bc545189b6 --- /dev/null +++ b/ports/casclib/portfile.cmake @@ -0,0 +1,23 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO ladislav-zezula/CascLib + REF 1.50 + SHA512 7e95e314f09e504566e6fa2b1742f986d17526fb0283af8ffb77681338c9a852d369cbd863512a20ddd3a277d10a9bf701d745f500a717826dd08e201eb6d80e + HEAD_REF master + PATCHES + ctype_for_mac.patch +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/casclib RENAME copyright) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) \ No newline at end of file From df0b8d9e55bfb6772a9e5c02fd826ab520e5d2f8 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Wed, 19 Jun 2019 10:47:09 -0700 Subject: [PATCH 059/123] [vcpkg] update python3 to 3.7.3 on windows (#6383) * [vcpkg] update python3 to 3.7.3 on windows * Update scripts/cmake/vcpkg_find_acquire_program.cmake Co-Authored-By: Bradley Austin Davis --- scripts/cmake/vcpkg_find_acquire_program.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index 4a77b4b8e77c91..451f4bcd3ebc2d 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -79,9 +79,9 @@ function(vcpkg_find_acquire_program VAR) set(PROGNAME python) set(SUBDIR "python3") set(PATHS ${DOWNLOADS}/tools/python/${SUBDIR}) - set(URL "https://www.python.org/ftp/python/3.5.4/python-3.5.4-embed-win32.zip") - set(ARCHIVE "python-3.5.4-embed-win32.zip") - set(HASH b5240fdc95088c2d7f65d2dd598650f8dd106b49589d94156bd4a078b108c6cabbe7a38ef73e2b2cf00e8312a93d2e587eac2c54ce85540d3c7a26cc60013156) + set(URL "https://www.python.org/ftp/python/3.7.3/python-3.7.3-embed-win32.zip") + set(ARCHIVE "python-3.7.3-embed-win32.zip") + set(HASH 2c1b1f0a29d40a91771ae21a5f733eedc10984cd182cb10c2793bbd24191a89f20612a3f23c34047f37fb06369016bfd4a52915ed1b4a56f8bd2b4ca6994eb31) else() set(PROGNAME python3) set(BREW_PACKAGE_NAME "python") From e5b92a39116791cfd4e1f4931221c9f69125bae3 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 19 Jun 2019 11:49:57 -0700 Subject: [PATCH 060/123] [vcpkg] Improve vcpkg::Files::Filesystem error handling (#6919) * [vcpkg] Modify Filesystem::remove and Filesystem::rename to not throw. * [.gitignore] Ignore new VS2019 CMake integration default location * [.gitignore] Ignore CMakeSettings.json in toolsrc * [vcpkg] Time external processes called with System::cmd_execute * [vcpkg] Work around VS2019 CMake bug * [vcpkg] Fix several unused variable warnings. * [vcpkg] Improve error handling in vcpkg::Files::Filesystem Always require either std::error_code or LineInfo to print better errors. * [vcpkg] Fixup missing return value. Drive by fix: silence warnings in tests. * [vcpkg] Fix exiting in error_code overload Drive by fixes for /analyze with VS2019 --- .gitignore | 3 ++ toolsrc/CMakeLists.txt | 2 +- toolsrc/include/tests.utils.h | 8 ++-- toolsrc/include/vcpkg/base/files.h | 14 +++--- toolsrc/include/vcpkg/base/graphs.h | 4 +- toolsrc/include/vcpkg/base/optional.h | 23 +++++++-- toolsrc/include/vcpkg/base/strings.h | 2 +- toolsrc/src/vcpkg/base/downloads.cpp | 16 ++----- toolsrc/src/vcpkg/base/files.cpp | 61 +++++++++++++++++++----- toolsrc/src/vcpkg/base/strings.cpp | 2 +- toolsrc/src/vcpkg/base/system.cpp | 13 ++++- toolsrc/src/vcpkg/build.cpp | 24 +++++----- toolsrc/src/vcpkg/commands.ci.cpp | 4 +- toolsrc/src/vcpkg/commands.exportifw.cpp | 24 ++++++---- toolsrc/src/vcpkg/commands.import.cpp | 2 +- toolsrc/src/vcpkg/commands.integrate.cpp | 22 ++++----- toolsrc/src/vcpkg/dependencies.cpp | 11 +++-- toolsrc/src/vcpkg/export.cpp | 4 +- toolsrc/src/vcpkg/help.cpp | 2 +- toolsrc/src/vcpkg/install.cpp | 15 ++++-- toolsrc/src/vcpkg/remove.cpp | 2 +- toolsrc/src/vcpkg/tools.cpp | 6 ++- toolsrc/src/vcpkg/update.cpp | 2 +- toolsrc/src/vcpkg/vcpkglib.cpp | 16 +++---- 24 files changed, 181 insertions(+), 101 deletions(-) diff --git a/.gitignore b/.gitignore index d0e202f1d77e7b..f38bc90a9b8dee 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,9 @@ *.userosscache *.sln.docstates +toolsrc/out +toolsrc/CMakeSettings.json + # User-specific files (MonoDevelop/Xamarin Studio) *.userprefs diff --git a/toolsrc/CMakeLists.txt b/toolsrc/CMakeLists.txt index b3ec4d15de4357..fccf2b7adde0fd 100644 --- a/toolsrc/CMakeLists.txt +++ b/toolsrc/CMakeLists.txt @@ -20,7 +20,7 @@ If you would like to try anyway, pass --allowAppleClang to bootstrap.sh.") elseif(CMAKE_CXX_COMPILER_ID MATCHES "[Cc]lang") set(CLANG 1) elseif(MSVC) - add_compile_options(/std:c++17) + add_compile_options(/std:c++17 /FC) else() message(FATAL_ERROR "Unknown compiler: ${CMAKE_CXX_COMPILER_ID}") endif() diff --git a/toolsrc/include/tests.utils.h b/toolsrc/include/tests.utils.h index 7f7ec9e8849102..3e8514e6703b9b 100644 --- a/toolsrc/include/tests.utils.h +++ b/toolsrc/include/tests.utils.h @@ -13,7 +13,7 @@ namespace Microsoft::VisualStudio::CppUnitTestFramework { template<> - std::wstring ToString(const vcpkg::Dependencies::InstallPlanType& t) + inline std::wstring ToString(const vcpkg::Dependencies::InstallPlanType& t) { switch (t) { @@ -26,7 +26,7 @@ namespace Microsoft::VisualStudio::CppUnitTestFramework } template<> - std::wstring ToString(const vcpkg::Dependencies::RequestType& t) + inline std::wstring ToString(const vcpkg::Dependencies::RequestType& t) { switch (t) { @@ -38,13 +38,13 @@ namespace Microsoft::VisualStudio::CppUnitTestFramework } template<> - std::wstring ToString(const vcpkg::PackageSpecParseResult& t) + inline std::wstring ToString(const vcpkg::PackageSpecParseResult& t) { return ToString(static_cast(t)); } template<> - std::wstring ToString(const vcpkg::PackageSpec& t) + inline std::wstring ToString(const vcpkg::PackageSpec& t) { return ToString(t.to_string()); } diff --git a/toolsrc/include/vcpkg/base/files.h b/toolsrc/include/vcpkg/base/files.h index b07ff25b3c4964..02e2b8db8fc023 100644 --- a/toolsrc/include/vcpkg/base/files.h +++ b/toolsrc/include/vcpkg/base/files.h @@ -27,21 +27,25 @@ namespace vcpkg::Files { struct Filesystem { + std::string read_contents(const fs::path& file_path, LineInfo linfo) const; virtual Expected read_contents(const fs::path& file_path) const = 0; virtual Expected> read_lines(const fs::path& file_path) const = 0; virtual fs::path find_file_recursively_up(const fs::path& starting_dir, const std::string& filename) const = 0; virtual std::vector get_files_recursive(const fs::path& dir) const = 0; virtual std::vector get_files_non_recursive(const fs::path& dir) const = 0; - - virtual void write_lines(const fs::path& file_path, const std::vector& lines) = 0; + void write_lines(const fs::path& file_path, const std::vector& lines, LineInfo linfo); + virtual void write_lines(const fs::path& file_path, + const std::vector& lines, + std::error_code& ec) = 0; + void write_contents(const fs::path& path, const std::string& data, LineInfo linfo); virtual void write_contents(const fs::path& file_path, const std::string& data, std::error_code& ec) = 0; - virtual void rename(const fs::path& oldpath, const fs::path& newpath) = 0; + void rename(const fs::path& oldpath, const fs::path& newpath, LineInfo linfo); virtual void rename(const fs::path& oldpath, const fs::path& newpath, std::error_code& ec) = 0; virtual void rename_or_copy(const fs::path& oldpath, const fs::path& newpath, StringLiteral temp_suffix, std::error_code& ec) = 0; - virtual bool remove(const fs::path& path) = 0; + bool remove(const fs::path& path, LineInfo linfo); virtual bool remove(const fs::path& path, std::error_code& ec) = 0; virtual std::uintmax_t remove_all(const fs::path& path, std::error_code& ec) = 0; virtual bool exists(const fs::path& path) const = 0; @@ -60,8 +64,6 @@ namespace vcpkg::Files virtual fs::file_status symlink_status(const fs::path& path, std::error_code& ec) const = 0; virtual std::vector find_from_PATH(const std::string& name) const = 0; - - void write_contents(const fs::path& file_path, const std::string& data); }; Filesystem& get_real_filesystem(); diff --git a/toolsrc/include/vcpkg/base/graphs.h b/toolsrc/include/vcpkg/base/graphs.h index 46831a911a2ad1..9901a49a0be3c6 100644 --- a/toolsrc/include/vcpkg/base/graphs.h +++ b/toolsrc/include/vcpkg/base/graphs.h @@ -44,9 +44,9 @@ namespace vcpkg::Graphs void shuffle(Container& c, Randomizer* r) { if (!r) return; - for (int i = static_cast(c.size()); i > 1; --i) + for (auto i = c.size(); i > 1; --i) { - auto j = r->random(i); + auto j = r->random(static_cast(i)); if (j != i - 1) { std::swap(c[i - 1], c[j]); diff --git a/toolsrc/include/vcpkg/base/optional.h b/toolsrc/include/vcpkg/base/optional.h index 4d386a961afc85..2d8c126c69cb3f 100644 --- a/toolsrc/include/vcpkg/base/optional.h +++ b/toolsrc/include/vcpkg/base/optional.h @@ -19,6 +19,9 @@ namespace vcpkg template::value> struct OptionalStorage { +#if defined(_WIN32) +#pragma warning(suppress : 26495) +#endif constexpr OptionalStorage() noexcept : m_is_present(false), m_inactive() {} constexpr OptionalStorage(const T& t) : m_is_present(true), m_t(t) {} constexpr OptionalStorage(T&& t) : m_is_present(true), m_t(std::move(t)) {} @@ -28,12 +31,18 @@ namespace vcpkg if (m_is_present) m_t.~T(); } +#if defined(_WIN32) +#pragma warning(suppress : 26495) +#endif OptionalStorage(const OptionalStorage& o) : m_is_present(o.m_is_present), m_inactive() { if (m_is_present) new (&m_t) T(o.m_t); } - OptionalStorage(OptionalStorage&& o) : m_is_present(o.m_is_present), m_inactive() +#if defined(_WIN32) +#pragma warning(suppress : 26495) +#endif + OptionalStorage(OptionalStorage&& o) noexcept : m_is_present(o.m_is_present), m_inactive() { if (m_is_present) { @@ -59,7 +68,7 @@ namespace vcpkg return *this; } - OptionalStorage& operator=(OptionalStorage&& o) + OptionalStorage& operator=(OptionalStorage&& o) noexcept { if (m_is_present && o.m_is_present) { @@ -100,6 +109,9 @@ namespace vcpkg template struct OptionalStorage { +#if defined(_WIN32) +#pragma warning(suppress : 26495) +#endif constexpr OptionalStorage() noexcept : m_is_present(false), m_inactive() {} constexpr OptionalStorage(T&& t) : m_is_present(true), m_t(std::move(t)) {} @@ -108,7 +120,10 @@ namespace vcpkg if (m_is_present) m_t.~T(); } - OptionalStorage(OptionalStorage&& o) : m_is_present(o.m_is_present), m_inactive() +#if defined(_WIN32) +#pragma warning(suppress : 26495) +#endif + OptionalStorage(OptionalStorage&& o) noexcept : m_is_present(o.m_is_present), m_inactive() { if (m_is_present) { @@ -116,7 +131,7 @@ namespace vcpkg } } - OptionalStorage& operator=(OptionalStorage&& o) + OptionalStorage& operator=(OptionalStorage&& o) noexcept { if (m_is_present && o.m_is_present) { diff --git a/toolsrc/include/vcpkg/base/strings.h b/toolsrc/include/vcpkg/base/strings.h index 3a9de97df850af..d553d1d4177730 100644 --- a/toolsrc/include/vcpkg/base/strings.h +++ b/toolsrc/include/vcpkg/base/strings.h @@ -163,7 +163,7 @@ namespace vcpkg::Strings std::vector split(const std::string& s, const std::string& delimiter); - std::vector split(const std::string& s, const std::string& delimiter, int max_count); + std::vector split(const std::string& s, const std::string& delimiter, size_t max_count); std::vector find_all_enclosed(StringView input, StringView left_delim, StringView right_delim); diff --git a/toolsrc/src/vcpkg/base/downloads.cpp b/toolsrc/src/vcpkg/base/downloads.cpp index 218ff86b3d7e8c..4bb2178e5f3738 100644 --- a/toolsrc/src/vcpkg/base/downloads.cpp +++ b/toolsrc/src/vcpkg/base/downloads.cpp @@ -105,7 +105,7 @@ namespace vcpkg::Downloads bResults = WinHttpQueryDataAvailable(hRequest, &dwSize); Checks::check_exit(VCPKG_LINE_INFO, bResults, "WinHttpQueryDataAvailable() failed: %d", GetLastError()); - if (buf.size() < dwSize) buf.resize(dwSize * 2); + if (buf.size() < dwSize) buf.resize(static_cast(dwSize) * 2); bResults = WinHttpReadData(hRequest, (LPVOID)buf.data(), dwSize, &downloaded_size); Checks::check_exit(VCPKG_LINE_INFO, bResults, "WinHttpReadData() failed: %d", GetLastError()); @@ -157,9 +157,10 @@ namespace vcpkg::Downloads const std::string& sha512) { const std::string download_path_part = download_path.u8string() + ".part"; + auto download_path_part_path = fs::u8path(download_path_part); std::error_code ec; fs.remove(download_path, ec); - fs.remove(download_path_part, ec); + fs.remove(download_path_part_path, ec); #if defined(_WIN32) auto url_no_proto = url.substr(8); // drop https:// auto path_begin = Util::find(url_no_proto, '/'); @@ -173,14 +174,7 @@ namespace vcpkg::Downloads Checks::check_exit(VCPKG_LINE_INFO, code == 0, "Could not download %s", url); #endif - verify_downloaded_file_hash(fs, url, download_path_part, sha512); - fs.rename(download_path_part, download_path, ec); - Checks::check_exit(VCPKG_LINE_INFO, - !ec, - "Failed to do post-download rename-in-place.\n" - "fs.rename(%s, %s, %s)", - download_path_part, - download_path.u8string(), - ec.message()); + verify_downloaded_file_hash(fs, url, download_path_part_path, sha512); + fs.rename(download_path_part_path, download_path, VCPKG_LINE_INFO); } } diff --git a/toolsrc/src/vcpkg/base/files.cpp b/toolsrc/src/vcpkg/base/files.cpp index 0396a2415501cb..5099795e9ea426 100644 --- a/toolsrc/src/vcpkg/base/files.cpp +++ b/toolsrc/src/vcpkg/base/files.cpp @@ -24,12 +24,43 @@ namespace vcpkg::Files { static const std::regex FILESYSTEM_INVALID_CHARACTERS_REGEX = std::regex(R"([\/:*?"<>|])"); - void Filesystem::write_contents(const fs::path& file_path, const std::string& data) + std::string Filesystem::read_contents(const fs::path& path, LineInfo linfo) const + { + auto maybe_contents = this->read_contents(path); + if (auto p = maybe_contents.get()) + return std::move(*p); + else + Checks::exit_with_message( + linfo, "error reading file: %s: %s", path.u8string(), maybe_contents.error().message()); + } + void Filesystem::write_contents(const fs::path& path, const std::string& data, LineInfo linfo) + { + std::error_code ec; + this->write_contents(path, data, ec); + if (ec) Checks::exit_with_message(linfo, "error writing file: %s: %s", path.u8string(), ec.message()); + } + void Filesystem::rename(const fs::path& oldpath, const fs::path& newpath, LineInfo linfo) + { + std::error_code ec; + this->rename(oldpath, newpath, ec); + if (ec) + Checks::exit_with_message( + linfo, "error renaming file: %s: %s: %s", oldpath.u8string(), newpath.u8string(), ec.message()); + } + + bool Filesystem::remove(const fs::path& path, LineInfo linfo) { std::error_code ec; - write_contents(file_path, data, ec); - Checks::check_exit( - VCPKG_LINE_INFO, !ec, "error while writing file: %s: %s", file_path.u8string(), ec.message()); + auto r = this->remove(path, ec); + if (ec) Checks::exit_with_message(linfo, "error removing file: %s: %s", path.u8string(), ec.message()); + return r; + } + + void Filesystem::write_lines(const fs::path& path, const std::vector& lines, LineInfo linfo) + { + std::error_code ec; + this->write_lines(path, lines, ec); + if (ec) Checks::exit_with_message(linfo, "error writing lines: %s: %s", path.u8string(), ec.message()); } struct RealFilesystem final : Filesystem @@ -147,30 +178,39 @@ namespace vcpkg::Files return ret; } - virtual void write_lines(const fs::path& file_path, const std::vector& lines) override + virtual void write_lines(const fs::path& file_path, + const std::vector& lines, + std::error_code& ec) override { std::fstream output(file_path, std::ios_base::out | std::ios_base::binary | std::ios_base::trunc); + if (!output) + { + ec.assign(errno, std::generic_category()); + return; + } for (const std::string& line : lines) { output << line << "\n"; + if (!output) + { + output.close(); + ec.assign(errno, std::generic_category()); + return; + } } output.close(); } - virtual void rename(const fs::path& oldpath, const fs::path& newpath, std::error_code& ec) override { fs::stdfs::rename(oldpath, newpath, ec); } - virtual void rename(const fs::path& oldpath, const fs::path& newpath) override - { - fs::stdfs::rename(oldpath, newpath); - } virtual void rename_or_copy(const fs::path& oldpath, const fs::path& newpath, StringLiteral temp_suffix, std::error_code& ec) override { this->rename(oldpath, newpath, ec); + Util::unused(temp_suffix); #if defined(__linux__) || defined(__APPLE__) if (ec) { @@ -213,7 +253,6 @@ namespace vcpkg::Files } #endif } - virtual bool remove(const fs::path& path) override { return fs::stdfs::remove(path); } virtual bool remove(const fs::path& path, std::error_code& ec) override { return fs::stdfs::remove(path, ec); } virtual std::uintmax_t remove_all(const fs::path& path, std::error_code& ec) override { diff --git a/toolsrc/src/vcpkg/base/strings.cpp b/toolsrc/src/vcpkg/base/strings.cpp index ce634a227093de..54a74a7a16e0c2 100644 --- a/toolsrc/src/vcpkg/base/strings.cpp +++ b/toolsrc/src/vcpkg/base/strings.cpp @@ -185,7 +185,7 @@ std::vector Strings::split(const std::string& s, const std::string& return output; } -std::vector Strings::split(const std::string& s, const std::string& delimiter, int max_count) +std::vector Strings::split(const std::string& s, const std::string& delimiter, size_t max_count) { std::vector output; diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index 3d89d2fd4bff27..c5ff050f0e635f 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -388,6 +388,7 @@ namespace vcpkg // Flush stdout before launching external process fflush(nullptr); + auto timer = Chrono::ElapsedTimer::create_started(); #if defined(_WIN32) // We are wrap the command line in quotes to cause cmd.exe to correctly process it auto actual_cmd_line = Strings::concat('"', cmd_line, '"'); @@ -395,11 +396,19 @@ namespace vcpkg g_ctrl_c_state.transition_to_spawn_process(); const int exit_code = _wsystem(Strings::to_utf16(actual_cmd_line).c_str()); g_ctrl_c_state.transition_from_spawn_process(); - Debug::print("_wsystem() returned ", exit_code, '\n'); + Debug::print("_wsystem() returned ", + exit_code, + " after ", + Strings::format("%8d", static_cast(timer.microseconds())), + " us\n"); #else Debug::print("_system(", cmd_line, ")\n"); const int exit_code = system(cmd_line.c_str()); - Debug::print("_system() returned ", exit_code, '\n'); + Debug::print("_system() returned ", + exit_code, + " after ", + Strings::format("%8d", static_cast(timer.microseconds())), + " us\n"); #endif return exit_code; } diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 0a7c854b5a8465..daff7e6c8f1716 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -280,7 +280,7 @@ namespace vcpkg::Build start += "\n" + Strings::serialize(feature); } const fs::path binary_control_file = paths.packages / bcf.core_paragraph.dir() / "CONTROL"; - paths.get_filesystem().write_contents(binary_control_file, start); + paths.get_filesystem().write_contents(binary_control_file, start, VCPKG_LINE_INFO); } static std::vector compute_required_feature_specs(const BuildPackageConfig& config, @@ -336,16 +336,16 @@ namespace vcpkg::Build static int get_concurrency() { - static int concurrency = []{ - auto user_defined_concurrency = System::get_environment_variable("VCPKG_MAX_CONCURRENCY"); - if (user_defined_concurrency) - { - return std::stoi(user_defined_concurrency.value_or_exit(VCPKG_LINE_INFO)); - } - else - { - return System::get_num_logical_cores() + 1; - } + static int concurrency = [] { + auto user_defined_concurrency = System::get_environment_variable("VCPKG_MAX_CONCURRENCY"); + if (user_defined_concurrency) + { + return std::stoi(user_defined_concurrency.value_or_exit(VCPKG_LINE_INFO)); + } + else + { + return System::get_num_logical_cores() + 1; + } }(); return concurrency; @@ -565,7 +565,7 @@ namespace vcpkg::Build std::error_code ec; fs.create_directories(paths.buildtrees / name, ec); const auto abi_file_path = paths.buildtrees / name / (triplet.canonical_name() + ".vcpkg_abi_info.txt"); - fs.write_contents(abi_file_path, full_abi_info); + fs.write_contents(abi_file_path, full_abi_info, VCPKG_LINE_INFO); return AbiTagAndFile{Hash::get_file_hash(fs, abi_file_path, "SHA1"), abi_file_path}; } diff --git a/toolsrc/src/vcpkg/commands.ci.cpp b/toolsrc/src/vcpkg/commands.ci.cpp index ff7e7a1342833d..de66d917b31123 100644 --- a/toolsrc/src/vcpkg/commands.ci.cpp +++ b/toolsrc/src/vcpkg/commands.ci.cpp @@ -485,11 +485,11 @@ namespace vcpkg::Commands::CI System::print2("Total elapsed time: ", result.summary.total_elapsed_time, "\n"); result.summary.print(); } - + auto& fs = paths.get_filesystem(); auto it_xunit = options.settings.find(OPTION_XUNIT); if (it_xunit != options.settings.end()) { - paths.get_filesystem().write_contents(fs::u8path(it_xunit->second), xunitTestResults.build_xml()); + fs.write_contents(fs::u8path(it_xunit->second), xunitTestResults.build_xml(), VCPKG_LINE_INFO); } Checks::exit_success(VCPKG_LINE_INFO); diff --git a/toolsrc/src/vcpkg/commands.exportifw.cpp b/toolsrc/src/vcpkg/commands.exportifw.cpp index ba9e28233bbc6c..f0946110c28f1f 100644 --- a/toolsrc/src/vcpkg/commands.exportifw.cpp +++ b/toolsrc/src/vcpkg/commands.exportifw.cpp @@ -106,7 +106,8 @@ namespace vcpkg::Export::IFW create_release_date(), action.spec.name(), action.spec.triplet().canonical_name(), - deps)); + deps), + VCPKG_LINE_INFO); // Return dir path for export package data return ifw_packages_dir_path / @@ -138,7 +139,8 @@ namespace vcpkg::Export::IFW %s )###", - create_release_date())); + create_release_date()), + VCPKG_LINE_INFO); for (const auto& unique_package : unique_packages) { @@ -167,7 +169,8 @@ namespace vcpkg::Export::IFW action.spec.name(), safe_rich_from_plain_text(binary_paragraph.description), binary_paragraph.version, - create_release_date())); + create_release_date()), + VCPKG_LINE_INFO); } } @@ -195,7 +198,8 @@ namespace vcpkg::Export::IFW %s )###", - create_release_date())); + create_release_date()), + VCPKG_LINE_INFO); for (const std::string& triplet : unique_triplets) { @@ -217,7 +221,8 @@ namespace vcpkg::Export::IFW )###", triplet, - create_release_date())); + create_release_date()), + VCPKG_LINE_INFO); } } @@ -243,7 +248,8 @@ namespace vcpkg::Export::IFW %s )###", - create_release_date())); + create_release_date()), + VCPKG_LINE_INFO); } void export_config(const std::string& export_id, const Options& ifw_options, const VcpkgPaths& paths) @@ -283,7 +289,8 @@ namespace vcpkg::Export::IFW @RootDir@/src/vcpkg%s )###", - formatted_repo_url)); + formatted_repo_url), + VCPKG_LINE_INFO); } void export_maintenance_tool(const fs::path& ifw_packages_dir_path, const VcpkgPaths& paths) @@ -325,7 +332,8 @@ namespace vcpkg::Export::IFW true )###", - create_release_date())); + create_release_date()), + VCPKG_LINE_INFO); const fs::path script_source = paths.root / "scripts" / "ifw" / "maintenance.qs"; const fs::path script_destination = ifw_packages_dir_path / "maintenance" / "meta" / "maintenance.qs"; fs.copy_file(script_source, script_destination, fs::copy_options::overwrite_existing, ec); diff --git a/toolsrc/src/vcpkg/commands.import.cpp b/toolsrc/src/vcpkg/commands.import.cpp index f03140fbdd71ea..40f5a434c4b2b6 100644 --- a/toolsrc/src/vcpkg/commands.import.cpp +++ b/toolsrc/src/vcpkg/commands.import.cpp @@ -89,7 +89,7 @@ namespace vcpkg::Commands::Import place_library_files_in(paths.get_filesystem(), include_directory, project_directory, library_destination_path); const fs::path control_file_path = library_destination_path / "CONTROL"; - fs.write_contents(control_file_path, Strings::serialize(control_file_data)); + fs.write_contents(control_file_path, Strings::serialize(control_file_data), VCPKG_LINE_INFO); } const CommandStructure COMMAND_STRUCTURE = { diff --git a/toolsrc/src/vcpkg/commands.integrate.cpp b/toolsrc/src/vcpkg/commands.integrate.cpp index ef555a8440a0e8..6921a53906a859 100644 --- a/toolsrc/src/vcpkg/commands.integrate.cpp +++ b/toolsrc/src/vcpkg/commands.integrate.cpp @@ -209,7 +209,7 @@ namespace vcpkg::Commands::Integrate if (should_install_system) { const fs::path sys_src_path = tmp_dir / "vcpkg.system.targets"; - fs.write_contents(sys_src_path, create_system_targets_shortcut()); + fs.write_contents(sys_src_path, create_system_targets_shortcut(), VCPKG_LINE_INFO); const std::string param = Strings::format(R"(/c mkdir "%s" & copy "%s" "%s" /Y > nul)", SYSTEM_WIDE_TARGETS_FILE.parent_path().string(), @@ -248,7 +248,8 @@ namespace vcpkg::Commands::Integrate const fs::path appdata_src_path = tmp_dir / "vcpkg.user.targets"; fs.write_contents(appdata_src_path, - create_appdata_targets_shortcut(paths.buildsystems_msbuild_targets.u8string())); + create_appdata_targets_shortcut(paths.buildsystems_msbuild_targets.u8string()), + VCPKG_LINE_INFO); auto appdata_dst_path = get_appdata_targets_path(); const auto rc = fs.copy_file(appdata_src_path, appdata_dst_path, fs::copy_options::overwrite_existing, ec); @@ -268,12 +269,7 @@ namespace vcpkg::Commands::Integrate const auto pathtxt = get_path_txt_path(); std::error_code ec; - fs.write_contents(pathtxt, paths.root.generic_u8string(), ec); - if (ec) - { - System::print2(System::Color::error, "Error: Failed to write file: ", pathtxt.u8string(), "\n"); - Checks::exit_fail(VCPKG_LINE_INFO); - } + fs.write_contents(pathtxt, paths.root.generic_u8string(), VCPKG_LINE_INFO); System::print2(System::Color::success, "Applied user-wide integration for this vcpkg root.\n"); const fs::path cmake_toolchain = paths.buildsystems / "vcpkg.cmake"; @@ -344,9 +340,11 @@ CMake projects should use: "-DCMAKE_TOOLCHAIN_FILE=%s" const std::string nuget_id = get_nuget_id(paths.root); const std::string nupkg_version = "1.0.0"; - fs.write_contents(targets_file_path, create_nuget_targets_file_contents(paths.buildsystems_msbuild_targets)); - fs.write_contents(props_file_path, create_nuget_props_file_contents()); - fs.write_contents(nuspec_file_path, create_nuspec_file_contents(paths.root, nuget_id, nupkg_version)); + fs.write_contents( + targets_file_path, create_nuget_targets_file_contents(paths.buildsystems_msbuild_targets), VCPKG_LINE_INFO); + fs.write_contents(props_file_path, create_nuget_props_file_contents(), VCPKG_LINE_INFO); + fs.write_contents( + nuspec_file_path, create_nuspec_file_contents(paths.root, nuget_id, nupkg_version), VCPKG_LINE_INFO); // Using all forward slashes for the command line const std::string cmd_line = Strings::format(R"("%s" pack -OutputDirectory "%s" "%s" > nul)", @@ -449,7 +447,7 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console System::printf("Adding vcpkg completion entry to %s\n", bashrc_path.u8string()); bashrc_content.push_back(Strings::format("source %s", completion_script_path.u8string())); - fs.write_contents(bashrc_path, Strings::join("\n", bashrc_content) + '\n'); + fs.write_contents(bashrc_path, Strings::join("\n", bashrc_content) + '\n', VCPKG_LINE_INFO); Checks::exit_success(VCPKG_LINE_INFO); } #endif diff --git a/toolsrc/src/vcpkg/dependencies.cpp b/toolsrc/src/vcpkg/dependencies.cpp index 8fde2892914534..f4a05e7dc94cda 100644 --- a/toolsrc/src/vcpkg/dependencies.cpp +++ b/toolsrc/src/vcpkg/dependencies.cpp @@ -488,11 +488,12 @@ namespace vcpkg::Dependencies if (plus) return MarkPlusResult::SUCCESS; plus = true; - auto p_source = cluster.source.get(); - Checks::check_exit(VCPKG_LINE_INFO, - p_source != nullptr, - "Error: Cannot find definition for package `%s`.", - cluster.spec.name()); + const auto p_source = cluster.source.get(); + if (p_source == nullptr) + { + Checks::exit_with_message( + VCPKG_LINE_INFO, "Error: Cannot find definition for package `%s`.", cluster.spec.name()); + } if (feature.empty()) { diff --git a/toolsrc/src/vcpkg/export.cpp b/toolsrc/src/vcpkg/export.cpp index 433d7a1afb6288..23fc7441a62d2c 100644 --- a/toolsrc/src/vcpkg/export.cpp +++ b/toolsrc/src/vcpkg/export.cpp @@ -141,12 +141,12 @@ namespace vcpkg::Export std::error_code ec; fs.create_directories(paths.buildsystems / "tmp", ec); - fs.write_contents(targets_redirect, targets_redirect_content); + fs.write_contents(targets_redirect, targets_redirect_content, VCPKG_LINE_INFO); const std::string nuspec_file_content = create_nuspec_file_contents(raw_exported_dir.string(), targets_redirect.string(), nuget_id, nuget_version); const fs::path nuspec_file_path = paths.buildsystems / "tmp" / "vcpkg.export.nuspec"; - fs.write_contents(nuspec_file_path, nuspec_file_content); + fs.write_contents(nuspec_file_path, nuspec_file_content, VCPKG_LINE_INFO); // -NoDefaultExcludes is needed for ".vcpkg-root" const auto cmd_line = Strings::format(R"("%s" pack -OutputDirectory "%s" "%s" -NoDefaultExcludes > nul)", diff --git a/toolsrc/src/vcpkg/help.cpp b/toolsrc/src/vcpkg/help.cpp index 84a054e0f1872d..b92e9ca59c5c01 100644 --- a/toolsrc/src/vcpkg/help.cpp +++ b/toolsrc/src/vcpkg/help.cpp @@ -137,7 +137,7 @@ namespace vcpkg::Help void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); if (args.command_arguments.empty()) { diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index adab4249fdff6f..88b15fe7a21e85 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -138,7 +138,7 @@ namespace vcpkg::Install std::sort(output.begin(), output.end()); - fs.write_lines(listfile, output); + fs.write_lines(listfile, output, VCPKG_LINE_INFO); } static std::vector extract_files_in_triplet( @@ -364,7 +364,12 @@ namespace vcpkg::Install const fs::path download_dir = paths.downloads; std::error_code ec; for (auto& p : fs.get_files_non_recursive(download_dir)) - if (!fs.is_directory(p)) fs.remove(p); + { + if (!fs.is_directory(p)) + { + fs.remove(p, VCPKG_LINE_INFO); + } + } } return {code, std::move(bcf)}; @@ -628,6 +633,8 @@ namespace vcpkg::Install const bool clean_after_build = Util::Sets::contains(options.switches, (OPTION_CLEAN_AFTER_BUILD)); const KeepGoing keep_going = to_keep_going(Util::Sets::contains(options.switches, OPTION_KEEP_GOING)); + auto& fs = paths.get_filesystem(); + // create the plan StatusParagraphs status_db = database_load_check(paths); @@ -645,7 +652,7 @@ namespace vcpkg::Install Build::FailOnTombstone::NO, }; - auto all_ports = Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports); + auto all_ports = Paragraphs::load_all_ports(fs, paths.ports); std::unordered_map scf_map; for (auto&& port : all_ports) scf_map[port->core_paragraph->name] = std::move(*port); @@ -703,7 +710,7 @@ namespace vcpkg::Install xunit_doc += summary.xunit_results(); xunit_doc += "\n"; - paths.get_filesystem().write_contents(fs::u8path(it_xunit->second), xunit_doc); + fs.write_contents(fs::u8path(it_xunit->second), xunit_doc, VCPKG_LINE_INFO); } for (auto&& result : summary.results) diff --git a/toolsrc/src/vcpkg/remove.cpp b/toolsrc/src/vcpkg/remove.cpp index 685cdfdc337922..f997667ace7eeb 100644 --- a/toolsrc/src/vcpkg/remove.cpp +++ b/toolsrc/src/vcpkg/remove.cpp @@ -111,7 +111,7 @@ namespace vcpkg::Remove } } - fs.remove(paths.listfile_path(ipv.core->package)); + fs.remove(paths.listfile_path(ipv.core->package), VCPKG_LINE_INFO); } for (auto&& spgh : spghs) diff --git a/toolsrc/src/vcpkg/tools.cpp b/toolsrc/src/vcpkg/tools.cpp index 2fdfbe0f2b9e17..4f4b23055e7cc8 100644 --- a/toolsrc/src/vcpkg/tools.cpp +++ b/toolsrc/src/vcpkg/tools.cpp @@ -131,7 +131,10 @@ namespace vcpkg virtual const std::string& exe_stem() const = 0; virtual std::array default_min_version() const = 0; - virtual void add_special_paths(std::vector& out_candidate_paths) const {} + virtual void add_special_paths(std::vector& out_candidate_paths) const + { + Util::unused(out_candidate_paths); + } virtual Optional get_version(const fs::path& path_to_exe) const = 0; }; @@ -406,6 +409,7 @@ git version 2.17.1.windows.2 virtual void add_special_paths(std::vector& out_candidate_paths) const override { + Util::unused(out_candidate_paths); // TODO: Uncomment later // const std::vector from_path = Files::find_from_PATH("installerbase"); // candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); diff --git a/toolsrc/src/vcpkg/update.cpp b/toolsrc/src/vcpkg/update.cpp index 344192d596ca9b..2c52d595245cc2 100644 --- a/toolsrc/src/vcpkg/update.cpp +++ b/toolsrc/src/vcpkg/update.cpp @@ -52,7 +52,7 @@ namespace vcpkg::Update void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); System::print2("Using local portfile versions. To update the local portfiles, use `git pull`.\n"); const StatusParagraphs status_db = database_load_check(paths); diff --git a/toolsrc/src/vcpkg/vcpkglib.cpp b/toolsrc/src/vcpkg/vcpkglib.cpp index c8e95dab18d970..2a52111a65188a 100644 --- a/toolsrc/src/vcpkg/vcpkglib.cpp +++ b/toolsrc/src/vcpkg/vcpkglib.cpp @@ -21,7 +21,7 @@ namespace vcpkg return StatusParagraphs(); } - fs.rename(vcpkg_dir_status_file_old, vcpkg_dir_status_file); + fs.rename(vcpkg_dir_status_file_old, vcpkg_dir_status_file, VCPKG_LINE_INFO); } auto pghs = Paragraphs::get_paragraphs(fs, vcpkg_dir_status_file).value_or_exit(VCPKG_LINE_INFO); @@ -72,15 +72,15 @@ namespace vcpkg } } - fs.write_contents(status_file_new, Strings::serialize(current_status_db)); + fs.write_contents(status_file_new, Strings::serialize(current_status_db), VCPKG_LINE_INFO); - fs.rename(status_file_new, status_file); + fs.rename(status_file_new, status_file, VCPKG_LINE_INFO); for (auto&& file : update_files) { if (!fs.is_regular_file(file)) continue; - fs.remove(file); + fs.remove(file, VCPKG_LINE_INFO); } return current_status_db; @@ -95,8 +95,8 @@ namespace vcpkg const auto tmp_update_filename = paths.vcpkg_dir_updates / "incomplete"; const auto update_filename = paths.vcpkg_dir_updates / Strings::format("%010d", my_update_id); - fs.write_contents(tmp_update_filename, Strings::serialize(p)); - fs.rename(tmp_update_filename, update_filename); + fs.write_contents(tmp_update_filename, Strings::serialize(p), VCPKG_LINE_INFO); + fs.rename(tmp_update_filename, update_filename, VCPKG_LINE_INFO); } static void upgrade_to_slash_terminated_sorted_format(Files::Filesystem& fs, @@ -165,8 +165,8 @@ namespace vcpkg // Replace the listfile on disk const fs::path updated_listfile_path = listfile_path.generic_string() + "_updated"; - fs.write_lines(updated_listfile_path, *lines); - fs.rename(updated_listfile_path, listfile_path); + fs.write_lines(updated_listfile_path, *lines, VCPKG_LINE_INFO); + fs.rename(updated_listfile_path, listfile_path, VCPKG_LINE_INFO); } std::vector get_installed_ports(const StatusParagraphs& status_db) From 5ef4940c2cfa9b08095c56b1a0e643cb9377c907 Mon Sep 17 00:00:00 2001 From: Igor Kostenko Date: Wed, 19 Jun 2019 20:04:53 +0100 Subject: [PATCH 061/123] crossplatform add to path (#6961) --- ports/qt5-modularscripts/qt_modular_library.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/qt5-modularscripts/qt_modular_library.cmake b/ports/qt5-modularscripts/qt_modular_library.cmake index dd3abb94f6caab..206c0400282557 100644 --- a/ports/qt5-modularscripts/qt_modular_library.cmake +++ b/ports/qt5-modularscripts/qt_modular_library.cmake @@ -37,7 +37,7 @@ function(qt_modular_build_library SOURCE_PATH) #Find Python and add it to the path vcpkg_find_acquire_program(PYTHON2) get_filename_component(PYTHON2_EXE_PATH ${PYTHON2} DIRECTORY) - set(ENV{PATH} "${PYTHON2_EXE_PATH};$ENV{PATH}") + vcpkg_add_to_path("${PYTHON2_EXE_PATH}") file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}" NATIVE_INSTALLED_DIR) file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}" NATIVE_PACKAGES_DIR) From 943aed271fe256ae683d522bb95d5c2d3f317339 Mon Sep 17 00:00:00 2001 From: Igor Kostenko Date: Wed, 19 Jun 2019 20:08:02 +0100 Subject: [PATCH 062/123] Use correct path separators for each platform (#6960) --- scripts/cmake/vcpkg_build_qmake.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/cmake/vcpkg_build_qmake.cmake b/scripts/cmake/vcpkg_build_qmake.cmake index 80a0aef0d3927f..cf79fe8fcaad27 100644 --- a/scripts/cmake/vcpkg_build_qmake.cmake +++ b/scripts/cmake/vcpkg_build_qmake.cmake @@ -11,9 +11,11 @@ function(vcpkg_build_qmake) cmake_parse_arguments(_csc "SKIP_MAKEFILES" "BUILD_LOGNAME" "TARGETS;RELEASE_TARGETS;DEBUG_TARGETS" ${ARGN}) if(CMAKE_HOST_WIN32) + set(_PATHSEP ";") vcpkg_find_acquire_program(JOM) set(INVOKE "${JOM}") else() + set(_PATHSEP ":") find_program(MAKE make) set(INVOKE "${MAKE}") endif() @@ -56,7 +58,7 @@ function(vcpkg_build_qmake) #First generate the makefiles so we can modify them if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/debug/lib;${CURRENT_INSTALLED_DIR}/debug/bin;${CURRENT_INSTALLED_DIR}/tools/qt5;${ENV_PATH_BACKUP}") + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/debug/lib${_PATHSEP}${CURRENT_INSTALLED_DIR}/debug/bin${_PATHSEP}${CURRENT_INSTALLED_DIR}/tools/qt5${_PATHSEP}${ENV_PATH_BACKUP}") if(NOT _csc_SKIP_MAKEFILES) run_jom(qmake_all makefiles dbg) @@ -81,7 +83,7 @@ function(vcpkg_build_qmake) endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/lib;${CURRENT_INSTALLED_DIR}/bin;${CURRENT_INSTALLED_DIR}/tools/qt5;${ENV_PATH_BACKUP}") + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/lib${_PATHSEP}${CURRENT_INSTALLED_DIR}/bin${_PATHSEP}${CURRENT_INSTALLED_DIR}/tools/qt5${_PATHSEP}${ENV_PATH_BACKUP}") if(NOT _csc_SKIP_MAKEFILES) run_jom(qmake_all makefiles rel) From 4b0b0c57314cc0d73f7a666a2bc476153d6b42a2 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Wed, 19 Jun 2019 15:08:42 -0400 Subject: [PATCH 063/123] bootstrap.sh: Retry up to 3 times for transient download errors (#6952) --- scripts/bootstrap.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh index 00d31760afa40a..b0e4f98a54411f 100644 --- a/scripts/bootstrap.sh +++ b/scripts/bootstrap.sh @@ -100,7 +100,7 @@ vcpkgDownloadFile() url=$1; downloadPath=$2 sha512=$3 vcpkgCheckRepoTool "curl" rm -rf "$downloadPath.part" - curl -L $url --create-dirs --output "$downloadPath.part" || exit 1 + curl -L $url --create-dirs --retry 3 --output "$downloadPath.part" || exit 1 vcpkgCheckEqualFileHash $url "$downloadPath.part" $sha512 mv "$downloadPath.part" "$downloadPath" From d3498a8943b8af2fd37b287c766acff8d6623463 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Wed, 19 Jun 2019 13:28:41 -0700 Subject: [PATCH 064/123] [msmpi] Fix /MD for static libs. (#6945) * [msmpi] Fix /MD for static libs. * [msmpi] Don't install static-crt static libs when using debug crt --- ports/msmpi/CONTROL | 2 +- ports/msmpi/portfile.cmake | 44 ++++++++++++++------------------------ 2 files changed, 17 insertions(+), 29 deletions(-) diff --git a/ports/msmpi/CONTROL b/ports/msmpi/CONTROL index 7a4b2d62e18a30..d21b80c37df0b2 100644 --- a/ports/msmpi/CONTROL +++ b/ports/msmpi/CONTROL @@ -1,3 +1,3 @@ Source: msmpi -Version: 10.0 +Version: 10.0-2 Description: Microsoft MPI diff --git a/ports/msmpi/portfile.cmake b/ports/msmpi/portfile.cmake index 70c2ff5d94823b..c55a494124575c 100644 --- a/ports/msmpi/portfile.cmake +++ b/ports/msmpi/portfile.cmake @@ -95,40 +95,28 @@ file(INSTALL ${CURRENT_PACKAGES_DIR}/include ) -# Install release libraries +# NOTE: since the binary distribution does not include any debug libraries we always install the release libraries +SET(VCPKG_POLICY_ONLY_RELEASE_CRT enabled) + +file(GLOB STATIC_LIBS + ${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifec.lib + ${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifmc.lib + ${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifes.lib + ${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifms.lib +) + file(INSTALL "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpi.lib" - "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifec.lib" - "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifmc.lib" - DESTINATION - ${CURRENT_PACKAGES_DIR}/lib + DESTINATION ${CURRENT_PACKAGES_DIR}/lib ) -if(TRIPLET_SYSTEM_ARCH STREQUAL "x86") - file(INSTALL - "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifes.lib" - "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifms.lib" - DESTINATION - ${CURRENT_PACKAGES_DIR}/lib - ) -endif() - -# Install debug libraries -# NOTE: since the binary distribution does not include any debug libraries we simply install the release libraries -SET(VCPKG_POLICY_ONLY_RELEASE_CRT enabled) file(INSTALL "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpi.lib" - "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifec.lib" - "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifmc.lib" - DESTINATION - ${CURRENT_PACKAGES_DIR}/debug/lib + DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib ) -if(TRIPLET_SYSTEM_ARCH STREQUAL "x86") - file(INSTALL - "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifes.lib" - "${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifms.lib" - DESTINATION - ${CURRENT_PACKAGES_DIR}/debug/lib - ) + +if(VCPKG_CRT_LINKAGE STREQUAL "static") + file(INSTALL ${STATIC_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(INSTALL ${STATIC_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) endif() # Handle copyright From 989d0497025e59c9f9946bb6c7b1c742604bb589 Mon Sep 17 00:00:00 2001 From: Norbert Nemec Date: Wed, 19 Jun 2019 22:32:39 +0200 Subject: [PATCH 065/123] mesonbuild - Update to 0.51.0 --- scripts/cmake/vcpkg_find_acquire_program.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index 451f4bcd3ebc2d..02484022325695 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -154,10 +154,10 @@ function(vcpkg_find_acquire_program VAR) else() set(SCRIPTNAME meson) endif() - set(PATHS ${DOWNLOADS}/tools/meson/meson-0.50.0) - set(URL "https://github.com/mesonbuild/meson/archive/0.50.0.zip") - set(ARCHIVE "meson-0.50.0.zip") - set(HASH 587cafe0cd551e3fb3507ecab904912dc3e053aa95c864b435526a20d52406536ba970a50be6c9f20d83314c5853aaefa102c5ca14623d0928b091a43e7b6d64) + set(PATHS ${DOWNLOADS}/tools/meson/meson-0.51.0) + set(URL "https://github.com/mesonbuild/meson/archive/0.51.0.zip") + set(ARCHIVE "meson-0.51.0.zip") + set(HASH bf1df65cde7e0e0a44e4b4be7d68de9897a77c4ea4c694f1d77fe82cd3c7e7818dc034a3313ce885ba6883b4ba6d282b7a589f665fa499d9eb79fc7a23e415cc) elseif(VAR MATCHES "FLEX") if(CMAKE_HOST_WIN32) set(PROGNAME win_flex) From 11506d1426163df3c867a99bacd84b8911ea3224 Mon Sep 17 00:00:00 2001 From: Norbert Nemec Date: Wed, 19 Jun 2019 22:35:08 +0200 Subject: [PATCH 066/123] set cmake_prefix_path correctly within vcpkg_configure_meson --- scripts/cmake/vcpkg_configure_meson.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/cmake/vcpkg_configure_meson.cmake b/scripts/cmake/vcpkg_configure_meson.cmake index f1ae0e65f46be6..f907c76f15c375 100644 --- a/scripts/cmake/vcpkg_configure_meson.cmake +++ b/scripts/cmake/vcpkg_configure_meson.cmake @@ -26,6 +26,7 @@ function(vcpkg_configure_meson) set(MESON_RELEASE_LDFLAGS "${MESON_RELEASE_LDFLAGS} /INCREMENTAL:NO /OPT:REF /OPT:ICF") # select meson cmd-line options + list(APPEND _vcm_OPTIONS -Dcmake_prefix_path=${CURRENT_INSTALLED_DIR}) list(APPEND _vcm_OPTIONS --buildtype plain --backend ninja --wrap-mode nodownload) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) list(APPEND _vcm_OPTIONS --default-library shared) From dfd5bb46a149bbc2d9b4f4fa6a5fd4df5992cbdb Mon Sep 17 00:00:00 2001 From: Jackie Ng Date: Fri, 21 Jun 2019 02:40:50 +1000 Subject: [PATCH 067/123] [sqlite3]: Shared library support for Linux (#6856) * [sqlite]: Shared library support for Linux * [sqlite3]: Switch back to CMAKE_SYSTEM_NAME checks per original PR (#6122) * [sqlite3]: Remove redundant "WindowsStore" system name check as "Windows" should already catch it. * [sqlite3]: Re-bump portfile * [sqlite3] added error message --- ports/sqlite3/CMakeLists.txt | 8 +++++++- ports/sqlite3/CONTROL | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ports/sqlite3/CMakeLists.txt b/ports/sqlite3/CMakeLists.txt index a2f0aeb03f4603..16f529dafb147a 100644 --- a/ports/sqlite3/CMakeLists.txt +++ b/ports/sqlite3/CMakeLists.txt @@ -3,7 +3,13 @@ project(sqlite3 C) include_directories(.) if(BUILD_SHARED_LIBS) - set(API "-DSQLITE_API=__declspec(dllexport)") + if(CMAKE_SYSTEM_NAME MATCHES "Linux" OR CMAKE_SYSTEM_NAME MATCHES "Darwin") + set(API "-DSQLITE_API=__attribute__((visibility(\"default\")))") + elseif(CMAKE_SYSTEM_NAME MATCHES "Windows") + set(API "-DSQLITE_API=__declspec(dllexport)") + else() + message(FATAL_ERROR "Unsupported platform: ${CMAKE_SYSTEM_NAME}") + endif() else() set(API "-DSQLITE_API=extern") endif() diff --git a/ports/sqlite3/CONTROL b/ports/sqlite3/CONTROL index 7bba4d78c9d180..829b66254993ab 100644 --- a/ports/sqlite3/CONTROL +++ b/ports/sqlite3/CONTROL @@ -1,5 +1,5 @@ Source: sqlite3 -Version: 3.28.0 +Version: 3.28.0-1 Homepage: https://sqlite.org/ Description: SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. From f0902b35370fbebcf257de88e43ee47379185a10 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Thu, 20 Jun 2019 11:46:55 -0700 Subject: [PATCH 068/123] VS 2019 16.3 deprecates . (#6968) VS 2019 16.3 will contain a couple of source-breaking changes: * will be deprecated via an impossible-to-miss preprocessor "#error The header providing std::experimental::filesystem is deprecated by Microsoft and will be REMOVED. It is superseded by the C++17 header providing std::filesystem. You can define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING to acknowledge that you have received this warning." * will no longer include . In the long term, I believe that vcpkg should detect when it's being built with VS 2017 15.7 or newer, compile in C++17 mode, include , and use std::filesystem. (Activating this for VS 2019 16.0 or newer would also be reasonable.) Similarly for other toolsets supporting std::filesystem. In the short term, this commit makes vcpkg compatible with the upcoming deprecation. First, we need to define the silencing macro before including the appropriate header. I've chosen to define it unconditionally (without checking for platform or version), since it has no effect for other platforms or versions. Second, we need to deal with no longer including . I verified that VS 2015 Update 3 contained (back then, it simply included the header, where the experimental implementation was defined; this was later reorganized). Therefore, all of vcpkg's supported MSVC toolsets have , so we can simply always include it. I've verified that this builds with both VS 2015 Update 3 and VS 2019 16.1.3 (the current production version). --- toolsrc/include/pch.h | 5 +---- toolsrc/include/vcpkg/base/files.h | 5 +---- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/toolsrc/include/pch.h b/toolsrc/include/pch.h index fa2c2bb72f59bf..15ec25e766bc35 100644 --- a/toolsrc/include/pch.h +++ b/toolsrc/include/pch.h @@ -37,11 +37,8 @@ #include #include #include -#if defined(_WIN32) -#include -#else +#define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING #include -#endif #include #include #include diff --git a/toolsrc/include/vcpkg/base/files.h b/toolsrc/include/vcpkg/base/files.h index 02e2b8db8fc023..3ea0d60366d3e8 100644 --- a/toolsrc/include/vcpkg/base/files.h +++ b/toolsrc/include/vcpkg/base/files.h @@ -2,11 +2,8 @@ #include -#if defined(_WIN32) -#include -#else +#define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING #include -#endif namespace fs { From 83520dbc36e644951829f1a94fe47395314d9a4c Mon Sep 17 00:00:00 2001 From: Phoebe <925731795@qq.com> Date: Fri, 21 Jun 2019 05:13:53 +0800 Subject: [PATCH 069/123] [Folly] define _CRT_INTERNAL_NONSTDC_NAMES to 0 to disable non-underscore posix names on windows (#6974) --- ports/folly/CONTROL | 2 +- .../disable-non-underscore-posix-names.patch | 27 +++++++++++++++++++ ports/folly/portfile.cmake | 1 + 3 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 ports/folly/disable-non-underscore-posix-names.patch diff --git a/ports/folly/CONTROL b/ports/folly/CONTROL index 1709a4515ea699..268039ac797def 100644 --- a/ports/folly/CONTROL +++ b/ports/folly/CONTROL @@ -1,5 +1,5 @@ Source: folly -Version: 2019.05.20.00 +Version: 2019.05.20.00-1 Homepage: https://github.com/facebook/folly Description: An open-source C++ library developed and used at Facebook. The library is UNSTABLE on Windows Build-Depends: openssl, libevent, double-conversion, glog, gflags, boost-chrono, boost-context, boost-conversion, boost-crc, boost-date-time, boost-filesystem, boost-multi-index, boost-program-options, boost-regex, boost-system, boost-thread, boost-smart-ptr diff --git a/ports/folly/disable-non-underscore-posix-names.patch b/ports/folly/disable-non-underscore-posix-names.patch new file mode 100644 index 00000000000000..bbe79481cfafea --- /dev/null +++ b/ports/folly/disable-non-underscore-posix-names.patch @@ -0,0 +1,27 @@ +diff --git a/folly/portability/Windows.h b/folly/portability/Windows.h +index f7990ca..b22fac5 100644 +--- a/folly/portability/Windows.h ++++ b/folly/portability/Windows.h +@@ -26,16 +26,12 @@ + // These have to be this way because we define our own versions + // of close(), because the normal Windows versions don't handle + // sockets at all. +-#ifndef __STDC__ +-/* nolint */ +-#define __STDC__ 1 +-#include // @manual nolint +-#include // @manual nolint +-#undef __STDC__ +-#else +-#include // @manual nolint +-#include // @manual nolint +-#endif ++#include ++#pragma push_macro("_CRT_INTERNAL_NONSTDC_NAMES") ++#define _CRT_INTERNAL_NONSTDC_NAMES 0 ++#include ++#include ++#pragma pop_macro("_CRT_INTERNAL_NONSTDC_NAMES") + + #if defined(min) || defined(max) + #error Windows.h needs to be included by this header, or else NOMINMAX needs \ diff --git a/ports/folly/portfile.cmake b/ports/folly/portfile.cmake index 7e7f4056570f49..abf32aa99105c6 100644 --- a/ports/folly/portfile.cmake +++ b/ports/folly/portfile.cmake @@ -21,6 +21,7 @@ vcpkg_from_github( missing-include-atomic.patch boost-1.70.patch reorder-glog-gflags.patch + disable-non-underscore-posix-names.patch ) file(COPY From 321540a82abec73f280847df10af6aa1fe9e472b Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Fri, 21 Jun 2019 05:44:03 +0800 Subject: [PATCH 070/123] [xerces-c]Replace the macro DLL_EXPORT with the macro XERCES_DLL_EXPORT (#6970) * [xerces-c]Disable defining DLL_EXPORT to avoid affecting other ports * [xerces-c]Replace the macro DLL_EXPORT with the macro XERCES_DLL_EXPORT --- ports/xerces-c/CONTROL | 2 +- ports/xerces-c/portfile.cmake | 4 ++- ports/xerces-c/remove-dll-export-macro.patch | 27 ++++++++++++++++++++ 3 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 ports/xerces-c/remove-dll-export-macro.patch diff --git a/ports/xerces-c/CONTROL b/ports/xerces-c/CONTROL index 2fde766e17332a..3d2a4337e979bd 100644 --- a/ports/xerces-c/CONTROL +++ b/ports/xerces-c/CONTROL @@ -1,5 +1,5 @@ Source: xerces-c -Version: 3.2.2-9 +Version: 3.2.2-10 Homepage: https://github.com/apache/xerces-c Description: Xerces-C++ is a XML parser, for parsing, generating, manipulating, and validating XML documents using the DOM, SAX, and SAX2 APIs. diff --git a/ports/xerces-c/portfile.cmake b/ports/xerces-c/portfile.cmake index ad3c6d79ea7d06..5f8fa4c11bd8d4 100644 --- a/ports/xerces-c/portfile.cmake +++ b/ports/xerces-c/portfile.cmake @@ -6,7 +6,9 @@ vcpkg_from_github( REF Xerces-C_3_2_2 SHA512 66f60fe9194376ac0ca99d13ea5bce23ada86e0261dde30686c21ceb5499e754dab8eb0a98adadd83522bda62709377715501f6dac49763e3a686f9171cc63ea HEAD_REF trunk - PATCHES disable-tests.patch + PATCHES + disable-tests.patch + remove-dll-export-macro.patch ) set(DISABLE_ICU ON) diff --git a/ports/xerces-c/remove-dll-export-macro.patch b/ports/xerces-c/remove-dll-export-macro.patch new file mode 100644 index 00000000000000..f6f0e69757dc1e --- /dev/null +++ b/ports/xerces-c/remove-dll-export-macro.patch @@ -0,0 +1,27 @@ +diff --git a/src/xercesc/util/XercesDefs.hpp b/src/xercesc/util/XercesDefs.hpp +index 8071260..cd6bd68 100644 +--- a/src/xercesc/util/XercesDefs.hpp ++++ b/src/xercesc/util/XercesDefs.hpp +@@ -133,7 +133,7 @@ typedef XMLUInt32 UCS4Ch; + // The DLL_EXPORT flag should be defined on the command line during the build of a DLL + // configure conspires to make this happen. + +-#if defined(DLL_EXPORT) ++#if defined(XERCES_DLL_EXPORT) + #if defined(XERCES_BUILDING_LIBRARY) + #define XMLUTIL_EXPORT XERCES_PLATFORM_EXPORT + #define XMLPARSER_EXPORT XERCES_PLATFORM_EXPORT +diff --git a/src/xercesc/util/Xerces_autoconf_config.hpp.cmake.in b/src/xercesc/util/Xerces_autoconf_config.hpp.cmake.in +index e849e08..69fe3bf 100644 +--- a/src/xercesc/util/Xerces_autoconf_config.hpp.cmake.in ++++ b/src/xercesc/util/Xerces_autoconf_config.hpp.cmake.in +@@ -85,9 +85,6 @@ + #define XERCES_PLATFORM_EXPORT @XERCES_PLATFORM_EXPORT@ + #define XERCES_PLATFORM_IMPORT @XERCES_PLATFORM_IMPORT@ + #define XERCES_TEMPLATE_EXTERN @XERCES_TEMPLATE_EXTERN@ +-#ifdef XERCES_DLL_EXPORT +-# define DLL_EXPORT +-#endif + + // --------------------------------------------------------------------------- + // Include standard headers, if available, that we may rely on below. From 5f72d97b6e8e8dbd648567d2601c9a5c2e69eb85 Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Fri, 21 Jun 2019 05:52:28 +0800 Subject: [PATCH 071/123] [bond]Upgrade version to 8.1.0 and add Linux/OSX support. (#6954) --- ports/bond/0002_omit_rapidjson.patch | 12 ---- ports/bond/CONTROL | 2 +- ports/bond/fix-install-path.patch | 56 +++++++++++++++++ ports/bond/portfile.cmake | 91 +++++++++++++--------------- 4 files changed, 100 insertions(+), 61 deletions(-) delete mode 100644 ports/bond/0002_omit_rapidjson.patch create mode 100644 ports/bond/fix-install-path.patch diff --git a/ports/bond/0002_omit_rapidjson.patch b/ports/bond/0002_omit_rapidjson.patch deleted file mode 100644 index 7d502353d49e6e..00000000000000 --- a/ports/bond/0002_omit_rapidjson.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index fe0f629e..54b6d8ec 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -49,7 +49,6 @@ install (DIRECTORY - cpp/inc/bond - cpp/generated/bond - python/inc/bond -- thirdparty/rapidjson/include/rapidjson - DESTINATION include - PATTERN *.cpp EXCLUDE) - diff --git a/ports/bond/CONTROL b/ports/bond/CONTROL index 940b0dc0522aa9..0d1b82bc31cfeb 100644 --- a/ports/bond/CONTROL +++ b/ports/bond/CONTROL @@ -1,6 +1,6 @@ Source: bond Maintainer: bond@microsoft.com -Version: 7.0.2-2 +Version: 8.1.0 Description: Bond is a cross-platform framework for working with schematized data. It supports cross-language de/serialization and powerful generic mechanisms for efficiently manipulating data. Bond is broadly used at Microsoft in high scale services. Homepage: https://github.com/Microsoft/bond Build-Depends: rapidjson, boost-config, boost-utility, boost-assign diff --git a/ports/bond/fix-install-path.patch b/ports/bond/fix-install-path.patch new file mode 100644 index 00000000000000..e5fa270c192374 --- /dev/null +++ b/ports/bond/fix-install-path.patch @@ -0,0 +1,56 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index f2f8eaa..1b0c01c 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -18,7 +18,7 @@ set (BOND_FIND_RAPIDJSON + # settings so that we don't apply our settings to third-party code. + add_subdirectory (thirdparty) + +-enable_testing() ++#enable_testing() + + set (BOND_IDL ${CMAKE_CURRENT_SOURCE_DIR}/idl) + set (BOND_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR}/cpp/inc) +@@ -80,6 +80,6 @@ if (BOND_GBC_PATH) + + install ( + FILES ${BOND_GBC_PATH} +- DESTINATION bin ++ DESTINATION tools + RENAME ${INSTALLED_GBC_NAME}) + endif() +diff --git a/compiler/CMakeLists.txt b/compiler/CMakeLists.txt +index 1dff9d0..9a11575 100644 +--- a/compiler/CMakeLists.txt ++++ b/compiler/CMakeLists.txt +@@ -108,7 +108,7 @@ set (test_sources + tests/TestMain.hs + ${tests}) + +-set (completion_dir etc/bash_completion.d) ++set (completion_dir tools/bond) + set (completion ${CMAKE_CURRENT_BINARY_DIR}/gbc.comp) + set (output ${CMAKE_CURRENT_BINARY_DIR}/build/gbc/gbc${CMAKE_EXECUTABLE_SUFFIX}) + set (GBC_EXECUTABLE ${output} PARENT_SCOPE) +@@ -130,7 +130,7 @@ endif() + + install (FILES ${output} + PERMISSIONS OWNER_EXECUTE GROUP_EXECUTE WORLD_EXECUTE +- DESTINATION bin) ++ DESTINATION ${completion_dir}) + + install (FILES ${completion} + RENAME gbc +diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt +index b45078e..1eebe9c 100644 +--- a/cpp/CMakeLists.txt ++++ b/cpp/CMakeLists.txt +@@ -110,7 +110,7 @@ target_include_directories (bond_apply BEFORE PRIVATE + + install (TARGETS bond bond_apply + EXPORT bond +- ARCHIVE DESTINATION lib/bond ++ ARCHIVE DESTINATION lib + INCLUDES DESTINATION include) + + install (DIRECTORY ${BOND_IDL}/bond/core DESTINATION include/bond) diff --git a/ports/bond/portfile.cmake b/ports/bond/portfile.cmake index a508e6a3502229..42755dbf924a7d 100644 --- a/ports/bond/portfile.cmake +++ b/ports/bond/portfile.cmake @@ -4,77 +4,72 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/bond-7.0.2) -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/Microsoft/bond/archive/7.0.2.zip" - FILENAME "bond-7.0.2.zip" - SHA512 4ae3b88fafbede6c1433d171713bdbfcbed61a3d2a983d7df4e33af893a50f233be0e95c1ea8e5f30dafb017b2a8100a23721292b04184159e5fd796b1a43398 +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO microsoft/bond + REF 8.1.0 + SHA512 287a2d299036b57e0576903b1f5372bf8071243ada57153c4bf231cdc660faab1e70c60ddde57ac759d941b74af4ba25d81a5d58e8dbf391032b7b226c4cd18c + HEAD_REF master + PATCHES fix-install-path.patch ) -vcpkg_download_distfile(GBC_ARCHIVE - URLS "https://github.com/Microsoft/bond/releases/download/7.0.2/gbc-7.0.2-amd64.exe.zip" - FILENAME "gbc-7.0.2-amd64.exe.zip" - SHA512 069eafd7641ebd719425037cb8249d2d214eb09c6ce38fbf1d1811c01d1839b0a0987c55217075b6ae9f477f750d582250134387a530edb2aee407b21d973915 -) - -vcpkg_extract_source_archive(${ARCHIVE}) -# Extract the precompiled gbc -vcpkg_extract_source_archive(${GBC_ARCHIVE} ${CURRENT_BUILDTREES_DIR}/tools/) -set(FETCHED_GBC_PATH ${CURRENT_BUILDTREES_DIR}/tools/gbc-7.0.2-amd64.exe) +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "windows" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + vcpkg_download_distfile(GBC_ARCHIVE + URLS "https://github.com/microsoft/bond/releases/download/8.1.0/gbc-8.1.0-amd64.zip" + FILENAME "gbc-8.1.0-amd64.zip" + SHA512 896c9a78fc714e0ea44c37ed36400ec8e5f52d495a8d81aa80834ff6cd6303c7c94e06129f7b2269416a9e0ffb61423e87406db798fb5be7ff00f14981530089 + ) + + # Extract the precompiled gbc + vcpkg_extract_source_archive(${GBC_ARCHIVE} ${CURRENT_BUILDTREES_DIR}/tools/) + set(FETCHED_GBC_PATH ${CURRENT_BUILDTREES_DIR}/tools/gbc.exe) -if (NOT EXISTS "${FETCHED_GBC_PATH}") - message(FATAL_ERROR "Fetching GBC failed. Expected '${FETCHED_GBC_PATH}' to exists, but it doesn't.") + if (NOT EXISTS "${FETCHED_GBC_PATH}") + message(FATAL_ERROR "Fetching GBC failed. Expected '${FETCHED_GBC_PATH}' to exists, but it doesn't.") + endif() + +else() + message(STATUS "Installing stack...") + vcpkg_download_distfile( + ARCHIVE + URLS "https://get.haskellstack.org/" + FILENAME "stack-install.sh" + SHA512 6db2008297416ad856aa498908bf695737cf3cc466440397720a458358e9661d07abdba762662080ee8bbd8171cdcb05eec6d3696382575c099adfb8427e05fd + ) + + set(BASH /bin/bash) + + vcpkg_execute_required_process( + COMMAND ${BASH} --noprofile --norc "${ARCHIVE}" -f + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR} + LOGNAME install-stack + ) + endif() -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - # Don't install rapidjson from the (empty) submodule. With vcpkg, we get - # rapidjson from vcpkg - ${CMAKE_CURRENT_LIST_DIR}/0002_omit_rapidjson.patch -) - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DBOND_LIBRARIES_ONLY=TRUE -DBOND_GBC_PATH=${FETCHED_GBC_PATH} + -DBOND_SKIP_GBC_TESTS=TRUE -DBOND_ENABLE_COMM=FALSE -DBOND_ENABLE_GRPC=FALSE + -DBOND_FIND_RAPIDJSON=TRUE ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/bond TARGET_PATH share/bond) + # Put the license file where vcpkg expects it file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/bond) file(RENAME ${CURRENT_PACKAGES_DIR}/share/bond/LICENSE ${CURRENT_PACKAGES_DIR}/share/bond/copyright) -# Drop a copy of gbc in tools/ so that it can be used -file(COPY ${CURRENT_PACKAGES_DIR}/bin/gbc.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/) - -# vcpkg doesn't--as of version 0.0.30--like executables such as gbc.exe in -# the output. Just delete the bin/ directories for now. -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/bin/ - ${CURRENT_PACKAGES_DIR}/debug/bin/) - # There's no way to supress installation of the headers in the debug build, # so we just delete them. file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) - -# Bond's install target installs to lib/bond, but vcpkg expects the lib -# files to end up in lib/, so move them up a directory. -file(RENAME - ${CURRENT_PACKAGES_DIR}/lib/bond/bond.lib - ${CURRENT_PACKAGES_DIR}/lib/bond.lib) -file(RENAME - ${CURRENT_PACKAGES_DIR}/lib/bond/bond_apply.lib - ${CURRENT_PACKAGES_DIR}/lib/bond_apply.lib) -file(RENAME - ${CURRENT_PACKAGES_DIR}/debug/lib/bond/bond.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/bond.lib) -file(RENAME - ${CURRENT_PACKAGES_DIR}/debug/lib/bond/bond_apply.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/bond_apply.lib) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) vcpkg_copy_pdbs() From e16efa4d6aa6f36247eb6dfd646fdf81af0c36e0 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Thu, 20 Jun 2019 14:52:54 -0700 Subject: [PATCH 072/123] [thor] Fix error on Linux. (#6953) --- ports/thor/CONTROL | 3 +-- ports/thor/portfile.cmake | 3 +++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ports/thor/CONTROL b/ports/thor/CONTROL index afdc2aafb9fed2..5391f5d62d7137 100644 --- a/ports/thor/CONTROL +++ b/ports/thor/CONTROL @@ -1,5 +1,4 @@ Source: thor -Version: 2.0-2 -Homepage: https://github.com/Bromeon/Thor +Version: 2.0-3 Description: Extends the multimedia library SFML with higher-level features Build-Depends: sfml, aurora diff --git a/ports/thor/portfile.cmake b/ports/thor/portfile.cmake index 57285306445adf..19f65f8062fb0b 100644 --- a/ports/thor/portfile.cmake +++ b/ports/thor/portfile.cmake @@ -49,6 +49,9 @@ endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/Aurora) +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +endif() file(INSTALL ${SOURCE_PATH}/License.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/thor RENAME copyright) From 47d206e149e88201333b5ca8fe55c30e2b1a8177 Mon Sep 17 00:00:00 2001 From: Stefano Sinigardi Date: Fri, 21 Jun 2019 04:11:54 +0200 Subject: [PATCH 073/123] [many ports] improvements for linux/wsl (#6730) * [many ports] improve compatibility with WSL and mixed case filesystems * [treehopper] express dependency on libusb, which was not working on non-win32 platforms and is still broken there * [libharu] add compatibility with non-win32 platforms * [geogram] fix openblas on linux [clapack] better integration with linux environment [visit-struct] put cmake config file in the expected folder [geogram] remove trailing underscore to enable compatibility with OpenBLAS * [openblas] playing with underscore, without success * [openblas/lapack] fix library integration * [clapack] improve target handling in cmake module * [openblas] promote self-generated config to default cmake module, otherwise internal ones thinks wrongly that openblas can also solve lapack libs * [clapack,openblas] improve libraries integration * [many ports] fix cmake unnecessary target paths, wrong config paths, empty default dependencies, unnecessary [core] tags * [suitesparse] improve integration with new lapack/openblas mechanism * [suitesparse] add no underscore postfix also for linux * [ceres] fix integration with newer openblas/lapack configs * [aws-c-event-stream] fix regression * [systemc] fix regression * [libwebp,geogram] trigger rebuild * [libwebp,pthread4w] fix regressions * [glbinding] fix cmake module installation * [globjects] disentangle unnecessary dependency from qt5 * [jasper] remove broken and unnecessary patches * [libwebp] fix regression * [many ports] avoid using BUILD_SHARED_LIBS which is uninitialized in port files * [clapack] correctly find dlls * [clapack] use a generic blas as dependency * [fizz,g2o] restore expected version * fix mistake * [many ports] remove WIN32, APPLE and UNIX (again, they keep creeping in) from ports since they are broken and usually break non-win32 ports * [libressl,openssl] do not try to build one if the other is already installed * [itk] update ref and patch to avoid regression * [libressl,openssl] implement full strategy to fix CI * [libwebp] disable components that are broken on macOS * [ogre] enable macOS build * [freeimage,jxrlib,ogre,openexr,protobuf] port patches from #5169 * [ogre] add missing install command * [ffmpeg] enable wrapper for cmake module * [ffmpeg] add avresample module finder * [ffmpeg] improve module detection and exported symbols * [ffmpeg] add variables to cache * [thrift] remove unnecessary build option * [allegro5] fix shared/static inversion * [protobuf] cleanup * [libressl] cleanup * [moos-core] cleanup * commented features must not be separated from other features, otherwise vcpkg complains * [itk] fix regression * [shogun,itk] fix regressions * [ogre] fix regression * [opusfile] add compatibility with non-win32 * [itk] fix regression * [sndfile,libsndfile] remove duplicate, redirect sndfile to libsndfile * add missing dependencies * [ismrmrd] fix regression * [ffmpeg] trigger rebuild * [clapack,openblas,libogg] fix regressions on macOS * [libtins] fix regression * force rebuild windows regressions, unable to reproduce locally * [mosquitto] enable non-win32 builds * [json-dto] force rebuild, unable to reproduce regression locally * [many ports] uniform naming and path length requests * fix regression * fix regression * [ffmpeg] fixes for downstream projects * clean up - thanks to reviewers * trigger rebuild of regressions on macOS * trigger rebuild of regressions on macOS - part2 * Add core back * Use VCPKG_CONCURRENCY * Add core back to suitesparse * Add core back to curl * Add core back to magnum * Add core back to magnum * Add core back to magnum * Add core back to cgal --- ports/alembic/CONTROL | 2 +- ports/alembic/portfile.cmake | 4 +- ports/allegro5/portfile.cmake | 38 +- ports/angelscript/CONTROL | 4 +- ports/angelscript/portfile.cmake | 24 +- ports/armadillo/CONTROL | 2 +- ports/armadillo/portfile.cmake | 2 +- ports/arrow/portfile.cmake | 2 +- ports/assimp/CONTROL | 2 +- ports/assimp/portfile.cmake | 10 +- ports/avro-c/portfile.cmake | 2 +- ports/aws-c-common/CONTROL | 4 +- ports/aws-c-common/portfile.cmake | 4 +- ports/aws-c-event-stream/portfile.cmake | 4 +- ports/aws-sdk-cpp/portfile.cmake | 4 +- ports/azure-storage-cpp/CONTROL | 2 +- ports/botan/CONTROL | 4 +- ports/botan/portfile.cmake | 31 +- ports/c-ares/CONTROL | 3 +- ports/c-ares/portfile.cmake | 2 +- ports/capnproto/CONTROL | 2 +- ports/capnproto/portfile.cmake | 4 +- ports/cartographer/CONTROL | 2 +- ports/cartographer/portfile.cmake | 2 +- ports/catch2/CONTROL | 2 +- ports/catch2/portfile.cmake | 2 +- ports/ccd/CONTROL | 2 +- ports/ccd/portfile.cmake | 10 +- ports/cereal/CONTROL | 2 +- ports/cereal/portfile.cmake | 3 +- .../ceres/0001_add_missing_include_path.patch | 13 - ...ixes.patch => 0001_cmakelists_fixes.patch} | 11 +- ...arget.patch => 0002_use_glog_target.patch} | 0 ...h => 0003_fix_exported_ceres_config.patch} | 0 ports/ceres/0004_blas_linux_fix.patch | 22 + ports/ceres/CONTROL | 2 +- ports/ceres/portfile.cmake | 18 +- ports/cgal/portfile.cmake | 2 +- ports/clapack/CONTROL | 2 +- ports/clapack/FindLAPACK.cmake | 199 ++-- ports/clapack/enable_openblas_compat.patch | 112 ++ ports/clapack/openblas_linux.patch | 12 - ports/clapack/portfile.cmake | 10 +- ports/clapack/remove_internal_blas.patch | 13 +- ports/clapack/vcpkg-cmake-wrapper.cmake | 6 +- ports/clblas/CONTROL | 2 +- ports/clblas/portfile.cmake | 4 +- ports/clfft/CONTROL | 2 +- ports/clfft/portfile.cmake | 4 +- ports/cli/CONTROL | 2 +- ports/cli/portfile.cmake | 4 +- ports/clp/CMakeLists.txt | 2 +- ports/clp/CONTROL | 2 +- ports/clp/portfile.cmake | 6 +- ports/coinutils/CMakeLists.txt | 2 +- ports/coinutils/CONTROL | 2 +- ports/coinutils/portfile.cmake | 6 +- ports/collada-dom/CONTROL | 4 +- ports/collada-dom/portfile.cmake | 4 +- ports/console-bridge/CONTROL | 2 +- ports/console-bridge/portfile.cmake | 4 +- ports/cpp-netlib/CONTROL | 4 +- ports/cpp-netlib/portfile.cmake | 9 +- ports/crc32c/CONTROL | 2 +- ports/crc32c/portfile.cmake | 2 +- ports/cryptopp/CONTROL | 2 +- ports/cryptopp/portfile.cmake | 2 +- ports/curl/CONTROL | 2 +- ports/curl/portfile.cmake | 2 +- ports/cxxopts/CONTROL | 2 +- ports/cxxopts/portfile.cmake | 2 +- ports/eigen3/CONTROL | 2 +- ports/eigen3/portfile.cmake | 2 +- ports/exiv2/CONTROL | 4 +- ports/exiv2/portfile.cmake | 3 +- ports/fcl/CONTROL | 2 +- ports/fcl/portfile.cmake | 4 +- ports/ffmpeg/CONTROL | 2 +- ports/ffmpeg/FindFFMPEG.cmake | 138 ++- ports/ffmpeg/portfile.cmake | 9 +- ports/ffmpeg/vcpkg-cmake-wrapper.cmake | 8 + ports/fizz/CONTROL | 2 +- ports/fizz/portfile.cmake | 4 +- ports/flatbuffers/CONTROL | 10 +- ports/flatbuffers/portfile.cmake | 2 +- ports/folly/portfile.cmake | 2 +- ports/freeimage/CMakeLists.txt | 3 - ports/freeimage/CONTROL | 2 +- ports/freerdp/CONTROL | 2 +- ports/freerdp/portfile.cmake | 2 +- ports/g2o/CONTROL | 2 +- ports/g2o/portfile.cmake | 2 +- ports/gdcm/CONTROL | 2 +- ports/gdcm/portfile.cmake | 10 +- ports/geogram/CONTROL | 2 +- .../enable_openblas_compatibility.patch | 1008 +++++++++++++++++ ports/geogram/fix_underscore.patch | 10 + ports/geogram/portfile.cmake | 10 +- ports/geographiclib/CONTROL | 2 +- ports/geographiclib/portfile.cmake | 4 +- ports/gl3w/CONTROL | 2 +- ports/gl3w/portfile.cmake | 3 +- ....patch => 0001_force-system-install.patch} | 0 ...uwpmacro.patch => 0002_fix-uwpmacro.patch} | 0 .../0003_fix-cmake-configs-paths.patch | 62 + .../0004_fix-config-expected-paths.patch | 35 + ports/glbinding/portfile.cmake | 26 +- ports/glew/portfile.cmake | 3 +- ports/globjects/CONTROL | 3 +- ports/globjects/portfile.cmake | 2 +- ports/glog/CONTROL | 2 +- ports/glog/portfile.cmake | 2 +- ports/graphite2/CONTROL | 4 +- ports/graphite2/portfile.cmake | 3 +- ports/grpc/CONTROL | 2 +- ports/grpc/portfile.cmake | 6 +- ports/harfbuzz/portfile.cmake | 4 +- ports/hdf5/CONTROL | 24 +- ports/hdf5/portfile.cmake | 9 +- ports/http-parser/CONTROL | 2 +- ports/http-parser/portfile.cmake | 2 +- ports/imgui/CONTROL | 2 +- ports/imgui/portfile.cmake | 2 +- ports/ismrmrd/CONTROL | 4 +- ports/ismrmrd/fix_static.patch | 9 + ports/ismrmrd/portfile.cmake | 52 +- ports/itk/CONTROL | 2 +- ports/itk/fix_conflict_with_openjp2_pc.patch | 33 - ports/itk/fix_libminc_config_path.patch | 13 + ports/itk/fix_openjpeg_search.patch | 13 + ports/itk/portfile.cmake | 18 +- ports/jansson/CONTROL | 2 +- ports/jansson/portfile.cmake | 3 +- ports/jasper/CONTROL | 4 +- ports/jasper/jasper-fix-uwp.patch | 32 - ports/jasper/opengl-not-required.patch | 14 - ports/jasper/portfile.cmake | 12 +- ports/json-dto/CONTROL | 2 +- ports/json-dto/portfile.cmake | 2 +- ports/jxrlib/CONTROL | 2 +- ports/jxrlib/portfile.cmake | 9 +- ports/jxrlib/vcpkg-cmake-wrapper.cmake | 8 + ports/kangaru/CONTROL | 2 +- ports/kangaru/portfile.cmake | 6 +- ports/kinectsdk2/portfile.cmake | 14 +- ports/leptonica/CONTROL | 2 +- ports/leptonica/portfile.cmake | 2 +- ports/libbson/CONTROL | 2 +- ports/libbson/portfile.cmake | 4 +- ports/libfreenect2/CONTROL | 2 +- ports/libfreenect2/portfile.cmake | 2 +- ports/libharu/CONTROL | 2 +- ports/libharu/portfile.cmake | 18 +- ports/libmodbus/CONTROL | 2 +- ports/libmodbus/portfile.cmake | 5 +- ports/libogg/CONTROL | 2 +- ports/libogg/portfile.cmake | 3 +- ports/libpff/CONTROL | 2 +- ports/libpff/portfile.cmake | 2 +- ports/libpng/CONTROL | 2 +- ports/libpng/portfile.cmake | 2 +- ports/libressl/CONTROL | 4 +- ports/libressl/portfile.cmake | 16 +- ports/libsndfile/CONTROL | 2 +- ports/libsndfile/portfile.cmake | 5 +- ports/libtins/CONTROL | 2 +- ports/libtins/portfile.cmake | 8 +- ports/libusb/CONTROL | 2 +- ports/libusb/portfile.cmake | 106 +- ports/libwebp/CONTROL | 2 +- ports/libwebp/portfile.cmake | 15 +- ports/libwebsockets/CONTROL | 2 +- ports/libwebsockets/portfile.cmake | 4 +- ports/lmdb/CONTROL | 2 +- ports/lmdb/portfile.cmake | 5 +- ports/magnum-extras/CONTROL | 5 +- ports/magnum-extras/portfile.cmake | 2 +- ports/magnum-integration/CONTROL | 6 +- ports/magnum-plugins/CONTROL | 3 +- ports/mathgl/CONTROL | 2 +- ports/mathgl/portfile.cmake | 4 +- ports/mongo-c-driver/CONTROL | 2 +- ports/mongo-c-driver/portfile.cmake | 6 +- ports/mongo-cxx-driver/CONTROL | 2 +- ports/mongo-cxx-driver/portfile.cmake | 2 +- ports/moos-core/CONTROL | 4 +- ports/moos-core/portfile.cmake | 11 +- ports/mosquitto/portfile.cmake | 32 +- ports/ms-angle/CONTROL | 2 +- ports/ms-angle/portfile.cmake | 4 +- ports/nanomsg/CONTROL | 2 +- ports/nanomsg/portfile.cmake | 4 +- ports/nlopt/portfile.cmake | 2 +- ports/octomap/CONTROL | 2 +- ports/octomap/portfile.cmake | 3 +- ports/ogre/001-cmake-install-dir.patch | 42 - .../002-link-optimized-lib-workaround.patch | 37 - ports/ogre/CONTROL | 2 +- ports/ogre/portfile.cmake | 29 +- ports/ogre/toolchain_fixes.patch | 533 +++++++++ ports/ompl/portfile.cmake | 5 +- ports/openblas/CONTROL | 2 +- ports/openblas/enable_underscore.patch | 70 ++ ...-space-path.patch => fix_space_path.patch} | 0 ports/openblas/openblas_common.h | 72 -- ports/openblas/portfile.cmake | 50 +- ports/openblas/vcpkg-cmake-wrapper.cmake | 49 + ports/openexr/CONTROL | 2 +- ports/openexr/FindOpenEXR.cmake | 7 + ports/openexr/portfile.cmake | 9 +- ports/openexr/vcpkg-cmake-wrapper.cmake | 8 + ports/openmama/CONTROL | 2 +- ports/openmvg/CONTROL | 2 +- ports/openmvg/portfile.cmake | 2 +- ports/openmvs/CONTROL | 2 +- ports/openmvs/portfile.cmake | 4 +- ports/openni2/CONTROL | 2 +- ports/openni2/portfile.cmake | 2 +- ports/openssl-unix/portfile.cmake | 9 +- ports/openssl-uwp/portfile.cmake | 10 +- ports/openssl-windows/portfile.cmake | 9 +- ports/openssl/CONTROL | 2 +- ports/openssl/portfile.cmake | 2 + ports/opentracing/CONTROL | 4 +- ports/opentracing/portfile.cmake | 51 +- ports/opusfile/CMakeLists.txt | 2 + ports/opusfile/CONTROL | 2 +- ports/orocos-kdl/CONTROL | 2 +- ports/orocos-kdl/portfile.cmake | 6 +- ports/osi/CMakeLists.txt | 2 +- ports/osi/CONTROL | 2 +- ports/osi/portfile.cmake | 6 +- ports/pangolin/CONTROL | 2 +- ports/pangolin/portfile.cmake | 2 +- ports/pcl/CONTROL | 4 +- ports/pcl/portfile.cmake | 2 +- ports/pdal/CONTROL | 2 +- ports/pdal/portfile.cmake | 12 +- ports/poco/CONTROL | 2 +- ports/poco/portfile.cmake | 8 +- ports/proj4/CONTROL | 2 +- ports/proj4/portfile.cmake | 10 +- ports/protobuf/CONTROL | 2 +- ports/protobuf/disable-lite.patch | 41 - ports/protobuf/portfile.cmake | 29 +- ports/pthreads/portfile.cmake | 10 +- ports/pugixml/CONTROL | 2 +- ports/pugixml/portfile.cmake | 16 +- ports/qt5-base/portfile.cmake | 2 +- .../qt_modular_library.cmake | 6 +- ports/re2/CONTROL | 4 +- ports/re2/portfile.cmake | 4 +- ports/restclient-cpp/CONTROL | 2 +- ports/restinio/CONTROL | 8 +- ports/restinio/portfile.cmake | 3 +- ports/sdl2-image/CONTROL | 2 +- ports/sdl2-image/portfile.cmake | 6 +- ports/sdl2-mixer/portfile.cmake | 2 +- ports/sdl2-net/CONTROL | 2 +- ports/sdl2-net/portfile.cmake | 2 +- ports/sdl2-ttf/CONTROL | 2 +- ports/sdl2-ttf/portfile.cmake | 2 +- ports/sdl2/CONTROL | 2 +- ports/sdl2/portfile.cmake | 6 +- ports/selene/CONTROL | 2 +- ports/selene/portfile.cmake | 2 +- ports/sf2cute/CONTROL | 4 +- ports/sf2cute/portfile.cmake | 4 +- ports/shogun/CONTROL | 2 +- ports/shogun/portfile.cmake | 17 +- ports/sndfile/CONTROL | 6 +- ports/sndfile/portfile.cmake | 2 +- ports/so5extra/CONTROL | 2 +- ports/so5extra/portfile.cmake | 3 +- ports/sobjectizer/CONTROL | 2 +- ports/sobjectizer/portfile.cmake | 2 +- ports/sophus/CONTROL | 2 +- ports/sophus/portfile.cmake | 2 +- ports/string-theory/CONTROL | 2 +- ports/string-theory/portfile.cmake | 3 +- ports/suitesparse/CONTROL | 2 +- ports/suitesparse/portfile.cmake | 15 +- ports/suitesparse/suitesparse.patch | 85 +- ports/systemc/CONTROL | 2 +- ports/systemc/install.patch | 54 +- ports/systemc/portfile.cmake | 11 +- ports/szip/CONTROL | 2 +- ports/szip/portfile.cmake | 3 +- ports/tesseract/CONTROL | 2 +- ports/tesseract/portfile.cmake | 2 +- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 3 +- ports/tinyexif/CONTROL | 2 +- ports/tinyexif/portfile.cmake | 2 +- ports/tinyobjloader/CONTROL | 2 +- ports/tinyobjloader/portfile.cmake | 2 +- ports/tinyxml2/CONTROL | 3 +- ports/tinyxml2/portfile.cmake | 2 +- ports/tmx/CONTROL | 2 +- ports/tmx/portfile.cmake | 2 +- ports/treehopper/CONTROL | 3 +- ports/treehopper/portfile.cmake | 3 +- ports/trompeloeil/CONTROL | 2 +- ports/trompeloeil/portfile.cmake | 2 +- ports/urdfdom-headers/CONTROL | 2 +- ports/urdfdom-headers/portfile.cmake | 4 +- ports/urdfdom/CONTROL | 2 +- ports/urdfdom/portfile.cmake | 4 +- ports/usd/CONTROL | 2 +- ports/usd/portfile.cmake | 2 +- ports/uvw/CONTROL | 2 +- ports/uvw/portfile.cmake | 8 +- ports/visit-struct/CONTROL | 2 +- ports/visit-struct/portfile.cmake | 5 +- ports/wangle/CONTROL | 2 +- ports/wangle/portfile.cmake | 6 +- ports/wt/portfile.cmake | 4 +- ports/xalan-c/portfile.cmake | 2 +- ports/z3/CONTROL | 2 +- ports/z3/portfile.cmake | 2 +- ports/zopfli/CONTROL | 2 +- ports/zopfli/portfile.cmake | 2 +- ports/zserge-webview/CONTROL | 2 +- ports/zserge-webview/portfile.cmake | 8 +- ports/zxing-cpp/CONTROL | 4 +- ports/zxing-cpp/portfile.cmake | 10 +- 326 files changed, 3128 insertions(+), 1185 deletions(-) delete mode 100644 ports/ceres/0001_add_missing_include_path.patch rename ports/ceres/{0002_cmakelists_fixes.patch => 0001_cmakelists_fixes.patch} (81%) rename ports/ceres/{0003_use_glog_target.patch => 0002_use_glog_target.patch} (100%) rename ports/ceres/{0004_fix_exported_ceres_config.patch => 0003_fix_exported_ceres_config.patch} (100%) create mode 100644 ports/ceres/0004_blas_linux_fix.patch create mode 100644 ports/clapack/enable_openblas_compat.patch delete mode 100644 ports/clapack/openblas_linux.patch create mode 100644 ports/ffmpeg/vcpkg-cmake-wrapper.cmake create mode 100644 ports/geogram/enable_openblas_compatibility.patch create mode 100644 ports/geogram/fix_underscore.patch rename ports/glbinding/{force-system-install.patch => 0001_force-system-install.patch} (100%) rename ports/glbinding/{fix-uwpmacro.patch => 0002_fix-uwpmacro.patch} (100%) create mode 100644 ports/glbinding/0003_fix-cmake-configs-paths.patch create mode 100644 ports/glbinding/0004_fix-config-expected-paths.patch create mode 100644 ports/ismrmrd/fix_static.patch delete mode 100644 ports/itk/fix_conflict_with_openjp2_pc.patch create mode 100644 ports/itk/fix_libminc_config_path.patch create mode 100644 ports/itk/fix_openjpeg_search.patch delete mode 100644 ports/jasper/jasper-fix-uwp.patch delete mode 100644 ports/jasper/opengl-not-required.patch create mode 100644 ports/jxrlib/vcpkg-cmake-wrapper.cmake delete mode 100644 ports/ogre/001-cmake-install-dir.patch delete mode 100644 ports/ogre/002-link-optimized-lib-workaround.patch create mode 100644 ports/ogre/toolchain_fixes.patch create mode 100644 ports/openblas/enable_underscore.patch rename ports/openblas/{fix-space-path.patch => fix_space_path.patch} (100%) delete mode 100644 ports/openblas/openblas_common.h create mode 100644 ports/openblas/vcpkg-cmake-wrapper.cmake create mode 100644 ports/openexr/vcpkg-cmake-wrapper.cmake delete mode 100644 ports/protobuf/disable-lite.patch diff --git a/ports/alembic/CONTROL b/ports/alembic/CONTROL index 0adc152bb71043..a1a47a3ff9e27b 100644 --- a/ports/alembic/CONTROL +++ b/ports/alembic/CONTROL @@ -1,5 +1,5 @@ Source: alembic -Version: 1.7.11 +Version: 1.7.11-2 Build-Depends: ilmbase, hdf5 Description: Alembic is an open framework for storing and sharing scene data that includes a C++ library, a file format, and client plugins and applications. Homepage: https://alembic.io/ diff --git a/ports/alembic/portfile.cmake b/ports/alembic/portfile.cmake index 9e97ac89d1d3df..8b3e8568d05d60 100644 --- a/ports/alembic/portfile.cmake +++ b/ports/alembic/portfile.cmake @@ -2,7 +2,7 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "Alembic's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() @@ -30,7 +30,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/Alembic") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Alembic) vcpkg_copy_pdbs() diff --git a/ports/allegro5/portfile.cmake b/ports/allegro5/portfile.cmake index b8619f99b35fb3..37eea075621d75 100644 --- a/ports/allegro5/portfile.cmake +++ b/ports/allegro5/portfile.cmake @@ -1,44 +1,29 @@ -# Common Ambient Variables: -# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} -# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} -# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT} -# PORT = current port name (zlib, etc) -# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc) -# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic) -# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic) -# VCPKG_ROOT_DIR = -# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) -# - include(vcpkg_common_functions) + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO liballeg/allegro5 REF 5.2.5.0 SHA512 9b97a46f0fd146c3958a5f8333822665ae06b984b3dbedc1356afdac8fe3248203347cb08b30ebda049a7320948c7844e9d00dc055c317836c2557b5bfc2ab04 HEAD_REF master + PATCHES + fix-pdb-install.patch ) -if (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") - set(ALLEGRO_USE_STATIC ON) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(VCPKG_BUILD_SHARED_LIBS ON) else() - set(ALLEGRO_USE_STATIC OFF) + set(VCPKG_BUILD_SHARED_LIBS OFF) endif() -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/fix-pdb-install.patch -) - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA # Disable this option if project cannot be built with Ninja + PREFER_NINJA OPTIONS -DWANT_DOCS=OFF -DALLEGRO_SDL=OFF -DWANT_DEMO=OFF - -DSHARED=${ALLEGRO_USE_STATIC} + -DSHARED=${VCPKG_BUILD_SHARED_LIBS} -DWANT_EXAMPLES=OFF -DWANT_CURL_EXAMPLE=OFF -DWANT_TESTS=OFF @@ -81,14 +66,11 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -# Handle copyright -file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/allegro5) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/allegro5/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/allegro5/copyright) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) - file(GLOB PDB_GLOB ${CURRENT_BUILDTREES_DIR}-dbg/lib/*.pdb) file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}-dbg/lib/Debug) file(COPY ${PDB_GLOB} DESTINATION ${CURRENT_BUILDTREES_DIR}-dbg/lib/Debug) vcpkg_copy_pdbs() + +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/allegro5 RENAME copyright) diff --git a/ports/angelscript/CONTROL b/ports/angelscript/CONTROL index 7c12ea84596b63..7315b1a90a7288 100644 --- a/ports/angelscript/CONTROL +++ b/ports/angelscript/CONTROL @@ -1,3 +1,3 @@ Source: angelscript -Version: 2.33.0 -Description: The AngelCode Scripting Library, or AngelScript as it is also known, is an extremely flexible cross-platform scripting library designed to allow applications to extend their functionality through external scripts. It has been designed from the beginning to be an easy to use component, both for the application programmer and the script writer. +Version: 2.33.0-1 +Description: The AngelCode Scripting Library, or AngelScript as it is also known, is an extremely flexible cross-platform scripting library designed to allow applications to extend their functionality through external scripts. It has been designed from the beginning to be an easy to use component, both for the application programmer and the script writer. diff --git a/ports/angelscript/portfile.cmake b/ports/angelscript/portfile.cmake index 18128d220a7957..f6521df29115a8 100644 --- a/ports/angelscript/portfile.cmake +++ b/ports/angelscript/portfile.cmake @@ -1,15 +1,3 @@ -# Common Ambient Variables: -# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} -# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} -# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT} -# PORT = current port name (zlib, etc) -# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc) -# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic) -# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic) -# VCPKG_ROOT_DIR = -# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) -# - include(vcpkg_common_functions) vcpkg_download_distfile(ARCHIVE @@ -20,14 +8,9 @@ vcpkg_download_distfile(ARCHIVE vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH - ARCHIVE ${ARCHIVE} - # (Optional) A friendly name to use instead of the filename of the archive (e.g.: a version number or tag). - # REF 1.0.0 - # (Optional) Read the docs for how to generate patches at: - # https://github.com/Microsoft/vcpkg/blob/master/docs/examples/patching.md + ARCHIVE ${ARCHIVE} PATCHES mark-threads-private.patch - # 002_more_port_fixes.patch ) vcpkg_configure_cmake( @@ -41,10 +24,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/Angelscript") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Angelscript) # Handle copyright file(INSTALL ${CURRENT_PORT_DIR}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/angelscript RENAME copyright) - -# Post-build test for cmake libraries -# vcpkg_test_cmake(PACKAGE_NAME angelscript) diff --git a/ports/armadillo/CONTROL b/ports/armadillo/CONTROL index a162b1ced3a4fc..5baafdfdf9ed50 100644 --- a/ports/armadillo/CONTROL +++ b/ports/armadillo/CONTROL @@ -1,4 +1,4 @@ Source: armadillo -Version: 2019-04-16-1 +Version: 2019-04-16-2 Description: Armadillo is a high quality linear algebra library (matrix maths) for the C++ language, aiming towards a good balance between speed and ease of use Build-Depends: openblas (!osx), clapack (!osx) diff --git a/ports/armadillo/portfile.cmake b/ports/armadillo/portfile.cmake index 6b9b3790ac3a1c..437f174ddc2016 100644 --- a/ports/armadillo/portfile.cmake +++ b/ports/armadillo/portfile.cmake @@ -25,7 +25,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/armadillo/CMake TARGET_PATH share/armadillo) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/armadillo/CMake) vcpkg_copy_pdbs() diff --git a/ports/arrow/portfile.cmake b/ports/arrow/portfile.cmake index ed49d406e1f206..fd8fd52fc5dafa 100644 --- a/ports/arrow/portfile.cmake +++ b/ports/arrow/portfile.cmake @@ -42,7 +42,7 @@ if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/arrow_static.lib) message(FATAL_ERROR "Installed lib file should be named 'arrow.lib' via patching the upstream build.") endif() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/arrow TARGET_PATH share/arrow) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/arrow) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) diff --git a/ports/assimp/CONTROL b/ports/assimp/CONTROL index ddc2627f0bfaf3..0b2d58a514d133 100644 --- a/ports/assimp/CONTROL +++ b/ports/assimp/CONTROL @@ -1,5 +1,5 @@ Source: assimp -Version: 4.1.0-5 +Version: 4.1.0-8 Homepage: https://github.com/assimp/assimp Description: The Open Asset import library Build-Depends: zlib, rapidjson diff --git a/ports/assimp/portfile.cmake b/ports/assimp/portfile.cmake index 559dd249c2419d..b690b79d043353 100644 --- a/ports/assimp/portfile.cmake +++ b/ports/assimp/portfile.cmake @@ -18,13 +18,19 @@ file(REMOVE_RECURSE ${SOURCE_PATH}/contrib/zlib ${SOURCE_PATH}/contrib/gtest ${S set(VCPKG_C_FLAGS "${VCPKG_C_FLAGS} -D_CRT_SECURE_NO_WARNINGS") set(VCPKG_CXX_FLAGS "${VCPKG_CXX_FLAGS} -D_CRT_SECURE_NO_WARNINGS") +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(VCPKG_BUILD_SHARED_LIBS ON) +else() + set(VCPKG_BUILD_SHARED_LIBS OFF) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DASSIMP_BUILD_TESTS=OFF -DASSIMP_BUILD_ASSIMP_VIEW=OFF -DASSIMP_BUILD_ZLIB=OFF - -DASSIMP_BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} + -DASSIMP_BUILD_SHARED_LIBS=${VCPKG_BUILD_SHARED_LIBS} -DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DASSIMP_INSTALL_PDB=OFF #-DSYSTEM_IRRXML=ON # Wait for the built-in irrxml to synchronize with port irrlich, add dependencies and enable this macro @@ -46,7 +52,7 @@ file(READ ${CURRENT_PACKAGES_DIR}/share/assimp/assimp-config.cmake ASSIMP_CONFIG string(REPLACE "get_filename_component(ASSIMP_ROOT_DIR \"\${_PREFIX}\" PATH)" "set(ASSIMP_ROOT_DIR \${_PREFIX})" ASSIMP_CONFIG ${ASSIMP_CONFIG}) -if(WIN32) +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) string(REPLACE "set( ASSIMP_LIBRARIES \${ASSIMP_LIBRARIES})" "set( ASSIMP_LIBRARIES optimized \${ASSIMP_LIBRARY_DIRS}/\${ASSIMP_LIBRARIES}.lib debug \${ASSIMP_LIBRARY_DIRS}/../debug/lib/\${ASSIMP_LIBRARIES}d.lib)" ASSIMP_CONFIG ${ASSIMP_CONFIG}) diff --git a/ports/avro-c/portfile.cmake b/ports/avro-c/portfile.cmake index ee0b6f7ca7eb7b..553e694d8a4d17 100644 --- a/ports/avro-c/portfile.cmake +++ b/ports/avro-c/portfile.cmake @@ -2,7 +2,7 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "Avro-c's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() diff --git a/ports/aws-c-common/CONTROL b/ports/aws-c-common/CONTROL index d80e9909120a23..f9e0fc9afcfd58 100644 --- a/ports/aws-c-common/CONTROL +++ b/ports/aws-c-common/CONTROL @@ -1,3 +1,3 @@ Source: aws-c-common -Version: 0.3.11 -Description: AWS common library for C \ No newline at end of file +Version: 0.3.11-1 +Description: AWS common library for C diff --git a/ports/aws-c-common/portfile.cmake b/ports/aws-c-common/portfile.cmake index 609d7269d0a814..53d85abb08d640 100644 --- a/ports/aws-c-common/portfile.cmake +++ b/ports/aws-c-common/portfile.cmake @@ -19,7 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_fixup_cmake_targets(CONFIG_PATH lib/aws-c-common/cmake) -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake TARGET_PATH share/cmake) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include @@ -34,4 +34,4 @@ file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/aw file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share -) \ No newline at end of file +) diff --git a/ports/aws-c-event-stream/portfile.cmake b/ports/aws-c-event-stream/portfile.cmake index c5ee5693336e9e..8d1b0ec70bce25 100644 --- a/ports/aws-c-event-stream/portfile.cmake +++ b/ports/aws-c-event-stream/portfile.cmake @@ -12,7 +12,7 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - "-DCMAKE_MODULE_PATH=${CURRENT_INSTALLED_DIR}/share/cmake" + "-DCMAKE_MODULE_PATH=${CURRENT_INSTALLED_DIR}/share/aws-c-common" ) vcpkg_install_cmake() @@ -32,4 +32,4 @@ file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/aw file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share -) \ No newline at end of file +) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index c6b5278165b97c..dc7bc19fc2e64e 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -2,7 +2,7 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "Aws-sdk-cpp's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() @@ -10,7 +10,7 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.7.116 + REF 1.7.116 SHA512 2d10aebf1c10bb7e7a0efa1fd930b8743d9bce1d7d36f72c55fd13612be4fd30cf0a67ebe4f8d7c05146306084b10d8657ff26ac3bafaaa9efaa4c67707acb49 HEAD_REF master ) diff --git a/ports/azure-storage-cpp/CONTROL b/ports/azure-storage-cpp/CONTROL index 9eabe9faf6b056..720f07efb3629d 100644 --- a/ports/azure-storage-cpp/CONTROL +++ b/ports/azure-storage-cpp/CONTROL @@ -3,4 +3,4 @@ Version: 6.1.0 Build-Depends: cpprestsdk[core], atlmfc (windows), boost-log (!windows&!uwp), boost-locale (!windows&!uwp), libxml2 (!windows&!uwp), libuuid (!windows&!uwp&!osx), gettext Description: Microsoft Azure Storage Client SDK for C++ A client library for working with Microsoft Azure storage services including blobs, files, tables, and queues. This client library enables working with the Microsoft Azure storage services which include the blob service for storing binary and text data, the file service for storing binary and text data, the table service for storing structured non-relational data, and the queue service for storing messages that may be accessed by a client. -Homepage: https://blogs.msdn.com/b/windowsazurestorage/ \ No newline at end of file +Homepage: https://blogs.msdn.com/b/windowsazurestorage/ diff --git a/ports/botan/CONTROL b/ports/botan/CONTROL index 8ceb0118c9d0d8..9221e7f66b06eb 100644 --- a/ports/botan/CONTROL +++ b/ports/botan/CONTROL @@ -1,4 +1,4 @@ Source: botan -Version: 2.9.0 +Version: 2.9.0-1 Homepage: https://botan.randombit.net -Description: A cryptography library written in C++11 \ No newline at end of file +Description: A cryptography library written in C++11 diff --git a/ports/botan/portfile.cmake b/ports/botan/portfile.cmake index 8b9a200d4875d3..4dc02d5887c772 100644 --- a/ports/botan/portfile.cmake +++ b/ports/botan/portfile.cmake @@ -10,32 +10,14 @@ vcpkg_from_github( HEAD_REF master ) -set(NUMBER_OF_PROCESSORS "1") -if(DEFINED ENV{NUMBER_OF_PROCESSORS}) - set(NUMBER_OF_PROCESSORS $ENV{NUMBER_OF_PROCESSORS}) -else() - if(APPLE) - set(job_count_command sysctl -n hw.physicalcpu) - else() - set(job_count_command nproc) - endif() - execute_process( - COMMAND ${job_count_command} - OUTPUT_VARIABLE NUMBER_OF_PROCESSORS - ) - string(REPLACE "\n" "" NUMBER_OF_PROCESSORS "${NUMBER_OF_PROCESSORS}") - string(REPLACE " " "" NUMBER_OF_PROCESSORS "${NUMBER_OF_PROCESSORS}") - if(NOT NUMBER_OF_PROCESSORS) - set(NUMBER_OF_PROCESSORS "1") - endif() -endif() - if(CMAKE_HOST_WIN32) vcpkg_find_acquire_program(JOM) - set(build_tool "${JOM}" /J ${NUMBER_OF_PROCESSORS}) + set(build_tool "${JOM}") + set(parallel_build "/J ${VCPKG_CONCURRENCY}") else() find_program(MAKE make) - set(build_tool "${MAKE}" -j${NUMBER_OF_PROCESSORS}) + set(build_tool "${MAKE}") + set(parallel_build "-j${VCPKG_CONCURRENCY}") endif() vcpkg_find_acquire_program(PYTHON3) @@ -93,7 +75,7 @@ function(BOTAN_BUILD BOTAN_BUILD_TYPE) --link-method=copy) if(CMAKE_HOST_WIN32) list(APPEND configure_arguments ${BOTAN_MSVC_RUNTIME}${BOTAN_MSVC_RUNTIME_SUFFIX}) - endif() + endif() vcpkg_execute_required_process( COMMAND "${PYTHON3}" "${SOURCE_PATH}/configure.py" ${configure_arguments} @@ -102,8 +84,9 @@ function(BOTAN_BUILD BOTAN_BUILD_TYPE) message(STATUS "Configure ${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE} done") message(STATUS "Build ${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}") - vcpkg_execute_required_process( + vcpkg_execute_build_process( COMMAND ${build_tool} + NO_PARALLEL_COMMAND "${build_tool} ${parallel_build}" WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}" LOGNAME build-${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}) message(STATUS "Build ${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE} done") diff --git a/ports/c-ares/CONTROL b/ports/c-ares/CONTROL index dda2acde0948ce..c8a5f48542637b 100644 --- a/ports/c-ares/CONTROL +++ b/ports/c-ares/CONTROL @@ -1,5 +1,4 @@ Source: c-ares -Version: 2019-5-2 +Version: 2019-5-2-1 Homepage: https://github.com/c-ares/c-ares Description: A C library for asynchronous DNS requests -Build-Depends: diff --git a/ports/c-ares/portfile.cmake b/ports/c-ares/portfile.cmake index 094b52ff4a7e39..6d3769b1c2f94c 100644 --- a/ports/c-ares/portfile.cmake +++ b/ports/c-ares/portfile.cmake @@ -30,7 +30,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/c-ares") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/c-ares) if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) diff --git a/ports/capnproto/CONTROL b/ports/capnproto/CONTROL index 2bb136b7ab14ed..694469b1fb7299 100644 --- a/ports/capnproto/CONTROL +++ b/ports/capnproto/CONTROL @@ -1,5 +1,5 @@ Source: capnproto -Version: 0.7.0-1 +Version: 0.7.0-2 Description: Data interchange format and capability-based RPC system Homepage: https://capnproto.org/ Build-Depends: zlib diff --git a/ports/capnproto/portfile.cmake b/ports/capnproto/portfile.cmake index a9916a70af84e3..4043a53c550ad3 100644 --- a/ports/capnproto/portfile.cmake +++ b/ports/capnproto/portfile.cmake @@ -23,7 +23,7 @@ vcpkg_configure_cmake(SOURCE_PATH ${SOURCE_PATH}) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/CapnProto") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/CapnProto) file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools") file(RENAME "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/tools/capnproto") @@ -39,4 +39,4 @@ file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/capnp file(RENAME ${CURRENT_PACKAGES_DIR}/share/capnproto/LICENSE ${CURRENT_PACKAGES_DIR}/share/capnproto/copyright) # Disabled for now, see #5630 and #5635 -# vcpkg_test_cmake(PACKAGE_NAME CapnProto) \ No newline at end of file +# vcpkg_test_cmake(PACKAGE_NAME CapnProto) diff --git a/ports/cartographer/CONTROL b/ports/cartographer/CONTROL index b91c4a52eef24e..bf2916b69dea70 100644 --- a/ports/cartographer/CONTROL +++ b/ports/cartographer/CONTROL @@ -1,5 +1,5 @@ Source: cartographer -Version: 1.0.0 +Version: 1.0.0-1 Build-Depends: ceres[suitesparse], gflags, glog, lua, cairo, boost-iostreams, gtest, protobuf Homepage: https://github.com/googlecartographer/cartographer Description: Google 2D & 3D SLAM package diff --git a/ports/cartographer/portfile.cmake b/ports/cartographer/portfile.cmake index 889adddfbe6a11..f8b1ddcd88166a 100644 --- a/ports/cartographer/portfile.cmake +++ b/ports/cartographer/portfile.cmake @@ -27,7 +27,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/cartographer) +vcpkg_fixup_cmake_targets() vcpkg_copy_pdbs() # Clean diff --git a/ports/catch2/CONTROL b/ports/catch2/CONTROL index b3cd3c33d40db0..1a8c9265d6043e 100644 --- a/ports/catch2/CONTROL +++ b/ports/catch2/CONTROL @@ -1,4 +1,4 @@ Source: catch2 -Version: 2.7.2 +Version: 2.7.2-2 Description: A modern, header-only test framework for unit testing. Homepage: https://github.com/catchorg/Catch2 diff --git a/ports/catch2/portfile.cmake b/ports/catch2/portfile.cmake index 372b627aca5d2a..d790985728614b 100644 --- a/ports/catch2/portfile.cmake +++ b/ports/catch2/portfile.cmake @@ -18,7 +18,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Catch2 TARGET_PATH share/catch2) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Catch2) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) diff --git a/ports/ccd/CONTROL b/ports/ccd/CONTROL index e2b4463ba83edb..7820a1455c6c70 100644 --- a/ports/ccd/CONTROL +++ b/ports/ccd/CONTROL @@ -1,4 +1,4 @@ Source: ccd -Version: 2.1 +Version: 2.1-1 Homepage: https://github.com/danfis/libccd Description: Library for collision detection between two convex shapes diff --git a/ports/ccd/portfile.cmake b/ports/ccd/portfile.cmake index ba9b3a6f6ce2f5..45674918eccd1c 100644 --- a/ports/ccd/portfile.cmake +++ b/ports/ccd/portfile.cmake @@ -1,12 +1,12 @@ include(vcpkg_common_functions) -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH REPO danfis/libccd REF v2.1 SHA512 ff037d9c4df50f09600cf9b3514b259b2850ff43f74817853f5665d22812891168f70bd3cc3969b2c9e3c706f6254991a65421476349607fbd04d894b217456d - HEAD_REF master -) + HEAD_REF master +) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} @@ -21,7 +21,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/ccd") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/ccd) file(INSTALL ${SOURCE_PATH}/BSD-LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/ccd RENAME copyright) diff --git a/ports/cereal/CONTROL b/ports/cereal/CONTROL index ce879198fa95ea..05175d91d255c3 100644 --- a/ports/cereal/CONTROL +++ b/ports/cereal/CONTROL @@ -1,4 +1,4 @@ Source: cereal -Version: 1.2.2-1 +Version: 1.2.2-2 Homepage: https://github.com/USCiLab/cereal Description: a header-only C++11 serialization library (built in support for binary, XML and JSon) diff --git a/ports/cereal/portfile.cmake b/ports/cereal/portfile.cmake index 47eb76c4970dc9..de056150d2a0f2 100644 --- a/ports/cereal/portfile.cmake +++ b/ports/cereal/portfile.cmake @@ -18,8 +18,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/cmake/cereal") +vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/cereal) # Clean file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) diff --git a/ports/ceres/0001_add_missing_include_path.patch b/ports/ceres/0001_add_missing_include_path.patch deleted file mode 100644 index 8bb8dfb505d157..00000000000000 --- a/ports/ceres/0001_add_missing_include_path.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 02c72b5..15a947e 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -582,7 +582,7 @@ include_directories( - # Note that this is *not* propagated to clients, ie CERES_INCLUDE_DIRS - # used by clients after find_package(Ceres) does not identify Eigen as - # as system headers. --include_directories(SYSTEM ${EIGEN_INCLUDE_DIRS}) -+include_directories(SYSTEM ${EIGEN_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS}/Eigen) - - if (SUITESPARSE) - include_directories(${SUITESPARSE_INCLUDE_DIRS}) diff --git a/ports/ceres/0002_cmakelists_fixes.patch b/ports/ceres/0001_cmakelists_fixes.patch similarity index 81% rename from ports/ceres/0002_cmakelists_fixes.patch rename to ports/ceres/0001_cmakelists_fixes.patch index f806794a8e37a2..f269f05eefd852 100644 --- a/ports/ceres/0002_cmakelists_fixes.patch +++ b/ports/ceres/0001_cmakelists_fixes.patch @@ -1,5 +1,5 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 15a947e..62d8c59 100644 +index 02c72b5..62d8c59 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -374,27 +374,7 @@ if (MINIGLOG) @@ -31,6 +31,15 @@ index 15a947e..62d8c59 100644 endif (MINIGLOG) if (NOT SCHUR_SPECIALIZATIONS) +@@ -582,7 +562,7 @@ include_directories( + # Note that this is *not* propagated to clients, ie CERES_INCLUDE_DIRS + # used by clients after find_package(Ceres) does not identify Eigen as + # as system headers. +-include_directories(SYSTEM ${EIGEN_INCLUDE_DIRS}) ++include_directories(SYSTEM ${EIGEN_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS}/Eigen) + + if (SUITESPARSE) + include_directories(${SUITESPARSE_INCLUDE_DIRS}) @@ -917,8 +897,6 @@ install(FILES "${Ceres_BINARY_DIR}/CeresConfig-install.cmake" DESTINATION ${RELATIVE_CMAKECONFIG_INSTALL_DIR}) install(FILES "${Ceres_BINARY_DIR}/CeresConfigVersion.cmake" diff --git a/ports/ceres/0003_use_glog_target.patch b/ports/ceres/0002_use_glog_target.patch similarity index 100% rename from ports/ceres/0003_use_glog_target.patch rename to ports/ceres/0002_use_glog_target.patch diff --git a/ports/ceres/0004_fix_exported_ceres_config.patch b/ports/ceres/0003_fix_exported_ceres_config.patch similarity index 100% rename from ports/ceres/0004_fix_exported_ceres_config.patch rename to ports/ceres/0003_fix_exported_ceres_config.patch diff --git a/ports/ceres/0004_blas_linux_fix.patch b/ports/ceres/0004_blas_linux_fix.patch new file mode 100644 index 00000000000000..5fffee5e231cf4 --- /dev/null +++ b/ports/ceres/0004_blas_linux_fix.patch @@ -0,0 +1,22 @@ +diff --git a/internal/ceres/blas.cc b/internal/ceres/blas.cc +index 3ba63bb..071a26e 100644 +--- a/internal/ceres/blas.cc ++++ b/internal/ceres/blas.cc +@@ -33,7 +33,7 @@ + #include "glog/logging.h" + + #ifndef CERES_NO_LAPACK +-extern "C" void dsyrk_(char* uplo, ++extern "C" void dsyrk(char* uplo, + char* trans, + int* n, + int* k, +@@ -64,7 +64,7 @@ void BLAS::SymmetricRankKUpdate(int num_rows, + int k = transpose ? num_rows : num_cols; + int lda = k; + int ldc = n; +- dsyrk_(&uplo, ++ dsyrk(&uplo, + &trans, + &n, + &k, diff --git a/ports/ceres/CONTROL b/ports/ceres/CONTROL index 8cd34102e55333..850da31a627ebf 100644 --- a/ports/ceres/CONTROL +++ b/ports/ceres/CONTROL @@ -1,5 +1,5 @@ Source: ceres -Version: 1.14.0-4 +Version: 1.14.0-6 Build-Depends: glog, eigen3 Homepage: https://github.com/ceres-solver/ceres-solver Description: non-linear optimization package diff --git a/ports/ceres/portfile.cmake b/ports/ceres/portfile.cmake index f1b21d64793889..66481fc0934f22 100644 --- a/ports/ceres/portfile.cmake +++ b/ports/ceres/portfile.cmake @@ -1,3 +1,5 @@ +include(vcpkg_common_functions) + set(MSVC_USE_STATIC_CRT_VALUE OFF) if(VCPKG_CRT_LINKAGE STREQUAL "static") if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") @@ -6,7 +8,9 @@ if(VCPKG_CRT_LINKAGE STREQUAL "static") set(MSVC_USE_STATIC_CRT_VALUE ON) endif() -include(vcpkg_common_functions) +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(ADDITIONAL_PATCH "0004_blas_linux_fix.patch") +endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH @@ -15,10 +19,10 @@ vcpkg_from_github( SHA512 6dddddf5bd5834332a69add468578ad527e4d94fe85c9751ddf5fe9ad11a34918bdd9c994c49dd6ffc398333d0ac9752ac89aaef1293e2fe0a55524e303d415d HEAD_REF master PATCHES - 0001_add_missing_include_path.patch - 0002_cmakelists_fixes.patch - 0003_use_glog_target.patch - 0004_fix_exported_ceres_config.patch + 0001_cmakelists_fixes.patch + 0002_use_glog_target.patch + 0003_fix_exported_ceres_config.patch + ${ADDITIONAL_PATCH} ) file(REMOVE ${SOURCE_PATH}/cmake/FindGflags.cmake) @@ -70,9 +74,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - vcpkg_fixup_cmake_targets(CONFIG_PATH "CMake") + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib${LIB_SUFFIX}/cmake/Ceres") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib${LIB_SUFFIX}/cmake/Ceres) endif() vcpkg_copy_pdbs() diff --git a/ports/cgal/portfile.cmake b/ports/cgal/portfile.cmake index 87329830514196..e152f7b768a6b0 100644 --- a/ports/cgal/portfile.cmake +++ b/ports/cgal/portfile.cmake @@ -2,7 +2,7 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "Cgal's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() diff --git a/ports/clapack/CONTROL b/ports/clapack/CONTROL index 75755fe211c326..2b5d137fcb9ccc 100644 --- a/ports/clapack/CONTROL +++ b/ports/clapack/CONTROL @@ -1,5 +1,5 @@ Source: clapack -Version: 3.2.1-6 +Version: 3.2.1-9 Homepage: https://www.netlib.org/clapack Description: CLAPACK (f2c'ed version of LAPACK) Build-Depends: openblas (!osx) diff --git a/ports/clapack/FindLAPACK.cmake b/ports/clapack/FindLAPACK.cmake index dfbf2c73eec34b..002218eb8d5bf4 100644 --- a/ports/clapack/FindLAPACK.cmake +++ b/ports/clapack/FindLAPACK.cmake @@ -66,38 +66,61 @@ include(${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake) include(${CMAKE_ROOT}/Modules/CheckSymbolExists.cmake) include(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake) +include(${CMAKE_ROOT}/Modules/CMakeFindDependencyMacro.cmake) set(CLAPACK_VERSION "3.2.1") +set(CMAKE_THREAD_PREFER_PTHREAD TRUE) +find_dependency(Threads) + if(UNIX) find_library(ADDITIONAL_LAPACK_LIBRARY m) + set(PTHREAD_LINK_NAME "-pthread") endif() if(NOT F2C_LIBRARY) - find_library(F2C_LIBRARY_RELEASE NAMES f2c libf2c) - find_library(F2C_LIBRARY_DEBUG NAMES f2cd libf2cd) - list(APPEND F2C_LIBRARY_RELEASE ${ADDITIONAL_LAPACK_LIBRARY}) - list(APPEND F2C_LIBRARY_DEBUG ${ADDITIONAL_LAPACK_LIBRARY}) - select_library_configurations(F2C) -endif() + find_library(F2C_LIBRARY_RELEASE NAMES f2c libf2c) + find_library(F2C_LIBRARY_DEBUG NAMES f2cd libf2cd) + select_library_configurations(F2C) -find_package(BLAS) + #keep a list of "pure" f2c libs, without dependencies + set(oF2C_LIBRARY_RELEASE ${F2C_LIBRARY_RELEASE}) + set(oF2C_LIBRARY_DEBUG ${F2C_LIBRARY_DEBUG}) + set(oF2C_LIBRARY ${F2C_LIBRARY}) -if(NOT LAPACK_LIBRARY) - find_library(LAPACK_LIBRARY_RELEASE NAMES lapack) - find_library(LAPACK_LIBRARY_DEBUG NAMES lapackd) - list(APPEND LAPACK_LIBRARY_RELEASE ${F2C_LIBRARY_RELEASE}) - list(APPEND LAPACK_LIBRARY_DEBUG ${F2C_LIBRARY_DEBUG}) - select_library_configurations(LAPACK) + list(APPEND F2C_LIBRARY ${ADDITIONAL_LAPACK_LIBRARY}) endif() -list(APPEND LAPACK_LIBRARY ${BLAS_LIBRARIES}) +if(NOT LAPACK_LIBRARY) + find_library(LAPACK_LIBRARY_RELEASE NAMES lapack) + find_library(LAPACK_LIBRARY_DEBUG NAMES lapackd) -set(F2C_LIBRARIES "${F2C_LIBRARY}" CACHE STRING "" FORCE) -set(LAPACK_VERSION "${CLAPACK_VERSION}" CACHE STRING "" FORCE) -set(LAPACK_LIBRARIES "${LAPACK_LIBRARY}" CACHE STRING "" FORCE) -set(CLAPACK_LIBRARY "${LAPACK_LIBRARY}" CACHE STRING "" FORCE) -set(CLAPACK_LIBRARIES "${LAPACK_LIBRARY}" CACHE STRING "" FORCE) + #keep a list of "pure" lapack libs, without dependencies + set(oLAPACK_LIBRARY_RELEASE ${LAPACK_LIBRARY_RELEASE}) + set(oLAPACK_LIBRARY_DEBUG ${LAPACK_LIBRARY_DEBUG}) + select_library_configurations(oLAPACK) + + list(APPEND LAPACK_LIBRARY_RELEASE ${F2C_LIBRARY_RELEASE}) + list(APPEND LAPACK_LIBRARY_DEBUG ${F2C_LIBRARY_DEBUG}) + + find_dependency(BLAS) + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY IMPORTED_IMPLIB_RELEASE) + if(NOT _loc) + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY LOCATION_RELEASE) + endif() + set(LAPACK_BLAS_LIBRARY_RELEASE ${_loc}) + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY IMPORTED_IMPLIB_DEBUG) + if(NOT _loc) + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY LOCATION_DEBUG) + endif() + set(LAPACK_BLAS_LIBRARY_DEBUG ${_loc}) + select_library_configurations(LAPACK_BLAS) + list(APPEND LAPACK_LIBRARY_RELEASE ${LAPACK_BLAS_LIBRARY_RELEASE}) + list(APPEND LAPACK_LIBRARY_DEBUG ${LAPACK_BLAS_LIBRARY_DEBUG}) + + select_library_configurations(LAPACK) + list(APPEND LAPACK_LIBRARY Threads::Threads) +endif() if(NOT F2C_INCLUDE_DIR) find_path(F2C_INCLUDE_DIR NAMES f2c.h) @@ -108,91 +131,107 @@ if(NOT LAPACK_INCLUDE_DIR) endif() list(APPEND LAPACK_INCLUDE_DIR ${F2C_INCLUDE_DIR}) +set(LAPACK_INCLUDE_DIR "${LAPACK_INCLUDE_DIR}" CACHE PATH "" FORCE) set(LAPACK_INCLUDE_DIRS "${LAPACK_INCLUDE_DIR}" CACHE PATH "" FORCE) set(CLAPACK_INCLUDE_DIR "${LAPACK_INCLUDE_DIR}" CACHE PATH "" FORCE) set(CLAPACK_INCLUDE_DIRS "${LAPACK_INCLUDE_DIR}" CACHE PATH "" FORCE) set(F2C_INCLUDE_DIRS "${F2C_INCLUDE_DIR}" CACHE PATH "" FORCE) +set(LAPACK_DLL_DIR ${LAPACK_INCLUDE_DIR}) +list(TRANSFORM LAPACK_DLL_DIR APPEND "/../bin") +message(STATUS "LAPACK_DLL_DIR: ${LAPACK_DLL_DIR}") + if(WIN32) - string( REPLACE ".lib" ".dll" LAPACK_LIBRARY_RELEASE_DLL "${LAPACK_LIBRARY_RELEASE}" ) - string( REPLACE ".lib" ".dll" LAPACK_LIBRARY_DEBUG_DLL "${LAPACK_LIBRARY_DEBUG}" ) - string( REPLACE ".lib" ".dll" F2C_LIBRARY_RELEASE_DLL "${F2C_LIBRARY_RELEASE}" ) - string( REPLACE ".lib" ".dll" F2C_LIBRARY_DEBUG_DLL "${F2C_LIBRARY_DEBUG}" ) + find_file(LAPACK_LIBRARY_RELEASE_DLL NAMES lapack.dll PATHS ${LAPACK_DLL_DIR}) + find_file(LAPACK_LIBRARY_DEBUG_FOLDER NAMES lapackd.dll PATHS ${LAPACK_DLL_DIR}) + find_file(F2C_LIBRARY_RELEASE_DLL NAMES f2c.dll libf2c.dll PATHS ${LAPACK_DLL_DIR}) + find_file(F2C_LIBRARY_DEBUG_DLL NAMES f2cd.dll libf2cd.dll PATHS ${LAPACK_DLL_DIR}) endif() +set(LAPACK_BLAS_LIBRARY "${LAPACK_BLAS_LIBRARY}" CACHE STRING "" FORCE) +set(F2C_LIBRARIES "${F2C_LIBRARY}" CACHE STRING "" FORCE) +set(LAPACK_VERSION "${CLAPACK_VERSION}" CACHE STRING "" FORCE) +set(LAPACK_LIBRARIES "${LAPACK_LIBRARY}" CACHE STRING "" FORCE) +set(CLAPACK_LIBRARY "${LAPACK_LIBRARY}" CACHE STRING "" FORCE) +set(CLAPACK_LIBRARIES "${LAPACK_LIBRARY}" CACHE STRING "" FORCE) + +set(LAPACK_LIBRARY "${LAPACK_LIBRARY}" CACHE STRING "" FORCE) +set(F2C_LIBRARY "${F2C_LIBRARY}" CACHE STRING "" FORCE) +set(LAPACK_LIBRARY_RELEASE "${LAPACK_LIBRARY_RELEASE}" CACHE STRING "" FORCE) +set(LAPACK_LIBRARY_DEBUG "${LAPACK_LIBRARY_DEBUG}" CACHE STRING "" FORCE) +set(F2C_LIBRARY_RELEASE "${F2C_LIBRARY_RELEASE}" CACHE STRING "" FORCE) +set(F2C_LIBRARY_DEBUG "${F2C_LIBRARY_DEBUG}" CACHE STRING "" FORCE) + find_package_handle_standard_args(CLAPACK DEFAULT_MSG CLAPACK_LIBRARY CLAPACK_INCLUDE_DIR) mark_as_advanced(CLAPACK_INCLUDE_DIR CLAPACK_LIBRARY) -find_package_handle_standard_args(LAPACK DEFAULT_MSG LAPACK_LIBRARY LAPACK_INCLUDE_DIR) +find_package_handle_standard_args(LAPACK DEFAULT_MSG LAPACK_LIBRARY LAPACK_INCLUDE_DIR) mark_as_advanced(LAPACK_INCLUDE_DIR LAPACK_LIBRARY) -find_package_handle_standard_args(F2C DEFAULT_MSG F2C_LIBRARY F2C_INCLUDE_DIR) +find_package_handle_standard_args(F2C DEFAULT_MSG F2C_LIBRARY F2C_INCLUDE_DIR) mark_as_advanced(F2C_INCLUDE_DIR F2C_LIBRARY) #TARGETS -if( CLAPACK_FOUND AND NOT TARGET clapack::clapack ) - if( EXISTS "${LAPACK_LIBRARY_RELEASE_DLL}" ) - add_library( clapack::clapack SHARED IMPORTED ) - set_target_properties( clapack::clapack PROPERTIES - IMPORTED_LOCATION_RELEASE "${LAPACK_LIBRARY_RELEASE_DLL}" - IMPORTED_IMPLIB "${LAPACK_LIBRARY_RELEASE}" - INTERFACE_INCLUDE_DIRECTORIES "${LAPACK_INCLUDE_DIR}" - IMPORTED_CONFIGURATIONS Release - IMPORTED_LINK_INTERFACE_LANGUAGES "C" ) - if( EXISTS "${LAPACK_LIBRARY_DEBUG_DLL}" ) - set_property( TARGET clapack::clapack APPEND PROPERTY IMPORTED_CONFIGURATIONS Debug ) - set_target_properties( clapack::clapack PROPERTIES - IMPORTED_LOCATION_DEBUG "${LAPACK_LIBRARY_DEBUG_DLL}" - IMPORTED_IMPLIB_DEBUG "${LAPACK_LIBRARY_DEBUG}" ) +if(CLAPACK_FOUND AND NOT TARGET clapack::clapack) + if(EXISTS "${LAPACK_LIBRARY_RELEASE_DLL}") + add_library(clapack::clapack SHARED IMPORTED) + set_target_properties(clapack::clapack PROPERTIES + IMPORTED_LOCATION_RELEASE "${LAPACK_LIBRARY_RELEASE_DLL}" + IMPORTED_IMPLIB_RELEASE "${oLAPACK_LIBRARY_RELEASE}" + INTERFACE_INCLUDE_DIRECTORIES "${LAPACK_INCLUDE_DIR}" + INTERFACE_LINK_LIBRARIES "$<$>:${oF2C_LIBRARY_RELEASE}>;$<$:${oF2C_LIBRARY_DEBUG}>;$<$>:${LAPACK_BLAS_LIBRARY_RELEASE}>;$<$:${LAPACK_BLAS_LIBRARY_DEBUG}>;$;$" + IMPORTED_CONFIGURATIONS Release + IMPORTED_LINK_INTERFACE_LANGUAGES "C") + if(EXISTS "${LAPACK_LIBRARY_DEBUG_DLL}") + set_property(TARGET clapack::clapack APPEND PROPERTY IMPORTED_CONFIGURATIONS Debug) + set_target_properties(clapack::clapack PROPERTIES + IMPORTED_LOCATION_DEBUG "${LAPACK_LIBRARY_DEBUG_DLL}" + IMPORTED_IMPLIB_DEBUG "${oLAPACK_LIBRARY_DEBUG}") endif() else() - add_library( clapack::clapack UNKNOWN IMPORTED ) - set_target_properties( clapack::clapack PROPERTIES - IMPORTED_LOCATION_RELEASE "${LAPACK_LIBRARY_RELEASE}" - INTERFACE_INCLUDE_DIRECTORIES "${LAPACK_INCLUDE_DIR}" - IMPORTED_CONFIGURATIONS Release - IMPORTED_LINK_INTERFACE_LANGUAGES "C" ) - if( EXISTS "${LAPACK_LIBRARY_DEBUG}" ) - set_property( TARGET clapack::clapack APPEND PROPERTY IMPORTED_CONFIGURATIONS Debug ) - set_target_properties( clapack::clapack PROPERTIES - IMPORTED_LOCATION_DEBUG "${LAPACK_LIBRARY_DEBUG}" ) + add_library(clapack::clapack UNKNOWN IMPORTED) + set_target_properties(clapack::clapack PROPERTIES + IMPORTED_LOCATION_RELEASE "${oLAPACK_LIBRARY_RELEASE}" + INTERFACE_INCLUDE_DIRECTORIES "${LAPACK_INCLUDE_DIR}" + INTERFACE_LINK_LIBRARIES "$<$>:${oF2C_LIBRARY_RELEASE}>;$<$:${oF2C_LIBRARY_DEBUG}>;$<$>:${LAPACK_BLAS_LIBRARY_RELEASE}>;$<$:${LAPACK_BLAS_LIBRARY_DEBUG}>;$;$" + IMPORTED_CONFIGURATIONS Release + IMPORTED_LINK_INTERFACE_LANGUAGES "C") + if(EXISTS "${LAPACK_LIBRARY_DEBUG}") + set_property(TARGET clapack::clapack APPEND PROPERTY IMPORTED_CONFIGURATIONS Debug) + set_target_properties(clapack::clapack PROPERTIES + IMPORTED_LOCATION_DEBUG "${oLAPACK_LIBRARY_DEBUG}") endif() endif() endif() -if( CLAPACK_FOUND AND NOT TARGET lapack ) - if( EXISTS "${LAPACK_LIBRARY_RELEASE_DLL}" ) - add_library( lapack SHARED IMPORTED ) - set_target_properties( lapack PROPERTIES - IMPORTED_LOCATION_RELEASE "${LAPACK_LIBRARY_RELEASE_DLL}" - IMPORTED_IMPLIB "${LAPACK_LIBRARY_RELEASE}" - INTERFACE_INCLUDE_DIRECTORIES "${LAPACK_INCLUDE_DIR}" - IMPORTED_CONFIGURATIONS Release - IMPORTED_LINK_INTERFACE_LANGUAGES "C" ) - if( EXISTS "${LAPACK_LIBRARY_DEBUG_DLL}" ) - set_property( TARGET lapack APPEND PROPERTY IMPORTED_CONFIGURATIONS Debug ) - set_target_properties( lapack PROPERTIES - IMPORTED_LOCATION_DEBUG "${LAPACK_LIBRARY_DEBUG_DLL}" - IMPORTED_IMPLIB_DEBUG "${LAPACK_LIBRARY_DEBUG}" ) +if(CLAPACK_FOUND AND NOT TARGET lapack) + if(EXISTS "${LAPACK_LIBRARY_RELEASE_DLL}") + add_library(lapack SHARED IMPORTED) + set_target_properties(lapack PROPERTIES + IMPORTED_LOCATION_RELEASE "${LAPACK_LIBRARY_RELEASE_DLL}" + IMPORTED_IMPLIB_RELEASE "${oLAPACK_LIBRARY_RELEASE}" + INTERFACE_INCLUDE_DIRECTORIES "${LAPACK_INCLUDE_DIR}" + INTERFACE_LINK_LIBRARIES "$<$>:${oF2C_LIBRARY_RELEASE}>;$<$:${oF2C_LIBRARY_DEBUG}>;$<$>:${LAPACK_BLAS_LIBRARY_RELEASE}>;$<$:${LAPACK_BLAS_LIBRARY_DEBUG}>;$;$" + IMPORTED_CONFIGURATIONS Release + IMPORTED_LINK_INTERFACE_LANGUAGES "C") + if(EXISTS "${LAPACK_LIBRARY_DEBUG_DLL}") + set_property(TARGET lapack APPEND PROPERTY IMPORTED_CONFIGURATIONS Debug) + set_target_properties(lapack PROPERTIES + IMPORTED_LOCATION_DEBUG "${LAPACK_LIBRARY_DEBUG_DLL}" + IMPORTED_IMPLIB_DEBUG "${oLAPACK_LIBRARY_DEBUG}") endif() else() - add_library( lapack UNKNOWN IMPORTED ) - set_target_properties( lapack PROPERTIES - IMPORTED_LOCATION_RELEASE "${LAPACK_LIBRARY_RELEASE}" - INTERFACE_INCLUDE_DIRECTORIES "${LAPACK_INCLUDE_DIR}" - IMPORTED_CONFIGURATIONS Release - IMPORTED_LINK_INTERFACE_LANGUAGES "C" ) - if( EXISTS "${LAPACK_LIBRARY_DEBUG}" ) - set_property( TARGET lapack APPEND PROPERTY IMPORTED_CONFIGURATIONS Debug ) - set_target_properties( lapack PROPERTIES - IMPORTED_LOCATION_DEBUG "${LAPACK_LIBRARY_DEBUG}" ) + add_library(lapack UNKNOWN IMPORTED) + set_target_properties(lapack PROPERTIES + IMPORTED_LOCATION_RELEASE "${oLAPACK_LIBRARY_RELEASE}" + INTERFACE_INCLUDE_DIRECTORIES "${LAPACK_INCLUDE_DIR}" + IMPORTED_CONFIGURATIONS Release + INTERFACE_LINK_LIBRARIES "$<$>:${oF2C_LIBRARY_RELEASE}>;$<$:${oF2C_LIBRARY_DEBUG}>;$<$>:${LAPACK_BLAS_LIBRARY_RELEASE}>;$<$:${LAPACK_BLAS_LIBRARY_DEBUG}>;$;$" + IMPORTED_LINK_INTERFACE_LANGUAGES "C") + if(EXISTS "${LAPACK_LIBRARY_DEBUG}") + set_property(TARGET lapack APPEND PROPERTY IMPORTED_CONFIGURATIONS Debug) + set_target_properties(lapack PROPERTIES + IMPORTED_LOCATION_DEBUG "${oLAPACK_LIBRARY_DEBUG}") endif() endif() endif() - -set(LAPACK_LIBRARY "${LAPACK_LIBRARY}" CACHE STRING "" FORCE) -set(F2C_LIBRARY "${F2C_LIBRARY}" CACHE STRING "" FORCE) -set(LAPACK_LIBRARY_RELEASE "${LAPACK_LIBRARY_RELEASE}" CACHE STRING "" FORCE) -set(LAPACK_LIBRARY_DEBUG "${LAPACK_LIBRARY_DEBUG}" CACHE STRING "" FORCE) -set(F2C_LIBRARY_RELEASE "${F2C_LIBRARY_RELEASE}" CACHE STRING "" FORCE) -set(F2C_LIBRARY_DEBUG "${F2C_LIBRARY_DEBUG}" CACHE STRING "" FORCE) diff --git a/ports/clapack/enable_openblas_compat.patch b/ports/clapack/enable_openblas_compat.patch new file mode 100644 index 00000000000000..3199354757a4ff --- /dev/null +++ b/ports/clapack/enable_openblas_compat.patch @@ -0,0 +1,112 @@ +diff --git a/INCLUDE/blaswrap.h b/INCLUDE/blaswrap.h +index 333a17a..fb6750a 100644 +--- a/INCLUDE/blaswrap.h ++++ b/INCLUDE/blaswrap.h +@@ -155,6 +155,107 @@ + #define ctrsm_ f2c_ctrsm + #define ztrsm_ f2c_ztrsm + ++#else ++ ++#define sswap_ sswap ++#define saxpy_ saxpy ++#define sasum_ sasum ++#define isamax_ isamax ++#define scopy_ scopy ++#define sscal_ sscal ++#define sger_ sger ++#define snrm2_ snrm2 ++#define ssymv_ ssymv ++#define sdot_ sdot ++#define saxpy_ saxpy ++#define ssyr2_ ssyr2 ++#define srot_ srot ++#define sgemv_ sgemv ++#define strsv_ strsv ++#define sgemm_ sgemm ++#define strsm_ strsm ++ ++#define dswap_ dswap ++#define daxpy_ daxpy ++#define dasum_ dasum ++#define idamax_ idamax ++#define dcopy_ dcopy ++#define dscal_ dscal ++#define dger_ dger ++#define dnrm2_ dnrm2 ++#define dsymv_ dsymv ++#define ddot_ ddot ++#define dsyr2_ dsyr2 ++#define drot_ drot ++#define dgemv_ dgemv ++#define dtrsv_ dtrsv ++#define dgemm_ dgemm ++#define dtrsm_ dtrsm ++ ++#define cswap_ cswap ++#define caxpy_ caxpy ++#define scasum_ scasum ++#define icamax_ icamax ++#define ccopy_ ccopy ++#define cscal_ cscal ++#define scnrm2_ scnrm2 ++#define cgemv_ cgemv ++#define ctrsv_ ctrsv ++#define cgemm_ cgemm ++#define ctrsm_ ctrsm ++#define cgerc_ cgerc ++#define chemv_ chemv ++#define cher2_ cher2 ++ ++#define zswap_ zswap ++#define zaxpy_ zaxpy ++#define dzasum_ dzasum ++#define izamax_ izamax ++#define zcopy_ zcopy ++#define zscal_ zscal ++#define dznrm2_ dznrm2 ++#define zgemv_ zgemv ++#define ztrsv_ ztrsv ++#define zgemm_ zgemm ++#define ztrsm_ ztrsm ++#define zgerc_ zgerc ++#define zhemv_ zhemv ++#define zher2_ zher2 ++ ++/* LAPACK */ ++#define dlacon_ dlacon ++#define slacon_ slacon ++#define icmax1_ icmax1 ++#define scsum1_ scsum1 ++#define clacon_ clacon ++#define dzsum1_ dzsum1 ++#define izmax1_ izmax1 ++#define zlacon_ zlacon ++ ++/* Fortran interface */ ++#define c_bridge_dgssv_ c_bridge_dgssv ++#define c_fortran_sgssv_ c_fortran_sgssv ++#define c_fortran_dgssv_ c_fortran_dgssv ++#define c_fortran_cgssv_ c_fortran_cgssv ++#define c_fortran_zgssv_ c_fortran_zgssv ++ ++#define cdotc_ cdotc ++#define cdotu_ cdotu ++#define csscal_ csscal ++#define zdscal_ zdscal ++#define zdotc_ zdotc ++#define zdotu_ zdotu ++#define ctrmm_ ctrmm ++#define dtrmm_ dtrmm ++#define strmm_ strmm ++#define ztrmm_ ztrmm ++#define cgeru_ cgeru ++#define zgeru_ zgeru ++#define xerbla_ xerbla ++#define dtrmv_ dtrmv ++#define dsyrk_ dsyrk ++#define zherk_ zherk ++ + #endif /* NO_BLAS_WRAP */ + + #endif /* __BLASWRAP_H */ diff --git a/ports/clapack/openblas_linux.patch b/ports/clapack/openblas_linux.patch deleted file mode 100644 index e2b7b6e8286c46..00000000000000 --- a/ports/clapack/openblas_linux.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index c729d95..2b15e31 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,6 +1,6 @@ - cmake_minimum_required(VERSION 2.6) - project(CLAPACK C) --find_package(BLAS REQUIRED) -+find_package(OpenBLAS REQUIRED) - - if(WIN32 AND NOT CYGWIN) - set(SECOND_SRC ${CLAPACK_SOURCE_DIR}/INSTALL/winsecond.c) diff --git a/ports/clapack/portfile.cmake b/ports/clapack/portfile.cmake index ecdf51c87af4a2..2845bbdc220050 100644 --- a/ports/clapack/portfile.cmake +++ b/ports/clapack/portfile.cmake @@ -1,5 +1,11 @@ include(vcpkg_common_functions) +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + message(WARNING "You do not need this package on macOS, since you already have the Accelerate Framework") + return() +endif() + vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_download_distfile(ARCHIVE @@ -9,7 +15,7 @@ vcpkg_download_distfile(ARCHIVE ) if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") - set(ADDITIONAL_PATCH "openblas_linux.patch") + set(ADDITIONAL_PATCH "enable_openblas_compat.patch") endif() vcpkg_extract_source_archive_ex( @@ -31,7 +37,7 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() #TODO: fix the official exported targets, since they are broken (luckily it seems that no-one uses them for now) -vcpkg_fixup_cmake_targets(CONFIG_PATH share/clapack) +vcpkg_fixup_cmake_targets() #we install a cmake wrapper since the official FindLAPACK module in cmake does find clapack easily, unfortunately... file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/lapack) diff --git a/ports/clapack/remove_internal_blas.patch b/ports/clapack/remove_internal_blas.patch index 471d87a87aa6fa..3b8c59b4c8a927 100644 --- a/ports/clapack/remove_internal_blas.patch +++ b/ports/clapack/remove_internal_blas.patch @@ -1,5 +1,5 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 320ccc6..284e9d3 100755 +index 320ccc6..414ac8e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,6 @@ @@ -45,7 +45,7 @@ index 320ccc6..284e9d3 100755 + DESTINATION include) + diff --git a/F2CLIBS/libf2c/CMakeLists.txt b/F2CLIBS/libf2c/CMakeLists.txt -index 43d7b3f..6fa3598 100755 +index 43d7b3f..6fa3598 100644 --- a/F2CLIBS/libf2c/CMakeLists.txt +++ b/F2CLIBS/libf2c/CMakeLists.txt @@ -60,3 +60,11 @@ include_directories(${CLAPACK_SOURCE_DIR}/F2CLIBS/libf2c) @@ -61,7 +61,7 @@ index 43d7b3f..6fa3598 100755 + ARCHIVE DESTINATION lib) + diff --git a/SRC/CMakeLists.txt b/SRC/CMakeLists.txt -index ac4cce3..07dc8c7 100755 +index ac4cce3..07dc8c7 100644 --- a/SRC/CMakeLists.txt +++ b/SRC/CMakeLists.txt @@ -376,5 +376,9 @@ if(BUILD_COMPLEX16) @@ -75,10 +75,3 @@ index ac4cce3..07dc8c7 100755 + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib) -diff --git a/clapack-config.cmake.in b/clapack-config.cmake.in -index cd19f1d..597f474 100755 ---- a/clapack-config.cmake.in -+++ b/clapack-config.cmake.in -@@ -1 +1 @@ --include("@CLAPACK_BINARY_DIR@/clapack-targets.cmake") -+include("@CLAPACK_BINARY_DIR@/clapack-targets.cmake") diff --git a/ports/clapack/vcpkg-cmake-wrapper.cmake b/ports/clapack/vcpkg-cmake-wrapper.cmake index 69c54ea0da1b14..aee3e1e086f36e 100644 --- a/ports/clapack/vcpkg-cmake-wrapper.cmake +++ b/ports/clapack/vcpkg-cmake-wrapper.cmake @@ -1,4 +1,8 @@ set(LAPACK_PREV_MODULE_PATH ${CMAKE_MODULE_PATH}) list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}) -_find_package(${ARGS}) + +if(NOT LAPACK_LIBRARIES) + _find_package(${ARGS}) +endif() + set(CMAKE_MODULE_PATH ${LAPACK_PREV_MODULE_PATH}) diff --git a/ports/clblas/CONTROL b/ports/clblas/CONTROL index 41637657940a03..3837fcbca9abd5 100644 --- a/ports/clblas/CONTROL +++ b/ports/clblas/CONTROL @@ -1,4 +1,4 @@ Source: clblas -Version: 2.12-1 +Version: 2.12-2 Build-Depends: opencl Description: clBLAS is an OpenCL 1.2 accelerated BLAS (Basic Linear Algebra Subsystem) library. diff --git a/ports/clblas/portfile.cmake b/ports/clblas/portfile.cmake index 9088fc2e908970..5619cea8fdd70a 100644 --- a/ports/clblas/portfile.cmake +++ b/ports/clblas/portfile.cmake @@ -53,6 +53,6 @@ file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vcruntime140d.dll ) -vcpkg_fixup_cmake_targets(CONFIG_PATH "CMake") +vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() diff --git a/ports/clfft/CONTROL b/ports/clfft/CONTROL index d65da199511236..4cc887f47f0147 100644 --- a/ports/clfft/CONTROL +++ b/ports/clfft/CONTROL @@ -1,5 +1,5 @@ Source: clfft -Version: 2.12.2 +Version: 2.12.2-1 Build-Depends: opencl Homepage: https://github.com/clMathLibraries/clFFT Description: clFFT is an OpenCL 1.2 accelerated Fast Fourier Transform library. diff --git a/ports/clfft/portfile.cmake b/ports/clfft/portfile.cmake index 4e314b5d99fae7..6ef4ec6f77f34c 100644 --- a/ports/clfft/portfile.cmake +++ b/ports/clfft/portfile.cmake @@ -32,6 +32,6 @@ file(INSTALL ${CURRENT_PACKAGES_DIR}/share/clfft/copyright ) -vcpkg_fixup_cmake_targets(CONFIG_PATH "CMake") +vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() diff --git a/ports/cli/CONTROL b/ports/cli/CONTROL index 13fa3d73be67c5..a7db9c2edbef90 100644 --- a/ports/cli/CONTROL +++ b/ports/cli/CONTROL @@ -1,4 +1,4 @@ Source: cli -Version: 1.1 +Version: 1.1-1 Description: A library for interactive command line interfaces in modern C++ Build-Depends: boost-asio diff --git a/ports/cli/portfile.cmake b/ports/cli/portfile.cmake index 3a340b50fe14b2..c83f75dd80d4f6 100644 --- a/ports/cli/portfile.cmake +++ b/ports/cli/portfile.cmake @@ -4,7 +4,7 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO daniele77/cli REF v1.1.0 - SHA512 a3aeac666567359521d625442f5a03b35ea1e6cf7bd63cdc52dfea20397a1726ce34aeab08ffd7181b9390fb791c56e5aba0260e300329ff327282f1547940c8 + SHA512 a3aeac666567359521d625442f5a03b35ea1e6cf7bd63cdc52dfea20397a1726ce34aeab08ffd7181b9390fb791c56e5aba0260e300329ff327282f1547940c8 HEAD_REF master ) @@ -14,7 +14,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/cli TARGET_PATH share/cli) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/cli) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/cli RENAME copyright) diff --git a/ports/clp/CMakeLists.txt b/ports/clp/CMakeLists.txt index 94f6559d98c850..cced65c98a594d 100644 --- a/ports/clp/CMakeLists.txt +++ b/ports/clp/CMakeLists.txt @@ -12,7 +12,7 @@ set(CMAKE_CXX_STANDARD 14) set(INSTALL_BIN_DIR "bin" CACHE PATH "Path where exe and dll will be installed") set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed") set(INSTALL_INCLUDE_DIR "include/Coin" CACHE PATH "Path where headers will be installed") -set(INSTALL_CMAKE_DIR "share/${PROJECT_NAME}" CACHE PATH "Path where cmake configs will be installed") +set(INSTALL_CMAKE_DIR "share/clp" CACHE PATH "Path where cmake configs will be installed") # Make relative paths absolute (needed later on) set(RELATIVE_INSTALL_INCLUDE_DIR ${INSTALL_INCLUDE_DIR}) diff --git a/ports/clp/CONTROL b/ports/clp/CONTROL index a0bdee5d3666a1..adf2036bfab3bf 100644 --- a/ports/clp/CONTROL +++ b/ports/clp/CONTROL @@ -1,4 +1,4 @@ Source: clp -Version: 1.17.2-1 +Version: 1.17.2-2 Description: Clp (Coin-or linear programming) is an open-source linear programming solver written in C++. It is primarily meant to be used as a callable library, but a basic, stand-alone executable version is also available. Build-Depends: coinutils, osi diff --git a/ports/clp/portfile.cmake b/ports/clp/portfile.cmake index 83581af35718b0..945a381995fbe0 100644 --- a/ports/clp/portfile.cmake +++ b/ports/clp/portfile.cmake @@ -19,11 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") #on case-sensitive filesystems, it's necessary to rename and make it lowercase - vcpkg_fixup_cmake_targets(CONFIG_PATH share/Clp) -else() - vcpkg_fixup_cmake_targets() -endif() +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/coinutils/CMakeLists.txt b/ports/coinutils/CMakeLists.txt index bdaf5969b6306e..643bbec44aeab5 100644 --- a/ports/coinutils/CMakeLists.txt +++ b/ports/coinutils/CMakeLists.txt @@ -12,7 +12,7 @@ set(CMAKE_CXX_STANDARD 14) set(INSTALL_BIN_DIR "bin" CACHE PATH "Path where exe and dll will be installed") set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed") set(INSTALL_INCLUDE_DIR "include/Coin" CACHE PATH "Path where headers will be installed") -set(INSTALL_CMAKE_DIR "share/${PROJECT_NAME}" CACHE PATH "Path where cmake configs will be installed") +set(INSTALL_CMAKE_DIR "share/coinutils" CACHE PATH "Path where cmake configs will be installed") # Make relative paths absolute (needed later on) set(RELATIVE_INSTALL_INCLUDE_DIR ${INSTALL_INCLUDE_DIR}) diff --git a/ports/coinutils/CONTROL b/ports/coinutils/CONTROL index fd495d62dc3581..13db5a93720cf8 100644 --- a/ports/coinutils/CONTROL +++ b/ports/coinutils/CONTROL @@ -1,3 +1,3 @@ Source: coinutils -Version: 2.11.2-1 +Version: 2.11.2-2 Description: CoinUtils (Coin-or Utilities) is an open-source collection of classes and functions that are generally useful to more than one COIN-OR project diff --git a/ports/coinutils/portfile.cmake b/ports/coinutils/portfile.cmake index 42bd8d2d1b1c74..23a2a673d016de 100644 --- a/ports/coinutils/portfile.cmake +++ b/ports/coinutils/portfile.cmake @@ -19,11 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") #on case-sensitive filesystems, it's necessary to rename and make it lowercase - vcpkg_fixup_cmake_targets(CONFIG_PATH share/CoinUtils) -else() - vcpkg_fixup_cmake_targets() -endif() +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/collada-dom/CONTROL b/ports/collada-dom/CONTROL index 6625c5a4a48132..952f4ae5048ba6 100644 --- a/ports/collada-dom/CONTROL +++ b/ports/collada-dom/CONTROL @@ -1,4 +1,4 @@ Source: collada-dom -Version: 2.5.0 +Version: 2.5.0-1 Description: The COLLADA Document Object Model (DOM) is an application programming interface (API) that provides a C++ object representation of a COLLADA XML instance document. -Build-Depends: zlib, libxml2, minizip, pcre, uriparser, boost-filesystem, boost-system \ No newline at end of file +Build-Depends: zlib, libxml2, minizip, pcre, uriparser, boost-filesystem, boost-system diff --git a/ports/collada-dom/portfile.cmake b/ports/collada-dom/portfile.cmake index eda714af1c9d04..f36d8e4a9557a0 100644 --- a/ports/collada-dom/portfile.cmake +++ b/ports/collada-dom/portfile.cmake @@ -18,11 +18,11 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/collada_dom-2.5") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/collada_dom-2.5) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # Handle copyright file(INSTALL ${SOURCE_PATH}/licenses/license_e.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/collada-dom - RENAME copyright) \ No newline at end of file + RENAME copyright) diff --git a/ports/console-bridge/CONTROL b/ports/console-bridge/CONTROL index f9d10b7e046a7f..47870b72e9355f 100644 --- a/ports/console-bridge/CONTROL +++ b/ports/console-bridge/CONTROL @@ -1,4 +1,4 @@ Source: console-bridge -Version: 0.3.2-3 +Version: 0.3.2-4 Homepage: https://github.com/ros/console_bridge Description: a ROS-independent package for logging that seamlessly pipes into rosconsole/rosout for ROS-dependent packages. diff --git a/ports/console-bridge/portfile.cmake b/ports/console-bridge/portfile.cmake index dc618b4b97cca0..8b99e125be7d51 100644 --- a/ports/console-bridge/portfile.cmake +++ b/ports/console-bridge/portfile.cmake @@ -22,9 +22,9 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) - vcpkg_fixup_cmake_targets(CONFIG_PATH "CMake" TARGET_PATH share/console_bridge) + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake TARGET_PATH share/console_bridge) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/console_bridge/cmake" TARGET_PATH share/console_bridge) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/console_bridge/cmake TARGET_PATH share/console_bridge) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/console_bridge) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/console_bridge) endif() diff --git a/ports/cpp-netlib/CONTROL b/ports/cpp-netlib/CONTROL index 361c4dceddcfd0..9d33aa289e5989 100644 --- a/ports/cpp-netlib/CONTROL +++ b/ports/cpp-netlib/CONTROL @@ -1,4 +1,4 @@ Source: cpp-netlib -Version: 0.13.0-final +Version: 0.13.0-2 +Build-Depends: boost Description: A collection of network-related routines/implementations geared towards providing a robust cross-platform networking library -Build-Depends: boost \ No newline at end of file diff --git a/ports/cpp-netlib/portfile.cmake b/ports/cpp-netlib/portfile.cmake index b57efdbf13df91..abea253d8e1bde 100644 --- a/ports/cpp-netlib/portfile.cmake +++ b/ports/cpp-netlib/portfile.cmake @@ -9,7 +9,7 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO cpp-netlib/cpp-netlib - REF cpp-netlib-0.13.0-final + REF cpp-netlib-0.13.0-final SHA512 1839bf1acb7917acd2957f1008a44ed26a38849afb5843bfa0d5c557dde530afab4183d8d273a87d6416aad2b3a59fdecdef5fbb62bc91ed484486c80a1de5eb HEAD_REF master ) @@ -20,18 +20,17 @@ vcpkg_from_github( OPTIONS -DCPP-NETLIB_BUILD_TESTS=off -DCPP-NETLIB_BUILD_EXAMPLES=off - + ) vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -if(WIN32 AND NOT CYGWIN) - vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/${PORT}) +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) else() vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/cppnetlib) endif() file(INSTALL ${SOURCE_PATH}/LICENSE_1_0.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) - diff --git a/ports/crc32c/CONTROL b/ports/crc32c/CONTROL index 329b5a3bf17f2d..764a0f2d83b0e4 100644 --- a/ports/crc32c/CONTROL +++ b/ports/crc32c/CONTROL @@ -1,4 +1,4 @@ Source: crc32c -Version: 1.0.7 +Version: 1.0.7-1 Homepage: https://github.com/google/crc32c Description: CRC32C implementation with support for CPU-specific acceleration instructions. diff --git a/ports/crc32c/portfile.cmake b/ports/crc32c/portfile.cmake index 1802c0c3518270..a15961f94d7e65 100644 --- a/ports/crc32c/portfile.cmake +++ b/ports/crc32c/portfile.cmake @@ -20,7 +20,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/Crc32c") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Crc32c) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/cryptopp/CONTROL b/ports/cryptopp/CONTROL index 76c754565da534..04c25da704b660 100644 --- a/ports/cryptopp/CONTROL +++ b/ports/cryptopp/CONTROL @@ -1,4 +1,4 @@ Source: cryptopp -Version: 8.1.0-1 +Version: 8.1.0-2 Homepage: https://github.com/weidai11/cryptopp Description: Crypto++ is a free C++ class library of cryptographic schemes. diff --git a/ports/cryptopp/portfile.cmake b/ports/cryptopp/portfile.cmake index ad6557f775f89b..728436d59e4437 100644 --- a/ports/cryptopp/portfile.cmake +++ b/ports/cryptopp/portfile.cmake @@ -27,7 +27,7 @@ file(COPY ${CMAKE_SOURCE_PATH}/cryptopp-config.cmake DESTINATION ${SOURCE_PATH}) file(COPY ${CMAKE_SOURCE_PATH}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) # disable assembly on OSX to fix broken build -if(APPLE) +if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") set(CRYPTOPP_DISABLE_ASM "ON") else() set(CRYPTOPP_DISABLE_ASM "OFF") diff --git a/ports/curl/CONTROL b/ports/curl/CONTROL index 1c607bce3b4cf6..bd7c4b39b915f1 100644 --- a/ports/curl/CONTROL +++ b/ports/curl/CONTROL @@ -1,5 +1,5 @@ Source: curl -Version: 7.65.0-1 +Version: 7.65.0-2 Build-Depends: zlib Homepage: https://github.com/curl/curl Description: A library for transferring data with URLs diff --git a/ports/curl/portfile.cmake b/ports/curl/portfile.cmake index 294c7a7584fe66..5366fe88c4a830 100644 --- a/ports/curl/portfile.cmake +++ b/ports/curl/portfile.cmake @@ -113,7 +113,7 @@ vcpkg_install_cmake() if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/CURL) vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/CURL) elseif(EXISTS ${CURRENT_PACKAGES_DIR}/share/curl) - vcpkg_fixup_cmake_targets(CONFIG_PATH share/curl) + vcpkg_fixup_cmake_targets() else() message(FATAL_ERROR "Could not locate the curl config files") endif() diff --git a/ports/cxxopts/CONTROL b/ports/cxxopts/CONTROL index 5d1a92d91550c6..1d5664cec65102 100644 --- a/ports/cxxopts/CONTROL +++ b/ports/cxxopts/CONTROL @@ -1,4 +1,4 @@ Source: cxxopts -Version: 2.1.2 +Version: 2.1.2-1 Homepage: https://github.com/jarro2783/cxxopts Description: This is a lightweight C++ option parser library, supporting the standard GNU style syntax for options diff --git a/ports/cxxopts/portfile.cmake b/ports/cxxopts/portfile.cmake index d3b4fec561183f..dd5981e7d70f45 100644 --- a/ports/cxxopts/portfile.cmake +++ b/ports/cxxopts/portfile.cmake @@ -16,7 +16,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/cxxopts TARGET_PATH share/cxxopts) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/cxxopts) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) diff --git a/ports/eigen3/CONTROL b/ports/eigen3/CONTROL index b67376ced0311b..898b9ae713d410 100644 --- a/ports/eigen3/CONTROL +++ b/ports/eigen3/CONTROL @@ -1,4 +1,4 @@ Source: eigen3 -Version: 3.3.7-1 +Version: 3.3.7-2 Homepage: https://bitbucket.org/eigen/eigen Description: C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. diff --git a/ports/eigen3/portfile.cmake b/ports/eigen3/portfile.cmake index 31806319f408bb..ef613537363afa 100644 --- a/ports/eigen3/portfile.cmake +++ b/ports/eigen3/portfile.cmake @@ -2,7 +2,7 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "eigen3's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index a4ea220305c553..1868de82d01cdc 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,8 +1,8 @@ Source: exiv2 -Version: 0.27.1 +Version: 0.27.1-1 Build-Depends: zlib, expat, libiconv, gettext Description: Image metadata library and tools Homepage: https://www.exiv2.org Feature: unicode -Description: Compile with unicode support on windows \ No newline at end of file +Description: Compile with unicode support on windows diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 64ecfc28f21df4..d9e1ecb4d92239 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -28,8 +28,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/exiv2/cmake") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/exiv2/cmake) configure_file( ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake diff --git a/ports/fcl/CONTROL b/ports/fcl/CONTROL index bc1a27ccc83d8f..aaae4f57b1dc71 100644 --- a/ports/fcl/CONTROL +++ b/ports/fcl/CONTROL @@ -1,5 +1,5 @@ Source: fcl -Version: 0.5.0-5 +Version: 0.5.0-6 Homepage: https://github.com/flexible-collision-library/fcl Description: a library for performing three types of proximity queries on a pair of geometric models composed of triangles Build-Depends: ccd, octomap diff --git a/ports/fcl/portfile.cmake b/ports/fcl/portfile.cmake index 1bb4e9a154627e..65ff738d0130fd 100644 --- a/ports/fcl/portfile.cmake +++ b/ports/fcl/portfile.cmake @@ -34,9 +34,9 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) - vcpkg_fixup_cmake_targets(CONFIG_PATH "CMake") + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/fcl") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/fcl) endif() diff --git a/ports/ffmpeg/CONTROL b/ports/ffmpeg/CONTROL index 209bb2306b0399..4c15656798ed87 100644 --- a/ports/ffmpeg/CONTROL +++ b/ports/ffmpeg/CONTROL @@ -1,5 +1,5 @@ Source: ffmpeg -Version: 4.1-6 +Version: 4.1-8 Homepage: https://ffmpeg.org Description: a library to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc. under a wide variety of build environments, machine architectures, and configurations. diff --git a/ports/ffmpeg/FindFFMPEG.cmake b/ports/ffmpeg/FindFFMPEG.cmake index f8e65f53a9b8a0..65ab59e9020c40 100644 --- a/ports/ffmpeg/FindFFMPEG.cmake +++ b/ports/ffmpeg/FindFFMPEG.cmake @@ -1,13 +1,131 @@ -include(FindPackageHandleStandardArgs) - -find_path(FFMPEG_INCLUDE_DIRS NAMES libavcodec/avcodec.h) -unset(FFMPEG_LIBRARIES) -foreach(FFMPEG_SUBLIBRARY avformat avdevice avcodec avutil swscale) - find_library(FFMPEG_lib${FFMPEG_SUBLIBRARY}_LIBRARY NAMES ${FFMPEG_SUBLIBRARY}) - list(APPEND FFMPEG_LIBRARIES ${FFMPEG_lib${FFMPEG_SUBLIBRARY}_LIBRARY}) -endforeach() +# Distributed under the OSI-approved BSD 3-Clause License. +# +#.rst: +# FindFFMPEG +# -------- +# +# Find the FFPMEG libraries +# +# Result Variables +# ^^^^^^^^^^^^^^^^ +# +# The following variables will be defined: +# +# ``FFMPEG_FOUND`` +# True if FFMPEG found on the local system +# +# ``FFMPEG_INCLUDE_DIRS`` +# Location of FFMPEG header files +# +# ``FFMPEG_LIBRARY_DIRS`` +# Location of FFMPEG libraries +# +# ``FFMPEG_LIBRARIES`` +# List of the FFMPEG libraries found +# +# Hints +# ^^^^^ +# +# ``FFMPEG_ROOT`` +# Set this variable to a directory that contains a FFMPEG installation +# +# + +include(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake) +include(${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake) +include(${CMAKE_ROOT}/Modules/CMakeFindDependencyMacro.cmake) + +find_dependency(Threads) +#list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS Threads::Threads) +if(UNIX) + list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS -pthread) +endif() + +# Platform dependent libraries required by FFMPEG +if(WIN32) + if(NOT CYGWIN) + list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS wsock32 ws2_32 Secur32) + endif() +else() + list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS m) +endif() + +macro(FFMPEG_FIND varname shortname headername) + if(NOT FFMPEG_${varname}_INCLUDE_DIRS) + find_path(FFMPEG_${varname}_INCLUDE_DIRS NAMES lib${shortname}/${headername} ${headername} PATH_SUFFIXES ffmpeg) + endif() + if(NOT FFMPEG_${varname}_LIBRARY) + find_library(FFMPEG_${varname}_LIBRARY_RELEASE NAMES ${shortname} PATH_SUFFIXES ffmpeg ffmpeg/lib) + get_filename_component(FFMPEG_${varname}_LIBRARY_RELEASE_DIR ${FFMPEG_${varname}_LIBRARY_RELEASE} DIRECTORY) + find_library(FFMPEG_${varname}_LIBRARY_DEBUG NAMES ${shortname}d ${shortname} PATHS debug PATH_SUFFIXES ffmpeg ffmpeg/lib ffmpeg/debug/lib debug/ffmpeg/lib) + get_filename_component(FFMPEG_${varname}_LIBRARY_DEBUG_DIR ${FFMPEG_${varname}_LIBRARY_DEBUG} DIRECTORY) + select_library_configurations(FFMPEG_${varname}) + endif() + if (FFMPEG_${varname}_LIBRARY AND FFMPEG_${varname}_INCLUDE_DIRS) + set(FFMPEG_${varname}_FOUND 1) + list(APPEND FFMPEG_LIBRARY_DIRS ${FFMPEG_${varname}_LIBRARY_RELEASE_DIR} ${FFMPEG_${varname}_LIBRARY_DEBUG_DIR}) + endif() +endmacro(FFMPEG_FIND) + +macro(FFMPEG_FIND_GENEX varname shortname headername) + if(NOT FFMPEG_${varname}_INCLUDE_DIRS) + find_path(FFMPEG_${varname}_INCLUDE_DIRS NAMES lib${shortname}/${headername} ${headername} PATH_SUFFIXES ffmpeg) + endif() + if(NOT FFMPEG_${varname}_LIBRARY) + find_library(FFMPEG_${varname}_LIBRARY_RELEASE NAMES ${shortname} PATH_SUFFIXES ffmpeg ffmpeg/lib) + get_filename_component(FFMPEG_${varname}_LIBRARY_RELEASE_DIR ${FFMPEG_${varname}_LIBRARY_RELEASE} DIRECTORY) + find_library(FFMPEG_${varname}_LIBRARY_DEBUG NAMES ${shortname}d ${shortname} PATHS debug PATH_SUFFIXES ffmpeg ffmpeg/lib ffmpeg/debug/lib debug/ffmpeg/lib) + get_filename_component(FFMPEG_${varname}_LIBRARY_DEBUG_DIR ${FFMPEG_${varname}_LIBRARY_DEBUG} DIRECTORY) + set(FFMPEG_${varname}_LIBRARY "$<$:${FFMPEG_${varname}_LIBRARY_DEBUG}>$<$:${FFMPEG_${varname}_LIBRARY_RELEASE}>" CACHE STRING "") + set(FFMPEG_${varname}_LIBRARIES ${FFMPEG_${varname}_LIBRARY} CACHE STRING "") + endif() + if (FFMPEG_${varname}_LIBRARY AND FFMPEG_${varname}_INCLUDE_DIRS) + set(FFMPEG_${varname}_FOUND 1) + list(APPEND FFMPEG_LIBRARY_DIRS ${FFMPEG_${varname}_LIBRARY_RELEASE_DIR} ${FFMPEG_${varname}_LIBRARY_DEBUG_DIR}) + endif() +endmacro(FFMPEG_FIND) + if(WIN32) - list(APPEND FFMPEG_LIBRARIES wsock32 ws2_32 Secur32) + if(NOT FFMPEG_${varname}_INCLUDE_DIRS) + find_path(FFMPEG_stdint_INCLUDE_DIRS NAMES stdint.h PATH_SUFFIXES ffmpeg) + endif() + if (FFMPEG_stdint_INCLUDE_DIRS) + set(STDINT_OK TRUE) + endif() +else() + set(STDINT_OK TRUE) +endif() + +FFMPEG_FIND(libavcodec avcodec avcodec.h) +FFMPEG_FIND(libavdevice avdevice avdevice.h) +FFMPEG_FIND(libavfilter avfilter avfilter.h) +FFMPEG_FIND(libavformat avformat avformat.h) +FFMPEG_FIND(libavutil avutil avutil.h) +FFMPEG_FIND(libswresample swresample swresample.h) +FFMPEG_FIND(libswscale swscale swscale.h) +FFMPEG_FIND_GENEX(libzlib zlib zlib.h) + +if (FFMPEG_libavcodec_FOUND AND FFMPEG_libavdevice_FOUND AND FFMPEG_libavfilter_FOUND AND FFMPEG_libavformat_FOUND AND FFMPEG_libavutil_FOUND AND FFMPEG_libswresample_FOUND AND FFMPEG_libswscale_FOUND AND FFMPEG_libzlib_FOUND AND STDINT_OK) + list(APPEND FFMPEG_INCLUDE_DIRS ${FFMPEG_libavformat_INCLUDE_DIRS} ${FFMPEG_libavdevice_INCLUDE_DIRS} ${FFMPEG_libavcodec_INCLUDE_DIRS} ${FFMPEG_libavutil_INCLUDE_DIRS} ${FFMPEG_libswscale_INCLUDE_DIRS} ${FFMPEG_stdint_INCLUDE_DIRS}) + list(REMOVE_DUPLICATES FFMPEG_INCLUDE_DIRS) + list(REMOVE_DUPLICATES FFMPEG_LIBRARY_DIRS) + + list(APPEND FFMPEG_LIBRARIES + ${FFMPEG_libavformat_LIBRARY} + ${FFMPEG_libavdevice_LIBRARY} + ${FFMPEG_libavcodec_LIBRARY} + ${FFMPEG_libavutil_LIBRARY} + ${FFMPEG_libswscale_LIBRARY} + ${FFMPEG_libavfilter_LIBRARY} + ${FFMPEG_libswresample_LIBRARY} + ${FFMPEG_libzlib_LIBRARY} + ${FFMPEG_PLATFORM_DEPENDENT_LIBS} + ) + set(FFMPEG_LIBRARY ${FFMPEG_LIBRARIES}) + + set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} CACHE STRING "") + set(FFMPEG_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIRS} CACHE STRING "") + set(FFMPEG_LIBRARY_DIRS ${FFMPEG_LIBRARY_DIRS} CACHE STRING "") endif() -find_package_handle_standard_args(FFMPEG REQUIRED_VARS FFMPEG_LIBRARIES FFMPEG_INCLUDE_DIRS) +find_package_handle_standard_args(FFMPEG REQUIRED_VARS FFMPEG_LIBRARIES FFMPEG_LIBRARY_DIRS FFMPEG_INCLUDE_DIRS) diff --git a/ports/ffmpeg/portfile.cmake b/ports/ffmpeg/portfile.cmake index 1ce53a9961096d..15be7468b3e896 100644 --- a/ports/ffmpeg/portfile.cmake +++ b/ports/ffmpeg/portfile.cmake @@ -36,7 +36,7 @@ else() set(LIB_PATH_VAR "LIBRARY_PATH") endif() -if (WIN32) +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(ENV{PATH} "$ENV{PATH};${YASM_EXE_PATH}") set(BUILD_SCRIPT ${CMAKE_CURRENT_LIST_DIR}\\build.sh) @@ -243,8 +243,7 @@ vcpkg_copy_pdbs() # Handle copyright # TODO: Examine build log and confirm that this license matches the build output -file(COPY ${SOURCE_PATH}/COPYING.LGPLv2.1 DESTINATION ${CURRENT_PACKAGES_DIR}/share/ffmpeg) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/ffmpeg/COPYING.LGPLv2.1 ${CURRENT_PACKAGES_DIR}/share/ffmpeg/copyright) +file(INSTALL ${SOURCE_PATH}/COPYING.LGPLv2.1 DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) -# Used by OpenCV -file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindFFMPEG.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/ffmpeg) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindFFMPEG.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) diff --git a/ports/ffmpeg/vcpkg-cmake-wrapper.cmake b/ports/ffmpeg/vcpkg-cmake-wrapper.cmake new file mode 100644 index 00000000000000..322387565d03e8 --- /dev/null +++ b/ports/ffmpeg/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,8 @@ +set(FFMPEG_PREV_MODULE_PATH ${CMAKE_MODULE_PATH}) +list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}) + +if(NOT FFMPEG_LIBRARIES) + _find_package(${ARGS}) +endif() + +set(CMAKE_MODULE_PATH ${FFMPEG_PREV_MODULE_PATH}) diff --git a/ports/fizz/CONTROL b/ports/fizz/CONTROL index 4f4856c47ce912..ab3acb20ef1d61 100644 --- a/ports/fizz/CONTROL +++ b/ports/fizz/CONTROL @@ -1,4 +1,4 @@ Source: fizz -Version: 2019.05.20.00 +Version: 2019.05.20.00-1 Build-Depends: folly, openssl, libsodium, zlib Description: a TLS 1.3 implementation by Facebook diff --git a/ports/fizz/portfile.cmake b/ports/fizz/portfile.cmake index 0eb0f81bf99e66..373f1d40760e63 100644 --- a/ports/fizz/portfile.cmake +++ b/ports/fizz/portfile.cmake @@ -5,7 +5,7 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebookincubator/fizz - REF 6d26a1be8d7a20d8d89c374ee3dc5c452d18c18d + REF 6d26a1be8d7a20d8d89c374ee3dc5c452d18c18d SHA512 bc6aa17a97fdfc53d0a247b876cbd1fea8214608b7e463dcf21e34df65015fe77e617c5a6c6bfa84b87e60e56b6aeb89aa2d8d774f97fc1f76f415869948a48a HEAD_REF master PATCHES find-zlib.patch @@ -28,7 +28,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/fizz") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/fizz) vcpkg_copy_pdbs() file(READ ${CURRENT_PACKAGES_DIR}/share/fizz/fizz-config.cmake _contents) diff --git a/ports/flatbuffers/CONTROL b/ports/flatbuffers/CONTROL index 8d553c1971a28c..3baf26b02f97fc 100644 --- a/ports/flatbuffers/CONTROL +++ b/ports/flatbuffers/CONTROL @@ -1,5 +1,5 @@ -Source: flatbuffers -Version: 1.11.0 -Description: Memory Efficient Serialization Library - FlatBuffers is an efficient cross platform serialization library for games and other memory constrained apps. It allows you to directly access serialized data without unpacking/parsing it first, while still having great forwards/backwards compatibility. -Homepage: https://google.github.io/flatbuffers/ +Source: flatbuffers +Version: 1.11.0-1 +Description: Memory Efficient Serialization Library + FlatBuffers is an efficient cross platform serialization library for games and other memory constrained apps. It allows you to directly access serialized data without unpacking/parsing it first, while still having great forwards/backwards compatibility. +Homepage: https://google.github.io/flatbuffers/ diff --git a/ports/flatbuffers/portfile.cmake b/ports/flatbuffers/portfile.cmake index b954affe8818ff..c619ac9ee5c7ef 100644 --- a/ports/flatbuffers/portfile.cmake +++ b/ports/flatbuffers/portfile.cmake @@ -29,7 +29,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/flatbuffers") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/flatbuffers) file(GLOB flatc_path ${CURRENT_PACKAGES_DIR}/bin/flatc*) if(flatc_path) diff --git a/ports/folly/portfile.cmake b/ports/folly/portfile.cmake index abf32aa99105c6..2317c780e44772 100644 --- a/ports/folly/portfile.cmake +++ b/ports/folly/portfile.cmake @@ -73,7 +73,7 @@ vcpkg_install_cmake(ADD_BIN_TO_PATH) vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/folly) +vcpkg_fixup_cmake_targets() # Release folly-targets.cmake does not link to the right libraries in debug mode. # We substitute with generator expressions so that the right libraries are linked for debug and release. diff --git a/ports/freeimage/CMakeLists.txt b/ports/freeimage/CMakeLists.txt index 60c7f9bd8e7f94..af3d1c37fd8145 100644 --- a/ports/freeimage/CMakeLists.txt +++ b/ports/freeimage/CMakeLists.txt @@ -4,9 +4,6 @@ include(GNUInstallDirs) project(FreeImage C CXX) -set(CMAKE_MODULE_PATH "${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}/share/JXR" ${CMAKE_MODULE_PATH}) -set(CMAKE_MODULE_PATH "${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}/share/OpenEXR" ${CMAKE_MODULE_PATH}) - if(MSVC) add_definitions("-D_CRT_SECURE_NO_WARNINGS") set(CMAKE_CXX_FLAGS "/wd4828 ${CMAKE_CXX_FLAGS}") diff --git a/ports/freeimage/CONTROL b/ports/freeimage/CONTROL index 2420b5a56b735e..9d9a006c6909d7 100644 --- a/ports/freeimage/CONTROL +++ b/ports/freeimage/CONTROL @@ -1,5 +1,5 @@ Source: freeimage -Version: 3.18.0-5 +Version: 3.18.0-6 Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp[all], libraw, jxrlib, openexr Homepage: https://sourceforge.net/projects/freeimage/ Description: Support library for graphics image formats diff --git a/ports/freerdp/CONTROL b/ports/freerdp/CONTROL index f880f30a38360a..c5c3d657e57d2e 100644 --- a/ports/freerdp/CONTROL +++ b/ports/freerdp/CONTROL @@ -1,5 +1,5 @@ Source: freerdp -Version: 2.0.0-rc4-1 +Version: 2.0.0-rc4-2 Homepage: https://github.com/FreeRDP/FreeRDP Description: A free implementation of the Remote Desktop Protocol (RDP) Build-Depends: openssl diff --git a/ports/freerdp/portfile.cmake b/ports/freerdp/portfile.cmake index 7fa0b3c72bcb15..ca42af8a0980c5 100644 --- a/ports/freerdp/portfile.cmake +++ b/ports/freerdp/portfile.cmake @@ -62,7 +62,7 @@ foreach(PACKAGE FreeRDP-Client2 FreeRDP2 WinPR2) endforeach() vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/FreeRDP-Client2_temp/FreeRDP-Client2 TARGET_PATH share/freerdp-client) -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/FreeRDP2_temp/FreeRDP2 TARGET_PATH share/freerdp) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/FreeRDP2_temp/FreeRDP2) vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/WinPR2_temp/WinPR2 TARGET_PATH share/winpr) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/g2o/CONTROL b/ports/g2o/CONTROL index 4838241074fbee..0e6b43f7d0605b 100644 --- a/ports/g2o/CONTROL +++ b/ports/g2o/CONTROL @@ -1,5 +1,5 @@ Source: g2o -Version: 20170730_git-4 +Version: 20170730_git-5 Build-Depends: suitesparse, eigen3, clapack (!osx), ceres Description: g2o: A General Framework for Graph Optimization Homepage: https://openslam.org/g2o.html diff --git a/ports/g2o/portfile.cmake b/ports/g2o/portfile.cmake index 6d09b8a8cdf75c..312bbc8e8a38fd 100644 --- a/ports/g2o/portfile.cmake +++ b/ports/g2o/portfile.cmake @@ -24,7 +24,7 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() if(VCPKG_USE_HEAD_VERSION) - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/g2o") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/g2o) endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) diff --git a/ports/gdcm/CONTROL b/ports/gdcm/CONTROL index d0dbcc652b5167..32a962eb46cec8 100644 --- a/ports/gdcm/CONTROL +++ b/ports/gdcm/CONTROL @@ -1,4 +1,4 @@ Source: gdcm -Version: 3.0.0-1 +Version: 3.0.0-3 Description: Grassroots DICOM library Build-Depends: zlib, expat, openjpeg diff --git a/ports/gdcm/portfile.cmake b/ports/gdcm/portfile.cmake index 3fba69409c12f3..36a3e0e1f71f50 100644 --- a/ports/gdcm/portfile.cmake +++ b/ports/gdcm/portfile.cmake @@ -15,12 +15,18 @@ vcpkg_from_github( file(REMOVE ${SOURCE_PATH}/CMake/FindOpenJPEG.cmake) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(VCPKG_BUILD_SHARED_LIBS ON) +else() + set(VCPKG_BUILD_SHARED_LIBS OFF) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DGDCM_BUILD_DOCBOOK_MANPAGES=OFF - -DGDCM_BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} + -DGDCM_BUILD_SHARED_LIBS=${VCPKG_BUILD_SHARED_LIBS} -DGDCM_INSTALL_INCLUDE_DIR=include -DGDCM_USE_SYSTEM_EXPAT=ON -DGDCM_USE_SYSTEM_ZLIB=ON @@ -29,7 +35,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/gdcm TARGET_PATH share/gdcm) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/gdcm) vcpkg_copy_pdbs() file(REMOVE_RECURSE diff --git a/ports/geogram/CONTROL b/ports/geogram/CONTROL index 6d449c8829f9e6..8fd66be95febe6 100644 --- a/ports/geogram/CONTROL +++ b/ports/geogram/CONTROL @@ -1,5 +1,5 @@ Source: geogram -Version: 1.6.9-3 +Version: 1.6.9-6 Homepage: https://gforge.inria.fr/projects/geogram/ Description: Geogram is a programming library of geometric algorithms. Build-Depends: openblas (!osx), clapack (!osx) diff --git a/ports/geogram/enable_openblas_compatibility.patch b/ports/geogram/enable_openblas_compatibility.patch new file mode 100644 index 00000000000000..e6ab75a4cbad3b --- /dev/null +++ b/ports/geogram/enable_openblas_compatibility.patch @@ -0,0 +1,1008 @@ +diff --git a/src/lib/third_party/numerics/ARPACK/arpack_cnames.h b/src/lib/third_party/numerics/ARPACK/arpack_cnames.h +new file mode 100644 +index 0000000..e6f2c48 +--- /dev/null ++++ b/src/lib/third_party/numerics/ARPACK/arpack_cnames.h +@@ -0,0 +1,105 @@ ++#ifndef __ARPACK_CNAMES ++#define __ARPACK_CNAMES ++ ++/* ++ * These defines set up the naming scheme required to have a fortran 77 ++ * routine call a C routine ++ * for following Fortran to C interface: ++ * FORTRAN CALL C DECLARATION ++ * call dgemm(...) void dgemm(...) ++ */ ++/* BLAS */ ++#define sswap_ sswap ++#define saxpy_ saxpy ++#define sasum_ sasum ++#define isamax_ isamax ++#define scopy_ scopy ++#define sscal_ sscal ++#define sger_ sger ++#define snrm2_ snrm2 ++#define ssymv_ ssymv ++#define sdot_ sdot ++#define saxpy_ saxpy ++#define ssyr2_ ssyr2 ++#define srot_ srot ++#define sgemv_ sgemv ++#define strsv_ strsv ++#define sgemm_ sgemm ++#define strsm_ strsm ++ ++#define dswap_ dswap ++#define daxpy_ daxpy ++#define dasum_ dasum ++#define idamax_ idamax ++#define dcopy_ dcopy ++#define dscal_ dscal ++#define dger_ dger ++#define dnrm2_ dnrm2 ++#define dsymv_ dsymv ++#define ddot_ ddot ++#define dsyr2_ dsyr2 ++#define drot_ drot ++#define dgemv_ dgemv ++#define dtrsv_ dtrsv ++#define dgemm_ dgemm ++#define dtrsm_ dtrsm ++ ++#define cswap_ cswap ++#define caxpy_ caxpy ++#define scasum_ scasum ++#define icamax_ icamax ++#define ccopy_ ccopy ++#define cscal_ cscal ++#define scnrm2_ scnrm2 ++#define cgemv_ cgemv ++#define ctrsv_ ctrsv ++#define cgemm_ cgemm ++#define ctrsm_ ctrsm ++#define cgerc_ cgerc ++#define chemv_ chemv ++#define cher2_ cher2 ++ ++#define zswap_ zswap ++#define zaxpy_ zaxpy ++#define dzasum_ dzasum ++#define izamax_ izamax ++#define zcopy_ zcopy ++#define zscal_ zscal ++#define dznrm2_ dznrm2 ++#define zgemv_ zgemv ++#define ztrsv_ ztrsv ++#define zgemm_ zgemm ++#define ztrsm_ ztrsm ++#define zgerc_ zgerc ++#define zhemv_ zhemv ++#define zher2_ zher2 ++ ++/* LAPACK */ ++#define dlacon_ dlacon ++#define slacon_ slacon ++#define icmax1_ icmax1 ++#define scsum1_ scsum1 ++#define clacon_ clacon ++#define dzsum1_ dzsum1 ++#define izmax1_ izmax1 ++#define zlacon_ zlacon ++ ++/* Fortran interface */ ++#define c_bridge_dgssv_ c_bridge_dgssv ++#define c_fortran_sgssv_ c_fortran_sgssv ++#define c_fortran_dgssv_ c_fortran_dgssv ++#define c_fortran_cgssv_ c_fortran_cgssv ++#define c_fortran_zgssv_ c_fortran_zgssv ++ ++#define cdotc_ cdotc ++#define csscal_ csscal ++#define zdscal_ zdscal ++#define zdotc_ zdotc ++#define ctrmm_ ctrmm ++#define dtrmm_ dtrmm ++#define strmm_ strmm ++#define ztrmm_ ztrmm ++#define cgeru_ cgeru ++#define zgeru_ zgeru ++ ++#endif /* __ARPACK_CNAMES */ +diff --git a/src/lib/third_party/numerics/ARPACK/cgetv0.c b/src/lib/third_party/numerics/ARPACK/cgetv0.c +index 48e8677..871d7b0 100755 +--- a/src/lib/third_party/numerics/ARPACK/cgetv0.c ++++ b/src/lib/third_party/numerics/ARPACK/cgetv0.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/cnaitr.c b/src/lib/third_party/numerics/ARPACK/cnaitr.c +index ee9318b..693f399 100755 +--- a/src/lib/third_party/numerics/ARPACK/cnaitr.c ++++ b/src/lib/third_party/numerics/ARPACK/cnaitr.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/cnapps.c b/src/lib/third_party/numerics/ARPACK/cnapps.c +index 0c4a6a2..4929fc1 100755 +--- a/src/lib/third_party/numerics/ARPACK/cnapps.c ++++ b/src/lib/third_party/numerics/ARPACK/cnapps.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/cnaup2.c b/src/lib/third_party/numerics/ARPACK/cnaup2.c +index 8322446..2d98e4b 100755 +--- a/src/lib/third_party/numerics/ARPACK/cnaup2.c ++++ b/src/lib/third_party/numerics/ARPACK/cnaup2.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/cnaupd.c b/src/lib/third_party/numerics/ARPACK/cnaupd.c +index e51f72e..4fe5dca 100755 +--- a/src/lib/third_party/numerics/ARPACK/cnaupd.c ++++ b/src/lib/third_party/numerics/ARPACK/cnaupd.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/cneigh.c b/src/lib/third_party/numerics/ARPACK/cneigh.c +index d96bebd..adfa279 100755 +--- a/src/lib/third_party/numerics/ARPACK/cneigh.c ++++ b/src/lib/third_party/numerics/ARPACK/cneigh.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/cneupd.c b/src/lib/third_party/numerics/ARPACK/cneupd.c +index 6a839e7..35fc426 100755 +--- a/src/lib/third_party/numerics/ARPACK/cneupd.c ++++ b/src/lib/third_party/numerics/ARPACK/cneupd.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/cngets.c b/src/lib/third_party/numerics/ARPACK/cngets.c +index 9788d00..663406f 100755 +--- a/src/lib/third_party/numerics/ARPACK/cngets.c ++++ b/src/lib/third_party/numerics/ARPACK/cngets.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/csortc.c b/src/lib/third_party/numerics/ARPACK/csortc.c +index 8c6cedb..0d330fe 100755 +--- a/src/lib/third_party/numerics/ARPACK/csortc.c ++++ b/src/lib/third_party/numerics/ARPACK/csortc.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* \BeginDoc */ + + /* \Name: csortc */ +diff --git a/src/lib/third_party/numerics/ARPACK/cstatn.c b/src/lib/third_party/numerics/ARPACK/cstatn.c +index 6fcde6d..4eb47dc 100755 +--- a/src/lib/third_party/numerics/ARPACK/cstatn.c ++++ b/src/lib/third_party/numerics/ARPACK/cstatn.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dgetv0.c b/src/lib/third_party/numerics/ARPACK/dgetv0.c +index 0f4c2bb..2206708 100755 +--- a/src/lib/third_party/numerics/ARPACK/dgetv0.c ++++ b/src/lib/third_party/numerics/ARPACK/dgetv0.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dlaqrb.c b/src/lib/third_party/numerics/ARPACK/dlaqrb.c +index baa4f12..d4275a7 100755 +--- a/src/lib/third_party/numerics/ARPACK/dlaqrb.c ++++ b/src/lib/third_party/numerics/ARPACK/dlaqrb.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Table of constant values */ + + static integer c__1 = 1; +diff --git a/src/lib/third_party/numerics/ARPACK/dnaitr.c b/src/lib/third_party/numerics/ARPACK/dnaitr.c +index 8fffe7f..74eca38 100755 +--- a/src/lib/third_party/numerics/ARPACK/dnaitr.c ++++ b/src/lib/third_party/numerics/ARPACK/dnaitr.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dnapps.c b/src/lib/third_party/numerics/ARPACK/dnapps.c +index 67dac36..b0083a1 100755 +--- a/src/lib/third_party/numerics/ARPACK/dnapps.c ++++ b/src/lib/third_party/numerics/ARPACK/dnapps.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dnaup2.c b/src/lib/third_party/numerics/ARPACK/dnaup2.c +index 28dabb6..8b48f33 100755 +--- a/src/lib/third_party/numerics/ARPACK/dnaup2.c ++++ b/src/lib/third_party/numerics/ARPACK/dnaup2.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dnaupd.c b/src/lib/third_party/numerics/ARPACK/dnaupd.c +index e20298c..dcfaf47 100755 +--- a/src/lib/third_party/numerics/ARPACK/dnaupd.c ++++ b/src/lib/third_party/numerics/ARPACK/dnaupd.c +@@ -11,7 +11,7 @@ + */ + + #include "protos.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dnconv.c b/src/lib/third_party/numerics/ARPACK/dnconv.c +index e2324b7..aa0bf91 100755 +--- a/src/lib/third_party/numerics/ARPACK/dnconv.c ++++ b/src/lib/third_party/numerics/ARPACK/dnconv.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dneigh.c b/src/lib/third_party/numerics/ARPACK/dneigh.c +index b7057eb..94e3680 100755 +--- a/src/lib/third_party/numerics/ARPACK/dneigh.c ++++ b/src/lib/third_party/numerics/ARPACK/dneigh.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dneupd.c b/src/lib/third_party/numerics/ARPACK/dneupd.c +index 141255d..067041b 100755 +--- a/src/lib/third_party/numerics/ARPACK/dneupd.c ++++ b/src/lib/third_party/numerics/ARPACK/dneupd.c +@@ -11,7 +11,7 @@ + */ + + #include "protos.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dngets.c b/src/lib/third_party/numerics/ARPACK/dngets.c +index 9b0ee73..e39848f 100755 +--- a/src/lib/third_party/numerics/ARPACK/dngets.c ++++ b/src/lib/third_party/numerics/ARPACK/dngets.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dsaitr.c b/src/lib/third_party/numerics/ARPACK/dsaitr.c +index 2f3df52..89a597a 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsaitr.c ++++ b/src/lib/third_party/numerics/ARPACK/dsaitr.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dsapps.c b/src/lib/third_party/numerics/ARPACK/dsapps.c +index e87b27d..4a320c9 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsapps.c ++++ b/src/lib/third_party/numerics/ARPACK/dsapps.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dsaup2.c b/src/lib/third_party/numerics/ARPACK/dsaup2.c +index e5f224f..b93e80b 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsaup2.c ++++ b/src/lib/third_party/numerics/ARPACK/dsaup2.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dsaupd.c b/src/lib/third_party/numerics/ARPACK/dsaupd.c +index a9e456f..d20ebe2 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsaupd.c ++++ b/src/lib/third_party/numerics/ARPACK/dsaupd.c +@@ -11,7 +11,7 @@ + */ + + #include "protos.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dsconv.c b/src/lib/third_party/numerics/ARPACK/dsconv.c +index 843ac29..25e3b8f 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsconv.c ++++ b/src/lib/third_party/numerics/ARPACK/dsconv.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dseigt.c b/src/lib/third_party/numerics/ARPACK/dseigt.c +index c7e975b..ba74d2f 100755 +--- a/src/lib/third_party/numerics/ARPACK/dseigt.c ++++ b/src/lib/third_party/numerics/ARPACK/dseigt.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dsesrt.c b/src/lib/third_party/numerics/ARPACK/dsesrt.c +index 1bf99ee..8a2030f 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsesrt.c ++++ b/src/lib/third_party/numerics/ARPACK/dsesrt.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Table of constant values */ + + static integer c__1 = 1; +diff --git a/src/lib/third_party/numerics/ARPACK/dseupd.c b/src/lib/third_party/numerics/ARPACK/dseupd.c +index 9b81477..065e4d8 100755 +--- a/src/lib/third_party/numerics/ARPACK/dseupd.c ++++ b/src/lib/third_party/numerics/ARPACK/dseupd.c +@@ -11,7 +11,7 @@ + */ + + #include "protos.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dsgets.c b/src/lib/third_party/numerics/ARPACK/dsgets.c +index 7983ec8..19a33d9 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsgets.c ++++ b/src/lib/third_party/numerics/ARPACK/dsgets.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dsortc.c b/src/lib/third_party/numerics/ARPACK/dsortc.c +index 2170fcc..131ae2f 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsortc.c ++++ b/src/lib/third_party/numerics/ARPACK/dsortc.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* ----------------------------------------------------------------------- */ + /* \BeginDoc */ + +diff --git a/src/lib/third_party/numerics/ARPACK/dsortr.c b/src/lib/third_party/numerics/ARPACK/dsortr.c +index 5f8dca8..335d9a9 100755 +--- a/src/lib/third_party/numerics/ARPACK/dsortr.c ++++ b/src/lib/third_party/numerics/ARPACK/dsortr.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* ----------------------------------------------------------------------- */ + /* \BeginDoc */ + +diff --git a/src/lib/third_party/numerics/ARPACK/dstatn.c b/src/lib/third_party/numerics/ARPACK/dstatn.c +index 50c15f2..1909d6d 100755 +--- a/src/lib/third_party/numerics/ARPACK/dstatn.c ++++ b/src/lib/third_party/numerics/ARPACK/dstatn.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dstats.c b/src/lib/third_party/numerics/ARPACK/dstats.c +index 4341eea..02f4024 100755 +--- a/src/lib/third_party/numerics/ARPACK/dstats.c ++++ b/src/lib/third_party/numerics/ARPACK/dstats.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/dstqrb.c b/src/lib/third_party/numerics/ARPACK/dstqrb.c +index 2a10880..c25f44d 100755 +--- a/src/lib/third_party/numerics/ARPACK/dstqrb.c ++++ b/src/lib/third_party/numerics/ARPACK/dstqrb.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Table of constant values */ + + static integer c__0 = 0; +diff --git a/src/lib/third_party/numerics/ARPACK/protos.h b/src/lib/third_party/numerics/ARPACK/protos.h +index 2e87fe7..09a89fc 100755 +--- a/src/lib/third_party/numerics/ARPACK/protos.h ++++ b/src/lib/third_party/numerics/ARPACK/protos.h +@@ -8,7 +8,7 @@ + + #include + #include "f2c.h" +- ++#include "arpack_cnames.h" + int NUMERICS_API dnaupd_( + integer *ido, char *bmat, integer *n, char * + which, integer *nev, doublereal *tol, doublereal *resid, integer *ncv, +diff --git a/src/lib/third_party/numerics/ARPACK/sgetv0.c b/src/lib/third_party/numerics/ARPACK/sgetv0.c +index 206122a..314252f 100755 +--- a/src/lib/third_party/numerics/ARPACK/sgetv0.c ++++ b/src/lib/third_party/numerics/ARPACK/sgetv0.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/slaqrb.c b/src/lib/third_party/numerics/ARPACK/slaqrb.c +index 335faa2..12cc92a 100755 +--- a/src/lib/third_party/numerics/ARPACK/slaqrb.c ++++ b/src/lib/third_party/numerics/ARPACK/slaqrb.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Table of constant values */ + + static integer c__1 = 1; +diff --git a/src/lib/third_party/numerics/ARPACK/snaitr.c b/src/lib/third_party/numerics/ARPACK/snaitr.c +index 5e24f6c..f3bc2fa 100755 +--- a/src/lib/third_party/numerics/ARPACK/snaitr.c ++++ b/src/lib/third_party/numerics/ARPACK/snaitr.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/snapps.c b/src/lib/third_party/numerics/ARPACK/snapps.c +index 37470fc..9ae03e4 100755 +--- a/src/lib/third_party/numerics/ARPACK/snapps.c ++++ b/src/lib/third_party/numerics/ARPACK/snapps.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/snaup2.c b/src/lib/third_party/numerics/ARPACK/snaup2.c +index 4028150..f893a8e 100755 +--- a/src/lib/third_party/numerics/ARPACK/snaup2.c ++++ b/src/lib/third_party/numerics/ARPACK/snaup2.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/snaupd.c b/src/lib/third_party/numerics/ARPACK/snaupd.c +index 88118f0..66fac19 100755 +--- a/src/lib/third_party/numerics/ARPACK/snaupd.c ++++ b/src/lib/third_party/numerics/ARPACK/snaupd.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/snconv.c b/src/lib/third_party/numerics/ARPACK/snconv.c +index 4984455..cb42561 100755 +--- a/src/lib/third_party/numerics/ARPACK/snconv.c ++++ b/src/lib/third_party/numerics/ARPACK/snconv.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/sneigh.c b/src/lib/third_party/numerics/ARPACK/sneigh.c +index 4ff7d7a..a8b3ffc 100755 +--- a/src/lib/third_party/numerics/ARPACK/sneigh.c ++++ b/src/lib/third_party/numerics/ARPACK/sneigh.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/sneupd.c b/src/lib/third_party/numerics/ARPACK/sneupd.c +index e2a7205..430f033 100755 +--- a/src/lib/third_party/numerics/ARPACK/sneupd.c ++++ b/src/lib/third_party/numerics/ARPACK/sneupd.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/sngets.c b/src/lib/third_party/numerics/ARPACK/sngets.c +index 5a13f94..1c34e92 100755 +--- a/src/lib/third_party/numerics/ARPACK/sngets.c ++++ b/src/lib/third_party/numerics/ARPACK/sngets.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/ssaitr.c b/src/lib/third_party/numerics/ARPACK/ssaitr.c +index 65a61f6..98fbb1c 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssaitr.c ++++ b/src/lib/third_party/numerics/ARPACK/ssaitr.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/ssapps.c b/src/lib/third_party/numerics/ARPACK/ssapps.c +index 9537c2f..b979fb1 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssapps.c ++++ b/src/lib/third_party/numerics/ARPACK/ssapps.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/ssaup2.c b/src/lib/third_party/numerics/ARPACK/ssaup2.c +index a5123dc..59e08aa 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssaup2.c ++++ b/src/lib/third_party/numerics/ARPACK/ssaup2.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/ssaupd.c b/src/lib/third_party/numerics/ARPACK/ssaupd.c +index 5898148..32ba0b0 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssaupd.c ++++ b/src/lib/third_party/numerics/ARPACK/ssaupd.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/ssconv.c b/src/lib/third_party/numerics/ARPACK/ssconv.c +index 0e1c9c2..90faa50 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssconv.c ++++ b/src/lib/third_party/numerics/ARPACK/ssconv.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/sseigt.c b/src/lib/third_party/numerics/ARPACK/sseigt.c +index 6b9e407..6652b74 100755 +--- a/src/lib/third_party/numerics/ARPACK/sseigt.c ++++ b/src/lib/third_party/numerics/ARPACK/sseigt.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/ssesrt.c b/src/lib/third_party/numerics/ARPACK/ssesrt.c +index 9287d6a..d6bcd6d 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssesrt.c ++++ b/src/lib/third_party/numerics/ARPACK/ssesrt.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Table of constant values */ + + static integer c__1 = 1; +diff --git a/src/lib/third_party/numerics/ARPACK/sseupd.c b/src/lib/third_party/numerics/ARPACK/sseupd.c +index 163df3a..b0e825f 100755 +--- a/src/lib/third_party/numerics/ARPACK/sseupd.c ++++ b/src/lib/third_party/numerics/ARPACK/sseupd.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/ssgets.c b/src/lib/third_party/numerics/ARPACK/ssgets.c +index 244f2ab..52127c2 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssgets.c ++++ b/src/lib/third_party/numerics/ARPACK/ssgets.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/ssortc.c b/src/lib/third_party/numerics/ARPACK/ssortc.c +index aa836f7..38b5fbd 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssortc.c ++++ b/src/lib/third_party/numerics/ARPACK/ssortc.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* ----------------------------------------------------------------------- */ + /* \BeginDoc */ + +diff --git a/src/lib/third_party/numerics/ARPACK/ssortr.c b/src/lib/third_party/numerics/ARPACK/ssortr.c +index e48fb1c..88db423 100755 +--- a/src/lib/third_party/numerics/ARPACK/ssortr.c ++++ b/src/lib/third_party/numerics/ARPACK/ssortr.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* ----------------------------------------------------------------------- */ + /* \BeginDoc */ + +diff --git a/src/lib/third_party/numerics/ARPACK/sstatn.c b/src/lib/third_party/numerics/ARPACK/sstatn.c +index fc899df..26d49b9 100755 +--- a/src/lib/third_party/numerics/ARPACK/sstatn.c ++++ b/src/lib/third_party/numerics/ARPACK/sstatn.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/sstats.c b/src/lib/third_party/numerics/ARPACK/sstats.c +index 6601d2e..61577e2 100755 +--- a/src/lib/third_party/numerics/ARPACK/sstats.c ++++ b/src/lib/third_party/numerics/ARPACK/sstats.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/sstqrb.c b/src/lib/third_party/numerics/ARPACK/sstqrb.c +index 4c7bf91..2a416e2 100755 +--- a/src/lib/third_party/numerics/ARPACK/sstqrb.c ++++ b/src/lib/third_party/numerics/ARPACK/sstqrb.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Table of constant values */ + + static integer c__0 = 0; +diff --git a/src/lib/third_party/numerics/ARPACK/zgetv0.c b/src/lib/third_party/numerics/ARPACK/zgetv0.c +index 96d3c48..d868c1f 100755 +--- a/src/lib/third_party/numerics/ARPACK/zgetv0.c ++++ b/src/lib/third_party/numerics/ARPACK/zgetv0.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/znaitr.c b/src/lib/third_party/numerics/ARPACK/znaitr.c +index 2ce6b9c..c8cf0f6 100755 +--- a/src/lib/third_party/numerics/ARPACK/znaitr.c ++++ b/src/lib/third_party/numerics/ARPACK/znaitr.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/znapps.c b/src/lib/third_party/numerics/ARPACK/znapps.c +index 732aed0..30f46e6 100755 +--- a/src/lib/third_party/numerics/ARPACK/znapps.c ++++ b/src/lib/third_party/numerics/ARPACK/znapps.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/znaup2.c b/src/lib/third_party/numerics/ARPACK/znaup2.c +index b7caa42..7164775 100755 +--- a/src/lib/third_party/numerics/ARPACK/znaup2.c ++++ b/src/lib/third_party/numerics/ARPACK/znaup2.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/znaupd.c b/src/lib/third_party/numerics/ARPACK/znaupd.c +index ed251ee..f960959 100755 +--- a/src/lib/third_party/numerics/ARPACK/znaupd.c ++++ b/src/lib/third_party/numerics/ARPACK/znaupd.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/zneigh.c b/src/lib/third_party/numerics/ARPACK/zneigh.c +index 4157ab3..4ee3c1e 100755 +--- a/src/lib/third_party/numerics/ARPACK/zneigh.c ++++ b/src/lib/third_party/numerics/ARPACK/zneigh.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/zneupd.c b/src/lib/third_party/numerics/ARPACK/zneupd.c +index 3f684f4..3ef32c1 100755 +--- a/src/lib/third_party/numerics/ARPACK/zneupd.c ++++ b/src/lib/third_party/numerics/ARPACK/zneupd.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/zngets.c b/src/lib/third_party/numerics/ARPACK/zngets.c +index a2e461b..97bbebd 100755 +--- a/src/lib/third_party/numerics/ARPACK/zngets.c ++++ b/src/lib/third_party/numerics/ARPACK/zngets.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { +diff --git a/src/lib/third_party/numerics/ARPACK/zsortc.c b/src/lib/third_party/numerics/ARPACK/zsortc.c +index a35748c..38dbc42 100755 +--- a/src/lib/third_party/numerics/ARPACK/zsortc.c ++++ b/src/lib/third_party/numerics/ARPACK/zsortc.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* \BeginDoc */ + + /* \Name: zsortc */ +diff --git a/src/lib/third_party/numerics/ARPACK/zstatn.c b/src/lib/third_party/numerics/ARPACK/zstatn.c +index d433e97..5a8bd1e 100755 +--- a/src/lib/third_party/numerics/ARPACK/zstatn.c ++++ b/src/lib/third_party/numerics/ARPACK/zstatn.c +@@ -11,7 +11,7 @@ + */ + + #include "f2c.h" +- ++#include "arpack_cnames.h" + /* Common Block Declarations */ + + struct { diff --git a/ports/geogram/fix_underscore.patch b/ports/geogram/fix_underscore.patch new file mode 100644 index 00000000000000..eeb5a30cb1ab22 --- /dev/null +++ b/ports/geogram/fix_underscore.patch @@ -0,0 +1,10 @@ +diff --git a/src/lib/third_party/numerics/SUPERLU/slu_Cnames.h b/src/lib/third_party/numerics/SUPERLU/slu_Cnames.h +index 68b3afe..0369a68 100755 +--- a/src/lib/third_party/numerics/SUPERLU/slu_Cnames.h ++++ b/src/lib/third_party/numerics/SUPERLU/slu_Cnames.h +@@ -1,4 +1,4 @@ +-#define Add_ /* Bruno */ ++#define NoChange + + /*! \file + Copyright (c) 2003, The Regents of the University of California, through diff --git a/ports/geogram/portfile.cmake b/ports/geogram/portfile.cmake index 44f74f107a4f67..9584e66195b9d9 100644 --- a/ports/geogram/portfile.cmake +++ b/ports/geogram/portfile.cmake @@ -8,11 +8,17 @@ vcpkg_download_distfile(ARCHIVE SHA512 1b5c7540bef734c1908f213f26780aba63b4911a8022d5eb3f7c90eabe2cb69efd1f298b30cdc8e2c636a5b37c8c25832dd4aad0b7c2ff5f0a5b5caa17970136 ) +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(ADDITIONAL_PATCHES "fix_underscore.patch" "enable_openblas_compatibility.patch") +endif() + vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} REF ${GEOGRAM_VERSION} - PATCHES fix-cmake-config-and-install.patch + PATCHES + fix-cmake-config-and-install.patch + ${ADDITIONAL_PATCHES} ) file(COPY ${CURRENT_PORT_DIR}/Config.cmake.in DESTINATION ${SOURCE_PATH}/cmake) @@ -65,7 +71,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/geogram") +vcpkg_fixup_cmake_targets() file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/doc) diff --git a/ports/geographiclib/CONTROL b/ports/geographiclib/CONTROL index 0d585a28107899..1c4c5a17d0d5ed 100644 --- a/ports/geographiclib/CONTROL +++ b/ports/geographiclib/CONTROL @@ -1,4 +1,4 @@ Source: geographiclib -Version: 1.47-patch1-5 +Version: 1.47-patch1-6 Homepage: https://sourceforge.net/projects/geographiclib/ Description: a small set of C++ classes for performing conversions between geographic, UTM, UPS, MGRS, geocentric, and local cartesian coordinates, for gravity (e.g., EGM2008), geoid height, and geomagnetic field (e.g., WMM2010) calculations, and for solving geodesic problems. diff --git a/ports/geographiclib/portfile.cmake b/ports/geographiclib/portfile.cmake index 95db365cf88e8d..8f4a716dce012b 100644 --- a/ports/geographiclib/portfile.cmake +++ b/ports/geographiclib/portfile.cmake @@ -46,7 +46,7 @@ endif() vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/geographiclib) +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) vcpkg_copy_pdbs() file(COPY ${CURRENT_PACKAGES_DIR}/lib/pkgconfig DESTINATION ${CURRENT_PACKAGES_DIR}/share/geographiclib) @@ -55,4 +55,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(INSTALL ${SOURCE_PATH}/00README.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/geographiclib RENAME readme) -file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/geographiclib RENAME copyright) \ No newline at end of file +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/geographiclib RENAME copyright) diff --git a/ports/gl3w/CONTROL b/ports/gl3w/CONTROL index ff4f512067a105..7ce058fbce0e69 100644 --- a/ports/gl3w/CONTROL +++ b/ports/gl3w/CONTROL @@ -1,5 +1,5 @@ Source: gl3w -Version: 99ed3211 +Version: 2018-05-31-1 Homepage: https://github.com/skaslev/gl3w Description: Simple OpenGL core profile loading Build-Depends: opengl-registry diff --git a/ports/gl3w/portfile.cmake b/ports/gl3w/portfile.cmake index c5010491a36ad5..ca35eb2bf1d785 100644 --- a/ports/gl3w/portfile.cmake +++ b/ports/gl3w/portfile.cmake @@ -32,8 +32,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/gl3w) +vcpkg_fixup_cmake_targets() if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") set(HEADER ${CURRENT_PACKAGES_DIR}/include/GL/gl3w.h) diff --git a/ports/glbinding/force-system-install.patch b/ports/glbinding/0001_force-system-install.patch similarity index 100% rename from ports/glbinding/force-system-install.patch rename to ports/glbinding/0001_force-system-install.patch diff --git a/ports/glbinding/fix-uwpmacro.patch b/ports/glbinding/0002_fix-uwpmacro.patch similarity index 100% rename from ports/glbinding/fix-uwpmacro.patch rename to ports/glbinding/0002_fix-uwpmacro.patch diff --git a/ports/glbinding/0003_fix-cmake-configs-paths.patch b/ports/glbinding/0003_fix-cmake-configs-paths.patch new file mode 100644 index 00000000000000..35983778401bc2 --- /dev/null +++ b/ports/glbinding/0003_fix-cmake-configs-paths.patch @@ -0,0 +1,62 @@ +diff --git a/3rdparty/KHR/CMakeLists.txt b/3rdparty/KHR/CMakeLists.txt +index 25fac3a..429544f 100644 +--- a/3rdparty/KHR/CMakeLists.txt ++++ b/3rdparty/KHR/CMakeLists.txt +@@ -43,7 +43,7 @@ add_library(${target} INTERFACE) + add_library(externals::${target} ALIAS ${target}) + + # Export library for downstream projects +-export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/cmake/${target}/${target}-export.cmake) ++export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/${target}-export.cmake) + + + # +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 700b48b..8aaab8d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -141,15 +141,15 @@ endif() + if(1) + # Install into the system (/usr/bin or /usr/local/bin) + set(INSTALL_ROOT "share/${project}") # /usr/[local]/share/ +- set(INSTALL_CMAKE "share/${project}/cmake") # /usr/[local]/share//cmake ++ set(INSTALL_CMAKE "share/${project}") # /usr/[local]/share//cmake + set(INSTALL_EXAMPLES "share/${project}") # /usr/[local]/share/ + set(INSTALL_DATA "share/${project}") # /usr/[local]/share/ + set(INSTALL_BIN "bin") # /usr/[local]/bin + set(INSTALL_SHARED "lib") # /usr/[local]/lib + set(INSTALL_LIB "lib") # /usr/[local]/lib + set(INSTALL_INCLUDE "include") # /usr/[local]/include +- set(INSTALL_DOC "share/doc/${project}") # /usr/[local]/share/doc/ +- set(INSTALL_SHORTCUTS "share/applications") # /usr/[local]/share/applications ++ set(INSTALL_DOC "share/${project}/doc") # /usr/[local]/share/doc/ ++ set(INSTALL_SHORTCUTS "share/${project}/applications") # /usr/[local]/share/applications + set(INSTALL_ICONS "share/pixmaps") # /usr/[local]/share/pixmaps + set(INSTALL_INIT "etc/init") # /etc/init (upstart init scripts) + else() +diff --git a/source/glbinding-aux/CMakeLists.txt b/source/glbinding-aux/CMakeLists.txt +index 61cc166..cb0758a 100644 +--- a/source/glbinding-aux/CMakeLists.txt ++++ b/source/glbinding-aux/CMakeLists.txt +@@ -137,7 +137,7 @@ add_library(${target} + add_library(${META_PROJECT_NAME}::${target} ALIAS ${target}) + + # Export library for downstream projects +-export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/cmake/${target}/${target}-export.cmake) ++export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/${target}-export.cmake) + + # Create API export header + generate_export_header(${target} +diff --git a/source/glbinding/CMakeLists.txt b/source/glbinding/CMakeLists.txt +index bca68d1..f014494 100644 +--- a/source/glbinding/CMakeLists.txt ++++ b/source/glbinding/CMakeLists.txt +@@ -172,7 +172,7 @@ add_library(${target} + add_library(${META_PROJECT_NAME}::${target} ALIAS ${target}) + + # Export library for downstream projects +-export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/cmake/${target}/${target}-export.cmake) ++export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/${target}-export.cmake) + + # Create API export header + generate_export_header(${target} diff --git a/ports/glbinding/0004_fix-config-expected-paths.patch b/ports/glbinding/0004_fix-config-expected-paths.patch new file mode 100644 index 00000000000000..e6fb164402c458 --- /dev/null +++ b/ports/glbinding/0004_fix-config-expected-paths.patch @@ -0,0 +1,35 @@ +diff --git a/glbinding-config.cmake b/glbinding-config.cmake +index 03fc505..01b6cc8 100644 +--- a/glbinding-config.cmake ++++ b/glbinding-config.cmake +@@ -1,7 +1,7 @@ + + # This config script tries to locate the project either in its source tree + # or from an install location. +-# ++# + # Please adjust the list of submodules to search for. + + +@@ -35,20 +35,11 @@ endmacro() + + # Try install location + set(MODULE_FOUND FALSE) +-find_modules("cmake") ++find_modules(".") + + if(MODULE_FOUND) + return() + endif() + +-# Try common build locations +-if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") +- find_modules("build-debug/cmake") +- find_modules("build/cmake") +-else() +- find_modules("build/cmake") +- find_modules("build-debug/cmake") +-endif() +- + # Signal success/failure to CMake + set(glbinding_FOUND ${MODULE_FOUND}) diff --git a/ports/glbinding/portfile.cmake b/ports/glbinding/portfile.cmake index 99f233982c5341..d9fb5c0b210047 100644 --- a/ports/glbinding/portfile.cmake +++ b/ports/glbinding/portfile.cmake @@ -5,9 +5,11 @@ vcpkg_from_github( REF v3.1.0 SHA512 d7294c9a0dc47a7c107b134e5dfa78c5812fc6bf739b9fd778fa7ce946d5ea971839a65c3985e0915fd75311e4a85fb221d33a71856c460199eab0e7622f7151 HEAD_REF master - PATCHES - force-system-install.patch - fix-uwpmacro.patch + PATCHES + 0001_force-system-install.patch + 0002_fix-uwpmacro.patch + 0003_fix-cmake-configs-paths.patch + 0004_fix-config-expected-paths.patch ) vcpkg_configure_cmake( @@ -16,25 +18,21 @@ vcpkg_configure_cmake( -DOPTION_BUILD_TESTS=OFF -DOPTION_BUILD_GPU_TESTS=OFF -DOPTION_BUILD_TOOLS=OFF + -DOPTION_BUILD_EXAMPLES=OFF -DGIT_REV=0 -DCMAKE_DISABLE_FIND_PACKAGE_cpplocate=ON -DOPTION_BUILD_EXAMPLES=OFF ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/glbinding) +vcpkg_copy_pdbs() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/glbinding/cmake) - -# _IMPORT_PREFIX needs to go up one extra level in the directory tree. -# These files should be modified. -# /share/glbinding/glbinding-export.cmake -# /share/glbinding-aux/glbinding-aux-export.cmake +## _IMPORT_PREFIX needs to go up one extra level in the directory tree. file(GLOB_RECURSE TARGET_CMAKES "${CURRENT_PACKAGES_DIR}/*-export.cmake") foreach(TARGET_CMAKE IN LISTS TARGET_CMAKES) file(READ ${TARGET_CMAKE} _contents) - string(REPLACE + string(REPLACE [[ get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH) get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) @@ -50,13 +48,11 @@ get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) file(WRITE ${TARGET_CMAKE} "${_contents}") endforeach() -file(WRITE ${CURRENT_PACKAGES_DIR}/share/glbinding/glbinding-config.cmake "include(\${CMAKE_CURRENT_LIST_DIR}/glbinding/glbinding-export.cmake)\ninclude(\${CMAKE_CURRENT_LIST_DIR}/glbinding-aux/glbinding-aux-export.cmake)\ninclude(\${CMAKE_CURRENT_LIST_DIR}/KHRplatform/KHRplatform-export.cmake)\nset(glbinding_FOUND TRUE)\n") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # Remove files already published by egl-registry file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/KHR) # Handle copyright file(RENAME ${CURRENT_PACKAGES_DIR}/share/glbinding/LICENSE ${CURRENT_PACKAGES_DIR}/share/glbinding/copyright) - -vcpkg_copy_pdbs() diff --git a/ports/glew/portfile.cmake b/ports/glew/portfile.cmake index f05934f05feb78..2637b209139497 100644 --- a/ports/glew/portfile.cmake +++ b/ports/glew/portfile.cmake @@ -24,8 +24,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/glew") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/glew) set(_targets_cmake_files) if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") diff --git a/ports/globjects/CONTROL b/ports/globjects/CONTROL index fb9ca9a1f21156..0de66a3b29e0f4 100644 --- a/ports/globjects/CONTROL +++ b/ports/globjects/CONTROL @@ -1,6 +1,5 @@ Source: globjects -Maintainer: mattias@mattiascibien.net -Version: 1.1.0-2018-09-19-1 +Version: 1.1.0-2 Build-Depends: glbinding, glm Description: C++ library strictly wrapping OpenGL objects. Homepage: https://github.com/cginternals/globjects diff --git a/ports/globjects/portfile.cmake b/ports/globjects/portfile.cmake index 164edec711a25b..524014a8b9a97f 100644 --- a/ports/globjects/portfile.cmake +++ b/ports/globjects/portfile.cmake @@ -20,7 +20,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/globjects/cmake/globjects TARGET_PATH share/globjects/cmake/globjects) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/globjects/cmake/globjects) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/glog/CONTROL b/ports/glog/CONTROL index 21625e159b27dd..a94938acd53d25 100644 --- a/ports/glog/CONTROL +++ b/ports/glog/CONTROL @@ -1,5 +1,5 @@ Source: glog -Version: 0.4.0 +Version: 0.4.0-1 Homepage: https://github.com/google/glog Description: C++ implementation of the Google logging module Build-Depends: gflags diff --git a/ports/glog/portfile.cmake b/ports/glog/portfile.cmake index da6b76f4fa05a1..978539217ab6cd 100644 --- a/ports/glog/portfile.cmake +++ b/ports/glog/portfile.cmake @@ -25,7 +25,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/glog") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/glog) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/graphite2/CONTROL b/ports/graphite2/CONTROL index e8af4d4a12887e..faf867a9732e9d 100644 --- a/ports/graphite2/CONTROL +++ b/ports/graphite2/CONTROL @@ -1,5 +1,5 @@ Source: graphite2 -Version: 1.3.12 +Version: 1.3.12-1 Homepage: https://github.com/silnrsi/graphite Description: Graphite is a "smart font" system developed specifically to handle the complexities of lesser-known languages of the world. - Graphite2 is a rework of the original Graphite engine that is faster, smaller, and uses an API that is better suited to the layout architecture of most text-processing applications. \ No newline at end of file + Graphite2 is a rework of the original Graphite engine that is faster, smaller, and uses an API that is better suited to the layout architecture of most text-processing applications. diff --git a/ports/graphite2/portfile.cmake b/ports/graphite2/portfile.cmake index f5292ba83478fb..679d9567955a47 100644 --- a/ports/graphite2/portfile.cmake +++ b/ports/graphite2/portfile.cmake @@ -19,8 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/graphite2) +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/grpc/CONTROL b/ports/grpc/CONTROL index 5edad1a169aa6b..079fd91f6c1d34 100644 --- a/ports/grpc/CONTROL +++ b/ports/grpc/CONTROL @@ -1,5 +1,5 @@ Source: grpc -Version: 1.21.1 +Version: 1.21.1-1 Build-Depends: zlib, openssl, protobuf, c-ares (!uwp) Homepage: https://github.com/grpc/grpc Description: An RPC library and framework diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake index e97082edef7d98..b71a554208c3d1 100644 --- a/ports/grpc/portfile.cmake +++ b/ports/grpc/portfile.cmake @@ -16,7 +16,7 @@ vcpkg_from_github( REF 75475f090875e737ad6909a6057c59577f0c79b1 SHA512 db9ff82dee38cb0f4ba10874d10bf6cb20c8a4d49e7dd24bcd9f71388c54c782ee12fda6f1bfedd79ad988b0275d3f96df4686217465acfafcfb5e4c30093a5b HEAD_REF master - PATCHES + PATCHES 00001-fix-uwp.patch 00002-static-linking-in-linux.patch 00003-undef-base64-macro.patch @@ -72,7 +72,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake(ADD_BIN_TO_PATH) -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/grpc") +vcpkg_fixup_cmake_targets() file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/grpc RENAME copyright) @@ -94,4 +94,4 @@ SET(VCPKG_POLICY_EMPTY_PACKAGE enabled) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) vcpkg_copy_pdbs() -## \ No newline at end of file +## diff --git a/ports/harfbuzz/portfile.cmake b/ports/harfbuzz/portfile.cmake index 48cfaf1b744268..93c1da6459d59f 100644 --- a/ports/harfbuzz/portfile.cmake +++ b/ports/harfbuzz/portfile.cmake @@ -70,9 +70,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/harfbuzz TARGET_PATH share/harfbuzz) - +vcpkg_fixup_cmake_targets() vcpkg_copy_pdbs() if (HAVE_GLIB) diff --git a/ports/hdf5/CONTROL b/ports/hdf5/CONTROL index b22ee7b8e60ab7..18f03e4871491d 100644 --- a/ports/hdf5/CONTROL +++ b/ports/hdf5/CONTROL @@ -1,12 +1,12 @@ -Source: hdf5 -Version: 1.10.5-6 -Homepage: https://www.hdfgroup.org/downloads/hdf5/ -Description: HDF5 is a data model, library, and file format for storing and managing data -Build-Depends: zlib, szip - -Feature: parallel -Description: parallel support for HDF5 -Build-Depends: msmpi - -Feature: cpp -Description: Builds cpp lib +Source: hdf5 +Version: 1.10.5-7 +Homepage: https://www.hdfgroup.org/downloads/hdf5/ +Description: HDF5 is a data model, library, and file format for storing and managing data +Build-Depends: zlib, szip + +Feature: parallel +Description: parallel support for HDF5 +Build-Depends: msmpi + +Feature: cpp +Description: Builds cpp lib diff --git a/ports/hdf5/portfile.cmake b/ports/hdf5/portfile.cmake index 593b38abfc161b..1a148c2c327e3c 100644 --- a/ports/hdf5/portfile.cmake +++ b/ports/hdf5/portfile.cmake @@ -30,10 +30,8 @@ else() set(ENABLE_CPP OFF) endif() -#Note: HDF5 Builds by default static as well as shared libraries. Set BUILD_SHARED_LIBS to OFF to only get static libraries -string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_SHARED_LIBS) - file(REMOVE ${SOURCE_PATH}/config/cmake_ext_mod/FindSZIP.cmake)#Outdated; does not find debug szip + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} DISABLE_PARALLEL_CONFIGURE @@ -54,10 +52,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/hdf5) - -#Linux build create additional scripts here. I dont know what they are doing so I am deleting them and hope for the best +#Linux build create additional scripts here. I dont know what they are doing so I am deleting them and hope for the best if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) endif() diff --git a/ports/http-parser/CONTROL b/ports/http-parser/CONTROL index 76cf8785935449..d97927cd278083 100644 --- a/ports/http-parser/CONTROL +++ b/ports/http-parser/CONTROL @@ -1,4 +1,4 @@ Source: http-parser -Version: 2.9.2 +Version: 2.9.2-1 Homepage: https://github.com/nodejs/http-parser Description: HTTP Parser. diff --git a/ports/http-parser/portfile.cmake b/ports/http-parser/portfile.cmake index 8a208a5e73da64..f3cc67ec1ef1bd 100644 --- a/ports/http-parser/portfile.cmake +++ b/ports/http-parser/portfile.cmake @@ -21,7 +21,7 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/unofficial-http-parser" TARGET_PATH "share/unofficial-http-parser") +vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-http-parser TARGET_PATH share/unofficial-http-parser) # Handle copyright file(COPY ${SOURCE_PATH}/LICENSE-MIT DESTINATION ${CURRENT_PACKAGES_DIR}/share/http-parser) diff --git a/ports/imgui/CONTROL b/ports/imgui/CONTROL index 87364545ac1fd0..6de881a9a36a6e 100644 --- a/ports/imgui/CONTROL +++ b/ports/imgui/CONTROL @@ -1,4 +1,4 @@ Source: imgui -Version: 1.70 +Version: 1.70-1 Homepage: https://github.com/ocornut/imgui Description: Bloat-free Immediate Mode Graphical User interface for C++ with minimal dependencies. diff --git a/ports/imgui/portfile.cmake b/ports/imgui/portfile.cmake index 3fa3638869d277..2acebc0c8af2e5 100644 --- a/ports/imgui/portfile.cmake +++ b/ports/imgui/portfile.cmake @@ -21,6 +21,6 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/imgui) +vcpkg_fixup_cmake_targets() configure_file(${SOURCE_PATH}/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/imgui/copyright COPYONLY) diff --git a/ports/ismrmrd/CONTROL b/ports/ismrmrd/CONTROL index 7f7c26ef740d15..f876416d420c92 100644 --- a/ports/ismrmrd/CONTROL +++ b/ports/ismrmrd/CONTROL @@ -1,4 +1,4 @@ Source: ismrmrd -Version: 1.4.0 +Version: 1.4.0-1 Description: ISMRM Raw Data Format -Build-Depends: pugixml, hdf5 +Build-Depends: pugixml, hdf5, boost, fftw3 diff --git a/ports/ismrmrd/fix_static.patch b/ports/ismrmrd/fix_static.patch new file mode 100644 index 00000000000000..e9bd5f360adfe7 --- /dev/null +++ b/ports/ismrmrd/fix_static.patch @@ -0,0 +1,9 @@ +diff --git a/tests/test_main.cpp b/tests/test_main.cpp +index 4b1809d..7ec1414 100644 +--- a/tests/test_main.cpp ++++ b/tests/test_main.cpp +@@ -1,4 +1,3 @@ +-#define BOOST_TEST_DYN_LINK + #define BOOST_TEST_MODULE "ISMRMRD Unit Tests" + #include + diff --git a/ports/ismrmrd/portfile.cmake b/ports/ismrmrd/portfile.cmake index 7427cb1b2ae0c4..4b6f7e6d671ba0 100644 --- a/ports/ismrmrd/portfile.cmake +++ b/ports/ismrmrd/portfile.cmake @@ -1,34 +1,34 @@ include(vcpkg_common_functions) -vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY ONLY_DYNAMIC_CRT) - if (VCPKG_TARGET_ARCHITECTURE MATCHES "x86") - set(WIN32_INCLUDE_STDDEF "x86-windows-include-stddef.patch") + set(WIN32_INCLUDE_STDDEF_PATCH "x86-windows-include-stddef.patch") +endif() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + set(STATIC_PATCH "fix_static.patch") endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ismrmrd/ismrmrd - REF 4d4004d91ccadd41ddb30b019f970a69bb23a1bc - SHA512 648901de4629c8b11574894763a5fa61a3cb0420c5aa62cdff02c4641ba702ca73efba12b403076301e44a4f0a7c915da1f2c7a34b24377d0385af92f2eda892 + REF 4d4004d91ccadd41ddb30b019f970a69bb23a1bc + SHA512 648901de4629c8b11574894763a5fa61a3cb0420c5aa62cdff02c4641ba702ca73efba12b403076301e44a4f0a7c915da1f2c7a34b24377d0385af92f2eda892 HEAD_REF master PATCHES - ${WIN32_INCLUDE_STDDEF} + ${STATIC_PATCH} + ${WIN32_INCLUDE_STDDEF_PATCH} ) - - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS - -DUSE_SYSTEM_PUGIXML=ON - -DUSE_HDF5_DATASET_SUPPORT=ON + OPTIONS + -DUSE_SYSTEM_PUGIXML=ON + -DUSE_HDF5_DATASET_SUPPORT=ON ) vcpkg_install_cmake() vcpkg_copy_pdbs() - vcpkg_fixup_cmake_targets(CONFIG_PATH share/ismrmrd/cmake) if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/ismrmrd.dll) @@ -62,15 +62,27 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${ISMRMRD_CMAKE_DIRS}) +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) + set(EXECUTABLE_SUFFIX ".exe") +endif() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_info.exe) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_info.exe) - -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_c_example.exe) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_c_example.exe) - -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_read_timing_test.exe) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_read_timing_test.exe) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_c_example${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_c_example${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_generate_cartesian_shepp_logan${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_generate_cartesian_shepp_logan${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_info${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_info${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_read_timing_test${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_read_timing_test${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_recon_cartesian_2d${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_recon_cartesian_2d${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_test_xml${EXECUTABLE_SUFFIX}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_test_xml${EXECUTABLE_SUFFIX}) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/) +endif() file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/ismrmrd) file(RENAME ${CURRENT_PACKAGES_DIR}/share/ismrmrd/LICENSE ${CURRENT_PACKAGES_DIR}/share/ismrmrd/copyright) diff --git a/ports/itk/CONTROL b/ports/itk/CONTROL index b8ba70d0f3f4ed..b77968554c1add 100644 --- a/ports/itk/CONTROL +++ b/ports/itk/CONTROL @@ -1,5 +1,5 @@ Source: itk -Version: 5.0.0-1 +Version: 5.0.0-2 Description: Insight Segmentation and Registration Toolkit (ITK) is used for image processing and analysis. Homepage: https://github.com/InsightSoftwareConsortium/ITK Build-Depends: double-conversion, libjpeg-turbo, zlib, libpng, tiff, expat, eigen3, hdf5[cpp], openjpeg diff --git a/ports/itk/fix_conflict_with_openjp2_pc.patch b/ports/itk/fix_conflict_with_openjp2_pc.patch deleted file mode 100644 index b1a2fb6ec1c0ba..00000000000000 --- a/ports/itk/fix_conflict_with_openjp2_pc.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt b/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt -index 6ac16ab6..2bde9952 100644 ---- a/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt -+++ b/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt -@@ -373,7 +373,8 @@ else() - endif() - - if(GDCM_USE_SYSTEM_OPENJPEG) -- find_package(OpenJPEG 2.0.0 REQUIRED) -+ # openjpeg version in vcpkg is already greater than 2.0.0 and openjpeg has no version.cmake file -+ find_package(OpenJPEG REQUIRED) - set(GDCM_OPENJPEG_LIBRARIES ${OPENJPEG_LIBRARIES}) - else() - set(GDCM_OPENJPEG_LIBRARIES gdcmopenjp2) -diff --git a/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt b/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt -index 565cc338..ec126ef9 100644 ---- a/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt -+++ b/Modules/ThirdParty/GDCM/src/gdcm/Utilities/gdcmopenjpeg/CMakeLists.txt -@@ -359,12 +359,8 @@ endif() - - #----------------------------------------------------------------------------- - # pkgconfig support --# enabled by default on Unix, disabled by default on other platforms --if(UNIX) -- option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" ON) --else() -- option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" OFF) --endif() -+# Cannot use the built-in openjp2 because the configuration path is under buildtrees -+option(BUILD_PKGCONFIG_FILES "Build and install pkg-config files" OFF) - if(BUILD_PKGCONFIG_FILES) - # install in lib and not share (see multi-arch note above) - configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp2/libopenjp2.pc.cmake.in diff --git a/ports/itk/fix_libminc_config_path.patch b/ports/itk/fix_libminc_config_path.patch new file mode 100644 index 00000000000000..3ff305d4be9776 --- /dev/null +++ b/ports/itk/fix_libminc_config_path.patch @@ -0,0 +1,13 @@ +diff --git a/Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt b/Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt +index 305b2c63..63f81a53 100644 +--- a/Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt ++++ b/Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt +@@ -550,7 +550,7 @@ IF(LIBMINC_INSTALL_LIB_DIR AND NOT LIBMINC_INSTALL_NO_DEVELOPMENT) + ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/Use${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINC.cmake + ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINCConfig.cmake + DESTINATION +- ${LIBMINC_INSTALL_LIB_DIR}/cmake ++ share/itk + COMPONENT Development) + ENDIF(LIBMINC_INSTALL_LIB_DIR AND NOT LIBMINC_INSTALL_NO_DEVELOPMENT) + diff --git a/ports/itk/fix_openjpeg_search.patch b/ports/itk/fix_openjpeg_search.patch new file mode 100644 index 00000000000000..d17a1ab8405f03 --- /dev/null +++ b/ports/itk/fix_openjpeg_search.patch @@ -0,0 +1,13 @@ +diff --git a/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt b/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt +index 6ac16ab6..4638f13c 100644 +--- a/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt ++++ b/Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt +@@ -373,7 +373,7 @@ else() + endif() + + if(GDCM_USE_SYSTEM_OPENJPEG) +- find_package(OpenJPEG 2.0.0 REQUIRED) ++ find_package(OpenJPEG REQUIRED) + set(GDCM_OPENJPEG_LIBRARIES ${OPENJPEG_LIBRARIES}) + else() + set(GDCM_OPENJPEG_LIBRARIES gdcmopenjp2) diff --git a/ports/itk/portfile.cmake b/ports/itk/portfile.cmake index 77dd88d9dbd960..a83527a51f62f1 100644 --- a/ports/itk/portfile.cmake +++ b/ports/itk/portfile.cmake @@ -1,8 +1,8 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) -if(BUILDTREES_PATH_LENGTH GREATER 50 AND CMAKE_HOST_WIN32) - message(WARNING "ITKs buildsystem uses very long paths and may fail on your system.\n" +if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() @@ -10,10 +10,12 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO InsightSoftwareConsortium/ITK - REF 3e12e7006a5881136414be54216a35bbacb55baa - SHA512 9796429f8750faffc87e44052455740d1a560883e83c3ed9614d1c7ae9cc1ae22a360b572d9bb1c5ec62ca12ac81d3aa0b8dbaffff3e4ad4c2f85077ed04a10b + REF v5.0.0 + SHA512 7eecd62ab3124147f0abce482699dfdc43610703959d4a3f667c8ce12a6ecacf836a863d146f3cc7d5220b4aa05adf70a0d4dc6fa8e87bac215565badc96acff HEAD_REF master - PATCHES fix_conflict_with_openjp2_pc.patch + PATCHES + fix_openjpeg_search.patch + fix_libminc_config_path.patch ) if ("vtk" IN_LIST FEATURES) @@ -66,12 +68,10 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) # combines release and debug build configurations file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -# Handle copyright -file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/itk) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/itk/LICENSE ${CURRENT_PACKAGES_DIR}/share/itk/copyright) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/jansson/CONTROL b/ports/jansson/CONTROL index 0ebcd2a5a6fa18..19b1224ef3dc5e 100644 --- a/ports/jansson/CONTROL +++ b/ports/jansson/CONTROL @@ -1,4 +1,4 @@ Source: jansson -Version: 2.12 +Version: 2.12-1 Homepage: https://github.com/akheron/jansson Description: Jansson is a C library for encoding, decoding and manipulating JSON data diff --git a/ports/jansson/portfile.cmake b/ports/jansson/portfile.cmake index b6f3caef0a7fe4..62086e99d5f4eb 100644 --- a/ports/jansson/portfile.cmake +++ b/ports/jansson/portfile.cmake @@ -42,8 +42,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/jansson) +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/jansson RENAME copyright) diff --git a/ports/jasper/CONTROL b/ports/jasper/CONTROL index 858264411e2bc6..43c657dd4cd95d 100644 --- a/ports/jasper/CONTROL +++ b/ports/jasper/CONTROL @@ -1,5 +1,5 @@ Source: jasper -Version: 2.0.16-1 +Version: 2.0.16-2 Homepage: https://github.com/mdadams/jasper Description: Open source implementation of the JPEG-2000 Part-1 standard -Build-Depends: libjpeg-turbo +Build-Depends: libjpeg-turbo, opengl, freeglut diff --git a/ports/jasper/jasper-fix-uwp.patch b/ports/jasper/jasper-fix-uwp.patch deleted file mode 100644 index 2b67d6c939d5a0..00000000000000 --- a/ports/jasper/jasper-fix-uwp.patch +++ /dev/null @@ -1,32 +0,0 @@ -From bad33461a302ed8db02e0d9875e7b59b9e8f6032 Mon Sep 17 00:00:00 2001 -From: Mikhail Paulyshka -Date: Tue, 7 Nov 2017 20:10:31 +0300 -Subject: [PATCH] Fixed build for Windows 10 UWP - ---- - src/libjasper/CMakeLists.txt | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/src/libjasper/CMakeLists.txt b/src/libjasper/CMakeLists.txt -index 234ae67..9d0a522 100644 ---- a/src/libjasper/CMakeLists.txt -+++ b/src/libjasper/CMakeLists.txt -@@ -145,6 +145,15 @@ target_include_directories(libjasper BEFORE PRIVATE - set_target_properties(libjasper PROPERTIES OUTPUT_NAME jasper) - set_target_properties(libjasper PROPERTIES LINKER_LANGUAGE C) - -+if(MSVC) -+ target_compile_definitions(libjasper PRIVATE -+ "-D_CRT_SECURE_NO_WARNINGS") -+ target_compile_definitions(libjasper PRIVATE -+ "-D_CRT_SECURE_NO_DEPRECATE") -+ target_compile_definitions(libjasper PRIVATE -+ "-D_CRT_NONSTDC_NO_DEPRECATE") -+endif() -+ - if (UNIX) - set_target_properties(libjasper PROPERTIES - VERSION ${JAS_SO_NAME} SOVERSION ${JAS_SO_VERSION}) --- -2.14.1.windows.1 - diff --git a/ports/jasper/opengl-not-required.patch b/ports/jasper/opengl-not-required.patch deleted file mode 100644 index 5c40a6b676afcc..00000000000000 --- a/ports/jasper/opengl-not-required.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index c432ba2..c67598f 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -267,7 +267,9 @@ message("JAS_HAVE_LIBJPEG: ${JAS_HAVE_LIBJPEG}") - # Check for the OpenGL and GLUT libraries. - ################################################################################ - -+if(JAS_ENABLE_OPENGL) - find_package(OpenGL ${JAS_REQUIRED}) -+endif() - message("JAS_ENABLE_OPENGL: ${JAS_ENABLE_OPENGL}") - message("OpenGL library found: ${OPENGL_FOUND}") - if (JAS_ENABLE_OPENGL AND OPENGL_FOUND) diff --git a/ports/jasper/portfile.cmake b/ports/jasper/portfile.cmake index 6d11d166b117a9..ae42d2a226f870 100644 --- a/ports/jasper/portfile.cmake +++ b/ports/jasper/portfile.cmake @@ -5,13 +5,7 @@ vcpkg_from_github( REPO mdadams/jasper REF version-2.0.16 SHA512 b3bca227f833567c9061c4a29c0599784ed6a131b5cceddfd1696542d19add821eda445ce6d83782b454b266723b24d0f028cbc644a25c0e3a75304e615b34ee - HEAD_REF master) - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/jasper-fix-uwp.patch - ${CMAKE_CURRENT_LIST_DIR}/opengl-not-required.patch + HEAD_REF master ) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) @@ -26,7 +20,6 @@ vcpkg_configure_cmake( OPTIONS -DJAS_ENABLE_AUTOMATIC_DEPENDENCIES=OFF -DJAS_ENABLE_LIBJPEG=ON - -DJAS_ENABLE_OPENGL=OFF # not needed for the library -DJAS_ENABLE_DOC=OFF -DJAS_ENABLE_PROGRAMS=OFF -DJAS_ENABLE_SHARED=${JAS_ENABLE_SHARED} @@ -43,5 +36,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share) -file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/jasper) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/jasper/LICENSE ${CURRENT_PACKAGES_DIR}/share/jasper/copyright) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/jasper RENAME copyright) diff --git a/ports/json-dto/CONTROL b/ports/json-dto/CONTROL index 1d8b7b24b5a0dc..dbd64c3c11b613 100644 --- a/ports/json-dto/CONTROL +++ b/ports/json-dto/CONTROL @@ -1,4 +1,4 @@ Source: json-dto -Version: 0.2.8 +Version: 0.2.8-2 Description: A small header-only library for converting data between json representation and c++ structs. Build-Depends: rapidjson diff --git a/ports/json-dto/portfile.cmake b/ports/json-dto/portfile.cmake index 212ef87aae59b0..7600433ea19d06 100644 --- a/ports/json-dto/portfile.cmake +++ b/ports/json-dto/portfile.cmake @@ -19,7 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/json-dto") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/json-dto) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib ${CURRENT_PACKAGES_DIR}/debug) diff --git a/ports/jxrlib/CONTROL b/ports/jxrlib/CONTROL index 908778681638f5..f104c4c844d48a 100644 --- a/ports/jxrlib/CONTROL +++ b/ports/jxrlib/CONTROL @@ -1,4 +1,4 @@ Source: jxrlib -Version: 1.1-6 +Version: 1.1-7 Homepage: https://github.com/4creators/jxrlib Description: Open source implementation of the jpegxr image format standard. diff --git a/ports/jxrlib/portfile.cmake b/ports/jxrlib/portfile.cmake index 49869b43fe4697..43358fa1548955 100644 --- a/ports/jxrlib/portfile.cmake +++ b/ports/jxrlib/portfile.cmake @@ -25,14 +25,13 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() +vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # Handle copyright -file(COPY ${CMAKE_CURRENT_LIST_DIR}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/jxrlib) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/jxrlib/LICENSE ${CURRENT_PACKAGES_DIR}/share/jxrlib/copyright) +file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) #install FindJXR.cmake file -file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindJXR.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/JXR) - -vcpkg_copy_pdbs() +file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindJXR.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/jxr) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/jxr) diff --git a/ports/jxrlib/vcpkg-cmake-wrapper.cmake b/ports/jxrlib/vcpkg-cmake-wrapper.cmake new file mode 100644 index 00000000000000..e95a66bdc4ed6a --- /dev/null +++ b/ports/jxrlib/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,8 @@ +set(JXR_PREV_MODULE_PATH ${CMAKE_MODULE_PATH}) +list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}) + +if(NOT JXR_LIBRARIES) + _find_package(${ARGS}) +endif() + +set(CMAKE_MODULE_PATH ${JXR_PREV_MODULE_PATH}) diff --git a/ports/kangaru/CONTROL b/ports/kangaru/CONTROL index 278546bad8858d..6990d51902e771 100644 --- a/ports/kangaru/CONTROL +++ b/ports/kangaru/CONTROL @@ -1,3 +1,3 @@ Source: kangaru -Version: 4.1.3 +Version: 4.1.3-1 Description: A dependency injection container for C++11, C++14 and later diff --git a/ports/kangaru/portfile.cmake b/ports/kangaru/portfile.cmake index ffcb68bfb4f4c4..15af5ded0cea0b 100644 --- a/ports/kangaru/portfile.cmake +++ b/ports/kangaru/portfile.cmake @@ -15,11 +15,11 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/kangaru") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/kangaru) file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/lib - ${CURRENT_PACKAGES_DIR}/debug + ${CURRENT_PACKAGES_DIR}/lib + ${CURRENT_PACKAGES_DIR}/debug ) diff --git a/ports/kinectsdk2/portfile.cmake b/ports/kinectsdk2/portfile.cmake index a4b89b521ca8d3..bd2080c0478880 100644 --- a/ports/kinectsdk2/portfile.cmake +++ b/ports/kinectsdk2/portfile.cmake @@ -1,20 +1,8 @@ -# Common Ambient Variables: -# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} -# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} -# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT} -# PORT = current port name (zlib, etc) -# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc) -# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic) -# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic) -# VCPKG_ROOT_DIR = -# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) -# - include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "Kinectsdk2's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() diff --git a/ports/leptonica/CONTROL b/ports/leptonica/CONTROL index 2f48aa0d231f72..39a0a5e5cf10f3 100644 --- a/ports/leptonica/CONTROL +++ b/ports/leptonica/CONTROL @@ -1,5 +1,5 @@ Source: leptonica -Version: 1.76.0 +Version: 1.76.0-1 Homepage: https://github.com/DanBloomberg/leptonica Description: An open source library containing software that is broadly useful for image processing and image analysis applications Build-Depends: libjpeg-turbo, zlib, libpng, tiff, giflib diff --git a/ports/leptonica/portfile.cmake b/ports/leptonica/portfile.cmake index d42fa6b90503c1..34a1c379e09a74 100644 --- a/ports/leptonica/portfile.cmake +++ b/ports/leptonica/portfile.cmake @@ -24,7 +24,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake") +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) vcpkg_copy_pdbs() diff --git a/ports/libbson/CONTROL b/ports/libbson/CONTROL index eaa533a6150986..f5ae2330d8a28f 100644 --- a/ports/libbson/CONTROL +++ b/ports/libbson/CONTROL @@ -1,4 +1,4 @@ Source: libbson -Version: 1.14.0 +Version: 1.14.0-1 Description: libbson is a library providing useful routines related to building, parsing, and iterating BSON documents. Homepage: https://github.com/mongodb/libbson diff --git a/ports/libbson/portfile.cmake b/ports/libbson/portfile.cmake index 18f567b710dae0..c682ae086f238c 100644 --- a/ports/libbson/portfile.cmake +++ b/ports/libbson/portfile.cmake @@ -30,9 +30,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/libbson-static-1.0") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/libbson-static-1.0) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/libbson-1.0") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/libbson-1.0) endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/mongo-c-driver) diff --git a/ports/libfreenect2/CONTROL b/ports/libfreenect2/CONTROL index 82befaac0d0b72..bb0b6387177e0c 100644 --- a/ports/libfreenect2/CONTROL +++ b/ports/libfreenect2/CONTROL @@ -1,5 +1,5 @@ Source: libfreenect2 -Version: 0.2.0-1 +Version: 0.2.0-2 Build-Depends: libusb, libjpeg-turbo Homepage: https://github.com/OpenKinect/libfreenect2 Description: Open source drivers for the Kinect for Windows v2 device diff --git a/ports/libfreenect2/portfile.cmake b/ports/libfreenect2/portfile.cmake index ba41bb90415fe9..839c7073ea4fc1 100644 --- a/ports/libfreenect2/portfile.cmake +++ b/ports/libfreenect2/portfile.cmake @@ -26,7 +26,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/freenect2") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/freenect2) vcpkg_copy_pdbs() diff --git a/ports/libharu/CONTROL b/ports/libharu/CONTROL index 33fa2e3cb33bd7..f8d2ca29a3fbb7 100644 --- a/ports/libharu/CONTROL +++ b/ports/libharu/CONTROL @@ -1,5 +1,5 @@ Source: libharu -Version: 2017-08-15-d84867ebf9f-6 +Version: 2017-08-15-8 Homepage: https://github.com/libharu/libharu Description: libharu - free PDF library Build-Depends: zlib, libpng diff --git a/ports/libharu/portfile.cmake b/ports/libharu/portfile.cmake index 7855dedc7441b5..962550ca88e1db 100644 --- a/ports/libharu/portfile.cmake +++ b/ports/libharu/portfile.cmake @@ -19,22 +19,32 @@ vcpkg_from_github( ${SHADING_PR} ) -string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" LIBHPDF_STATIC) -string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "shared" LIBHPDF_SHARED) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(VCPKG_BUILD_SHARED_LIBS ON) + set(VCPKG_BUILD_STATIC_LIBS OFF) +else() + set(VCPKG_BUILD_SHARED_LIBS OFF) + set(VCPKG_BUILD_STATIC_LIBS ON) +endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - -DLIBHPDF_STATIC=${LIBHPDF_STATIC} - -DLIBHPDF_SHARED=${LIBHPDF_SHARED} + -DLIBHPDF_STATIC=${VCPKG_BUILD_STATIC_LIBS} + -DLIBHPDF_SHARED=${VCPKG_BUILD_SHARED_LIBS} ) vcpkg_install_cmake() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libhpdfs.lib ${CURRENT_PACKAGES_DIR}/lib/libhpdf.lib) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libhpdfsd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libhpdfd.lib) + else() + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libhpdfs.a ${CURRENT_PACKAGES_DIR}/lib/libhpdf.a) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libhpdfs.a ${CURRENT_PACKAGES_DIR}/debug/lib/libhpdfd.a) + endif() endif() file(REMOVE_RECURSE diff --git a/ports/libmodbus/CONTROL b/ports/libmodbus/CONTROL index ef880d2a0825ed..44cededd2f39b4 100644 --- a/ports/libmodbus/CONTROL +++ b/ports/libmodbus/CONTROL @@ -1,3 +1,3 @@ Source: libmodbus -Version: 3.1.4-2 +Version: 3.1.4-3 Description: libmodbus is a free software library to send/receive data with a device which respects the Modbus protocol diff --git a/ports/libmodbus/portfile.cmake b/ports/libmodbus/portfile.cmake index 95e3b8720602c4..3b5e27c2affb5b 100644 --- a/ports/libmodbus/portfile.cmake +++ b/ports/libmodbus/portfile.cmake @@ -19,10 +19,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() - -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) # Handle copyright file(INSTALL ${SOURCE_PATH}/COPYING.LESSER DESTINATION ${CURRENT_PACKAGES_DIR}/share/libmodbus RENAME copyright) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) \ No newline at end of file +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/libogg/CONTROL b/ports/libogg/CONTROL index abce418396c291..497ec9a6d6c45f 100644 --- a/ports/libogg/CONTROL +++ b/ports/libogg/CONTROL @@ -1,4 +1,4 @@ Source: libogg -Version: 1.3.3-3 +Version: 1.3.3-4 Description: Ogg is a multimedia container format, and the native file and stream format for the Xiph.org multimedia codecs. Homepage: https://github.com/xiph/ogg diff --git a/ports/libogg/portfile.cmake b/ports/libogg/portfile.cmake index b42ad81361c0f8..0b3b8be7bc2955 100644 --- a/ports/libogg/portfile.cmake +++ b/ports/libogg/portfile.cmake @@ -24,4 +24,5 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) vcpkg_copy_pdbs() -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libogg RENAME copyright) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) + diff --git a/ports/libpff/CONTROL b/ports/libpff/CONTROL index 0aeb07a199b6a5..8520aa188dc7cd 100644 --- a/ports/libpff/CONTROL +++ b/ports/libpff/CONTROL @@ -1,4 +1,4 @@ Source: libpff -Version: 2018-07-14 +Version: 2018-07-14-1 Build-Depends: zlib Description: Library and tools to access the Personal Folder File (PFF) and the Offline Folder File (OFF) format. diff --git a/ports/libpff/portfile.cmake b/ports/libpff/portfile.cmake index f9a56a86e9b1b6..6d327d8a5b0767 100644 --- a/ports/libpff/portfile.cmake +++ b/ports/libpff/portfile.cmake @@ -29,7 +29,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/libpff" TARGET_PATH "share/unofficial-libpff") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/libpff TARGET_PATH share/unofficial-libpff) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") diff --git a/ports/libpng/CONTROL b/ports/libpng/CONTROL index 1b07ce1e25338a..f813439d8b50e5 100644 --- a/ports/libpng/CONTROL +++ b/ports/libpng/CONTROL @@ -1,5 +1,5 @@ Source: libpng -Version: 1.6.37-1 +Version: 1.6.37-2 Build-Depends: zlib Homepage: https://github.com/glennrp/libpng Description: libpng is a library implementing an interface for reading and writing PNG (Portable Network Graphics) format files. diff --git a/ports/libpng/portfile.cmake b/ports/libpng/portfile.cmake index ab552b8e696bb3..7262d34c72bb35 100644 --- a/ports/libpng/portfile.cmake +++ b/ports/libpng/portfile.cmake @@ -44,7 +44,7 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") endif() endif() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/libpng TARGET_PATH share/libpng) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/libpng) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share/) file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libpng) diff --git a/ports/libressl/CONTROL b/ports/libressl/CONTROL index 989dbfdeb9944b..2cb09fb6c35f25 100644 --- a/ports/libressl/CONTROL +++ b/ports/libressl/CONTROL @@ -1,6 +1,6 @@ Source: libressl -Version: 2.9.1 +Version: 2.9.1-2 Description: LibreSSL is a version of the TLS/crypto stack forked from OpenSSL in 2014, with goals of modernizing the codebase, improving security, and applying best practice development processes. Feature: tools -Description: Build openssl and ocspcheck executables \ No newline at end of file +Description: Build openssl and ocspcheck executables diff --git a/ports/libressl/portfile.cmake b/ports/libressl/portfile.cmake index d99ee1b6246a39..5c8e5b964ce65d 100644 --- a/ports/libressl/portfile.cmake +++ b/ports/libressl/portfile.cmake @@ -1,5 +1,11 @@ cmake_minimum_required(VERSION 3.13) +if(EXISTS "${CURRENT_INSTALLED_DIR}/include/openssl/ssl.h") + message(WARNING "Can't build libressl if openssl is installed. Please remove openssl, and try install libressl again if you need it. Build will continue since libressl is a subset of openssl") + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + return() +endif() + if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") message(FATAL_ERROR "${PORT} does not currently support UWP") endif() @@ -28,11 +34,6 @@ vcpkg_extract_source_archive_ex( 0002-suppress-msvc-warnings.patch ) -set(BUILD_SHARED_LIBS OFF) -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - set(BUILD_SHARED_LIBS ON) -endif() - set(LIBRESSL_APPS OFF) if("tools" IN_LIST FEATURES) set(LIBRESSL_APPS ON) @@ -44,7 +45,6 @@ vcpkg_configure_cmake( OPTIONS -DLIBRESSL_APPS=${LIBRESSL_APPS} -DLIBRESSL_TESTS=OFF - -DBUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} OPTIONS_DEBUG -DLIBRESSL_APPS=OFF ) @@ -61,7 +61,7 @@ if(LIBRESSL_APPS) vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/openssl") endif() -if(NOT BUILD_SHARED_LIBS) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin" @@ -81,7 +81,7 @@ vcpkg_copy_pdbs() file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) -if((NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) AND BUILD_SHARED_LIBS) +if((NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) AND (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")) file(GLOB_RECURSE LIBS "${CURRENT_PACKAGES_DIR}/*.lib") foreach(LIB ${LIBS}) string(REGEX REPLACE "(.+)-[0-9]+\\.lib" "\\1.lib" LINK "${LIB}") diff --git a/ports/libsndfile/CONTROL b/ports/libsndfile/CONTROL index 91a28e6b34bbe3..2547637a8c4c6d 100644 --- a/ports/libsndfile/CONTROL +++ b/ports/libsndfile/CONTROL @@ -1,5 +1,5 @@ Source: libsndfile -Version: 1.0.29-6830c42-7 +Version: 1.0.29-8 Description: Library to read, write and manipulate many soundfile types. Authored by Eric de Castro Lopo Homepage: https://github.com/erikd/libsndfile Default-Features: external-libs diff --git a/ports/libsndfile/portfile.cmake b/ports/libsndfile/portfile.cmake index 7c103b6a29f9fe..1e86fbffbdc53f 100644 --- a/ports/libsndfile/portfile.cmake +++ b/ports/libsndfile/portfile.cmake @@ -26,7 +26,7 @@ endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS + OPTIONS -DBUILD_EXAMPLES=OFF -DBUILD_REGTEST=OFF -DBUILD_TESTING=OFF @@ -41,8 +41,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/libsndfile) +vcpkg_fixup_cmake_targets() # Fix applied for 6830c421899e32f8d413a903a21a9b6cf384d369 file(READ "${CURRENT_PACKAGES_DIR}/share/libsndfile/LibSndFileTargets.cmake" _contents) diff --git a/ports/libtins/CONTROL b/ports/libtins/CONTROL index e2a7f43a2ded9f..4bd5d3755cac9f 100644 --- a/ports/libtins/CONTROL +++ b/ports/libtins/CONTROL @@ -1,4 +1,4 @@ Source: libtins -Version: 4.0-2 +Version: 4.0-3 Description: High-level, multiplatform C++ network packet sniffing and crafting library Build-Depends: winpcap (windows) diff --git a/ports/libtins/portfile.cmake b/ports/libtins/portfile.cmake index 6890fe64cac123..1839d118c90510 100644 --- a/ports/libtins/portfile.cmake +++ b/ports/libtins/portfile.cmake @@ -10,16 +10,22 @@ vcpkg_from_github( string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" LIBTINS_BUILD_SHARED) +set(ENABLE_PCAP FALSE) +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + set(ENABLE_PCAP TRUE) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DLIBTINS_BUILD_SHARED=${LIBTINS_BUILD_SHARED} + -DLIBTINS_ENABLE_PCAP=${ENABLE_PCAP} ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH CMake TARGET_PATH share/libtins) +vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/libusb/CONTROL b/ports/libusb/CONTROL index ecd2301447886a..e4229daed35f27 100644 --- a/ports/libusb/CONTROL +++ b/ports/libusb/CONTROL @@ -1,4 +1,4 @@ Source: libusb -Version: 1.0.22-2 +Version: 1.0.22-3 Homepage: https://github.com/libusb/libusb Description: a cross-platform library to access USB devices diff --git a/ports/libusb/portfile.cmake b/ports/libusb/portfile.cmake index d2a96c73b8100b..d5047841fe9b62 100644 --- a/ports/libusb/portfile.cmake +++ b/ports/libusb/portfile.cmake @@ -1,7 +1,11 @@ include(vcpkg_common_functions) -if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) - message(FATAL_ERROR "Error: UWP builds are currently not supported.") +if (VCPKG_CMAKE_SYSTEM_NAME) + message(FATAL_ERROR "Error: the port is unsupported on your platform. Please open an issue on github.com/Microsoft/vcpkg to request a fix") +endif() + +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + message("${PORT} currently requires the following tools and libraries from the system package manager:\n autoreconf\n libudev\n\nThese can be installed on Ubuntu systems via apt-get install autoreconf libudev-dev") endif() vcpkg_from_github( @@ -11,28 +15,96 @@ vcpkg_from_github( SHA512 b1fed66aafa82490889ee488832c6884a95d38ce7b28fb7c3234b9bce1f749455d7b91cde397a0abc25101410edb13ab2f9832c59aa7b0ea8c19ba2cf4c63b00 HEAD_REF master PATCHES - "${CMAKE_CURRENT_LIST_DIR}/fix_c2001.patch" + fix_c2001.patch ) -if(VCPKG_PLATFORM_TOOLSET MATCHES "v141") - set(MSVS_VERSION 2017) -else() - set(MSVS_VERSION 2015) -endif() +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + if(VCPKG_PLATFORM_TOOLSET MATCHES "v142") + set(MSVS_VERSION 2017) #they are abi compatible, so it should work + elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v141") + set(MSVS_VERSION 2017) + else() + set(MSVS_VERSION 2015) + endif() + + if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(LIBUSB_PROJECT_TYPE dll) + else() + set(LIBUSB_PROJECT_TYPE static) + endif() -if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") - set(LIBUSB_PROJECT_TYPE dll) + vcpkg_install_msbuild( + SOURCE_PATH ${SOURCE_PATH} + PROJECT_SUBPATH msvc/libusb_${LIBUSB_PROJECT_TYPE}_${MSVS_VERSION}.vcxproj + LICENSE_SUBPATH COPYING + ) else() - set(LIBUSB_PROJECT_TYPE static) -endif() + set(BASH /bin/bash) -vcpkg_install_msbuild( - SOURCE_PATH ${SOURCE_PATH} - PROJECT_SUBPATH msvc/libusb_${LIBUSB_PROJECT_TYPE}_${MSVS_VERSION}.vcxproj - LICENSE_SUBPATH COPYING -) + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "Release") + file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) + file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) + # Copy sources + message(STATUS "Copying source files...") + file(GLOB PORT_SOURCE_FILES ${SOURCE_PATH}/*) + foreach(SOURCE_FILE ${PORT_SOURCE_FILES}) + file(COPY ${SOURCE_FILE} DESTINATION "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") + endforeach() + message(STATUS "Copying source files... done") + # Configure release + message(STATUS "Configuring ${TARGET_TRIPLET}-rel") + execute_process( + COMMAND "${BASH} --noprofile --norc -c \"./autogen.sh\"" + WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") + execute_process( + COMMAND "${BASH} --noprofile --norc -c \"./configure --prefix=${CURRENT_PACKAGES_DIR}\"" + WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") + message(STATUS "Configuring ${TARGET_TRIPLET}-rel done") + endif() + + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "Debug") + file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) + file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) + # Copy sources + message(STATUS "Copying source files...") + file(GLOB PORT_SOURCE_FILES ${SOURCE_PATH}/*) + foreach(SOURCE_FILE ${PORT_SOURCE_FILES}) + file(COPY ${SOURCE_FILE} DESTINATION "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") + endforeach() + message(STATUS "Copying source files... done") + # Configure debug + message(STATUS "Configuring ${TARGET_TRIPLET}-dbg") + execute_process( + COMMAND "${BASH} --noprofile --norc -c \"./autogen.sh\"" + WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") + execute_process( + COMMAND "${BASH} --noprofile --norc -c \"./configure --prefix=${CURRENT_PACKAGES_DIR}/debug\"" + WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") + message(STATUS "Configuring ${TARGET_TRIPLET}-dbg done") + endif() + + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + # Build release + message(STATUS "Package ${TARGET_TRIPLET}-rel") + execute_process( + COMMAND "${BASH} --noprofile --norc -c \"make install\"" + WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") + message(STATUS "Package ${TARGET_TRIPLET}-rel done") + endif() + + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + # Build debug + message(STATUS "Package ${TARGET_TRIPLET}-dbg") + execute_process( + COMMAND "${BASH} --noprofile --norc -c \"make install\"" + WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") + message(STATUS "Package ${TARGET_TRIPLET}-dbg done") + endif() +endif() file(INSTALL ${SOURCE_PATH}/libusb/libusb.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/libusb-1.0 ) + +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/libwebp/CONTROL b/ports/libwebp/CONTROL index a22b389b49e729..90dffdc7772c64 100644 --- a/ports/libwebp/CONTROL +++ b/ports/libwebp/CONTROL @@ -1,5 +1,5 @@ Source: libwebp -Version: 1.0.2-4 +Version: 1.0.2-6 Homepage: https://github.com/webmproject/libwebp Description: Lossy compression of digital photographic images. Build-Depends: opengl diff --git a/ports/libwebp/portfile.cmake b/ports/libwebp/portfile.cmake index 49590a982f8bf4..11b0b79041fe32 100644 --- a/ports/libwebp/portfile.cmake +++ b/ports/libwebp/portfile.cmake @@ -37,6 +37,12 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") message("WebP currently requires the following library from the system package manager:\n Xxf86vm\n\nThis can be installed on Ubuntu systems via apt-get install libxxf86vm-dev") endif() +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") + set(WEBP_BUILD_VWEBP OFF) + set(WEBP_BUILD_EXTRAS OFF) + message("Due to GLUT Framework problems with CMake, at the moment it's not possible to build VWebP on Mac. It has been disabled together with extras.") +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA @@ -63,8 +69,12 @@ vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/WebP/cmake/" TARGET_PATH "share/WebP/") +vcpkg_fixup_cmake_targets(CONFIG_PATH share/WebP/cmake) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/WebP) +file(GLOB CMAKE_FILES ${CURRENT_PACKAGES_DIR}/share/${PORT}/*) +file(COPY ${CMAKE_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/share/webp/) #somehow the native CMAKE_EXECUTABLE_SUFFIX does not work, so here we emulate it if(CMAKE_HOST_WIN32) @@ -114,5 +124,4 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) endif() -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libwebp) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/libwebp/COPYING ${CURRENT_PACKAGES_DIR}/share/libwebp/copyright) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libwebp RENAME copyright) diff --git a/ports/libwebsockets/CONTROL b/ports/libwebsockets/CONTROL index ae9c3d6ee3551e..1b091480a5f706 100644 --- a/ports/libwebsockets/CONTROL +++ b/ports/libwebsockets/CONTROL @@ -1,5 +1,5 @@ Source: libwebsockets -Version: 3.1.0-1 +Version: 3.1.0-2 Build-Depends: zlib, openssl Homepage: https://github.com/warmcat/libwebsockets Description: Libwebsockets is a lightweight pure C library built to use minimal CPU and memory resources, and provide fast throughput in both directions as client or server. diff --git a/ports/libwebsockets/portfile.cmake b/ports/libwebsockets/portfile.cmake index c23f99042242c5..b2b90cccff6c9d 100644 --- a/ports/libwebsockets/portfile.cmake +++ b/ports/libwebsockets/portfile.cmake @@ -27,9 +27,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "windows" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake") + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/libwebsockets" TARGET_PATH "share/libwebsockets") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/libwebsockets) endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/lmdb/CONTROL b/ports/lmdb/CONTROL index 247d812d57d9de..eea847401fb4e4 100644 --- a/ports/lmdb/CONTROL +++ b/ports/lmdb/CONTROL @@ -1,4 +1,4 @@ Source: lmdb -Version: 0.9.23 +Version: 0.9.23-1 Homepage: https://github.com/LMDB/lmdb Description: LMDB is an extraordinarily fast, memory-efficient database diff --git a/ports/lmdb/portfile.cmake b/ports/lmdb/portfile.cmake index 504c3935ca9fba..9dc1aeeb2dd0e8 100644 --- a/ports/lmdb/portfile.cmake +++ b/ports/lmdb/portfile.cmake @@ -18,9 +18,8 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/lmdb) +vcpkg_fixup_cmake_targets() file(INSTALL ${SOURCE_PATH}/libraries/liblmdb/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/lmdb RENAME copyright) -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() diff --git a/ports/magnum-extras/CONTROL b/ports/magnum-extras/CONTROL index 7ff04cb63010f1..e065088af9e823 100644 --- a/ports/magnum-extras/CONTROL +++ b/ports/magnum-extras/CONTROL @@ -1,9 +1,8 @@ Source: magnum-extras -Version: 2019.01-1 +Version: 2019.01-2 Build-Depends: magnum[core] -Description: Extras for magnum, C++11/C++14 graphics middleware for games and data visualization +Description: Extras for magnum, C++11/C++14 graphics middleware for games and data visualization Homepage: https://magnum.graphics/ -Default-Features: Feature: ui Description: Ui library diff --git a/ports/magnum-extras/portfile.cmake b/ports/magnum-extras/portfile.cmake index 7941aeee9876ab..41faca02cd560f 100644 --- a/ports/magnum-extras/portfile.cmake +++ b/ports/magnum-extras/portfile.cmake @@ -37,7 +37,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/MagnumExtras TARGET_PATH share/MagnumExtras) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/MagnumExtras TARGET_PATH share/magnumextras) # Messages to the user if("ui" IN_LIST FEATURES) diff --git a/ports/magnum-integration/CONTROL b/ports/magnum-integration/CONTROL index 5383204972fb71..68a481b8c6a6d1 100644 --- a/ports/magnum-integration/CONTROL +++ b/ports/magnum-integration/CONTROL @@ -1,9 +1,8 @@ Source: magnum-integration -Version: 2019.01-1 +Version: 2019.01-2 Build-Depends: magnum[core] -Description: Integrations for magnum, C++11/C++14 graphics middleware for games and data visualization +Description: Integrations for magnum, C++11/C++14 graphics middleware for games and data visualization Homepage: https://magnum.graphics/ -Default-Features: Feature: bullet Description: BulletIntegration library @@ -22,4 +21,3 @@ Build-Depends: imgui #Feature: dart #Description: DartIntegration library #Build-Depends: dart - diff --git a/ports/magnum-plugins/CONTROL b/ports/magnum-plugins/CONTROL index ef4c4084cf78d3..abe303a90c9ce7 100644 --- a/ports/magnum-plugins/CONTROL +++ b/ports/magnum-plugins/CONTROL @@ -1,7 +1,7 @@ Source: magnum-plugins Version: 2019.01-1 Build-Depends: magnum[core] -Description: Plugins for magnum, C++11/C++14 graphics middleware for games and data visualization +Description: Plugins for magnum, C++11/C++14 graphics middleware for games and data visualization Homepage: https://magnum.graphics/ Default-Features: ddsimporter, miniexrimageconverter, opengeximporter, stanfordimporter, stbimageconverter, stbimageimporter @@ -27,7 +27,6 @@ Build-Depends: magnum[audio] Feature: drwavaudioimporter Description: DrWavAudioImporter plugin Build-Depends: magnum[audio] -# #Feature: faad2audioimporter #Description: Faad2AudioImporter plugin #Build-Depends: magnum[audio], faad2 diff --git a/ports/mathgl/CONTROL b/ports/mathgl/CONTROL index 211c435e8a9fad..9337e5f2dd2fa1 100644 --- a/ports/mathgl/CONTROL +++ b/ports/mathgl/CONTROL @@ -1,5 +1,5 @@ Source: mathgl -Version: 2.4.3 +Version: 2.4.3-1 Description: MathGL is a free library of fast C++ routines for the plotting of the data varied in one or more dimensions Default-Features: opengl, jpeg, png, zlib diff --git a/ports/mathgl/portfile.cmake b/ports/mathgl/portfile.cmake index dd44353e0fe00d..d17707c64574d3 100644 --- a/ports/mathgl/portfile.cmake +++ b/ports/mathgl/portfile.cmake @@ -91,11 +91,11 @@ vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/mathgl) + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) file(REMOVE ${CURRENT_PACKAGES_DIR}/mathgl2-config.cmake) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/mathgl2-config.cmake) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/mathgl TARGET_PATH share/mathgl) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/mathgl) endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/mongo-c-driver/CONTROL b/ports/mongo-c-driver/CONTROL index 35f29143d63a05..0a02b9dd13916d 100644 --- a/ports/mongo-c-driver/CONTROL +++ b/ports/mongo-c-driver/CONTROL @@ -1,5 +1,5 @@ Source: mongo-c-driver -Version: 1.14.0-1 +Version: 1.14.0-2 Build-Depends: libbson, openssl (!windows), zlib Description: Client library written in C for MongoDB. Homepage: https://github.com/mongodb/mongo-c-driver diff --git a/ports/mongo-c-driver/portfile.cmake b/ports/mongo-c-driver/portfile.cmake index 5a0c484c0c8ddc..3db262c2ffd239 100644 --- a/ports/mongo-c-driver/portfile.cmake +++ b/ports/mongo-c-driver/portfile.cmake @@ -40,9 +40,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() if (VCPKG_LIBRARY_LINKAGE STREQUAL "static") - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/libmongoc-static-1.0") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/libmongoc-static-1.0) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/libmongoc-1.0") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/libmongoc-1.0) endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) @@ -96,7 +96,7 @@ endif() file(READ ${CURRENT_PACKAGES_DIR}/share/mongo-c-driver/libmongoc-${PORT_POSTFIX}-config.cmake LIBMONGOC_CONFIG_CMAKE) # Patch: Set _IMPORT_PREFIX and replace PACKAGE_PREFIX_DIR -string(REPLACE +string(REPLACE [[ get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../" ABSOLUTE) ]] diff --git a/ports/mongo-cxx-driver/CONTROL b/ports/mongo-cxx-driver/CONTROL index 50a2a6efdf2936..c1d85e636637dc 100644 --- a/ports/mongo-cxx-driver/CONTROL +++ b/ports/mongo-cxx-driver/CONTROL @@ -1,5 +1,5 @@ Source: mongo-cxx-driver -Version: 3.4.0-1 +Version: 3.4.0-2 Build-Depends: libbson, mongo-c-driver, boost-smart-ptr, boost-optional, boost-utility Homepage: https://github.com/mongodb/mongo-cxx-driver Description: MongoDB C++ Driver. diff --git a/ports/mongo-cxx-driver/portfile.cmake b/ports/mongo-cxx-driver/portfile.cmake index a5a1c6f399dd25..3ff200da3c8ab8 100644 --- a/ports/mongo-cxx-driver/portfile.cmake +++ b/ports/mongo-cxx-driver/portfile.cmake @@ -26,7 +26,7 @@ elseif ("boost" IN_LIST FEATURES) elseif("std-experimental" IN_LIST FEATURES) set(BSONCXX_POLY STD_EXPERIMENTAL) else() - if (WIN32) + if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(BSONCXX_POLY BOOST) else() set(BSONCXX_POLY MNMLSTC) diff --git a/ports/moos-core/CONTROL b/ports/moos-core/CONTROL index 33e68c93f8c56f..2534bb9054179f 100644 --- a/ports/moos-core/CONTROL +++ b/ports/moos-core/CONTROL @@ -1,4 +1,4 @@ Source: moos-core -Version: 10.4.0-2 +Version: 10.4.0-3 Description: A very light weight, easy to use middleware. -Homepage: https://sites.google.com/site/moossoftware/ \ No newline at end of file +Homepage: https://sites.google.com/site/moossoftware/ diff --git a/ports/moos-core/portfile.cmake b/ports/moos-core/portfile.cmake index 646fde9e2ff2b7..663ad6df26ed8b 100644 --- a/ports/moos-core/portfile.cmake +++ b/ports/moos-core/portfile.cmake @@ -12,25 +12,16 @@ vcpkg_from_github( cmake_fix.patch ) -message(STATUS "MOOS VCPKG SOURCE_PATH ${SOURCE_PATH}") -message(STATUS "MOOS INSTALL -DCMAKE_INSTALL_PREFIX=${CURRENT_PACKAGES_DIR}") - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - -DBUILD_SHARED_LIBS=OFF -DCMAKE_ENABLE_EXPORT=OFF ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/MOOS") - -set(MOOS_EXEC_SUFFIX "") -if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - set(MOOS_EXEC_SUFFIX ".exe") -endif() +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/MOOS) # Stage tools file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools) diff --git a/ports/mosquitto/portfile.cmake b/ports/mosquitto/portfile.cmake index f3b2f9715f8e65..901e80fd751e44 100644 --- a/ports/mosquitto/portfile.cmake +++ b/ports/mosquitto/portfile.cmake @@ -30,17 +30,31 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() +vcpkg_copy_pdbs() -# Remove debug/include file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) - -file(GLOB EXE ${CURRENT_PACKAGES_DIR}/bin/*.exe) -file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) -file(REMOVE ${EXE}) -file(REMOVE ${DEBUG_EXE}) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/mosquitto RENAME copyright) +if(CMAKE_HOST_WIN32) + set(EXECUTABLE_SUFFIX ".exe") +else() + set(EXECUTABLE_SUFFIX "") +endif() + +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/mosquitto_passwd${EXECUTABLE_SUFFIX}) +file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/mosquitto_passwd${EXECUTABLE_SUFFIX}) +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/mosquitto_pub${EXECUTABLE_SUFFIX}) +file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/mosquitto_pub${EXECUTABLE_SUFFIX}) +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/mosquitto_rr${EXECUTABLE_SUFFIX}) +file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/mosquitto_rr${EXECUTABLE_SUFFIX}) +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/mosquitto_sub${EXECUTABLE_SUFFIX}) +file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/mosquitto_sub${EXECUTABLE_SUFFIX}) + +#if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) + endif() +#endif() -# Copy pdb -vcpkg_copy_pdbs() +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/mosquitto RENAME copyright) diff --git a/ports/ms-angle/CONTROL b/ports/ms-angle/CONTROL index 6d68b4e56bbdb2..4fadc599431234 100644 --- a/ports/ms-angle/CONTROL +++ b/ports/ms-angle/CONTROL @@ -1,4 +1,4 @@ Source: ms-angle -Version: 2018-04-18-1 +Version: 2018-04-18-2 Description: The UWP version of a conformant OpenGL ES implementation for Windows, Mac and Linux. The goal of ANGLE is to allow users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform. ANGLE currently provides translation from OpenGL ES 2.0 and 3.0 to desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11. Support for translation from OpenGL ES to Vulkan is underway, and future plans include compute shader support (ES 3.1) and MacOS support. diff --git a/ports/ms-angle/portfile.cmake b/ports/ms-angle/portfile.cmake index 0a8dc8c9b4d43f..0e10fa1cc597fd 100644 --- a/ports/ms-angle/portfile.cmake +++ b/ports/ms-angle/portfile.cmake @@ -25,9 +25,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/ms-angle) - +vcpkg_fixup_cmake_targets() vcpkg_copy_pdbs() file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/ms-angle RENAME copyright) diff --git a/ports/nanomsg/CONTROL b/ports/nanomsg/CONTROL index c560edbd13c333..8693cfef3514c0 100644 --- a/ports/nanomsg/CONTROL +++ b/ports/nanomsg/CONTROL @@ -1,5 +1,5 @@ Source: nanomsg -Version: 1.1.5 +Version: 1.1.5-1 Description: a simple high-performance implementation of several "scalability protocols". These scalability protocols are light-weight messaging protocols which can be used to solve a number of very common messaging patterns, such as request/reply, publish/subscribe, surveyor/respondent, and so forth. These protocols can run over a variety of transports such as TCP, UNIX sockets, and even WebSocket. diff --git a/ports/nanomsg/portfile.cmake b/ports/nanomsg/portfile.cmake index 71b26ea5e88c53..d07685f6099939 100644 --- a/ports/nanomsg/portfile.cmake +++ b/ports/nanomsg/portfile.cmake @@ -32,7 +32,7 @@ vcpkg_install_cmake() file(STRINGS ${SOURCE_PATH}/.version NN_PACKAGE_VERSION) -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/nanomsg-${NN_PACKAGE_VERSION}") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/nanomsg-${NN_PACKAGE_VERSION}) vcpkg_replace_string( ${CURRENT_PACKAGES_DIR}/share/${PORT}/nanomsg-config.cmake @@ -64,7 +64,7 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin ) - + vcpkg_replace_string( ${CURRENT_PACKAGES_DIR}/include/nanomsg/nn.h "defined(NN_STATIC_LIB)" diff --git a/ports/nlopt/portfile.cmake b/ports/nlopt/portfile.cmake index c5017f4f8ee64f..5fb068145af10d 100644 --- a/ports/nlopt/portfile.cmake +++ b/ports/nlopt/portfile.cmake @@ -25,7 +25,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/nlopt") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/nlopt) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/octomap/CONTROL b/ports/octomap/CONTROL index 3669f385042b42..afac685c6d291a 100644 --- a/ports/octomap/CONTROL +++ b/ports/octomap/CONTROL @@ -1,3 +1,3 @@ Source: octomap -Version: cefed0c1d79afafa5aeb05273cf1246b093b771c-6 +Version: 2017-03-11-7 Description: An Efficient Probabilistic 3D Mapping Framework Based on Octrees diff --git a/ports/octomap/portfile.cmake b/ports/octomap/portfile.cmake index d260d440964d4b..203adce4df93e5 100644 --- a/ports/octomap/portfile.cmake +++ b/ports/octomap/portfile.cmake @@ -49,8 +49,7 @@ else() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) endif() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/octomap) - +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/ogre/001-cmake-install-dir.patch b/ports/ogre/001-cmake-install-dir.patch deleted file mode 100644 index d0df419eb87533..00000000000000 --- a/ports/ogre/001-cmake-install-dir.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff --git a/CMake/CMakeLists.txt b/CMake/CMakeLists.txt -index a7a3796..2e21403 100644 ---- a/CMake/CMakeLists.txt -+++ b/CMake/CMakeLists.txt -@@ -13,10 +13,12 @@ - # directory, but can also be used for custom projects. - ############################################################# - --if(WIN32 OR APPLE) -- set(OGRE_CMAKE_DIR "CMake") --else() -- set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake") -+if(NOT DEFINED OGRE_CMAKE_DIR) -+ if(WIN32 OR APPLE) -+ set(OGRE_CMAKE_DIR "CMake") -+ else() -+ set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake") -+ endif() - endif() - - set(INST_FILES Utils/FindPkgMacros.cmake) -diff --git a/CMake/InstallResources.cmake b/CMake/InstallResources.cmake -index 783755e..79f7514 100644 ---- a/CMake/InstallResources.cmake -+++ b/CMake/InstallResources.cmake -@@ -208,10 +208,12 @@ endif () - # Create the CMake package files - include(CMakePackageConfigHelpers) - --if(WIN32 OR APPLE) -- set(OGRE_CMAKE_DIR "CMake") --else() -- set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake") -+if(NOT DEFINED OGRE_CMAKE_DIR) -+ if(WIN32 OR APPLE) -+ set(OGRE_CMAKE_DIR "CMake") -+ else() -+ set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake") -+ endif() - endif() - configure_package_config_file(${OGRE_TEMPLATES_DIR}/OGREConfig.cmake.in ${PROJECT_BINARY_DIR}/cmake/OGREConfig.cmake - INSTALL_DESTINATION ${OGRE_CMAKE_DIR} diff --git a/ports/ogre/002-link-optimized-lib-workaround.patch b/ports/ogre/002-link-optimized-lib-workaround.patch deleted file mode 100644 index b2678f488d782d..00000000000000 --- a/ports/ogre/002-link-optimized-lib-workaround.patch +++ /dev/null @@ -1,37 +0,0 @@ ---- a/CMake/Dependencies.cmake -+++ b/CMake/Dependencies.cmake -@@ -199,6 +199,11 @@ - # Find zlib - find_package(ZLIB) - macro_log_feature(ZLIB_FOUND "zlib" "Simple data compression library" "http://www.zlib.net" FALSE "" "") -+# replace optimized/debug keyword with generator expression -+unset(ZLIB_LIBRARY) -+set(ZLIB_LIBRARY $<$:${ZLIB_LIBRARY_RELEASE}> $<$:${ZLIB_LIBRARY_DEBUG}>) -+unset(ZLIB_LIBRARIES) -+set(ZLIB_LIBRARIES ${ZLIB_LIBRARY}) - - if (ZLIB_FOUND) - # Find zziplib -@@ -213,6 +218,11 @@ - # Find FreeType - find_package(Freetype) - macro_log_feature(FREETYPE_FOUND "freetype" "Portable font engine" "http://www.freetype.org" FALSE "" "") -+# replace optimized/debug keyword with generator expression -+unset(FREETYPE_LIBRARY) -+set(FREETYPE_LIBRARY $<$:${FREETYPE_LIBRARY_RELEASE}> $<$:${FREETYPE_LIBRARY_DEBUG}>) -+unset(FREETYPE_LIBRARIES) -+set(FREETYPE_LIBRARIES ${FREETYPE_LIBRARY}) - - # Find X11 - if (UNIX AND NOT APPLE AND NOT ANDROID AND NOT EMSCRIPTEN) ---- src.orig/CMake/Utils/FindPkgMacros.cmake -+++ src.new/CMake/Utils/FindPkgMacros.cmake -@@ -82,7 +82,7 @@ - if (${PREFIX}_FWK) - set(${PREFIX} ${${PREFIX}_FWK}) - elseif (${PREFIX}_REL AND ${PREFIX}_DBG) -- set(${PREFIX} optimized ${${PREFIX}_REL} debug ${${PREFIX}_DBG}) -+ set(${PREFIX} $<$:${${PREFIX}_REL}> $<$:${${PREFIX}_DBG}>) - elseif (${PREFIX}_REL) - set(${PREFIX} ${${PREFIX}_REL}) - elseif (${PREFIX}_DBG) diff --git a/ports/ogre/CONTROL b/ports/ogre/CONTROL index a454a69f1a71ed..d7a4dd3f551f6b 100644 --- a/ports/ogre/CONTROL +++ b/ports/ogre/CONTROL @@ -1,5 +1,5 @@ Source: ogre -Version: 1.12.0 +Version: 1.12.0-1 Build-Depends: freeimage, freetype, zlib, zziplib Homepage: https://github.com/OGRECave/ogre Description: 3D Object-Oriented Graphics Rendering Engine diff --git a/ports/ogre/portfile.cmake b/ports/ogre/portfile.cmake index 1b9087acab75eb..04b4fe608d0050 100644 --- a/ports/ogre/portfile.cmake +++ b/ports/ogre/portfile.cmake @@ -4,13 +4,14 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO OGRECave/ogre REF c14f8847f743f4dc1b3abc947b1725c87d8b10ce - SHA512 a2fd7ffd653c1578bc860b58cf4c899f27cc967f75e2254dc3e372044f118d5951e42b35bfc711aa8996e1885f372d3cfa5a768b8674e0b3d844811990eb87fc + SHA512 a2fd7ffd653c1578bc860b58cf4c899f27cc967f75e2254dc3e372044f118d5951e42b35bfc711aa8996e1885f372d3cfa5a768b8674e0b3d844811990eb87fc HEAD_REF master PATCHES - 001-cmake-install-dir.patch - 002-link-optimized-lib-workaround.patch + toolchain_fixes.patch ) +file(REMOVE "${SOURCE_PATH}/CMake/Packages/FindOpenEXR.cmake") + if (VCPKG_LIBRARY_LINKAGE STREQUAL static) set(OGRE_STATIC ON) else() @@ -70,27 +71,29 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets() -# Remove unwanted files -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/ogre) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(GLOB REL_CFGS ${CURRENT_PACKAGES_DIR}/bin/*.cfg) -file(COPY ${REL_CFGS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) +if(REL_CFGS) + file(COPY ${REL_CFGS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(REMOVE ${REL_CFGS}) +endif() file(GLOB DBG_CFGS ${CURRENT_PACKAGES_DIR}/debug/bin/*.cfg) -file(COPY ${DBG_CFGS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) - -file(REMOVE ${REL_CFGS} ${DBG_CFGS}) +if(DBG_CFGS) + file(COPY ${DBG_CFGS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + file(REMOVE ${DBG_CFGS}) +endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) endif() if(NOT VCPKG_CMAKE_SYSTEM_NAME) - if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "Release") file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link) if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") file(RENAME ${CURRENT_PACKAGES_DIR}/lib/OgreMain.lib ${CURRENT_PACKAGES_DIR}/lib/manual-link/OgreMain.lib) @@ -98,7 +101,7 @@ if(NOT VCPKG_CMAKE_SYSTEM_NAME) file(RENAME ${CURRENT_PACKAGES_DIR}/lib/OgreMainStatic.lib ${CURRENT_PACKAGES_DIR}/lib/manual-link/OgreMainStatic.lib) endif() endif() - if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "Debug") file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/OgreMain_d.lib ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link/OgreMain_d.lib) diff --git a/ports/ogre/toolchain_fixes.patch b/ports/ogre/toolchain_fixes.patch new file mode 100644 index 00000000000000..1af384bdf3fd2d --- /dev/null +++ b/ports/ogre/toolchain_fixes.patch @@ -0,0 +1,533 @@ +diff --git a/CMake/CMakeLists.txt b/CMake/CMakeLists.txt +index a7a3796..2e21403 100755 +--- a/CMake/CMakeLists.txt ++++ b/CMake/CMakeLists.txt +@@ -13,10 +13,12 @@ + # directory, but can also be used for custom projects. + ############################################################# + +-if(WIN32 OR APPLE) +- set(OGRE_CMAKE_DIR "CMake") +-else() +- set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake") ++if(NOT DEFINED OGRE_CMAKE_DIR) ++ if(WIN32 OR APPLE) ++ set(OGRE_CMAKE_DIR "CMake") ++ else() ++ set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake") ++ endif() + endif() + + set(INST_FILES Utils/FindPkgMacros.cmake) +diff --git a/CMake/InstallResources.cmake b/CMake/InstallResources.cmake +index 783755e..79f7514 100644 +--- a/CMake/InstallResources.cmake ++++ b/CMake/InstallResources.cmake +@@ -208,10 +208,12 @@ endif () + # Create the CMake package files + include(CMakePackageConfigHelpers) + +-if(WIN32 OR APPLE) +- set(OGRE_CMAKE_DIR "CMake") +-else() +- set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake") ++if(NOT DEFINED OGRE_CMAKE_DIR) ++ if(WIN32 OR APPLE) ++ set(OGRE_CMAKE_DIR "CMake") ++ else() ++ set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake") ++ endif() + endif() + configure_package_config_file(${OGRE_TEMPLATES_DIR}/OGREConfig.cmake.in ${PROJECT_BINARY_DIR}/cmake/OGREConfig.cmake + INSTALL_DESTINATION ${OGRE_CMAKE_DIR} +diff --git a/CMake/Packages/FindCg.cmake b/CMake/Packages/FindCg.cmake +index 4501cf9..e91bfd0 100644 +--- a/CMake/Packages/FindCg.cmake ++++ b/CMake/Packages/FindCg.cmake +@@ -11,7 +11,7 @@ + # Once done, this will define + # + # Cg_FOUND - system has Cg +-# Cg_INCLUDE_DIRS - the Cg include directories ++# Cg_INCLUDE_DIRS - the Cg include directories + # Cg_LIBRARIES - link these to use Cg + + include(FindPkgMacros) +@@ -56,7 +56,7 @@ endif() + + find_library(Cg_LIBRARY_REL NAMES ${Cg_LIBRARY_NAMES} HINTS ${Cg_LIB_SEARCH_PATH} ${Cg_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel) + find_library(Cg_LIBRARY_DBG NAMES ${Cg_LIBRARY_NAMES_DBG} HINTS ${Cg_LIB_SEARCH_PATH} ${Cg_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Debug) +-make_library_set(Cg_LIBRARY) ++make_library_set(Cg) + + if (WIN32) + if (CMAKE_CL_64) +diff --git a/CMake/Packages/FindFreeImage.cmake b/CMake/Packages/FindFreeImage.cmake +index 7c89ec5..445d86a 100644 +--- a/CMake/Packages/FindFreeImage.cmake ++++ b/CMake/Packages/FindFreeImage.cmake +@@ -11,7 +11,7 @@ + # Once done, this will define + # + # FreeImage_FOUND - system has FreeImage +-# FreeImage_INCLUDE_DIRS - the FreeImage include directories ++# FreeImage_INCLUDE_DIRS - the FreeImage include directories + # FreeImage_LIBRARIES - link these to use FreeImage + + include(FindPkgMacros) +@@ -43,7 +43,6 @@ find_path(FreeImage_INCLUDE_DIR NAMES FreeImage.h HINTS ${FreeImage_INC_SEARCH_P + find_library(FreeImage_LIBRARY_REL NAMES ${FreeImage_LIBRARY_NAMES} HINTS ${FreeImage_LIB_SEARCH_PATH} ${FreeImage_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel) + find_library(FreeImage_LIBRARY_DBG NAMES ${FreeImage_LIBRARY_NAMES_DBG} HINTS ${FreeImage_LIB_SEARCH_PATH} ${FreeImage_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Debug) + +-make_library_set(FreeImage_LIBRARY) ++make_library_set(FreeImage) + + findpkg_finish(FreeImage) +- +diff --git a/CMake/Packages/FindGLSLOptimizer.cmake b/CMake/Packages/FindGLSLOptimizer.cmake +index dd4b179..8e51d2f 100644 +--- a/CMake/Packages/FindGLSLOptimizer.cmake ++++ b/CMake/Packages/FindGLSLOptimizer.cmake +@@ -11,7 +11,7 @@ + # Once done, this will define + # + # GLSL_Optimizer_FOUND - system has GLSL_Optimizer +-# GLSL_Optimizer_INCLUDE_DIRS - the GLSL_Optimizer include directories ++# GLSL_Optimizer_INCLUDE_DIRS - the GLSL_Optimizer include directories + # GLSL_Optimizer_LIBRARIES - link these to use GLSL_Optimizer + + include(FindPkgMacros) +@@ -38,8 +38,7 @@ findpkg_framework(GLSL_Optimizer) + find_path(GLSL_Optimizer_INCLUDE_DIR NAMES glsl_optimizer.h HINTS ${GLSL_Optimizer_INC_SEARCH_PATH} ${GLSL_Optimizer_PKGC_INCLUDE_DIRS} PATH_SUFFIXES GLSL_Optimizer) + find_library(GLSL_Optimizer_LIBRARY_REL NAMES ${GLSL_Optimizer_LIBRARY_NAMES} HINTS ${GLSL_Optimizer_LIB_SEARCH_PATH} ${GLSL_Optimizer_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel) + find_library(GLSL_Optimizer_LIBRARY_DBG NAMES ${GLSL_Optimizer_LIBRARY_NAMES_DBG} HINTS ${GLSL_Optimizer_LIB_SEARCH_PATH} ${GLSL_Optimizer_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Debug) +-make_library_set(GLSL_Optimizer_LIBRARY) ++make_library_set(GLSL_Optimizer) + + findpkg_finish(GLSL_Optimizer) + add_parent_dir(GLSL_Optimizer_INCLUDE_DIRS GLSL_Optimizer_INCLUDE_DIR) +- +diff --git a/CMake/Packages/FindHLSL2GLSL.cmake b/CMake/Packages/FindHLSL2GLSL.cmake +index 7125895..f73c928 100644 +--- a/CMake/Packages/FindHLSL2GLSL.cmake ++++ b/CMake/Packages/FindHLSL2GLSL.cmake +@@ -11,7 +11,7 @@ + # Once done, this will define + # + # HLSL2GLSL_FOUND - system has HLSL2GLSL +-# HLSL2GLSL_INCLUDE_DIRS - the HLSL2GLSL include directories ++# HLSL2GLSL_INCLUDE_DIRS - the HLSL2GLSL include directories + # HLSL2GLSL_LIBRARIES - link these to use HLSL2GLSL + + include(FindPkgMacros) +@@ -38,8 +38,7 @@ findpkg_framework(HLSL2GLSL) + find_path(HLSL2GLSL_INCLUDE_DIR NAMES hlsl2glsl.h HINTS ${HLSL2GLSL_INC_SEARCH_PATH} ${HLSL2GLSL_PKGC_INCLUDE_DIRS} PATH_SUFFIXES HLSL2GLSL) + find_library(HLSL2GLSL_LIBRARY_REL NAMES ${HLSL2GLSL_LIBRARY_NAMES} HINTS ${HLSL2GLSL_LIB_SEARCH_PATH} ${HLSL2GLSL_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel) + find_library(HLSL2GLSL_LIBRARY_DBG NAMES ${HLSL2GLSL_LIBRARY_NAMES_DBG} HINTS ${HLSL2GLSL_LIB_SEARCH_PATH} ${HLSL2GLSL_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Debug) +-make_library_set(HLSL2GLSL_LIBRARY) ++make_library_set(HLSL2GLSL) + + findpkg_finish(HLSL2GLSL) + add_parent_dir(HLSL2GLSL_INCLUDE_DIRS HLSL2GLSL_INCLUDE_DIR) +- +diff --git a/CMake/Packages/FindNVAPI.cmake b/CMake/Packages/FindNVAPI.cmake +index 95c70cd..17dabb8 100644 +--- a/CMake/Packages/FindNVAPI.cmake ++++ b/CMake/Packages/FindNVAPI.cmake +@@ -11,7 +11,7 @@ + # Once done, this will define + # + # NVAPI_FOUND - system has NVAPI +-# NVAPI_INCLUDE_DIRS - the NVAPI include directories ++# NVAPI_INCLUDE_DIRS - the NVAPI include directories + # NVAPI_LIBRARIES - link these to use NVAPI + + include(FindPkgMacros) +@@ -44,7 +44,7 @@ findpkg_framework(NVAPI) + find_path(NVAPI_INCLUDE_DIR NAMES nvapi.h HINTS ${NVAPI_FRAMEWORK_INCLUDES} ${NVAPI_INC_SEARCH_PATH} ${NVAPI_PKGC_INCLUDE_DIRS} PATH_SUFFIXES NVAPI) + find_library(NVAPI_LIBRARY_REL NAMES ${NVAPI_LIBRARY_NAMES} HINTS ${NVAPI_LIB_SEARCH_PATH} ${NVAPI_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" release relwithdebinfo minsizerel) + find_library(NVAPI_LIBRARY_DBG NAMES ${NVAPI_LIBRARY_NAMES_DBG} HINTS ${NVAPI_LIB_SEARCH_PATH} ${NVAPI_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" debug) +-make_library_set(NVAPI_LIBRARY) ++make_library_set(NVAPI) + + findpkg_finish(NVAPI) +-add_parent_dir(NVAPI_INCLUDE_DIRS NVAPI_INCLUDE_DIR) +\ No newline at end of file ++add_parent_dir(NVAPI_INCLUDE_DIRS NVAPI_INCLUDE_DIR) +diff --git a/CMake/Packages/FindPOCO.cmake b/CMake/Packages/FindPOCO.cmake +index 6b6d7fa..c2cb80e 100644 +--- a/CMake/Packages/FindPOCO.cmake ++++ b/CMake/Packages/FindPOCO.cmake +@@ -11,7 +11,7 @@ + # Once done, this will define + # + # POCO_FOUND - system has POCO +-# POCO_INCLUDE_DIRS - the POCO include directories ++# POCO_INCLUDE_DIRS - the POCO include directories + # POCO_LIBRARIES - link these to use POCO + + include(FindPkgMacros) +@@ -23,8 +23,8 @@ getenv_path(POCO_ROOT) + getenv_path(POCO_BASE) + + # construct search paths +-set(POCO_PREFIX_PATH +- ${POCO_HOME} ${ENV_POCO_HOME} ++set(POCO_PREFIX_PATH ++ ${POCO_HOME} ${ENV_POCO_HOME} + ${POCO_ROOT} ${ENV_POCO_ROOT} + ${POCO_BASE} ${ENV_POCO_BASE} + ) +@@ -50,7 +50,7 @@ findpkg_framework(POCO) + find_path(POCO_INCLUDE_DIR NAMES Poco/Foundation.h HINTS ${POCO_INC_SEARCH_PATH} ${POCO_PKGC_INCLUDE_DIRS} PATH_SUFFIXES Foundation/include) + find_library(POCO_LIBRARY_REL NAMES ${POCO_LIBRARY_NAMES} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) + find_library(POCO_LIBRARY_DBG NAMES ${POCO_LIBRARY_NAMES_DBG} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) +-make_library_set(POCO_LIBRARY) ++make_library_set(POCO) + + findpkg_finish(POCO) + +@@ -66,7 +66,7 @@ get_debug_names(POCO_Util_LIBRARY_NAMES) + find_path(POCO_Util_INCLUDE_DIR NAMES Poco/Util/Util.h HINTS ${POCO_INCLUDE_DIR} ${POCO_INC_SEARCH_PATH} ${POCO_PKGC_INCLUDE_DIRS} PATH_SUFFIXES Util/include) + find_library(POCO_Util_LIBRARY_REL NAMES ${POCO_Util_LIBRARY_NAMES} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) + find_library(POCO_Util_LIBRARY_DBG NAMES ${POCO_Util_LIBRARY_NAMES_DBG} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) +-make_library_set(POCO_Util_LIBRARY) ++make_library_set(POCO_Util) + findpkg_finish(POCO_Util) + + # Look for Poco's Net package +@@ -76,7 +76,7 @@ get_debug_names(POCO_Net_LIBRARY_NAMES) + find_path(POCO_Net_INCLUDE_DIR NAMES Poco/Net/Net.h HINTS ${POCO_INCLUDE_DIR} ${POCO_INC_SEARCH_PATH} ${POCO_PKGC_INCLUDE_DIRS} PATH_SUFFIXES Net/include) + find_library(POCO_Net_LIBRARY_REL NAMES ${POCO_Net_LIBRARY_NAMES} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) + find_library(POCO_Net_LIBRARY_DBG NAMES ${POCO_Net_LIBRARY_NAMES_DBG} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) +-make_library_set(POCO_Net_LIBRARY) ++make_library_set(POCO_Net) + findpkg_finish(POCO_Net) + + # Look for Poco's NetSSL package +@@ -86,7 +86,7 @@ get_debug_names(POCO_NetSSL_LIBRARY_NAMES) + find_path(POCO_NetSSL_INCLUDE_DIR NAMES Poco/Net/NetSSL.h HINTS ${POCO_INCLUDE_DIR} ${POCO_INC_SEARCH_PATH} ${POCO_PKGC_INCLUDE_DIRS} PATH_SUFFIXES NetSSL/include) + find_library(POCO_NetSSL_LIBRARY_REL NAMES ${POCO_NetSSL_LIBRARY_NAMES} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) + find_library(POCO_NetSSL_LIBRARY_DBG NAMES ${POCO_NetSSL_LIBRARY_NAMES_DBG} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) +-make_library_set(POCO_NetSSL_LIBRARY) ++make_library_set(POCO_NetSSL) + findpkg_finish(POCO_NetSSL) + + # Look for Poco's XML package +@@ -96,6 +96,5 @@ get_debug_names(POCO_XML_LIBRARY_NAMES) + find_path(POCO_XML_INCLUDE_DIR NAMES Poco/XML/XML.h HINTS ${POCO_INCLUDE_DIR} ${POCO_INC_SEARCH_PATH} ${POCO_PKGC_INCLUDE_DIRS} PATH_SUFFIXES XML/include) + find_library(POCO_XML_LIBRARY_REL NAMES ${POCO_XML_LIBRARY_NAMES} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) + find_library(POCO_XML_LIBRARY_DBG NAMES ${POCO_XML_LIBRARY_NAMES_DBG} HINTS ${POCO_LIB_SEARCH_PATH} ${POCO_PKGC_LIBRARY_DIRS} PATH_SUFFIXES Linux/i686) +-make_library_set(POCO_XML_LIBRARY) ++make_library_set(POCO_XML) + findpkg_finish(POCO_XML) +- +diff --git a/CMake/Packages/FindTBB.cmake b/CMake/Packages/FindTBB.cmake +index 0c48510..7f0c8f6 100644 +--- a/CMake/Packages/FindTBB.cmake ++++ b/CMake/Packages/FindTBB.cmake +@@ -11,7 +11,7 @@ + # Once done, this will define + # + # TBB_FOUND - system has TBB +-# TBB_INCLUDE_DIRS - the TBB include directories ++# TBB_INCLUDE_DIRS - the TBB include directories + # TBB_LIBRARIES - link these to use TBB + + include(FindPkgMacros) +@@ -23,8 +23,8 @@ getenv_path(TBB_ROOT) + getenv_path(TBB_BASE) + + # construct search paths +-set(TBB_PREFIX_PATH +- ${TBB_HOME} ${ENV_TBB_HOME} ++set(TBB_PREFIX_PATH ++ ${TBB_HOME} ${ENV_TBB_HOME} + ${TBB_ROOT} ${ENV_TBB_ROOT} + ${TBB_BASE} ${ENV_TBB_BASE} + ) +@@ -68,11 +68,11 @@ if (WIN32 AND MSVC) + endif () + if (MSVC_VERSION EQUAL 1900) + set(COMPILER_PREFIX "vc13") +- endif () ++ endif () + if (MSVC_VERSION EQUAL 1911) + set(COMPILER_PREFIX "vc14") + endif () +- ++ + # for each prefix path, add ia32/64\${COMPILER_PREFIX}\lib to the lib search path + foreach (dir ${TBB_PREFIX_PATH}) + if (CMAKE_CL_64) +@@ -104,7 +104,7 @@ findpkg_framework(TBB) + find_path(TBB_INCLUDE_DIR NAMES tbb/tbb.h HINTS ${TBB_INC_SEARCH_PATH} ${TBB_PKGC_INCLUDE_DIRS}) + find_library(TBB_LIBRARY_REL NAMES ${TBB_LIBRARY_NAMES} HINTS ${TBB_LIB_SEARCH_PATH} ${TBB_PKGC_LIBRARY_DIRS}) + find_library(TBB_LIBRARY_DBG NAMES ${TBB_LIBRARY_NAMES_DBG} HINTS ${TBB_LIB_SEARCH_PATH} ${TBB_PKGC_LIBRARY_DIRS}) +-make_library_set(TBB_LIBRARY) ++make_library_set(TBB) + + findpkg_finish(TBB) + +@@ -120,7 +120,7 @@ get_debug_names(TBB_MALLOC_LIBRARY_NAMES) + find_path(TBB_MALLOC_INCLUDE_DIR NAMES tbb/tbb.h HINTS ${TBB_INCLUDE_DIR} ${TBB_INC_SEARCH_PATH} ${TBB_PKGC_INCLUDE_DIRS} ) + find_library(TBB_MALLOC_LIBRARY_REL NAMES ${TBB_MALLOC_LIBRARY_NAMES} HINTS ${TBB_LIB_SEARCH_PATH} ${TBB_PKGC_LIBRARY_DIRS} ) + find_library(TBB_MALLOC_LIBRARY_DBG NAMES ${TBB_MALLOC_LIBRARY_NAMES_DBG} HINTS ${TBB_LIB_SEARCH_PATH} ${TBB_PKGC_LIBRARY_DIRS} ) +-make_library_set(TBB_MALLOC_LIBRARY) ++make_library_set(TBB_MALLOC) + findpkg_finish(TBB_MALLOC) + + # Look for TBB's malloc proxy package +@@ -130,5 +130,5 @@ get_debug_names(TBB_MALLOC_PROXY_LIBRARY_NAMES) + find_path(TBB_MALLOC_PROXY_INCLUDE_DIR NAMES tbb/tbbmalloc_proxy.h HINTS ${TBB_INCLUDE_DIR} ${TBB_INC_SEARCH_PATH} ${TBB_PKGC_INCLUDE_DIRS}) + find_library(TBB_MALLOC_PROXY_LIBRARY_REL NAMES ${TBB_MALLOC_PROXY_LIBRARY_NAMES} HINTS ${TBB_LIB_SEARCH_PATH} ${TBB_PKGC_LIBRARY_DIRS}) + find_library(TBB_MALLOC_PROXY_LIBRARY_DBG NAMES ${TBB_MALLOC_PROXY_LIBRARY_NAMES_DBG} HINTS ${TBB_LIB_SEARCH_PATH} ${TBB_PKGC_LIBRARY_DIRS}) +-make_library_set(TBB_MALLOC_PROXY_LIBRARY) ++make_library_set(TBB_MALLOC_PROXY) + findpkg_finish(TBB_MALLOC_PROXY) +diff --git a/CMake/Packages/FindZZip.cmake b/CMake/Packages/FindZZip.cmake +index e97951e..1c7cf00 100644 +--- a/CMake/Packages/FindZZip.cmake ++++ b/CMake/Packages/FindZZip.cmake +@@ -11,7 +11,7 @@ + # Once done, this will define + # + # ZZip_FOUND - system has ZZip +-# ZZip_INCLUDE_DIRS - the ZZip include directories ++# ZZip_INCLUDE_DIRS - the ZZip include directories + # ZZip_LIBRARIES - link these to use ZZip + + include(FindPkgMacros) +@@ -39,12 +39,11 @@ use_pkgconfig(ZZip_PKGC zziplib) + + findpkg_framework(ZZip) + +-find_path(ZZip_INCLUDE_DIR NAMES zzip/zzip.h HINTS ${ZZip_INC_SEARCH_PATH} ${ZZip_PKGC_INCLUDE_DIRS}) ++find_path(ZZip_INCLUDE_DIRS NAMES zzip/zzip.h HINTS ${ZZip_INC_SEARCH_PATH} ${ZZip_PKGC_INCLUDE_DIRS}) + + find_library(ZZip_LIBRARY_REL NAMES ${ZZip_LIBRARY_NAMES} HINTS ${ZZip_LIB_SEARCH_PATH} ${ZZip_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel) + find_library(ZZip_LIBRARY_DBG NAMES ${ZZip_LIBRARY_NAMES_DBG} HINTS ${ZZip_LIB_SEARCH_PATH} ${ZZip_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Debug) + +-make_library_set(ZZip_LIBRARY) ++make_library_set(ZZip) + + findpkg_finish(ZZip) +- +diff --git a/CMake/Utils/FindPkgMacros.cmake b/CMake/Utils/FindPkgMacros.cmake +index 374f84b..dc7066d 100644 +--- a/CMake/Utils/FindPkgMacros.cmake ++++ b/CMake/Utils/FindPkgMacros.cmake +@@ -79,15 +79,21 @@ endmacro (use_pkgconfig) + + # Couple a set of release AND debug libraries (or frameworks) + macro(make_library_set PREFIX) +- if (${PREFIX}_FWK) +- set(${PREFIX} ${${PREFIX}_FWK}) +- elseif (${PREFIX}_REL AND ${PREFIX}_DBG) +- set(${PREFIX} optimized ${${PREFIX}_REL} debug ${${PREFIX}_DBG}) +- elseif (${PREFIX}_REL) +- set(${PREFIX} ${${PREFIX}_REL}) +- elseif (${PREFIX}_DBG) +- set(${PREFIX} ${${PREFIX}_DBG}) +- endif () ++ include(${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake) ++ set(PREFIX_LIB "${PREFIX}_LIBRARY") ++ if (${PREFIX_LIB}_FWK) ++ set(${PREFIX_LIB} ${${PREFIX_LIB}_FWK}) ++ elseif (${PREFIX_LIB}_REL AND ${PREFIX_LIB}_DBG) ++ set(${PREFIX_LIB}_RELEASE ${${PREFIX_LIB}_REL} CACHE STRING "") ++ set(${PREFIX_LIB}_DEBUG ${${PREFIX_LIB}_DBG} CACHE STRING "") ++ select_library_configurations(${PREFIX}) ++ elseif (${PREFIX_LIB}_REL) ++ set(${PREFIX_LIB} ${${PREFIX_LIB}_REL}) ++ set(${PREFIX_LIB}_RELEASE ${${PREFIX_LIB}_REL}) ++ elseif (${PREFIX_LIB}_DBG) ++ set(${PREFIX_LIB} ${${PREFIX_LIB}_DBG}) ++ set(${PREFIX_LIB}_DEBUG ${${PREFIX_LIB}_DBG}) ++ endif() + endmacro(make_library_set) + + # Generate debug names from given release names +diff --git a/CMakeLists.txt b/CMakeLists.txt +index d2819f0..8b54b38 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -142,7 +142,7 @@ if (MSVC) + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /bigobj") + endif () + +- if (OGRE_PROJECT_FOLDERS) ++ if (OGRE_PROJECT_FOLDERS) + # Turn on the ability to create folders to organize projects (.vcproj) + # It creates "CMakePredefinedTargets" folder by default and adds CMake + # defined projects like INSTALL.vcproj and ZERO_CHECK.vcproj +@@ -274,14 +274,9 @@ elseif(EMSCRIPTEN) + elseif (APPLE AND NOT APPLE_IOS) + + set(XCODE_ATTRIBUTE_SDKROOT macosx) +- if(CMAKE_GENERATOR STREQUAL "Unix Makefiles") + execute_process(COMMAND xcodebuild -version -sdk "${XCODE_ATTRIBUTE_SDKROOT}" Path | head -n 1 OUTPUT_VARIABLE CMAKE_OSX_SYSROOT) + string(REGEX REPLACE "(\r?\n)+$" "" CMAKE_OSX_SYSROOT "${CMAKE_OSX_SYSROOT}") +- else() +- set(CMAKE_OSX_SYSROOT macosx) +- endif() + +- # Make sure that the OpenGL render system is selected for non-iOS Apple builds + set(OGRE_BUILD_RENDERSYSTEM_GLES2 FALSE) + endif () + +@@ -310,7 +305,7 @@ include(Dependencies) + # Customise what to build + option(OGRE_STATIC "Static build" FALSE) + option(OGRE_ENABLE_PRECOMPILED_HEADERS "Use precompiled headers to speed up build" TRUE) +-set(OGRE_RESOURCEMANAGER_STRICT "2" CACHE STRING ++set(OGRE_RESOURCEMANAGER_STRICT "2" CACHE STRING + "Make ResourceManager strict for faster operation. Possible values: + 0 - OFF search in all groups twice - for case sensitive and insensitive lookup [DEPRECATED] + 1 - PEDANTIC require an explicit resource group. Case sensitive lookup. +@@ -352,7 +347,7 @@ cmake_dependent_option(OGRE_BUILD_LIBS_AS_FRAMEWORKS "Build frameworks for libra + option(OGRE_BUILD_TESTS "Build the unit tests & PlayPen" FALSE) + option(OGRE_CONFIG_DOUBLE "Use doubles instead of floats in Ogre" FALSE) + option(OGRE_CONFIG_NODE_INHERIT_TRANSFORM "Tells the node whether it should inherit full transform from it's parent node or derived position, orientation and scale" FALSE) +-set(OGRE_CONFIG_THREADS "3" CACHE STRING ++set(OGRE_CONFIG_THREADS "3" CACHE STRING + "Enable Ogre thread safety support for multithreading. Possible values: + 0 - no thread safety. DefaultWorkQueue is not threaded. + 1 - background resource preparation and loading is thread safe. Threaded DefaultWorkQueue. [DEPRECATED] +diff --git a/Components/Overlay/CMakeLists.txt b/Components/Overlay/CMakeLists.txt +index bdb303d..e8031d1 100644 +--- a/Components/Overlay/CMakeLists.txt ++++ b/Components/Overlay/CMakeLists.txt +@@ -13,7 +13,7 @@ + + # define header and source files for the library + file(GLOB HEADER_FILES "${CMAKE_CURRENT_SOURCE_DIR}/include/*.h") +-list(APPEND HEADER_FILES ++list(APPEND HEADER_FILES + ${PROJECT_BINARY_DIR}/include/OgreOverlayPrerequisites.h + ${CMAKE_CURRENT_SOURCE_DIR}/include/OgreOverlay.i) + file(GLOB SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") +@@ -21,17 +21,17 @@ file(GLOB SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") + # setup target + add_library(OgreOverlay ${OGRE_COMP_LIB_TYPE} ${HEADER_FILES} ${SOURCE_FILES} ${PLATFORM_HEADER_FILES} ${PLATFORM_SOURCE_FILES}) + set_target_properties(OgreOverlay PROPERTIES VERSION ${OGRE_SOVERSION} SOVERSION ${OGRE_SOVERSION}) +-target_link_libraries(OgreOverlay PUBLIC OgreMain PRIVATE "${FREETYPE_LIBRARIES}" ZLIB::ZLIB) +-target_include_directories(OgreOverlay PUBLIC ++target_link_libraries(OgreOverlay PUBLIC OgreMain PRIVATE ${FREETYPE_LIBRARIES} ZLIB::ZLIB) ++target_include_directories(OgreOverlay PUBLIC + "$" + $ + PRIVATE ${FREETYPE_INCLUDE_DIRS}) + +-generate_export_header(OgreOverlay ++generate_export_header(OgreOverlay + EXPORT_MACRO_NAME _OgreOverlayExport + EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/include/OgreOverlayPrerequisites.h) + +-# install ++# install + ogre_config_framework(OgreOverlay) + ogre_config_component(OgreOverlay) + +@@ -40,4 +40,4 @@ install(FILES ${HEADER_FILES} + ) + install(FILES "${PROJECT_SOURCE_DIR}/Media/packs/profiler.zip" + DESTINATION "${OGRE_MEDIA_PATH}/packs/" +-) +\ No newline at end of file ++) +diff --git a/OgreMain/CMakeLists.txt b/OgreMain/CMakeLists.txt +index 6ec4e34..666a736 100644 +--- a/OgreMain/CMakeLists.txt ++++ b/OgreMain/CMakeLists.txt +@@ -188,21 +188,21 @@ if (WINDOWS_STORE OR WINDOWS_PHONE) + set_target_properties(OgreMain PROPERTIES VS_WINRT_COMPONENT "true") + endif () + +-generate_export_header(OgreMain ++generate_export_header(OgreMain + EXPORT_MACRO_NAME _OgreExport + NO_EXPORT_MACRO_NAME _OgrePrivate + DEPRECATED_MACRO_NAME OGRE_DEPRECATED + EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/include/OgreExports.h) + +-target_include_directories(OgreMain PUBLIC +- "$" ++target_include_directories(OgreMain PUBLIC ++ "$" + "$" + $ + PRIVATE "${OGRE_PROFILING_REMOTERY_PATH}") + + # In visual studio 2010 - 64 bit we get this error: "LINK : fatal error LNK1210: exceeded internal ILK size limit; link with /INCREMENTAL:NO" + if(WIN32 AND MSVC10 AND CMAKE_CL_64) +- set_target_properties(OgreMain PROPERTIES ++ set_target_properties(OgreMain PROPERTIES + VERSION ${OGRE_SOVERSION} + LINK_FLAGS "/INCREMENTAL:NO" + ) +@@ -211,7 +211,7 @@ else() + endif() + + if(OGRE_GCC_VERSION VERSION_EQUAL 4.8 OR OGRE_GCC_VERSION VERSION_GREATER 4.8) +- if(CMAKE_SYSTEM_NAME STREQUAL "Android") ++ if(CMAKE_SYSTEM_NAME STREQUAL "Android") + list(APPEND LIBRARIES "atomic") + else() + list(APPEND LIBRARIES "-latomic") +@@ -226,8 +226,6 @@ if (APPLE) + LINK_FLAGS "-framework IOKit -framework Cocoa -framework Carbon -framework OpenGL -framework CoreVideo" + ) + +- set(OGRE_OSX_BUILD_CONFIGURATION "$(PLATFORM_NAME)/$(CONFIGURATION)") +- + if(OGRE_BUILD_LIBS_AS_FRAMEWORKS) + add_custom_command(TARGET OgreMain POST_BUILD + COMMAND mkdir ARGS -p ${PROJECT_BINARY_DIR}/lib/${OGRE_OSX_BUILD_CONFIGURATION}/Ogre.framework/Headers/Threading +diff --git a/PlugIns/EXRCodec/CMakeLists.txt b/PlugIns/EXRCodec/CMakeLists.txt +index e9c936a..a83d793 100644 +--- a/PlugIns/EXRCodec/CMakeLists.txt ++++ b/PlugIns/EXRCodec/CMakeLists.txt +@@ -13,14 +13,14 @@ file(GLOB SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") + + add_library(Codec_EXR ${OGRE_LIB_TYPE} ${HEADER_FILES} ${SOURCE_FILES}) + target_link_libraries(Codec_EXR OgreMain ${OPENEXR_LIBRARIES}) +-target_include_directories(Codec_EXR PUBLIC ++target_include_directories(Codec_EXR PUBLIC + "$" + $) +-target_include_directories(Codec_EXR SYSTEM PRIVATE "${OPENEXR_INCLUDE_DIR}/OpenEXR") ++target_include_directories(Codec_EXR SYSTEM PRIVATE "${OPENEXR_INCLUDE_DIR}") + + ogre_config_framework(Codec_EXR) + ogre_config_plugin(Codec_EXR) +-generate_export_header(Codec_EXR ++generate_export_header(Codec_EXR + EXPORT_MACRO_NAME _OgreEXRPluginExport + EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/include/OgreEXRCodecExports.h) + install(FILES ${HEADER_FILES} DESTINATION include/OGRE/Plugins/EXRCodec) +diff --git a/RenderSystems/GL3Plus/CMakeLists.txt b/RenderSystems/GL3Plus/CMakeLists.txt +index ba55b43..66c2758 100644 +--- a/RenderSystems/GL3Plus/CMakeLists.txt ++++ b/RenderSystems/GL3Plus/CMakeLists.txt +@@ -21,12 +21,12 @@ set(HEADER_FILES ${HEADER_FILES} ${GLSL_HEADERS}) + add_definitions(${OGRE_VISIBILITY_FLAGS}) + + if(OGRE_CONFIG_ENABLE_GL_STATE_CACHE_SUPPORT) +- set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/src/OgreGL3PlusStateCacheManager.cpp ++ set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/src/OgreGL3PlusStateCacheManager.cpp + PROPERTIES COMPILE_DEFINITIONS OGRE_ENABLE_STATE_CACHE) + endif() + add_library(RenderSystem_GL3Plus ${OGRE_LIB_TYPE} ${HEADER_FILES} ${GLSL_SOURCE} ${SOURCE_FILES}) + target_link_libraries(RenderSystem_GL3Plus OgreMain OgreGLSupport ${OPENGL_gl_LIBRARY} ${CMAKE_DL_LIBS}) +-target_include_directories(RenderSystem_GL3Plus PUBLIC ++target_include_directories(RenderSystem_GL3Plus PUBLIC + "$" + "$" + $ +@@ -44,4 +44,4 @@ ogre_config_plugin(RenderSystem_GL3Plus) + + install(FILES ${HEADER_FILES} ${GLSUPPORT_HEADERS} DESTINATION include/OGRE/RenderSystems/GL3Plus) + install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/GL DESTINATION include/OGRE/RenderSystems/GL3Plus) +-install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/GLSL/ DESTINATION include/OGRE/RenderSystems/GL3Plus) ++install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/GLSL DESTINATION include/OGRE/RenderSystems/GL3Plus) diff --git a/ports/ompl/portfile.cmake b/ports/ompl/portfile.cmake index c8fdc992786a64..87af91de84963b 100644 --- a/ports/ompl/portfile.cmake +++ b/ports/ompl/portfile.cmake @@ -2,12 +2,11 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "OMPL's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() - set(OMPL_VERSION 1.4.2) set(OMPL_DISTNAME "ompl") set(OMPL_CHECKSUM "1dc477ee471c0570fd94838b072105960e09186f29634e2f61d885153df36532ab40e30912b534c61f222c09dad63fc6097d324b53c265f9284f20c585d3095c") @@ -31,7 +30,7 @@ vcpkg_extract_source_archive_ex( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS + OPTIONS -DOMPL_VERSIONED_INSTALL=OFF -DOMPL_REGISTRATION=OFF -DOMPL_BUILD_DEMOS=OFF diff --git a/ports/openblas/CONTROL b/ports/openblas/CONTROL index dd4e01732742ce..1c01d83631e0fd 100644 --- a/ports/openblas/CONTROL +++ b/ports/openblas/CONTROL @@ -1,4 +1,4 @@ Source: openblas -Version: 0.3.6-2 +Version: 0.3.6-4 Homepage: https://github.com/xianyi/OpenBLAS Description: OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. diff --git a/ports/openblas/enable_underscore.patch b/ports/openblas/enable_underscore.patch new file mode 100644 index 00000000000000..d2eb3ff22b7d0c --- /dev/null +++ b/ports/openblas/enable_underscore.patch @@ -0,0 +1,70 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9696961..47ef712 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -29,7 +29,7 @@ option(BUILD_RELAPACK "Build with ReLAPACK (recursive implementation of several + # 64 bit integer interfaces in OpenBLAS. + + set(SYMBOLPREFIX "" CACHE STRING "Add a prefix to all exported symbol names in the shared library to avoid conflicts with other BLAS libraries" ) +-set(SYMBOLSUFFIX "" CACHE STRING "Add a suffix to all exported symbol names in the shared library, e.g. _64 for INTERFACE64 builds" ) ++set(SYMBOLSUFFIX "_" CACHE STRING "Add a suffix to all exported symbol names in the shared library, e.g. _64 for INTERFACE64 builds" ) + ####### + if(BUILD_WITHOUT_LAPACK) + set(NO_LAPACK 1) +@@ -232,7 +232,7 @@ if (BUILD_SHARED_LIBS AND BUILD_RELAPACK) + endif() + endif() + +-if (BUILD_SHARED_LIBS AND NOT ${SYMBOLPREFIX}${SYMBOLSUFIX} STREQUAL "") ++if (NOT ${SYMBOLPREFIX}${SYMBOLSUFFIX} STREQUAL "") + if (NOT DEFINED ARCH) + set(ARCH_IN "x86_64") + else() +@@ -289,12 +289,14 @@ endif() + if (NOT ${SYMBOLSUFFIX} STREQUAL "") + message(STATUS "adding suffix ${SYMBOLSUFFIX} to names of exported symbols in ${OpenBLAS_LIBNAME}") + endif() ++if(BUILD_SHARED_LIBS) + add_custom_command(TARGET ${OpenBLAS_LIBNAME} POST_BUILD + COMMAND perl ${PROJECT_SOURCE_DIR}/exports/gensymbol "objcopy" "${ARCH}" "${BU}" "${EXPRECISION_IN}" "${NO_CBLAS_IN}" "${NO_LAPACK_IN}" "${NO_LAPACKE_IN}" "${NEED2UNDERSCORES_IN}" "${ONLY_CBLAS_IN}" \"${SYMBOLPREFIX}\" \"${SYMBOLSUFFIX}\" "${BUILD_LAPACK_DEPRECATED}" > ${PROJECT_BINARY_DIR}/objcopy.def + COMMAND objcopy -v --redefine-syms ${PROJECT_BINARY_DIR}/objcopy.def ${PROJECT_BINARY_DIR}/lib/lib${OpenBLAS_LIBNAME}.so + COMMENT "renaming symbols" + ) + endif() ++endif() + + + # Install project +@@ -385,4 +387,3 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PN}ConfigVersion.cmake + install(EXPORT "${PN}${SUFFIX64}Targets" + NAMESPACE "${PN}${SUFFIX64}::" + DESTINATION ${CMAKECONFIG_INSTALL_DIR}) +- +diff --git a/cmake/prebuild.cmake b/cmake/prebuild.cmake +index 259ef16..936fbf7 100644 +--- a/cmake/prebuild.cmake ++++ b/cmake/prebuild.cmake +@@ -58,10 +58,8 @@ endif () + set(TARGET_CONF_TEMP "${PROJECT_BINARY_DIR}/${TARGET_CONF}.tmp") + + # c_check +-set(FU "") +-if (APPLE OR (MSVC AND NOT ${CMAKE_C_COMPILER_ID} MATCHES "Clang")) +- set(FU "_") +-endif() ++set(FU "") ++set(BU "") + + set(COMPILER_ID ${CMAKE_C_COMPILER_ID}) + if (${COMPILER_ID} STREQUAL "GNU") +@@ -75,7 +73,9 @@ file(WRITE ${TARGET_CONF_TEMP} + "#define ARCH_${UC_ARCH}\t1\n" + "#define C_${COMPILER_ID}\t1\n" + "#define __${BINARY}BIT__\t1\n" +- "#define FUNDERSCORE\t${FU}\n") ++ "#define FUNDERSCORE\t${FU}\n" ++ "#define BUNDERSCORE\t${BU}\n" ++ "//#define NEEDBUNDERSCORE 1\n") + + if (${HOST_OS} STREQUAL "WINDOWSSTORE") + file(APPEND ${TARGET_CONF_TEMP} diff --git a/ports/openblas/fix-space-path.patch b/ports/openblas/fix_space_path.patch similarity index 100% rename from ports/openblas/fix-space-path.patch rename to ports/openblas/fix_space_path.patch diff --git a/ports/openblas/openblas_common.h b/ports/openblas/openblas_common.h deleted file mode 100644 index 10b25d4c7c2d47..00000000000000 --- a/ports/openblas/openblas_common.h +++ /dev/null @@ -1,72 +0,0 @@ -#pragma once -#include "openblas_config.h" - -#if defined(OPENBLAS_OS_WINNT) || defined(OPENBLAS_OS_CYGWIN_NT) || defined(OPENBLAS_OS_INTERIX) -#define OPENBLAS_WINDOWS_ABI -#define OPENBLAS_OS_WINDOWS - -#ifdef DOUBLE -#define DOUBLE_DEFINED DOUBLE -#undef DOUBLE -#endif -#endif - -#ifdef NEEDBUNDERSCORE -#define BLASFUNC(FUNC) FUNC##_ -#else -#define BLASFUNC(FUNC) FUNC -#endif - - -#ifdef OPENBLAS_QUAD_PRECISION -typedef struct { - unsigned long x[2]; -} xdouble; -#elif defined OPENBLAS_EXPRECISION -#define xdouble long double -#else -#define xdouble double -#endif - -#if defined(OS_WINNT) && defined(__64BIT__) -typedef long long BLASLONG; -typedef unsigned long long BLASULONG; -#else -typedef long BLASLONG; -typedef unsigned long BLASULONG; -#endif - -#ifdef OPENBLAS_USE64BITINT -typedef BLASLONG blasint; -#else -typedef int blasint; -#endif - -#if defined(XDOUBLE) || defined(DOUBLE) -#define FLOATRET FLOAT -#else -#ifdef NEED_F2CCONV -#define FLOATRET double -#else -#define FLOATRET float -#endif -#endif - - -/* Inclusion of a standard header file is needed for definition of __STDC_* - predefined macros with some compilers (e.g. GCC 4.7 on Linux). This occurs - as a side effect of including either or . */ -#include -#define OPENBLAS_COMPLEX_STRUCT -typedef struct { float real, imag; } openblas_complex_float; -typedef struct { double real, imag; } openblas_complex_double; -typedef struct { xdouble real, imag; } openblas_complex_xdouble; -#define openblas_make_complex_float(real, imag) {(real), (imag)} -#define openblas_make_complex_double(real, imag) {(real), (imag)} -#define openblas_make_complex_xdouble(real, imag) {(real), (imag)} -#define openblas_complex_float_real(z) ((z).real) -#define openblas_complex_float_imag(z) ((z).imag) -#define openblas_complex_double_real(z) ((z).real) -#define openblas_complex_double_imag(z) ((z).imag) -#define openblas_complex_xdouble_real(z) ((z).real) -#define openblas_complex_xdouble_imag(z) ((z).imag) diff --git a/ports/openblas/portfile.cmake b/ports/openblas/portfile.cmake index 1bd7b61574a08e..45260c78a565d2 100644 --- a/ports/openblas/portfile.cmake +++ b/ports/openblas/portfile.cmake @@ -1,9 +1,26 @@ include(vcpkg_common_functions) +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + message(WARNING "You do not need this package on macOS, since you already have the Accelerate Framework") + return() +endif() + if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") message(FATAL_ERROR "openblas can only be built for x64 currently") endif() +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(ADDITIONAL_PATCH "enable_underscore.patch") +endif() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + set(NO_SHARED 1) +endif() +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + set(NO_STATIC 1) +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO xianyi/OpenBLAS @@ -12,7 +29,8 @@ vcpkg_from_github( HEAD_REF develop PATCHES uwp.patch - fix-space-path.patch + fix_space_path.patch + ${ADDITIONAL_PATCH} ) find_program(GIT NAMES git git.cmd) @@ -26,8 +44,7 @@ vcpkg_find_acquire_program(PERL) get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH};${SED_EXE_PATH}") -set(COMMON_OPTIONS - -DBUILD_WITHOUT_LAPACK=ON) +set(COMMON_OPTIONS -DBUILD_WITHOUT_LAPACK=ON) # for UWP version, must build non uwp first for helper # binaries. @@ -60,7 +77,7 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS + OPTIONS ${COMMON_OPTIONS} -DCMAKE_SYSTEM_PROCESSOR=AMD64 -DVS_WINRT_COMPONENT=TRUE @@ -76,28 +93,21 @@ else() SOURCE_PATH ${SOURCE_PATH} OPTIONS ${COMMON_OPTIONS} + -DTARGET=SANDYBRIDGE -DCMAKE_SYSTEM_PROCESSOR=AMD64 + -DBINARY=64 + -DNO_SHARED=${NO_SHARED} + -DNO_STATIC=${NO_STATIC} -DNOFORTRAN=ON) endif() vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/OpenBLAS TARGET_PATH share/openblas) -#maybe we need also to write a wrapper inside share/blas to search implicitly for openblas, whenever we feel it's ready for its own -config.cmake file - -# openblas do not make the config file , so I manually made this -# but I think in most case, libraries will not include these files, they define their own used function prototypes -# this is only to quite vcpkg -file(COPY ${CMAKE_CURRENT_LIST_DIR}/openblas_common.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) - -file(READ ${SOURCE_PATH}/cblas.h CBLAS_H) -string(REPLACE "#include \"common.h\"" "#include \"openblas_common.h\"" CBLAS_H "${CBLAS_H}") -file(WRITE ${CURRENT_PACKAGES_DIR}/include/cblas.h "${CBLAS_H}") - -# openblas is BSD -file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openblas) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/openblas/LICENSE ${CURRENT_PACKAGES_DIR}/share/openblas/copyright) - +vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/OpenBLAS) +#we install a cmake wrapper since the official FindBLAS thinks that OpenBLAS can solve also LAPACK libraries, while it cannot because we disabled it and we use CLAPACK... maybe we have to trigger finding one package when requesting the other and vice-versa. Wrappers should be ready also to avoid an infinite loop +file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/blas) vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openblas RENAME copyright) diff --git a/ports/openblas/vcpkg-cmake-wrapper.cmake b/ports/openblas/vcpkg-cmake-wrapper.cmake new file mode 100644 index 00000000000000..e0791bde8714d8 --- /dev/null +++ b/ports/openblas/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,49 @@ +list(REMOVE_ITEM ARGS "BLAS") +list(REMOVE_ITEM ARGS "blas") +list(REMOVE_ITEM ARGS "Blas") +list(REMOVE_ITEM ARGS "NO_MODULE") +list(REMOVE_ITEM ARGS "CONFIG") +list(REMOVE_ITEM ARGS "MODULE") +if(NOT BLAS_LIBRARY OR BLAS_LIBRARIES OR OpenBLAS_LIBRARY OR OpenBLAS_LIBRARIES OR BLAS_LIB OR BLAS_LIBS) + include(${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake) + include(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake) + + _find_package(OpenBLAS CONFIG ${ARGS}) + + set(CMAKE_THREAD_PREFER_PTHREAD TRUE) + _find_package(Threads) + + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY INTERFACE_INCLUDE_DIRECTORIES) + set(BLAS_INCLUDE_DIR ${_loc}) + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY IMPORTED_IMPLIB_RELEASE) + if(NOT _loc) + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY LOCATION_RELEASE) + endif() + set(BLAS_LIBRARY_RELEASE ${_loc}) + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY IMPORTED_IMPLIB_DEBUG) + if(NOT _loc) + get_property(_loc TARGET OpenBLAS::OpenBLAS PROPERTY LOCATION_DEBUG) + endif() + set(BLAS_LIBRARY_DEBUG ${_loc}) + list(APPEND BLAS_LIBRARY_RELEASE Threads::Threads) + list(APPEND BLAS_LIBRARY_DEBUG Threads::Threads) + select_library_configurations(BLAS) + + set(BLAS_LIBRARY "${BLAS_LIBRARY}" CACHE STRING "" FORCE) + set(BLAS_LIBRARIES "${BLAS_LIBRARY}" CACHE STRING "" FORCE) + set(OpenBLAS_LIBRARY "${BLAS_LIBRARY}" CACHE STRING "" FORCE) + set(OpenBLAS_LIBRARIES "${BLAS_LIBRARY}" CACHE STRING "" FORCE) + set(BLAS_LIB "${BLAS_LIBRARY}" CACHE STRING "" FORCE) + set(BLAS_LIBS "${BLAS_LIBRARY}" CACHE STRING "" FORCE) + + set(BLAS_INCLUDE_DIR "${BLAS_INCLUDE_DIR}" CACHE STRING "" FORCE) + set(BLAS_INCLUDE_DIRS "${BLAS_INCLUDE_DIR}" CACHE STRING "" FORCE) + set(OpenBLAS_INCLUDE_DIR "${BLAS_INCLUDE_DIR}" CACHE STRING "" FORCE) + set(OpenBLAS_INCLUDE_DIRS "${BLAS_INCLUDE_DIR}" CACHE STRING "" FORCE) + set(BLAS_INC "${BLAS_INCLUDE_DIR}" CACHE STRING "" FORCE) + + find_package_handle_standard_args(BLAS DEFAULT_MSG BLAS_LIBRARY BLAS_INCLUDE_DIR) + mark_as_advanced(BLAS_INCLUDE_DIR BLAS_LIBRARY) + find_package_handle_standard_args(OpenBLAS DEFAULT_MSG OpenBLAS_LIBRARY OpenBLAS_INCLUDE_DIR) + mark_as_advanced(OpenBLAS_INCLUDE_DIR OpenBLAS_LIBRARY) +endif() diff --git a/ports/openexr/CONTROL b/ports/openexr/CONTROL index 8795b9dce986e3..5fc8b52d62e417 100644 --- a/ports/openexr/CONTROL +++ b/ports/openexr/CONTROL @@ -1,5 +1,5 @@ Source: openexr -Version: 2.3.0-3 +Version: 2.3.0-4 Homepage: https://www.openexr.com/ Description: OpenEXR is a high dynamic-range (HDR) image file format developed by Industrial Light & Magic for use in computer imaging applications Build-Depends: zlib diff --git a/ports/openexr/FindOpenEXR.cmake b/ports/openexr/FindOpenEXR.cmake index a381c6db9a360f..4b5b280a078c1d 100644 --- a/ports/openexr/FindOpenEXR.cmake +++ b/ports/openexr/FindOpenEXR.cmake @@ -54,9 +54,12 @@ if(NOT OpenEXR_IEXMATH_LIBRARY) endif() set(OPENEXR_HALF_LIBRARY "${OpenEXR_HALF_LIBRARY}") +set(OPENEXR_Half_LIBRARY "${OpenEXR_HALF_LIBRARY}") set(OPENEXR_IEX_LIBRARY "${OpenEXR_IEX_LIBRARY}") +set(OPENEXR_Iex_LIBRARY "${OpenEXR_IEX_LIBRARY}") set(OPENEXR_IMATH_LIBRARY "${OpenEXR_MATH_LIBRARY}") set(OPENEXR_ILMIMF_LIBRARY "${OpenEXR_BASE_LIBRARY}") +set(OPENEXR_IlmImf_LIBRARY "${OpenEXR_BASE_LIBRARY}") set(OPENEXR_ILMIMFUTIL_LIBRARY "${OpenEXR_UTIL_LIBRARY}") set(OPENEXR_ILMTHREAD_LIBRARY "${OpenEXR_THREAD_LIBRARY}") @@ -80,6 +83,10 @@ set(OPENEXR_LIBRARIES ${OPENEXR_ILMTHREAD_LIBRARY} ) +set(OpenEXR_INCLUDE_DIR ${OpenEXR_INCLUDE_DIRS}) +set(OPENEXR_INCLUDE_DIRS ${OpenEXR_INCLUDE_DIRS}) +set(OPENEXR_INCLUDE_DIR ${OPENEXR_INCLUDE_PATHS}) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR REQUIRED_VARS OpenEXR_LIBRARIES OpenEXR_INCLUDE_DIRS) if(OpenEXR_FOUND) diff --git a/ports/openexr/portfile.cmake b/ports/openexr/portfile.cmake index e3bfc959299318..0cdd30b2e5f15d 100644 --- a/ports/openexr/portfile.cmake +++ b/ports/openexr/portfile.cmake @@ -62,9 +62,6 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) endif() -set(OPENEXR_PORT_DIR "openexr") - -file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${OPENEXR_PORT_DIR}) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/${OPENEXR_PORT_DIR}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${OPENEXR_PORT_DIR}/copyright) - -file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindOpenEXR.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${OPENEXR_PORT_DIR}) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindOpenEXR.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) diff --git a/ports/openexr/vcpkg-cmake-wrapper.cmake b/ports/openexr/vcpkg-cmake-wrapper.cmake new file mode 100644 index 00000000000000..a977a420e867d7 --- /dev/null +++ b/ports/openexr/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,8 @@ +set(OPENEXR_PREV_MODULE_PATH ${CMAKE_MODULE_PATH}) +list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}) + +if(NOT OpenEXR_LIBRARIES OR OPENEXR_LIBRARIES) + _find_package(${ARGS}) +endif() + +set(CMAKE_MODULE_PATH ${OPENEXR_PREV_MODULE_PATH}) diff --git a/ports/openmama/CONTROL b/ports/openmama/CONTROL index 899f47b9310079..fbfb815c3504bc 100644 --- a/ports/openmama/CONTROL +++ b/ports/openmama/CONTROL @@ -1,5 +1,5 @@ Source: openmama -Version: 6.2.3 +Version: 6.2.3-1 Build-Depends: libevent, apr, qpid-proton Homepage: https://github.com/OpenMAMA/OpenMAMA Description: OpenMAMA is a high performance vendor neutral lightweight wrapper that provides a common API interface to different middleware and messaging solutions across a variety of platforms and languages. diff --git a/ports/openmvg/CONTROL b/ports/openmvg/CONTROL index 90c10f3cd199d0..b083516640d050 100644 --- a/ports/openmvg/CONTROL +++ b/ports/openmvg/CONTROL @@ -1,5 +1,5 @@ Source: openmvg -Version: 1.4-4 +Version: 1.4-5 Description: open Multiple View Geometry library. Basis for 3D computer vision and Structure from Motion. Build-Depends: coinutils, clp, osi, liblemon, flann, eigen3, ceres, cereal, libjpeg-turbo, tiff, libpng, zlib, suitesparse diff --git a/ports/openmvg/portfile.cmake b/ports/openmvg/portfile.cmake index 04a7e57ee47ec8..a5dea72fa0896c 100644 --- a/ports/openmvg/portfile.cmake +++ b/ports/openmvg/portfile.cmake @@ -74,7 +74,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/openMVG/cmake") +vcpkg_fixup_cmake_targets(CONFIG_PATH share/openMVG/cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/openmvs/CONTROL b/ports/openmvs/CONTROL index f4863e1754741f..6cbbe4119e0d1a 100644 --- a/ports/openmvs/CONTROL +++ b/ports/openmvs/CONTROL @@ -1,4 +1,4 @@ Source: openmvs -Version: 1.0 +Version: 1.0-1 Description: OpenMVS: open Multi-View Stereo reconstruction library Build-Depends: zlib, boost-iostreams, boost-program-options, boost-system, boost-serialization, eigen3, ceres, opencv, cgal[core], glew, glfw3, vcglib diff --git a/ports/openmvs/portfile.cmake b/ports/openmvs/portfile.cmake index 22945ab2e5963f..97f78938331b5f 100644 --- a/ports/openmvs/portfile.cmake +++ b/ports/openmvs/portfile.cmake @@ -22,9 +22,9 @@ vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - vcpkg_fixup_cmake_targets(CONFIG_PATH CMake TARGET_PATH share/openmvs) + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH lib/CMake/OpenMVS TARGET_PATH share/openmvs) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/CMake/OpenMVS) endif() #somehow the native CMAKE_EXECUTABLE_SUFFIX does not work, so here we emulate it diff --git a/ports/openni2/CONTROL b/ports/openni2/CONTROL index 3d13ea26bb4d02..9dca0b47a6710b 100644 --- a/ports/openni2/CONTROL +++ b/ports/openni2/CONTROL @@ -1,5 +1,5 @@ Source: openni2 -Version: 2.2.0.33-8 +Version: 2.2.0.33-9 Build-Depends: kinectsdk1 Homepage: https://github.com/OpenNI/OpenNI2 Description: OpenNI is open source library for access to Natural Interaction (NI) devices such as RGB-D camera. diff --git a/ports/openni2/portfile.cmake b/ports/openni2/portfile.cmake index 8ef2514b34416e..d5be0e3d4b01d8 100644 --- a/ports/openni2/portfile.cmake +++ b/ports/openni2/portfile.cmake @@ -46,7 +46,7 @@ endif() set(SOURCE_INCLUDE_PATH "${SOURCE_PATH}/Include") set(SOURCE_BIN_PATH_RELEASE "${SOURCE_PATH}/Bin/${PLATFORM}-Release") set(SOURCE_BIN_PATH_DEBUG "${SOURCE_PATH}/Bin/${PLATFORM}-Debug") -set(SOURCE_CONFIG_PATH "${SOURCE_PATH}/Config") +set(SOURCE_CONFIG_PATH ${SOURCE_PATH}/Config) set(SOURCE_THIRDPARTY_PATH "${SOURCE_PATH}/ThirdParty") file( diff --git a/ports/openssl-unix/portfile.cmake b/ports/openssl-unix/portfile.cmake index b0064cdf4a6869..03e358b4b7b0b0 100644 --- a/ports/openssl-unix/portfile.cmake +++ b/ports/openssl-unix/portfile.cmake @@ -1,8 +1,15 @@ +include(vcpkg_common_functions) + if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" OR NOT VCPKG_CMAKE_SYSTEM_NAME) message(FATAL_ERROR "This port is only for openssl on Unix-like systems") endif() -include(vcpkg_common_functions) +if(EXISTS "${CURRENT_INSTALLED_DIR}/include/openssl/ssl.h") + message(WARNING "Can't build openssl if libressl is installed. Please remove libressl, and try install openssl again if you need it. Build will continue but there might be problems since libressl is only a subset of openssl") + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + return() +endif() + set(OPENSSL_VERSION 1.0.2q) vcpkg_find_acquire_program(PERL) diff --git a/ports/openssl-uwp/portfile.cmake b/ports/openssl-uwp/portfile.cmake index 8efd7bd203f35b..239f98d2b40829 100644 --- a/ports/openssl-uwp/portfile.cmake +++ b/ports/openssl-uwp/portfile.cmake @@ -1,11 +1,17 @@ include(vcpkg_common_functions) -vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) - if (NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") message(FATAL_ERROR "This portfile only supports UWP") endif() +if(EXISTS "${CURRENT_INSTALLED_DIR}/include/openssl/ssl.h") + message(WARNING "Can't build openssl if libressl is installed. Please remove libressl, and try install openssl again if you need it. Build will continue but there might be problems since libressl is only a subset of openssl") + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + return() +endif() + +vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) + if (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm") set(UWP_PLATFORM "arm") elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") diff --git a/ports/openssl-windows/portfile.cmake b/ports/openssl-windows/portfile.cmake index b5e505a3dc1950..856e0979ed5f35 100644 --- a/ports/openssl-windows/portfile.cmake +++ b/ports/openssl-windows/portfile.cmake @@ -1,8 +1,15 @@ +include(vcpkg_common_functions) + if(VCPKG_CMAKE_SYSTEM_NAME) message(FATAL_ERROR "This port is only for building openssl on Windows Desktop") endif() -include(vcpkg_common_functions) +if(EXISTS "${CURRENT_INSTALLED_DIR}/include/openssl/ssl.h") + message(WARNING "Can't build openssl if libressl is installed. Please remove libressl, and try install openssl again if you need it. Build will continue but there might be problems since libressl is only a subset of openssl") + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + return() +endif() + set(OPENSSL_VERSION 1.0.2q) vcpkg_find_acquire_program(PERL) diff --git a/ports/openssl/CONTROL b/ports/openssl/CONTROL index a398b409d0fd4b..b495ce0c3cbddf 100644 --- a/ports/openssl/CONTROL +++ b/ports/openssl/CONTROL @@ -1,5 +1,5 @@ Source: openssl -Version: 0 +Version: 1 Homepage: https://www.openssl.org Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library. Build-Depends: openssl-windows (windows), openssl-uwp (uwp), openssl-unix (!uwp&!windows) diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index 3d55c367f5991a..4d25eff6bfc31c 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -1,2 +1,4 @@ +include(vcpkg_common_functions) + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/openssl/) diff --git a/ports/opentracing/CONTROL b/ports/opentracing/CONTROL index c533de1f8ec6bf..62f6dd30362c44 100644 --- a/ports/opentracing/CONTROL +++ b/ports/opentracing/CONTROL @@ -1,4 +1,4 @@ Source: opentracing -Version: 1.5.1 -Description: C++ implementation of the OpenTracing API +Version: 1.5.1-1 +Description: C++ implementation of the OpenTracing API Homepage: https://opentracing.io diff --git a/ports/opentracing/portfile.cmake b/ports/opentracing/portfile.cmake index cf82ddbf6d6d03..595faf1cf65fba 100644 --- a/ports/opentracing/portfile.cmake +++ b/ports/opentracing/portfile.cmake @@ -5,9 +5,9 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") - set( LOCAL_OPTIONS - -DBUILD_STATIC_LIBS=OFF - ) + set( LOCAL_OPTIONS + -DBUILD_STATIC_LIBS=OFF + ) else() message("Static building is only possible when compiling static and dynamic versions at the same time. Enabling both.") set(VCPKG_LIBRARY_LINKAGE dynamic) @@ -23,37 +23,36 @@ vcpkg_from_github( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS - ${OPTIONS} - ${LOCAL_OPTIONS} + OPTIONS + ${OPTIONS} + ${LOCAL_OPTIONS} ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/OpenTracing") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/OpenTracing) vcpkg_copy_pdbs() # Move DLLs to /bin if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" OR NOT VCPKG_CMAKE_SYSTEM_NAME) - if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/opentracing.dll ${CURRENT_PACKAGES_DIR}/bin/opentracing.dll) - - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/opentracing.dll ${CURRENT_PACKAGES_DIR}/debug/bin/opentracing.dll) - - # Fix targets - file(READ ${CURRENT_PACKAGES_DIR}/share/opentracing/OpenTracingTargets-release.cmake RELEASE_CONFIG) - string(REPLACE "\${_IMPORT_PREFIX}/lib/opentracing.dll" - "\${_IMPORT_PREFIX}/bin/opentracing.dll" RELEASE_CONFIG ${RELEASE_CONFIG}) - file(WRITE ${CURRENT_PACKAGES_DIR}/share/opentracing/OpenTracingTargets-release.cmake "${RELEASE_CONFIG}") - - file(READ ${CURRENT_PACKAGES_DIR}/share/opentracing/OpenTracingTargets-debug.cmake DEBUG_CONFIG) - string(REPLACE "\${_IMPORT_PREFIX}/debug/lib/opentracing.dll" - "\${_IMPORT_PREFIX}/debug/bin/opentracing.dll" DEBUG_CONFIG ${DEBUG_CONFIG}) - file(WRITE ${CURRENT_PACKAGES_DIR}/share/opentracing/OpenTracingTargets-debug.cmake "${DEBUG_CONFIG}") - endif() + if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/opentracing.dll ${CURRENT_PACKAGES_DIR}/bin/opentracing.dll) + + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/opentracing.dll ${CURRENT_PACKAGES_DIR}/debug/bin/opentracing.dll) + + # Fix targets + file(READ ${CURRENT_PACKAGES_DIR}/share/opentracing/OpenTracingTargets-release.cmake RELEASE_CONFIG) + string(REPLACE "\${_IMPORT_PREFIX}/lib/opentracing.dll" + "\${_IMPORT_PREFIX}/bin/opentracing.dll" RELEASE_CONFIG ${RELEASE_CONFIG}) + file(WRITE ${CURRENT_PACKAGES_DIR}/share/opentracing/OpenTracingTargets-release.cmake "${RELEASE_CONFIG}") + + file(READ ${CURRENT_PACKAGES_DIR}/share/opentracing/OpenTracingTargets-debug.cmake DEBUG_CONFIG) + string(REPLACE "\${_IMPORT_PREFIX}/debug/lib/opentracing.dll" + "\${_IMPORT_PREFIX}/debug/bin/opentracing.dll" DEBUG_CONFIG ${DEBUG_CONFIG}) + file(WRITE ${CURRENT_PACKAGES_DIR}/share/opentracing/OpenTracingTargets-debug.cmake "${DEBUG_CONFIG}") + endif() endif() # Handle copyright diff --git a/ports/opusfile/CMakeLists.txt b/ports/opusfile/CMakeLists.txt index c70ea98bc8d2a9..ecef1d01f8f0fe 100644 --- a/ports/opusfile/CMakeLists.txt +++ b/ports/opusfile/CMakeLists.txt @@ -1,7 +1,9 @@ cmake_minimum_required(VERSION 3.4) project(opusfile C) +if(MSVC) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4267 /wd4244 /wd4090") +endif() find_path(OGG_INCLUDE_DIR ogg/ogg.h) find_library(OGG_LIBRARY ogg) diff --git a/ports/opusfile/CONTROL b/ports/opusfile/CONTROL index 3e80d47771e22b..0ba3167a67f7eb 100644 --- a/ports/opusfile/CONTROL +++ b/ports/opusfile/CONTROL @@ -1,5 +1,5 @@ Source: opusfile -Version: 0.11-2 +Version: 0.11-3 Homepage: https://github.com/xiph/opusfile Description: Stand-alone decoder library for .opus streams Build-Depends: libogg, opus diff --git a/ports/orocos-kdl/CONTROL b/ports/orocos-kdl/CONTROL index af590b4b3149d0..983219ca0c991d 100644 --- a/ports/orocos-kdl/CONTROL +++ b/ports/orocos-kdl/CONTROL @@ -1,4 +1,4 @@ Source: orocos-kdl -Version: 1.4 +Version: 1.4-1 Description: Kinematics and Dynamics Library Build-Depends: eigen3 diff --git a/ports/orocos-kdl/portfile.cmake b/ports/orocos-kdl/portfile.cmake index 622a9da93998e6..58e28a045b5811 100644 --- a/ports/orocos-kdl/portfile.cmake +++ b/ports/orocos-kdl/portfile.cmake @@ -30,14 +30,14 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/orocos_kdl/cmake" TARGET_PATH share/orocos_kdl) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/orocos_kdl/cmake TARGET_PATH share/orocos_kdl) -file(REMOVE_RECURSE +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share ${CURRENT_PACKAGES_DIR}/share/doc ${CURRENT_PACKAGES_DIR}/doc/liborocos-kdl) - + # Handle copyright diff --git a/ports/osi/CMakeLists.txt b/ports/osi/CMakeLists.txt index 1aa44d262a1214..0542339ebd07ae 100644 --- a/ports/osi/CMakeLists.txt +++ b/ports/osi/CMakeLists.txt @@ -12,7 +12,7 @@ set(CMAKE_CXX_STANDARD 14) set(INSTALL_BIN_DIR "bin" CACHE PATH "Path where exe and dll will be installed") set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed") set(INSTALL_INCLUDE_DIR "include/Coin" CACHE PATH "Path where headers will be installed") -set(INSTALL_CMAKE_DIR "share/${PROJECT_NAME}" CACHE PATH "Path where cmake configs will be installed") +set(INSTALL_CMAKE_DIR "share/osi" CACHE PATH "Path where cmake configs will be installed") # Make relative paths absolute (needed later on) set(RELATIVE_INSTALL_INCLUDE_DIR ${INSTALL_INCLUDE_DIR}) diff --git a/ports/osi/CONTROL b/ports/osi/CONTROL index 01190fb21fc89c..5f65e3cf2ce1cf 100644 --- a/ports/osi/CONTROL +++ b/ports/osi/CONTROL @@ -1,4 +1,4 @@ Source: osi -Version: 0.108.4-1 +Version: 0.108.4-2 Description: Osi (Open Solver Interface) provides an abstract base class to a generic linear programming (LP) solver, along with derived classes for specific solvers. Many applications may be able to use the Osi to insulate themselves from a specific LP solver. Build-Depends: coinutils diff --git a/ports/osi/portfile.cmake b/ports/osi/portfile.cmake index dc0dc785736d78..bb340eaca08c0b 100644 --- a/ports/osi/portfile.cmake +++ b/ports/osi/portfile.cmake @@ -19,11 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") #on case-sensitive filesystems, it's necessary to rename and make it lowercase - vcpkg_fixup_cmake_targets(CONFIG_PATH "share/Osi") -else() - vcpkg_fixup_cmake_targets() -endif() +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/pangolin/CONTROL b/ports/pangolin/CONTROL index 77e836cb395d08..8963cc26bbe352 100644 --- a/ports/pangolin/CONTROL +++ b/ports/pangolin/CONTROL @@ -1,5 +1,5 @@ Source: pangolin -Version: 0.5-6 +Version: 0.5-7 Build-Depends: eigen3, glew, libpng, libjpeg-turbo, ffmpeg Homepage: https://github.com/stevenlovegrove/Pangolin Description: Lightweight GUI Library diff --git a/ports/pangolin/portfile.cmake b/ports/pangolin/portfile.cmake index ac4d316253df01..e22672ec00dd55 100644 --- a/ports/pangolin/portfile.cmake +++ b/ports/pangolin/portfile.cmake @@ -29,7 +29,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/Pangolin") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Pangolin) vcpkg_copy_pdbs() diff --git a/ports/pcl/CONTROL b/ports/pcl/CONTROL index dcd8c7aadc8939..1a9852c8e98850 100644 --- a/ports/pcl/CONTROL +++ b/ports/pcl/CONTROL @@ -1,5 +1,5 @@ Source: pcl -Version: 1.9.1-3 +Version: 1.9.1-4 Homepage: https://github.com/PointCloudLibrary/pcl Description: Point Cloud Library (PCL) is open source library for 2D/3D image and point cloud processing. Build-Depends: eigen3, flann, qhull, vtk, libpng, boost-system, boost-filesystem, boost-thread, boost-date-time, boost-iostreams, boost-random, boost-foreach, boost-dynamic-bitset, boost-property-map, boost-graph, boost-multi-array, boost-signals2, boost-ptr-container, boost-uuid, boost-interprocess, boost-asio @@ -22,4 +22,4 @@ Build-Depends: boost-accumulators Feature: cuda Description: CUDA support for PCL -Build-Depends: cuda \ No newline at end of file +Build-Depends: cuda diff --git a/ports/pcl/portfile.cmake b/ports/pcl/portfile.cmake index 971abe02582270..b30ceb0d8edb6f 100644 --- a/ports/pcl/portfile.cmake +++ b/ports/pcl/portfile.cmake @@ -68,7 +68,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/pcl) +vcpkg_fixup_cmake_targets() vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/pdal/CONTROL b/ports/pdal/CONTROL index 743f77c8e9c3f1..7c465df4e16105 100644 --- a/ports/pdal/CONTROL +++ b/ports/pdal/CONTROL @@ -1,4 +1,4 @@ Source: pdal -Version: 1.7.1-4 +Version: 1.7.1-5 Description: PDAL - Point Data Abstraction Library is a library for manipulating point cloud data. Build-Depends: gdal, geos, jsoncpp, libgeotiff, laszip diff --git a/ports/pdal/portfile.cmake b/ports/pdal/portfile.cmake index 566fc08e4de793..650849224f5c71 100644 --- a/ports/pdal/portfile.cmake +++ b/ports/pdal/portfile.cmake @@ -27,26 +27,26 @@ file(REMOVE "${SOURCE_PATH}/pdal/gitsha.cpp") foreach(_module IN ITEMS FindGDAL FindGEOS FindGeoTIFF FindCurl) # Outdated; Supplied by CMake file(REMOVE "${SOURCE_PATH}/cmake/modules/${_module}.cmake") endforeach() -foreach(_module IN ITEMS FindGEOS) # Overwritten Modules. +foreach(_module IN ITEMS FindGEOS) # Overwritten Modules. file(REMOVE "${SOURCE_PATH}/cmake/modules/${_module}.cmake") file(COPY ${CMAKE_CURRENT_LIST_DIR}/${_module}.cmake DESTINATION ${SOURCE_PATH}/cmake/modules/ ) endforeach() -# NOTE: CMake native BUILD_SHARED_LIBS option will be set by vcpkg_configure_cmake -# TODO: Remove this as soon as PDAL switches to use BUILD_SHARED_LIBS if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") - set(PDAL_BUILD_STATIC OFF) + set(VCPKG_BUILD_SHARED_LIBS ON) + set(VCPKG_BUILD_STATIC_LIBS OFF) else() - set(PDAL_BUILD_STATIC ON) + set(VCPKG_BUILD_SHARED_LIBS OFF) + set(VCPKG_BUILD_STATIC_LIBS ON) endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - -DPDAL_BUILD_STATIC:BOOL=${PDAL_BUILD_STATIC} + -DPDAL_BUILD_STATIC:BOOL=${VCPKG_BUILD_STATIC_LIBS} -DWITH_TESTS:BOOL=OFF -DWITH_COMPLETION:BOOL=OFF ) diff --git a/ports/poco/CONTROL b/ports/poco/CONTROL index 4503529c6428c6..1e98ccc748ebdf 100644 --- a/ports/poco/CONTROL +++ b/ports/poco/CONTROL @@ -1,5 +1,5 @@ Source: poco -Version: 2.0.0-pre-1 +Version: 2.0.0-pre-2 Build-Depends: expat, libpq, pcre, sqlite3, zlib Description: Modern, powerful open source C++ class libraries for building network and internet-based applications that run on desktop, server, mobile and embedded systems. Homepage: https://github.com/pocoproject/poco diff --git a/ports/poco/portfile.cmake b/ports/poco/portfile.cmake index 36a127489c3ea8..46d9a439cc8bc1 100644 --- a/ports/poco/portfile.cmake +++ b/ports/poco/portfile.cmake @@ -76,7 +76,7 @@ vcpkg_configure_cmake( -DPOCO_ENABLE_WSTRING=ON -DPOCO_ENABLE_FPENVIRONMENT=ON -DPOCO_ENABLE_CPPUNIT=ON - # + # -DMYSQL_INCLUDE_DIR=${MYSQL_INCLUDE_DIR} OPTIONS_RELEASE -DMYSQL_LIBRARY=${MYSQL_LIBRARY} @@ -144,9 +144,9 @@ endif() # if(EXISTS "${CURRENT_PACKAGES_DIR}/cmake") - vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake") + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) elseif(EXISTS "${CURRENT_PACKAGES_DIR}/lib/cmake/Poco") - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/Poco") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Poco) endif() # remove unused files @@ -156,4 +156,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/poco) file(RENAME ${CURRENT_PACKAGES_DIR}/share/poco/LICENSE ${CURRENT_PACKAGES_DIR}/share/poco/copyright) -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() diff --git a/ports/proj4/CONTROL b/ports/proj4/CONTROL index d1aecc21f0d205..265b8173dd3889 100644 --- a/ports/proj4/CONTROL +++ b/ports/proj4/CONTROL @@ -1,4 +1,4 @@ Source: proj4 -Version: 4.9.3-1 +Version: 4.9.3-3 Homepage: https://download.osgeo.org/proj Description: PROJ.4 library for cartographic projections diff --git a/ports/proj4/portfile.cmake b/ports/proj4/portfile.cmake index 64974e4ba01a89..b34f04ac33717a 100644 --- a/ports/proj4/portfile.cmake +++ b/ports/proj4/portfile.cmake @@ -18,10 +18,16 @@ vcpkg_extract_source_archive_ex( 0003-CMake-configurable-cmake-config-install-location.patch ) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(VCPKG_BUILD_SHARED_LIBS ON) +else() + set(VCPKG_BUILD_SHARED_LIBS OFF) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} OPTIONS - -DBUILD_LIBPROJ_SHARED=${BUILD_SHARED_LIBS} + -DBUILD_LIBPROJ_SHARED=${VCPKG_BUILD_SHARED_LIBS} -DPROJ_LIB_SUBDIR=lib -DPROJ_INCLUDE_SUBDIR=include -DPROJ_DATA_SUBDIR=share/proj4 @@ -34,7 +40,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/proj4) +vcpkg_fixup_cmake_targets() # Rename library and adapt cmake configuration if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") diff --git a/ports/protobuf/CONTROL b/ports/protobuf/CONTROL index bce258d24b84a7..0dc2aa6dc52828 100644 --- a/ports/protobuf/CONTROL +++ b/ports/protobuf/CONTROL @@ -1,5 +1,5 @@ Source: protobuf -Version: 3.8.0 +Version: 3.8.0-1 Homepage: https://github.com/google/protobuf Description: Protocol Buffers - Google's data interchange format diff --git a/ports/protobuf/disable-lite.patch b/ports/protobuf/disable-lite.patch deleted file mode 100644 index 3a372e68fc3a12..00000000000000 --- a/ports/protobuf/disable-lite.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff --git a/cmake/install.cmake b/cmake/install.cmake -index 9b2ae93c..7c9670a3 100644 ---- a/cmake/install.cmake -+++ b/cmake/install.cmake -@@ -22,10 +22,12 @@ foreach(_library ${_protobuf_libraries}) - set_property(TARGET ${_library} - PROPERTY INSTALL_RPATH "@loader_path") - endif() -+ if(NOT "${_library}" STREQUAL "libprotobuf-lite") - install(TARGETS ${_library} EXPORT protobuf-targets - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${_library} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${_library} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${_library}) -+ endif() - endforeach() - - if (protobuf_BUILD_PROTOC_BINARIES) -@@ -40,7 +42,7 @@ if (protobuf_BUILD_PROTOC_BINARIES) - endif() - endif (protobuf_BUILD_PROTOC_BINARIES) - --install(FILES ${CMAKE_CURRENT_BINARY_DIR}/protobuf.pc ${CMAKE_CURRENT_BINARY_DIR}/protobuf-lite.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") -+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/protobuf.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") - - file(STRINGS extract_includes.bat.in _extract_strings - REGEX "^copy") -@@ -121,12 +123,12 @@ configure_file(protobuf-options.cmake - # Allows the build directory to be used as a find directory. - - if (protobuf_BUILD_PROTOC_BINARIES) -- export(TARGETS libprotobuf-lite libprotobuf libprotoc protoc -+ export(TARGETS libprotobuf libprotoc protoc - NAMESPACE protobuf:: - FILE ${CMAKE_INSTALL_CMAKEDIR}/protobuf-targets.cmake - ) - else (protobuf_BUILD_PROTOC_BINARIES) -- export(TARGETS libprotobuf-lite libprotobuf -+ export(TARGETS libprotobuf - NAMESPACE protobuf:: - FILE ${CMAKE_INSTALL_CMAKEDIR}/protobuf-targets.cmake - ) diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake index 982345db1af19a..7c04158a837656 100644 --- a/ports/protobuf/portfile.cmake +++ b/ports/protobuf/portfile.cmake @@ -8,7 +8,6 @@ vcpkg_from_github( HEAD_REF master PATCHES fix-uwp.patch - disable-lite.patch ) if(CMAKE_HOST_WIN32 AND NOT VCPKG_TARGET_ARCHITECTURE MATCHES "x64" AND NOT VCPKG_TARGET_ARCHITECTURE MATCHES "x86") @@ -24,15 +23,15 @@ if(NOT protobuf_BUILD_PROTOC_BINARIES AND NOT EXISTS ${CURRENT_INSTALLED_DIR}/.. endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") - set(protobuf_BUILD_SHARED_LIBS ON) + set(VCPKG_BUILD_SHARED_LIBS ON) else() - set(protobuf_BUILD_SHARED_LIBS OFF) + set(VCPKG_BUILD_SHARED_LIBS OFF) endif() -if(VCPKG_CRT_LINKAGE STREQUAL "static") - set(protobuf_MSVC_STATIC_RUNTIME ON) +if(VCPKG_CRT_LINKAGE STREQUAL "dynamic") + set(VCPKG_BUILD_STATIC_CRT OFF) else() - set(protobuf_MSVC_STATIC_RUNTIME OFF) + set(VCPKG_BUILD_STATIC_CRT ON) endif() if("zlib" IN_LIST FEATURES) @@ -45,8 +44,8 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH}/cmake PREFER_NINJA OPTIONS - -Dprotobuf_BUILD_SHARED_LIBS=${protobuf_BUILD_SHARED_LIBS} - -Dprotobuf_MSVC_STATIC_RUNTIME=${protobuf_MSVC_STATIC_RUNTIME} + -Dprotobuf_BUILD_SHARED_LIBS=${VCPKG_BUILD_SHARED_LIBS} + -Dprotobuf_MSVC_STATIC_RUNTIME=${VCPKG_BUILD_STATIC_CRT} -Dprotobuf_WITH_ZLIB=${protobuf_WITH_ZLIB} -Dprotobuf_BUILD_TESTS=OFF -DCMAKE_INSTALL_CMAKEDIR:STRING=share/protobuf @@ -91,10 +90,10 @@ protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/share) if(CMAKE_HOST_WIN32) if(protobuf_BUILD_PROTOC_BINARIES) - file(INSTALL ${CURRENT_PACKAGES_DIR}/bin/protoc.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/protobuf) - vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/protobuf) + file(INSTALL ${CURRENT_PACKAGES_DIR}/bin/protoc.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}) + vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}) else() - file(COPY ${CURRENT_INSTALLED_DIR}/../x86-windows/tools/protobuf DESTINATION ${CURRENT_PACKAGES_DIR}/tools) + file(COPY ${CURRENT_INSTALLED_DIR}/../x86-windows/tools/${PORT} DESTINATION ${CURRENT_PACKAGES_DIR}/tools) endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") @@ -107,22 +106,18 @@ if(CMAKE_HOST_WIN32) else() file(GLOB EXECUTABLES ${CURRENT_PACKAGES_DIR}/bin/protoc*) foreach(E IN LISTS EXECUTABLES) - file(INSTALL ${E} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/protobuf + file(INSTALL ${E} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT} PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ) endforeach() protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/bin) protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/bin) endif() -if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/libprotobuf-lite.lib) - message(FATAL_ERROR "Expected to not build the lite runtime because it contains some of the same symbols as the full runtime.") -endif() - if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") file(READ ${CURRENT_PACKAGES_DIR}/include/google/protobuf/stubs/platform_macros.h _contents) string(REPLACE "\#endif // GOOGLE_PROTOBUF_PLATFORM_MACROS_H_" "\#define PROTOBUF_USE_DLLS\n\#endif // GOOGLE_PROTOBUF_PLATFORM_MACROS_H_" _contents "${_contents}") file(WRITE ${CURRENT_PACKAGES_DIR}/include/google/protobuf/stubs/platform_macros.h "${_contents}") endif() -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/protobuf RENAME copyright) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) vcpkg_copy_pdbs() diff --git a/ports/pthreads/portfile.cmake b/ports/pthreads/portfile.cmake index 4debe0d26c301f..393fefddc766d7 100644 --- a/ports/pthreads/portfile.cmake +++ b/ports/pthreads/portfile.cmake @@ -1,14 +1,16 @@ -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - message(FATAL_ERROR "${PORT} does not currently support UWP") +include(vcpkg_common_functions) + +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") + message(FATAL_ERROR "${PORT} does not currently support UWP platform nor ARM architectures") endif() -if(VCPKG_CMAKE_SYSTEM_NAME) + +if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(VCPKG_POLICY_EMPTY_PACKAGE enabled) return() endif() set(PTHREADS4W_VERSION "3.0.0") -include(vcpkg_common_functions) vcpkg_download_distfile(ARCHIVE URLS "https://sourceforge.net/projects/pthreads4w/files/pthreads4w-code-v${PTHREADS4W_VERSION}.zip/download" FILENAME "pthreads4w-code-v${PTHREADS4W_VERSION}.zip" diff --git a/ports/pugixml/CONTROL b/ports/pugixml/CONTROL index 96adad3fb7bee0..a68f438334a55f 100644 --- a/ports/pugixml/CONTROL +++ b/ports/pugixml/CONTROL @@ -1,4 +1,4 @@ Source: pugixml -Version: 1.9-1 +Version: 1.9-2 Homepage: https://github.com/zeux/pugixml Description: C++ XML processing library diff --git a/ports/pugixml/portfile.cmake b/ports/pugixml/portfile.cmake index b0ec2cc58235cf..62d0a4b74ade6b 100644 --- a/ports/pugixml/portfile.cmake +++ b/ports/pugixml/portfile.cmake @@ -1,14 +1,3 @@ -# Common Ambient Variables: -# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} -# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} -# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT} -# PORT = current port name (zlib, etc) -# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc) -# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic) -# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic) -# VCPKG_ROOT_DIR = -# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) -# include(vcpkg_common_functions) vcpkg_from_github( @@ -20,14 +9,13 @@ vcpkg_from_github( ) vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH ${SOURCE_PATH} ) vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/pugixml") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/pugixml) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -# Handle copyright file(INSTALL ${SOURCE_PATH}/readme.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/pugixml RENAME copyright) diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake index 47d6ce2e786913..6020376ba0e005 100644 --- a/ports/qt5-base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -2,7 +2,7 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "Qt5's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() diff --git a/ports/qt5-modularscripts/qt_modular_library.cmake b/ports/qt5-modularscripts/qt_modular_library.cmake index 206c0400282557..61eea306b6de9f 100644 --- a/ports/qt5-modularscripts/qt_modular_library.cmake +++ b/ports/qt5-modularscripts/qt_modular_library.cmake @@ -2,8 +2,8 @@ set(_qt5base_port_dir "${CMAKE_CURRENT_LIST_DIR}") function(qt_modular_fetch_library NAME HASH TARGET_SOURCE_PATH) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) - if(BUILDTREES_PATH_LENGTH GREATER 45) - message(WARNING "Qt5's buildsystem uses very long paths and may fail on your system.\n" + if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() @@ -110,7 +110,7 @@ function(qt_modular_build_library SOURCE_PATH) #Move release and debug dlls to the correct directory if(EXISTS ${CURRENT_PACKAGES_DIR}/tools/qt5) - file(RENAME ${CURRENT_PACKAGES_DIR}/tools/qt5 ${CURRENT_PACKAGES_DIR}/tools/${PORT}) + file(RENAME ${CURRENT_PACKAGES_DIR}/tools/qt5 ${CURRENT_PACKAGES_DIR}/tools/${PORT}) endif() if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/tools/qt5) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/tools/qt5 ${CURRENT_PACKAGES_DIR}/debug/tools/${PORT}) diff --git a/ports/re2/CONTROL b/ports/re2/CONTROL index 32a1726ab4575b..4bf7106e7d4e55 100644 --- a/ports/re2/CONTROL +++ b/ports/re2/CONTROL @@ -1,4 +1,4 @@ Source: re2 -Version: 2019-05-07 +Version: 2019-05-07-1 Homepage: https://github.com/google/re2 -Description: RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python. It is a C++ library. \ No newline at end of file +Description: RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python. It is a C++ library. diff --git a/ports/re2/portfile.cmake b/ports/re2/portfile.cmake index 3cb43876a8183c..ef2c9e842f871a 100644 --- a/ports/re2/portfile.cmake +++ b/ports/re2/portfile.cmake @@ -3,7 +3,7 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/re2 - REF cd23be77c716bf75ebb3ddc07fa3ef0c943da6d2 + REF cd23be77c716bf75ebb3ddc07fa3ef0c943da6d2 SHA512 c307fc9294497dc3b4ae95db117f310e0db8f91a90c32bb316fe7e32414b2ade48264471e7a7bb0860aa9b0afe7dd460dadc552b1173ac35235ad3624c6f2ed5 HEAD_REF master ) @@ -14,7 +14,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/re2 TARGET_PATH share/re2) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/re2) vcpkg_copy_pdbs() diff --git a/ports/restclient-cpp/CONTROL b/ports/restclient-cpp/CONTROL index 5cb43b1d42a569..975f5df7a7f799 100644 --- a/ports/restclient-cpp/CONTROL +++ b/ports/restclient-cpp/CONTROL @@ -1,4 +1,4 @@ Source: restclient-cpp -Version: 0.5.1 +Version: 0.5.1-1 Build-Depends: curl Description: Binn is a binary data serialization format designed to be compact, fast and easy to use. diff --git a/ports/restinio/CONTROL b/ports/restinio/CONTROL index b608f12b5aacb8..a7c81a55f84d16 100644 --- a/ports/restinio/CONTROL +++ b/ports/restinio/CONTROL @@ -1,4 +1,4 @@ -Source: restinio -Version: 0.5.1 -Description: A header-only C++14 library that gives you an embedded HTTP/Websocket server targeted primarily for asynchronous processing of HTTP-requests. -Build-Depends: asio, fmt, http-parser +Source: restinio +Version: 0.5.1-1 +Description: A header-only C++14 library that gives you an embedded HTTP/Websocket server targeted primarily for asynchronous processing of HTTP-requests. +Build-Depends: asio, fmt, http-parser diff --git a/ports/restinio/portfile.cmake b/ports/restinio/portfile.cmake index 9ab82bc4a0f0eb..5ae3cc2e2a146f 100644 --- a/ports/restinio/portfile.cmake +++ b/ports/restinio/portfile.cmake @@ -13,8 +13,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/restinio") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/restinio) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib ${CURRENT_PACKAGES_DIR}/debug) diff --git a/ports/sdl2-image/CONTROL b/ports/sdl2-image/CONTROL index 388e08d5afd2c4..1c28b50f08669f 100644 --- a/ports/sdl2-image/CONTROL +++ b/ports/sdl2-image/CONTROL @@ -1,5 +1,5 @@ Source: sdl2-image -Version: 2.0.4-2 +Version: 2.0.4-3 Build-Depends: sdl2, libpng Homepage: https://www.libsdl.org/projects/SDL_image Description: SDL_image is an image file loading library. It loads images as SDL surfaces and textures, and supports the following formats: BMP, GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, WEBP, XCF, XPM, XV diff --git a/ports/sdl2-image/portfile.cmake b/ports/sdl2-image/portfile.cmake index 4d02e93f4b1d0c..a1e69af54f5179 100644 --- a/ports/sdl2-image/portfile.cmake +++ b/ports/sdl2-image/portfile.cmake @@ -11,7 +11,7 @@ vcpkg_download_distfile(ARCHIVE vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} - REF ${SDL2_IMAGE_VERSION} + REF ${SDL2_IMAGE_VERSION} ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) @@ -43,12 +43,12 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/sdl2-image") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) # Handle copyright file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-image) file(RENAME ${CURRENT_PACKAGES_DIR}/share/sdl2-image/COPYING.txt ${CURRENT_PACKAGES_DIR}/share/sdl2-image/copyright) -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() diff --git a/ports/sdl2-mixer/portfile.cmake b/ports/sdl2-mixer/portfile.cmake index 0b1b6dceaff409..977062a19d454a 100644 --- a/ports/sdl2-mixer/portfile.cmake +++ b/ports/sdl2-mixer/portfile.cmake @@ -53,8 +53,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/sdl2-mixer") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-mixer) diff --git a/ports/sdl2-net/CONTROL b/ports/sdl2-net/CONTROL index 848691145e386c..9270c5a823c7e9 100644 --- a/ports/sdl2-net/CONTROL +++ b/ports/sdl2-net/CONTROL @@ -1,5 +1,5 @@ Source: sdl2-net -Version: 2.0.1-6 +Version: 2.0.1-7 Homepage: https://www.libsdl.org/projects/SDL_net Description: Networking library for SDL Build-Depends: sdl2 diff --git a/ports/sdl2-net/portfile.cmake b/ports/sdl2-net/portfile.cmake index 2a8928e1646801..b047be96b512d7 100644 --- a/ports/sdl2-net/portfile.cmake +++ b/ports/sdl2-net/portfile.cmake @@ -17,8 +17,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/sdl2-net") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-net) diff --git a/ports/sdl2-ttf/CONTROL b/ports/sdl2-ttf/CONTROL index 9154c52da4181d..34d12bafd5ac7e 100644 --- a/ports/sdl2-ttf/CONTROL +++ b/ports/sdl2-ttf/CONTROL @@ -1,5 +1,5 @@ Source: sdl2-ttf -Version: 2.0.15-2 +Version: 2.0.15-3 Homepage: https://www.libsdl.org/projects/SDL_ttf/ Description: A library for rendering TrueType fonts with SDL Build-Depends: sdl2, freetype diff --git a/ports/sdl2-ttf/portfile.cmake b/ports/sdl2-ttf/portfile.cmake index 55451dcf12768b..eb623e13eff10b 100644 --- a/ports/sdl2-ttf/portfile.cmake +++ b/ports/sdl2-ttf/portfile.cmake @@ -24,8 +24,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets() -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/sdl2-ttf") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-ttf) diff --git a/ports/sdl2/CONTROL b/ports/sdl2/CONTROL index bfda1f10b2cb57..d76db966f87809 100644 --- a/ports/sdl2/CONTROL +++ b/ports/sdl2/CONTROL @@ -1,5 +1,5 @@ Source: sdl2 -Version: 2.0.9-3 +Version: 2.0.9-4 Homepage: https://github.com/SDL-Mirror/SDL Description: Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. diff --git a/ports/sdl2/portfile.cmake b/ports/sdl2/portfile.cmake index 4685605751d212..a2bc6363af664a 100644 --- a/ports/sdl2/portfile.cmake +++ b/ports/sdl2/portfile.cmake @@ -36,11 +36,11 @@ vcpkg_configure_cmake( vcpkg_install_cmake() if(EXISTS "${CURRENT_PACKAGES_DIR}/cmake") - vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake") + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) elseif(EXISTS "${CURRENT_PACKAGES_DIR}/lib/cmake/SDL2") - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/SDL2") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/SDL2) elseif(EXISTS "${CURRENT_PACKAGES_DIR}/SDL2.framework/Resources") - vcpkg_fixup_cmake_targets(CONFIG_PATH "SDL2.framework/Resources") + vcpkg_fixup_cmake_targets(CONFIG_PATH SDL2.framework/Resources) endif() file(REMOVE_RECURSE diff --git a/ports/selene/CONTROL b/ports/selene/CONTROL index ce266e859d032a..b3bbed2b6b8099 100644 --- a/ports/selene/CONTROL +++ b/ports/selene/CONTROL @@ -1,4 +1,4 @@ Source: selene -Version: 0.3.1 +Version: 0.3.1-1 Description: A C++17 image representation, processing and I/O library. Build-Depends: zlib, libpng, libjpeg-turbo, tiff diff --git a/ports/selene/portfile.cmake b/ports/selene/portfile.cmake index f45c84460cd34f..11a2e89eb7cb7b 100644 --- a/ports/selene/portfile.cmake +++ b/ports/selene/portfile.cmake @@ -18,7 +18,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/selene") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/selene) vcpkg_copy_pdbs() # Include files should not be duplicated into the /debug/include directory. diff --git a/ports/sf2cute/CONTROL b/ports/sf2cute/CONTROL index 7d850c6940afde..bdba56cc709ed6 100644 --- a/ports/sf2cute/CONTROL +++ b/ports/sf2cute/CONTROL @@ -1,6 +1,6 @@ Source: sf2cute -Version: 0.2.0 +Version: 0.2.0-1 Description: C++14 Library for SoundFont 2 Feature: example -Description: Installs an example application \ No newline at end of file +Description: Installs an example application diff --git a/ports/sf2cute/portfile.cmake b/ports/sf2cute/portfile.cmake index 5a99ca11b66904..e4622239644523 100644 --- a/ports/sf2cute/portfile.cmake +++ b/ports/sf2cute/portfile.cmake @@ -26,12 +26,10 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -# move the .cmake files from the given directory to the expected directory by vcpkg -vcpkg_fixup_cmake_targets(CONFIG_PATH share/sf2cute) - # Handle copyright file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/sf2cute RENAME copyright) diff --git a/ports/shogun/CONTROL b/ports/shogun/CONTROL index 69b7968db84648..e57f129febb458 100644 --- a/ports/shogun/CONTROL +++ b/ports/shogun/CONTROL @@ -1,4 +1,4 @@ Source: shogun -Version: 6.1.3-4 +Version: 6.1.3-3 Build-Depends: bzip2, eigen3, liblzma, libxml2, openblas (x64&!osx), nlopt, rxcpp, snappy, zlib, protobuf, curl, lzo, dirent Description: Unified and efficient Machine Learning diff --git a/ports/shogun/portfile.cmake b/ports/shogun/portfile.cmake index 1f46e6ba753db3..37a75589408afb 100644 --- a/ports/shogun/portfile.cmake +++ b/ports/shogun/portfile.cmake @@ -2,6 +2,12 @@ include(vcpkg_common_functions) vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(CMAKE_DISABLE_FIND_PACKAGE_BLAS 0) +else() + set(CMAKE_DISABLE_FIND_PACKAGE_BLAS 1) +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO shogun-toolbox/shogun @@ -16,12 +22,6 @@ file(REMOVE_RECURSE ${SOURCE_PATH}/cmake/external) file(MAKE_DIRECTORY ${SOURCE_PATH}/cmake/external) file(COPY ${CMAKE_CURRENT_LIST_DIR}/MSDirent.cmake DESTINATION ${SOURCE_PATH}/cmake/external) -if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") - set(CMAKE_DISABLE_FIND_PACKAGE_BLAS 0) -else() - set(CMAKE_DISABLE_FIND_PACKAGE_BLAS 1) -endif() - vcpkg_find_acquire_program(PYTHON3) get_filename_component(PYTHON3_DIR "${PYTHON3}" DIRECTORY) vcpkg_add_to_path(${PYTHON3_DIR}) @@ -36,9 +36,6 @@ vcpkg_configure_cmake( -DENABLE_TESTING=OFF -DLICENSE_GPL_SHOGUN=OFF -DLIBSHOGUN_BUILD_STATIC=ON - # Conflicting definitions in OpenBLAS and Eigen - -DENABLE_EIGEN_LAPACK=OFF - -DCMAKE_DISABLE_FIND_PACKAGE_JSON=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_ViennaCL=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_TFLogger=TRUE @@ -53,13 +50,13 @@ vcpkg_configure_cmake( -DCMAKE_DISABLE_FIND_PACKAGE_CCache=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_LAPACK=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=TRUE + -DCMAKE_DISABLE_FIND_PACKAGE_CURL=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_BLAS=${CMAKE_DISABLE_FIND_PACKAGE_BLAS} -DINSTALL_TARGETS=shogun-static ) vcpkg_install_cmake() - vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/shogun) file(REMOVE_RECURSE diff --git a/ports/sndfile/CONTROL b/ports/sndfile/CONTROL index 8c020a5f90515e..fb01b640840a31 100644 --- a/ports/sndfile/CONTROL +++ b/ports/sndfile/CONTROL @@ -1,9 +1,9 @@ Source: sndfile -Version: deprecated -Description: Deprecated port, use libsndfile instead +Version: 0 +Description:x Library to read, write and manipulate many soundfile types. Build-Depends: libsndfile Default-Features: external-libs Feature: external-libs -Description: Deprecated port, use libsndfile[external-libs] instead +Description: Support Ogg Vorbis and FLAC audio files Build-Depends: libsndfile[external-libs] diff --git a/ports/sndfile/portfile.cmake b/ports/sndfile/portfile.cmake index 47fe8ca236c3a6..d3910bb2c4ec8c 100644 --- a/ports/sndfile/portfile.cmake +++ b/ports/sndfile/portfile.cmake @@ -1,3 +1,3 @@ set(VCPKG_POLICY_EMPTY_PACKAGE enabled) -message(WARNING "The sndfile port is deprecated, use libsndfile instead") +message(WARNING "The sndfile port is deprecated, using libsndfile instead") diff --git a/ports/so5extra/CONTROL b/ports/so5extra/CONTROL index af3be50a052709..882ac0712603d4 100644 --- a/ports/so5extra/CONTROL +++ b/ports/so5extra/CONTROL @@ -1,4 +1,4 @@ Source: so5extra -Version: 1.2.3 +Version: 1.2.3-1 Description: A set of additional tools for SObjectizer framework. Build-Depends: sobjectizer diff --git a/ports/so5extra/portfile.cmake b/ports/so5extra/portfile.cmake index 4bd7e0787e6745..26472935e8c81b 100644 --- a/ports/so5extra/portfile.cmake +++ b/ports/so5extra/portfile.cmake @@ -17,8 +17,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/so5extra") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/so5extra) # Remove unnecessary stuff. # These paths are empty and should be removed too. diff --git a/ports/sobjectizer/CONTROL b/ports/sobjectizer/CONTROL index 12b0968d96540b..3e37f70e3e8647 100644 --- a/ports/sobjectizer/CONTROL +++ b/ports/sobjectizer/CONTROL @@ -1,4 +1,4 @@ Source: sobjectizer -Version: 5.5.24.4 +Version: 5.5.24.4-1 Homepage: https://sourceforge.net/projects/sobjectizer Description: SObjectizer is a C++ in-process message dispatching framework with implementation of Actor Model, Publish-Subscribe Model and CSP-like channels. diff --git a/ports/sobjectizer/portfile.cmake b/ports/sobjectizer/portfile.cmake index 659e1192a3ccfa..4588ea4f2024e0 100644 --- a/ports/sobjectizer/portfile.cmake +++ b/ports/sobjectizer/portfile.cmake @@ -29,7 +29,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/sobjectizer") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/sobjectizer) # Handle copyright file(COPY ${SOURCE_PATH}/../LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/sobjectizer) diff --git a/ports/sophus/CONTROL b/ports/sophus/CONTROL index 91e97c90ba8a4c..d3c81de7744a9c 100644 --- a/ports/sophus/CONTROL +++ b/ports/sophus/CONTROL @@ -1,5 +1,5 @@ Source: sophus -Version: 1.0.0-3 +Version: 1.0.0-6 Build-Depends: eigen3, ceres, suitesparse Homepage: https://github.com/strasdat/Sophus Description: Lie group library for C++ diff --git a/ports/sophus/portfile.cmake b/ports/sophus/portfile.cmake index f33260c4d756b7..c7480b904a5f50 100644 --- a/ports/sophus/portfile.cmake +++ b/ports/sophus/portfile.cmake @@ -16,7 +16,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/Sophus") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Sophus) vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) diff --git a/ports/string-theory/CONTROL b/ports/string-theory/CONTROL index e1c0c8af0e4ad2..538b4a9895ba98 100644 --- a/ports/string-theory/CONTROL +++ b/ports/string-theory/CONTROL @@ -1,4 +1,4 @@ Source: string-theory -Version: 2.1 +Version: 2.1-1 Homepage: https://github.com/zrax/string_theory Description: Flexible C++11 string library with type-safe formatting. diff --git a/ports/string-theory/portfile.cmake b/ports/string-theory/portfile.cmake index 3cfb24c92228e7..002eae1b1ec3dd 100644 --- a/ports/string-theory/portfile.cmake +++ b/ports/string-theory/portfile.cmake @@ -22,8 +22,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/string_theory") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/string_theory) file(RENAME ${CURRENT_PACKAGES_DIR}/share/string-theory ${CURRENT_PACKAGES_DIR}/share/string_theory) diff --git a/ports/suitesparse/CONTROL b/ports/suitesparse/CONTROL index 352a28a6da17b1..82ee5e5e0df753 100644 --- a/ports/suitesparse/CONTROL +++ b/ports/suitesparse/CONTROL @@ -1,5 +1,5 @@ Source: suitesparse -Version: 5.4.0-1 +Version: 5.4.0-3 Build-Depends: clapack (!osx) Homepage: http://faculty.cse.tamu.edu/davis/SuiteSparse Description: algebra library diff --git a/ports/suitesparse/portfile.cmake b/ports/suitesparse/portfile.cmake index a527f88259ed78..8fb2c26b2ea00a 100644 --- a/ports/suitesparse/portfile.cmake +++ b/ports/suitesparse/portfile.cmake @@ -34,6 +34,10 @@ foreach(SOURCE_FILE ${SUITESPARSE_SOURCE_FILES}) file(COPY ${SOURCE_FILE} DESTINATION "${SUITESPARSEWIN_SOURCE_PATH}/SuiteSparse") endforeach() message(STATUS "Copying SuiteSparse source files... done") +message(STATUS "Removing integrated lapack and metis libs...") +file(REMOVE_RECURSE ${SUITESPARSEWIN_SOURCE_PATH}/lapack_windows) +file(REMOVE_RECURSE ${SUITESPARSEWIN_SOURCE_PATH}/metis) +message(STATUS "Removing integrated lapack and metis libs... done") set(USE_VCPKG_METIS OFF) if("metis" IN_LIST FEATURES) @@ -56,14 +60,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/suitesparse-${SUITESPARSE_VER}" TARGET_PATH "share/suitesparse") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/suitesparse-${SUITESPARSE_VER}) -#clean folders file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -# Handle copyright of suitesparse and suitesparse-metis-for-windows -file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/suitesparse) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/suitesparse/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/suitesparse/copyright) - -file(COPY ${SUITESPARSEWIN_SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/suitesparse) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/suitesparse/LICENSE.md ${CURRENT_PACKAGES_DIR}/share/suitesparse/copyright_suitesparse-metis-for-windows) +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/suitesparse RENAME copyright) +file(INSTALL ${SUITESPARSEWIN_SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/suitesparse RENAME copyright_suitesparse-metis-for-windows) diff --git a/ports/suitesparse/suitesparse.patch b/ports/suitesparse/suitesparse.patch index 39435560679349..e26a5b8cbd62e1 100644 --- a/ports/suitesparse/suitesparse.patch +++ b/ports/suitesparse/suitesparse.patch @@ -1,17 +1,82 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3486f05..98badb6 100644 +index 3486f05..b8c2e63 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -252,7 +252,7 @@ if(SuiteSparse_LAPACK_BLAS_LIB_DIR) # "Export" the imported targets in config.cm - set_property(TARGET lapack PROPERTY IMPORTED_IMPLIB \${_SuiteSparse_PREFIX}/${SuiteSparse_LAPACK_BLAS_LIB_DIR}/liblapack.lib)") +@@ -191,68 +191,14 @@ if(WITH_CUDA) + ENDIF(${CUDA_FOUND}) endif() +-find_package(BLAS) +-find_package(LAPACK) +-if (LAPACK_FOUND AND BLAS_FOUND) ++find_package(BLAS REQUIRED) ++find_package(LAPACK REQUIRED) ++if(LAPACK_FOUND AND BLAS_FOUND) + message(STATUS "found lapack and blas config file. Linking targets lapack and blas") + set(SuiteSparse_LINKER_LAPACK_BLAS_LIBS ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) +-else () # LAPACK is not found +- +-## Need to use SuiteSparse_LINKER_LAPACK_BLAS_LIBS in our subproject in case of SHARED flag is set to ON +-SET(SUITESPARSE_USE_CUSTOM_BLAS_LAPACK_LIBS OFF CACHE BOOL "Check if you have custom LAPACK/BLAS libraries (AMD,...)") +-IF (SUITESPARSE_USE_CUSTOM_BLAS_LAPACK_LIBS) +- SET(SUITESPARSE_CUSTOM_BLAS_LIB "" CACHE FILE "Path to custom library file for BLAS") +- SET(SUITESPARSE_CUSTOM_LAPACK_LIB "" CACHE FILE "Path to custom library file for LAPACK") +- IF (NOT EXISTS "${SUITESPARSE_CUSTOM_BLAS_LIB}" OR NOT EXISTS "${SUITESPARSE_CUSTOM_LAPACK_LIB}") +- MESSAGE("*Error*: Correctly set SUITESPARSE_CUSTOM_BLAS_LIB and SUITESPARSE_CUSTOM_LAPACK_LIB or uncheck SUITESPARSE_USE_CUSTOM_BLAS_LAPACK_LIBS") +- ELSE() +- SET(SuiteSparse_LINKER_LAPACK_BLAS_LIBS ${SUITESPARSE_CUSTOM_BLAS_LIB} ${SUITESPARSE_CUSTOM_LAPACK_LIB}) +- ENDIF() +-ELSE() +- IF (UNIX) +- SET(SuiteSparse_LINKER_LAPACK_BLAS_LIBS lapack blas rt) +- ELSE() +- IF(CMAKE_SIZEOF_VOID_P EQUAL 8) # Size in bytes! +- set(PATH_WORD_SIZE "x64") +- ELSE(CMAKE_SIZEOF_VOID_P EQUAL 8) # Size in bytes! +- set(PATH_WORD_SIZE "x32") +- ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 8) +- +- add_library(blas SHARED IMPORTED) +- set_property(TARGET blas PROPERTY IMPORTED_LOCATION ${SuiteSparseProject_SOURCE_DIR}/lapack_windows/${PATH_WORD_SIZE}/libblas.dll) +- set_property(TARGET blas PROPERTY IMPORTED_IMPLIB ${SuiteSparseProject_SOURCE_DIR}/lapack_windows/${PATH_WORD_SIZE}/libblas.lib) +- +- add_library(lapack SHARED IMPORTED) +- set_property(TARGET lapack PROPERTY IMPORTED_LOCATION ${SuiteSparseProject_SOURCE_DIR}/lapack_windows/${PATH_WORD_SIZE}/liblapack.dll) +- set_property(TARGET lapack PROPERTY IMPORTED_IMPLIB ${SuiteSparseProject_SOURCE_DIR}/lapack_windows/${PATH_WORD_SIZE}/liblapack.lib) +- +- SET(SuiteSparse_LINKER_LAPACK_BLAS_LIBS blas lapack) +- +- ## install lapack and blas dependencies +- file(GLOB lapack_blas_windows_libs "${CMAKE_SOURCE_DIR}/lapack_windows/${PATH_WORD_SIZE}/*.lib") +- file(GLOB lapack_blas_windows_dll "${CMAKE_SOURCE_DIR}/lapack_windows/${PATH_WORD_SIZE}/*.dll") +- if(lapack_blas_windows_dll AND lapack_blas_windows_libs) +- set(SuiteSparse_LAPACK_BLAS_LIB_DIR "lib${LIB_POSTFIX}/lapack_blas_windows") +- install(FILES ${lapack_blas_windows_libs} +- ${lapack_blas_windows_dll} +- DESTINATION ${SuiteSparse_LAPACK_BLAS_LIB_DIR} +- ) +- endif() +- ENDIF() +-ENDIF() +-ENDIF() # LAPACK found +- +-if(SuiteSparse_LAPACK_BLAS_LIB_DIR) # "Export" the imported targets in config.cmake manually +- set(ExternConfig "add_library(blas SHARED IMPORTED) +- set_property(TARGET blas PROPERTY IMPORTED_LOCATION \${_SuiteSparse_PREFIX}/${SuiteSparse_LAPACK_BLAS_LIB_DIR}/libblas.dll) +- set_property(TARGET blas PROPERTY IMPORTED_IMPLIB \${_SuiteSparse_PREFIX}/${SuiteSparse_LAPACK_BLAS_LIB_DIR}/libblas.lib) +- +- add_library(lapack SHARED IMPORTED) +- set_property(TARGET lapack PROPERTY IMPORTED_LOCATION \${_SuiteSparse_PREFIX}/${SuiteSparse_LAPACK_BLAS_LIB_DIR}/liblapack.dll) +- set_property(TARGET lapack PROPERTY IMPORTED_IMPLIB \${_SuiteSparse_PREFIX}/${SuiteSparse_LAPACK_BLAS_LIB_DIR}/liblapack.lib)") +-endif() ++endif() # LAPACK is not found + -IF(BUILD_METIS) +IF(BUILD_METIS OR USE_VCPKG_METIS) set(SuiteSparse_LINKER_METIS_LIBS "metis") ## namespaced library target for config set(SuiteSparse_EXPORTED_METIS_LIBS "SuiteSparse::metis") -@@ -311,7 +311,7 @@ configure_file(cmake/SuiteSparse-config-install.cmake.in +@@ -311,7 +257,7 @@ configure_file(cmake/SuiteSparse-config-install.cmake.in ## do the EXPORT for allowing other project to easily use suitesparse with cmake install(EXPORT SuiteSparseTargets FILE @@ -20,6 +85,18 @@ index 3486f05..98badb6 100644 NAMESPACE SuiteSparse:: DESTINATION +diff --git a/SuiteSparse/CHOLMOD/Include/cholmod_blas.h b/SuiteSparse/CHOLMOD/Include/cholmod_blas.h +index aef3e63..907512b 100644 +--- a/SuiteSparse/CHOLMOD/Include/cholmod_blas.h ++++ b/SuiteSparse/CHOLMOD/Include/cholmod_blas.h +@@ -27,6 +27,7 @@ + #elif defined (__linux) || defined (MGLNX86) || defined (ARCH_GLNX86) + #define CHOLMOD_LINUX + #define CHOLMOD_ARCHITECTURE "Linux" ++#define BLAS_NO_UNDERSCORE + + #elif defined (__APPLE__) + #define CHOLMOD_MAC diff --git a/SuiteSparse/CMakeLists.txt b/SuiteSparse/CMakeLists.txt index c6e2834..5ef08a6 100644 --- a/SuiteSparse/CMakeLists.txt diff --git a/ports/systemc/CONTROL b/ports/systemc/CONTROL index 488a0633871e12..4f1bd67d99c0cb 100644 --- a/ports/systemc/CONTROL +++ b/ports/systemc/CONTROL @@ -1,3 +1,3 @@ Source: systemc -Version: 2.3.3-2 +Version: 2.3.3-3 Description: A set of C++ classes and macros which provide an event-driven simulation kernel in C++ diff --git a/ports/systemc/install.patch b/ports/systemc/install.patch index d335a8b1809417..ef133a14fcfcef 100644 --- a/ports/systemc/install.patch +++ b/ports/systemc/install.patch @@ -1,23 +1,31 @@ ---- CMakeLists.txt Sat Oct 13 00:19:07 2018 -+++ CMakeLists.txt.fixed Mon Jan 28 15:51:38 2019 -@@ -555,7 +555,7 @@ - endif (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - - # Set the installation paths for headers, libraries, and documentation. --set (CMAKE_INSTALL_DOCDIR "share/doc/systemc" CACHE PATH -+set (CMAKE_INSTALL_DOCDIR "share/systemc" CACHE PATH - "Documentation installation directory") # otherwise mixed-case - if (INSTALL_TO_LIB_BUILD_TYPE_DIR) - # Install libraries to lib-${CMAKE_BUILD_TYPE} so that different build variants -@@ -589,9 +589,9 @@ - set (SystemCTLM_INSTALL_CMAKEDIR share/cmake/SystemCTLM CACHE PATH - "CMake package configuration installation directory" FORCE) - else (INSTALL_TO_LIB_BUILD_TYPE_DIR OR INSTALL_TO_LIB_TARGET_ARCH_DIR) -- set (SystemCLanguage_INSTALL_CMAKEDIR ${CMAKE_INSTALL_LIBDIR}/cmake/SystemCLanguage CACHE PATH -+ set (SystemCLanguage_INSTALL_CMAKEDIR share/SystemCLanguage CACHE PATH - "CMake package configuration installation directory for the SystemCLanguage package.") -- set (SystemCTLM_INSTALL_CMAKEDIR ${CMAKE_INSTALL_LIBDIR}/cmake/SystemCTLM CACHE PATH -+ set (SystemCTLM_INSTALL_CMAKEDIR share/SystemCTLM CACHE PATH - "CMake package configuration installation directory for the SystemCTLM package.") - endif (INSTALL_TO_LIB_BUILD_TYPE_DIR OR INSTALL_TO_LIB_TARGET_ARCH_DIR) - mark_as_advanced(SystemCLanguage_INSTALL_CMAKEDIR SystemCTLM_INSTALL_CMAKEDIR) +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b7815ae..86d79d1 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -555,7 +555,7 @@ if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + endif (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + + # Set the installation paths for headers, libraries, and documentation. +-set (CMAKE_INSTALL_DOCDIR "share/doc/systemc" CACHE PATH ++set (CMAKE_INSTALL_DOCDIR "share/systemc/doc" CACHE PATH + "Documentation installation directory") # otherwise mixed-case + if (INSTALL_TO_LIB_BUILD_TYPE_DIR) + # Install libraries to lib-${CMAKE_BUILD_TYPE} so that different build variants +@@ -584,14 +584,14 @@ if (INSTALL_LIB_TARGET_ARCH_SYMLINK AND CMAKE_HOST_UNIX) + endif (INSTALL_LIB_TARGET_ARCH_SYMLINK AND CMAKE_HOST_UNIX) + + if (INSTALL_TO_LIB_BUILD_TYPE_DIR OR INSTALL_TO_LIB_TARGET_ARCH_DIR) +- set (SystemCLanguage_INSTALL_CMAKEDIR share/cmake/SystemCLanguage CACHE PATH ++ set (SystemCLanguage_INSTALL_CMAKEDIR lib/cmake/SystemCLanguage CACHE PATH + "CMake package configuration installation directory" FORCE) + set (SystemCTLM_INSTALL_CMAKEDIR share/cmake/SystemCTLM CACHE PATH + "CMake package configuration installation directory" FORCE) + else (INSTALL_TO_LIB_BUILD_TYPE_DIR OR INSTALL_TO_LIB_TARGET_ARCH_DIR) +- set (SystemCLanguage_INSTALL_CMAKEDIR ${CMAKE_INSTALL_LIBDIR}/cmake/SystemCLanguage CACHE PATH ++ set (SystemCLanguage_INSTALL_CMAKEDIR lib/cmake/SystemCLanguage CACHE PATH + "CMake package configuration installation directory for the SystemCLanguage package.") +- set (SystemCTLM_INSTALL_CMAKEDIR ${CMAKE_INSTALL_LIBDIR}/cmake/SystemCTLM CACHE PATH ++ set (SystemCTLM_INSTALL_CMAKEDIR share/cmake/SystemCTLM CACHE PATH + "CMake package configuration installation directory for the SystemCTLM package.") + endif (INSTALL_TO_LIB_BUILD_TYPE_DIR OR INSTALL_TO_LIB_TARGET_ARCH_DIR) + mark_as_advanced(SystemCLanguage_INSTALL_CMAKEDIR SystemCTLM_INSTALL_CMAKEDIR) diff --git a/ports/systemc/portfile.cmake b/ports/systemc/portfile.cmake index 0165b8270ada95..8ecb7e8fb875d2 100644 --- a/ports/systemc/portfile.cmake +++ b/ports/systemc/portfile.cmake @@ -26,16 +26,11 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/SystemCLanguage TARGET_PATH share/systemclanguage) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/SystemCTLM TARGET_PATH share/systemctlm) -vcpkg_fixup_cmake_targets(CONFIG_PATH share/SystemCLanguage TARGET_PATH share/SystemCLanguage) -vcpkg_fixup_cmake_targets(CONFIG_PATH share/SystemCTLM TARGET_PATH share/SystemCTLM) - -# Handle copyright -file(INSTALL ${SOURCE_PATH}/NOTICE DESTINATION ${CURRENT_PACKAGES_DIR}/share/systemc RENAME copyright) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/sysc/packages/qt/time) -# Post-build test for cmake libraries (disabled for now due to issues with vcpkg_test_cmake) -#vcpkg_test_cmake(PACKAGE_NAME SystemCLanguage) -#vcpkg_test_cmake(PACKAGE_NAME SystemCTLM) +file(INSTALL ${SOURCE_PATH}/NOTICE DESTINATION ${CURRENT_PACKAGES_DIR}/share/systemc RENAME copyright) diff --git a/ports/szip/CONTROL b/ports/szip/CONTROL index a2ea5f275bfa6f..ac60f1a9d007f4 100644 --- a/ports/szip/CONTROL +++ b/ports/szip/CONTROL @@ -1,4 +1,4 @@ Source: szip -Version: 2.1.1-3 +Version: 2.1.1-4 Homepage: https://support.hdfgroup.org/ftp/lib-external/szip Description: Szip compression software, providing lossless compression of scientific data diff --git a/ports/szip/portfile.cmake b/ports/szip/portfile.cmake index fa10d58a2691d5..047abf39247076 100644 --- a/ports/szip/portfile.cmake +++ b/ports/szip/portfile.cmake @@ -24,8 +24,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/szip) +vcpkg_fixup_cmake_targets() file(RENAME ${CURRENT_PACKAGES_DIR}/share/szip/data/COPYING ${CURRENT_PACKAGES_DIR}/share/szip/copyright) diff --git a/ports/tesseract/CONTROL b/ports/tesseract/CONTROL index 85e76cc0356ceb..df6e60fec77e0d 100644 --- a/ports/tesseract/CONTROL +++ b/ports/tesseract/CONTROL @@ -1,5 +1,5 @@ Source: tesseract -Version: 4.0.0-2 +Version: 4.0.0-3 Homepage: https://github.com/tesseract-ocr/tesseract Description: An OCR Engine that was developed at HP Labs between 1985 and 1995... and now at Google. Build-Depends: leptonica, icu diff --git a/ports/tesseract/portfile.cmake b/ports/tesseract/portfile.cmake index d21908b1911f44..18b63cab68d06c 100644 --- a/ports/tesseract/portfile.cmake +++ b/ports/tesseract/portfile.cmake @@ -27,7 +27,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake") +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) # Install tool file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/tesseract) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 47a85dfa5a194c..c3f2f83c98472d 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -2,4 +2,4 @@ Source: thrift Version: 2019-05-07-1 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Homepage: https://github.com/apache/thrift -Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. +Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index efd76472b42aea..c19b38c312b68a 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -17,7 +17,6 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - -DBUILD_SHARED_LIBS=OFF -DWITH_STDTHREADS=ON -DBUILD_TESTING=off -DBUILD_JAVA=off @@ -36,7 +35,7 @@ vcpkg_install_cmake() file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/thrift RENAME copyright) # Move CMake config files to the right place -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/thrift") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/thrift) file(GLOB COMPILER "${CURRENT_PACKAGES_DIR}/bin/thrift*") if(COMPILER) diff --git a/ports/tinyexif/CONTROL b/ports/tinyexif/CONTROL index 861520321b56f2..24350d8be912b3 100644 --- a/ports/tinyexif/CONTROL +++ b/ports/tinyexif/CONTROL @@ -1,5 +1,5 @@ Source: tinyexif -Version: 1.0.2-4 +Version: 1.0.2-5 Build-Depends: tinyxml2 Homepage: https://github.com/cdcseacave/TinyEXIF Description: tiny ISO-compliant C++ EXIF and XMP parsing library for JPEG images diff --git a/ports/tinyexif/portfile.cmake b/ports/tinyexif/portfile.cmake index 5a10d422fd5ad5..b6e489384400fc 100644 --- a/ports/tinyexif/portfile.cmake +++ b/ports/tinyexif/portfile.cmake @@ -20,7 +20,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/tinyexif") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/tinyexif) vcpkg_copy_pdbs() diff --git a/ports/tinyobjloader/CONTROL b/ports/tinyobjloader/CONTROL index f80f52f9629443..4dc5eebb27ffa0 100644 --- a/ports/tinyobjloader/CONTROL +++ b/ports/tinyobjloader/CONTROL @@ -1,3 +1,3 @@ Source: tinyobjloader -Version: 1.0.7 +Version: 1.0.7-1 Description: Tiny but powerful single file wavefront obj loader diff --git a/ports/tinyobjloader/portfile.cmake b/ports/tinyobjloader/portfile.cmake index b33a2dd749b34d..7b8741d346aec2 100644 --- a/ports/tinyobjloader/portfile.cmake +++ b/ports/tinyobjloader/portfile.cmake @@ -19,7 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/tinyobjloader/cmake") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/tinyobjloader/cmake) file( REMOVE_RECURSE diff --git a/ports/tinyxml2/CONTROL b/ports/tinyxml2/CONTROL index f3b7655e98de0e..5a33ae078a7731 100644 --- a/ports/tinyxml2/CONTROL +++ b/ports/tinyxml2/CONTROL @@ -1,4 +1,5 @@ Source: tinyxml2 -Version: 7.0.1 +Version: 7.0.1-1 Homepage: https://github.com/leethomason/tinyxml2 Description: A simple, small, efficient, C++ XML parser + diff --git a/ports/tinyxml2/portfile.cmake b/ports/tinyxml2/portfile.cmake index d1e7d4ce64d25f..7d4ceaff1edf4d 100644 --- a/ports/tinyxml2/portfile.cmake +++ b/ports/tinyxml2/portfile.cmake @@ -14,7 +14,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/tinyxml2") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/tinyxml2) vcpkg_copy_pdbs() diff --git a/ports/tmx/CONTROL b/ports/tmx/CONTROL index 9079cb85ef3803..6f55421cca9ad6 100644 --- a/ports/tmx/CONTROL +++ b/ports/tmx/CONTROL @@ -1,4 +1,4 @@ Source: tmx -Version: 1.0.0 +Version: 1.0.0-1 Description: A portable C library to load tiled maps in your games. Build-Depends: zlib, libxml2 diff --git a/ports/tmx/portfile.cmake b/ports/tmx/portfile.cmake index b3f70f4d195b6c..4faec9b9d16421 100644 --- a/ports/tmx/portfile.cmake +++ b/ports/tmx/portfile.cmake @@ -17,7 +17,7 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/tmx/tmxExports.cmake ${CURRENT_PACKAGES_DIR}/lib/cmake/tmx/tmxTargets.cmake) -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/tmx") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/tmx) file(RENAME ${CURRENT_PACKAGES_DIR}/share/tmx/tmxTargets.cmake ${CURRENT_PACKAGES_DIR}/share/tmx/tmxExports.cmake) file(REMOVE_RECURSE diff --git a/ports/treehopper/CONTROL b/ports/treehopper/CONTROL index 673e0cb7ca858a..f50e84f1b74462 100644 --- a/ports/treehopper/CONTROL +++ b/ports/treehopper/CONTROL @@ -1,4 +1,5 @@ Source: treehopper -Version: 1.11.3-2 +Version: 1.11.3-3 Description: Treehopper connects the physical world to your computer, tablet, or smartphone. Homepage: https://treehopper.io +Build-Depends: libusb diff --git a/ports/treehopper/portfile.cmake b/ports/treehopper/portfile.cmake index 68cf07bb92e300..46ed0d85e386d1 100644 --- a/ports/treehopper/portfile.cmake +++ b/ports/treehopper/portfile.cmake @@ -16,8 +16,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/treehopper) +vcpkg_fixup_cmake_targets() file(INSTALL ${SOURCE_PATH}/C++/API/inc/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/Treehopper/) diff --git a/ports/trompeloeil/CONTROL b/ports/trompeloeil/CONTROL index b00d5f8aa60bd1..135a473f33bbf7 100644 --- a/ports/trompeloeil/CONTROL +++ b/ports/trompeloeil/CONTROL @@ -1,4 +1,4 @@ Source: trompeloeil -Version: 34 +Version: 34-1 Description: A thread-safe header-only mocking framework for C++11/14 using the Boost Software License 1.0 Homepage: https://github.com/rollbear/trompeloeil diff --git a/ports/trompeloeil/portfile.cmake b/ports/trompeloeil/portfile.cmake index db8367d225cd9f..03385928f37da3 100644 --- a/ports/trompeloeil/portfile.cmake +++ b/ports/trompeloeil/portfile.cmake @@ -18,7 +18,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/trompeloeil TARGET_PATH share/trompeloeil) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/trompeloeil) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) diff --git a/ports/urdfdom-headers/CONTROL b/ports/urdfdom-headers/CONTROL index 3d005dd601b6bc..d2399647f5ad77 100644 --- a/ports/urdfdom-headers/CONTROL +++ b/ports/urdfdom-headers/CONTROL @@ -1,4 +1,4 @@ Source: urdfdom-headers -Version: 1.0.4 +Version: 1.0.4-1 Homepage: https://github.com/ros/urdfdom_headers Description: The URDF (U-Robot Description Format) headers provides core data structure headers for URDF. diff --git a/ports/urdfdom-headers/portfile.cmake b/ports/urdfdom-headers/portfile.cmake index 8670716f3d4afe..5f7430f767df81 100644 --- a/ports/urdfdom-headers/portfile.cmake +++ b/ports/urdfdom-headers/portfile.cmake @@ -16,9 +16,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) - vcpkg_fixup_cmake_targets(CONFIG_PATH "CMake" TARGET_PATH share/urdfdom_headers) + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake TARGET_PATH share/urdfdom_headers) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/urdfdom_headers/cmake" TARGET_PATH share/urdfdom_headers) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/urdfdom_headers/cmake TARGET_PATH share/urdfdom_headers) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/urdfdom_headers) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/urdfdom_headers) endif() diff --git a/ports/urdfdom/CONTROL b/ports/urdfdom/CONTROL index 0d81ec662fb094..7420aaca63bd75 100644 --- a/ports/urdfdom/CONTROL +++ b/ports/urdfdom/CONTROL @@ -1,5 +1,5 @@ Source: urdfdom -Version: 1.0.3 +Version: 1.0.3-1 Homepage: https://github.com/ros/urdfdom Description: Provides core data structures and a simple XML parsers for populating the class data structures from an URDF file. Build-Depends: console-bridge, tinyxml, urdfdom-headers diff --git a/ports/urdfdom/portfile.cmake b/ports/urdfdom/portfile.cmake index f10c6cc47e311a..cf5b3220b272d7 100644 --- a/ports/urdfdom/portfile.cmake +++ b/ports/urdfdom/portfile.cmake @@ -26,9 +26,9 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) - vcpkg_fixup_cmake_targets(CONFIG_PATH "CMake" TARGET_PATH share/urdfdom) + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) else() - vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/urdfdom/cmake" TARGET_PATH share/urdfdom) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/urdfdom/cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/urdfdom) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/urdfdom) endif() diff --git a/ports/usd/CONTROL b/ports/usd/CONTROL index 58a564ad7f2954..e04784de4d9eeb 100644 --- a/ports/usd/CONTROL +++ b/ports/usd/CONTROL @@ -1,4 +1,4 @@ Source: usd -Version: 0.8.4 +Version: 0.8.4-1 Build-Depends: boost-assign, boost-crc, boost-date-time, boost-filesystem, boost-format, boost-multi-index, boost-program-options, boost-regex, boost-system, boost-vmd, tbb, zlib Description: Universal Scene Description (USD) is an efficient, scalable system for authoring, reading, and streaming time-sampled scene description for interchange between graphics applications. diff --git a/ports/usd/portfile.cmake b/ports/usd/portfile.cmake index a648e334a856f0..cada7b4e1f7f0f 100644 --- a/ports/usd/portfile.cmake +++ b/ports/usd/portfile.cmake @@ -35,7 +35,7 @@ file( "${CURRENT_PACKAGES_DIR}/pxrConfig.cmake" "${CURRENT_PACKAGES_DIR}/cmake/pxrConfig.cmake") -vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake") +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) vcpkg_copy_pdbs() diff --git a/ports/uvw/CONTROL b/ports/uvw/CONTROL index 0db70d0868423b..a3507632b31490 100644 --- a/ports/uvw/CONTROL +++ b/ports/uvw/CONTROL @@ -1,5 +1,5 @@ Source: uvw -Version: 1.17.0_libuv-v1.29 +Version: 1.17.0_libuv-v1.29-1 Description: Header-only, event based, tiny and easy to use libuv wrapper in modern C++. Homepage: https://github.com/skypjack/uvw Build-Depends: libuv diff --git a/ports/uvw/portfile.cmake b/ports/uvw/portfile.cmake index 27fcea15aeae83..ba640b597a08ac 100644 --- a/ports/uvw/portfile.cmake +++ b/ports/uvw/portfile.cmake @@ -13,13 +13,11 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA ) + vcpkg_install_cmake() +vcpkg_fixup_cmake_targets() +file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/uvw-config.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/uvw/) -vcpkg_fixup_cmake_targets(CONFIG_PATH "share/uvw") -file(INSTALL - ${CMAKE_CURRENT_LIST_DIR}/uvw-config.cmake - DESTINATION ${CURRENT_PACKAGES_DIR}/share/uvw/ -) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) # Handle copyright/readme/package files diff --git a/ports/visit-struct/CONTROL b/ports/visit-struct/CONTROL index 98ad6e2e994f25..bf895349dc3901 100644 --- a/ports/visit-struct/CONTROL +++ b/ports/visit-struct/CONTROL @@ -1,3 +1,3 @@ Source: visit-struct -Version: 1.0 +Version: 1.0-1 Description: A header-only library providing structure visitors for C++11 and C++14 diff --git a/ports/visit-struct/portfile.cmake b/ports/visit-struct/portfile.cmake index e3daf0c47487d8..8a87471c5d2b5a 100644 --- a/ports/visit-struct/portfile.cmake +++ b/ports/visit-struct/portfile.cmake @@ -16,11 +16,8 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/visit_struct TARGET_PATH share/visit_struct) -vcpkg_fixup_cmake_targets( - CONFIG_PATH share/visit_struct - TARGET_PATH TARGET_PATH share/visit_struct -) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) file(INSTALL ${SOURCE_PATH}/LICENSE diff --git a/ports/wangle/CONTROL b/ports/wangle/CONTROL index 6484356ba5f519..2597d8afde4d9e 100644 --- a/ports/wangle/CONTROL +++ b/ports/wangle/CONTROL @@ -1,4 +1,4 @@ Source: wangle -Version: 2019.05.20.00 +Version: 2019.05.20.00-1 Build-Depends: fizz, folly, openssl, glog, libevent, double-conversion, boost-system, boost-thread, boost-filesystem, boost-regex, boost-context Description: Wangle is a framework providing a set of common client/server abstractions for building services in a consistent, modular, and composable way. diff --git a/ports/wangle/portfile.cmake b/ports/wangle/portfile.cmake index 44dc8f9f35a459..2ae73025a2fafc 100644 --- a/ports/wangle/portfile.cmake +++ b/ports/wangle/portfile.cmake @@ -5,7 +5,7 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/wangle - REF 19300a75c27759339c44cf06ecedf7ab00703e8b + REF 19300a75c27759339c44cf06ecedf7ab00703e8b SHA512 cc9a5a956862e9d4321df7c0394fbb877c5f0b0f8eae1da6aad88239a2cc0b4cd694bd25e0f70f3da8a24c34f4f035bcfb53919fd99634219e0816c78477cee2 HEAD_REF master PATCHES @@ -24,7 +24,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/wangle") +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/wangle) file(READ ${CURRENT_PACKAGES_DIR}/share/wangle/wangle-targets.cmake _contents) STRING(REPLACE "\${_IMPORT_PREFIX}/lib/" "\${_IMPORT_PREFIX}/\$<\$:debug/>lib/" _contents "${_contents}") @@ -33,7 +33,7 @@ file(WRITE ${CURRENT_PACKAGES_DIR}/share/wangle/wangle-targets.cmake "${_content vcpkg_copy_pdbs() -file(REMOVE_RECURSE +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/include/wangle/util/test ${CURRENT_PACKAGES_DIR}/include/wangle/ssl/test/certs diff --git a/ports/wt/portfile.cmake b/ports/wt/portfile.cmake index 8fb8af205ab223..bc39a7a642baa3 100644 --- a/ports/wt/portfile.cmake +++ b/ports/wt/portfile.cmake @@ -41,9 +41,9 @@ vcpkg_configure_cmake( -DCMAKE_INSTALL_DIR=share ) -vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/wt) +vcpkg_install_cmake() +vcpkg_fixup_cmake_targets() # There is no way to suppress installation of the headers and resource files in debug build. file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/xalan-c/portfile.cmake b/ports/xalan-c/portfile.cmake index afd1b38bce3fc7..52e8b34fa7751c 100644 --- a/ports/xalan-c/portfile.cmake +++ b/ports/xalan-c/portfile.cmake @@ -2,7 +2,7 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) - message(WARNING "Xalan-c's buildsystem uses very long paths and may fail on your system.\n" + message(WARNING "${PORT}'s buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() diff --git a/ports/z3/CONTROL b/ports/z3/CONTROL index 861c3eab4282a5..5a806da95bc735 100644 --- a/ports/z3/CONTROL +++ b/ports/z3/CONTROL @@ -1,3 +1,3 @@ Source: z3 -Version: 4.8.5 +Version: 4.8.5-1 Description: An SMT solver diff --git a/ports/z3/portfile.cmake b/ports/z3/portfile.cmake index 72da20dd965248..e3adeabb0049af 100644 --- a/ports/z3/portfile.cmake +++ b/ports/z3/portfile.cmake @@ -34,7 +34,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/z3 TARGET_PATH share/z3) +vcpkg_fixup_cmake_targets() vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/zopfli/CONTROL b/ports/zopfli/CONTROL index 8b7a02399bcc9e..9db22d1057fb2c 100644 --- a/ports/zopfli/CONTROL +++ b/ports/zopfli/CONTROL @@ -1,3 +1,3 @@ Source: zopfli -Version: 2019-01-19 +Version: 2019-01-19-1 Description: Zopfli Compression Algorithm compression library programmed in C diff --git a/ports/zopfli/portfile.cmake b/ports/zopfli/portfile.cmake index d1990202732c61..bb5b9c21100bdf 100644 --- a/ports/zopfli/portfile.cmake +++ b/ports/zopfli/portfile.cmake @@ -19,7 +19,7 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() -if (WIN32) +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(EXECUTABLE_SUFFIX ".exe") else() set(EXECUTABLE_SUFFIX "") diff --git a/ports/zserge-webview/CONTROL b/ports/zserge-webview/CONTROL index 558f47bd75bb84..a595bee399013a 100644 --- a/ports/zserge-webview/CONTROL +++ b/ports/zserge-webview/CONTROL @@ -1,3 +1,3 @@ Source: zserge-webview -Version: 2019-04-27-1 +Version: 2019-04-27-2 Description: Tiny cross-platform webview library for C/C++/Golang. diff --git a/ports/zserge-webview/portfile.cmake b/ports/zserge-webview/portfile.cmake index d6707ee8b5211c..7f0603d88046bb 100644 --- a/ports/zserge-webview/portfile.cmake +++ b/ports/zserge-webview/portfile.cmake @@ -16,14 +16,12 @@ set(WEBVIEW_GTK "0") set(WEBVIEW_WINAPI "0") set(WEBVIEW_COCOA "0") -if(WIN32) +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(WEBVIEW_WINAPI "1") -elseif(UNIX) - if(APPLE) +elseif (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") set(WEBVIEW_COCOA "1") - else() +elseif (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") set(WEBVIEW_GTK "1") - endif() endif() file(READ ${CURRENT_PACKAGES_DIR}/include/webview.h _contents) diff --git a/ports/zxing-cpp/CONTROL b/ports/zxing-cpp/CONTROL index c51ccb60d2096f..c97ad17342df7c 100644 --- a/ports/zxing-cpp/CONTROL +++ b/ports/zxing-cpp/CONTROL @@ -1,4 +1,4 @@ Source: zxing-cpp -Version: 3.3.3-4 -Build-Depends: opencv[core] +Version: 3.3.3-5 +Build-Depends: opencv Description: Barcode detection and decoding library. diff --git a/ports/zxing-cpp/portfile.cmake b/ports/zxing-cpp/portfile.cmake index 1d063de7cc6505..044342ed660ff5 100644 --- a/ports/zxing-cpp/portfile.cmake +++ b/ports/zxing-cpp/portfile.cmake @@ -20,15 +20,15 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/zxing/cmake" TARGET_PATH share/zxing) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/zxing/cmake TARGET_PATH share/zxing) -file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/zxing-cpp) +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/${PORT}) if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - file(COPY ${CURRENT_PACKAGES_DIR}/bin/zxing.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/zxing-cpp) + file(COPY ${CURRENT_PACKAGES_DIR}/bin/zxing.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}) else() - file(COPY ${CURRENT_PACKAGES_DIR}/bin/zxing DESTINATION ${CURRENT_PACKAGES_DIR}/tools/zxing-cpp) + file(COPY ${CURRENT_PACKAGES_DIR}/bin/zxing DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}) endif() -vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/zxing-cpp) +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}) vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) From edf3d75eb7050a8acaf41889d51bb976fa627410 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Thu, 20 Jun 2019 22:08:51 -0700 Subject: [PATCH 074/123] [netcdf-c] Fix link error. (#6971) * [netcdf-c] Fix linkage error. * remove unused code --- ports/netcdf-c/CONTROL | 2 +- ports/netcdf-c/hdf5_3.patch | 12 ++++++++++++ ports/netcdf-c/portfile.cmake | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 ports/netcdf-c/hdf5_3.patch diff --git a/ports/netcdf-c/CONTROL b/ports/netcdf-c/CONTROL index c82acf055e7a40..684c54ba62cc5d 100644 --- a/ports/netcdf-c/CONTROL +++ b/ports/netcdf-c/CONTROL @@ -1,5 +1,5 @@ Source: netcdf-c -Version: 4.7.0-2 +Version: 4.7.0-3 Build-Depends: hdf5, curl Homepage: https://github.com/Unidata/netcdf-c Description: a set of self-describing, machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. diff --git a/ports/netcdf-c/hdf5_3.patch b/ports/netcdf-c/hdf5_3.patch new file mode 100644 index 00000000000000..ba9a168c8a2146 --- /dev/null +++ b/ports/netcdf-c/hdf5_3.patch @@ -0,0 +1,12 @@ +diff --git a/libhdf5/CMakeLists.txt b/libhdf5/CMakeLists.txt +index f3c7bbc..34fc2ab 100644 +--- a/libhdf5/CMakeLists.txt ++++ b/libhdf5/CMakeLists.txt +@@ -20,3 +20,7 @@ add_library(netcdfhdf5 OBJECT ${libnchdf5_SOURCES}) + + # Remember to package this file for CMake builds. + ADD_EXTRA_DIST(${libnchdf5_SOURCES} CMakeLists.txt) ++ ++if(BUILD_SHARED_LIBS) ++target_link_libraries(netcdfhdf5 PRIVATE hdf5::hdf5-shared hdf5::hdf5-static hdf5::hdf5_hl-shared hdf5::hdf5_hl-static) ++endif() diff --git a/ports/netcdf-c/portfile.cmake b/ports/netcdf-c/portfile.cmake index a2f81cdb0e6b79..21b2145240964c 100644 --- a/ports/netcdf-c/portfile.cmake +++ b/ports/netcdf-c/portfile.cmake @@ -13,6 +13,7 @@ vcpkg_from_github( hdf5.patch hdf5_2.patch fix-build-error-on-linux.patch + hdf5_3.patch ) #Remove outdated find modules From 31184ac70d6b96e52eff60ee8eace9af2f24e2a2 Mon Sep 17 00:00:00 2001 From: Farwaykorse Date: Sat, 22 Jun 2019 06:26:10 +0200 Subject: [PATCH 075/123] Bump version to 2019.06.21 (#6987) --- toolsrc/VERSION.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/VERSION.txt b/toolsrc/VERSION.txt index ce62ec9593a2b4..c2116e0e875d75 100644 --- a/toolsrc/VERSION.txt +++ b/toolsrc/VERSION.txt @@ -1 +1 @@ -"2018.11.23" \ No newline at end of file +"2019.06.21" \ No newline at end of file From 9cfcc711469778370af64830086cc62afd523dfc Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 21 Jun 2019 21:33:29 -0700 Subject: [PATCH 076/123] [docs] Add maintainer guidelines (#6871) * [maintainer-guide] Initial commit of maintainer guidelines * [maintainer-guide] Rearrange sections * [maintainer-guide] Add note about GitHub Draft PRs * [maintainer-guide] Improvements * [maintainer-guide] Address comments about versioning conventions * [maintainer-guide] Add section about how portfiles interact with CMakeLists.txt * [maintainer-guidelines] Add link from docs index --- docs/index.md | 1 + docs/maintainers/control-files.md | 17 ++- docs/maintainers/maintainer-guide.md | 178 +++++++++++++++++++++++++++ 3 files changed, 193 insertions(+), 3 deletions(-) create mode 100644 docs/maintainers/maintainer-guide.md diff --git a/docs/index.md b/docs/index.md index cde241e92d1076..5d83b5804d4f5e 100644 --- a/docs/index.md +++ b/docs/index.md @@ -19,6 +19,7 @@ Vcpkg helps you manage C and C++ libraries on Windows, Linux and MacOS. This too - [Control files](maintainers/control-files.md) - [Portfile functions](maintainers/portfile-functions.md) +- [Maintainer Guidelines](maintainers/maintainer-guide.md) ### Specifications diff --git a/docs/maintainers/control-files.md b/docs/maintainers/control-files.md index ac4afa265a7354..03bfa113a7a0f3 100644 --- a/docs/maintainers/control-files.md +++ b/docs/maintainers/control-files.md @@ -43,16 +43,27 @@ The port version. This field is an alphanumeric string that may also contain `.`, `_`, or `-`. No attempt at ordering versions is made; all versions are treated as bit strings and are only evaluated for equality. -By convention, if a portfile is modified without incrementing the "upstream" version, a `-#` is appended to create a unique version string. +For tagged-release ports, we follow the following convention: -Some projects do not have named releases. In these cases use the date of the version do not have labeled releases, in these cases use the date of the last commit in `YYYY-MM-DD` format. See the `abseil` port as an example. +1. If the port follows a scheme like `va.b.c`, we remove the leading `v`. In this case, it becomes `a.b.c`. +2. If the port includes its own name in the version like `curl-7_65_1`, we remove the leading name: `7_65_1` +3. If the port has been modified, we append a `-N` to distinguish the versions: `1.2.1-4` + +For rolling-release ports, we use the date that the _commit was accessed by you_, formatted as `YYYY-MM-DD`. Stated another way: if someone had a time machine and went to that date, they would see this commit as the latest master. + +For example, given: +1. The latest commit was made on 2019-04-19 +2. The current version string is `2019-02-14-1` +3. Today's date is 2019-06-01. + +Then if you update the source version today, you should give it version `2019-06-01`. If you need to make a change which doesn't adjust the source version, you should give it version `2019-02-14-2`. Example: ```no-highlight Version: 1.0.5-2 ``` ```no-highlight -Version: 2019-3-21 +Version: 2019-03-21 ``` #### Description diff --git a/docs/maintainers/maintainer-guide.md b/docs/maintainers/maintainer-guide.md new file mode 100644 index 00000000000000..0baa45a02550cd --- /dev/null +++ b/docs/maintainers/maintainer-guide.md @@ -0,0 +1,178 @@ +# Maintainer Guidelines and Policies + +This document lists a set of policies that you should apply when adding or updating a port recipe. It is intended to serve the role of [Debian's Policy Manual](https://www.debian.org/doc/debian-policy/), [Homebrew's Maintainer Guidelines](https://docs.brew.sh/Maintainer-Guidelines), and [Homebrew's Formula Cookbook](https://docs.brew.sh/Formula-Cookbook). + +## PR Structure + +### Make separate Pull Requests per port + +Whenever possible, separate changes into multiple PR's. This makes them significantly easier to review and prevents issues with one set of changes from holding up every other change. + +### Avoid trivial changes in untouched files + +For example, avoid reformatting or renaming variables in portfiles that otherwise have no reason to be modified for the issue at hand. However, if you need to modify the file for the primary purpose of the PR (updating the library), then obviously beneficial changes like fixing typos are appreciated! + +### Check names against other repositories + +A good service to check many at once is [Repology](https://repology.org/). If the library you are adding could be confused with another one, consider renaming to make it clear. + +### Use GitHub Draft PRs + +GitHub Draft PRs are a great way to get CI or human feedback on work that isn't yet ready to merge. Most new PRs should be opened as drafts and converted to normal PRs once the CI passes. + +More information about GitHub Draft PRs: https://github.blog/2019-02-14-introducing-draft-pull-requests/ + +## Portfiles + +### Avoid deprecated helper functions + +At this time, the following helpers are deprecated: + +1. `vcpkg_extract_archive()` should be replaced by `vcpkg_extract_archive_ex()` +2. `vcpkg_apply_patches()` should be replaced by the `PATCHES` arguments to the "extract" helpers (e.g. `vcpkg_from_github()`) +3. `vcpkg_build_msbuild()` should be replaced by `vcpkg_install_msbuild()` + +### Avoid excessive comments in portfiles + +Ideally, portfiles should be short, simple, and as declarative as possible. Remove any helper comments introduced by the `create` command before submitting a PR. + +## Build Techniques + +### Do not use vendored dependencies + +Do not use embedded copies of libraries. All dependencies should be split out and packaged separately so they can be updated and maintained. + +### Prefer using CMake + +When multiple buildsystems are available, prefer using CMake. Additionally, when appropriate, it can be easier and more maintainable to rewrite alternative buildsystems into CMake using `file(GLOB)` directives. + +Examples: [abseil](../../ports/abseil/portfile.cmake) + +### Choose either static or shared binaries + +By default, `vcpkg_configure_cmake()` will pass in the appropriate setting for `BUILD_SHARED_LIBS`, however for libraries that don't respect that variable, you can switch on `VCPKG_LIBRARY_LINKAGE`: + +```cmake +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" KEYSTONE_BUILD_STATIC) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" KEYSTONE_BUILD_SHARED) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DKEYSTONE_BUILD_STATIC=${KEYSTONE_BUILD_STATIC} + -DKEYSTONE_BUILD_SHARED=${KEYSTONE_BUILD_SHARED} +) +``` + +### When defining features, explicitly control dependencies + +When defining a feature that captures an optional dependency, ensure that the dependency will not be used accidentally when the feature is not explicitly enabled. For example: + +```cmake +set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB ON) +if("zlib" IN_LIST FEATURES) + set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB OFF) +endif() + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DCMAKE_DISABLE_FIND_PACKAGE_ZLIB=${CMAKE_DISABLE_FIND_PACKAGE_ZLIB} +) +``` + +Note that `ZLIB` in the above is case-sensitive. See the [cmake documentation](https://cmake.org/cmake/help/v3.15/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html) for more details. + +## Versioning + +### Follow common conventions for the `Version:` field + +See our [CONTROL files document](control-files.md#version) for a full explanation of our conventions. + +### Update the `Version:` field in the `CONTROL` file of any modified ports + +Vcpkg uses this field to determine whether a given port is out-of-date and should be changed whenever the port's behavior changes. + +Our convention for this field is to append a `-N` to the upstream version when changes need to be made. + +For Example: + +- Zlib's package version is currently `1.2.1`. +- You've discovered that the wrong copyright file has been deployed, and fixed that in the portfile. +- You should update the `Version:` field in the control file to `1.2.1-1`. + +See our [CONTROL files document](control-files.md#version) for a full explanation of our conventions. + +## Patching + +### Prefer options over patching + +It is preferable to set options in a call to `vcpkg_configure_xyz()` over patching the settings directly. + +Common options that allow avoiding patching: +1. [MSBUILD] `` settings inside the project file can be overridden via `/p:` parameters +2. [CMAKE] Calls to `find_package(XYz)` in CMake scripts can be disabled via [`-DCMAKE_DISABLE_FIND_PACKAGE_XYz=ON`](https://cmake.org/cmake/help/v3.15/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html) +3. [CMAKE] Cache variables (declared as `set(VAR "value" CACHE STRING "Documentation")` or `option(VAR "Documentation" "Default Value")`) can be overriden by just passing them in on the command line as `-DVAR:STRING=Foo`. One notable exception is if the `FORCE` parameter is passed to `set()`. See also the [CMake `set` documentation](https://cmake.org/cmake/help/v3.15/command/set.html) + +### Minimize patches + +When making changes to a library, strive to minimize the final diff. This means you should _not_ reformat the upstream source code when making changes that affect a region. Also, when disabling a conditional, it is better to add a `AND FALSE` or `&& 0` to the condition than to delete every line of the conditional. + +This helps to keep the size of the vcpkg repository down as well as improves the likelihood that the patch will apply to future code versions. + +### Do not implement features in patches + +The purpose of patching in vcpkg is to enable compatibility with compilers, libraries, and platforms. It is not to implement new features in lieu of following proper Open Source procedure (submitting an Issue/PR/etc). + +## Do not build tests/docs/examples by default + +When submitting a new port, check for any options like `BUILD_TESTS` or `WITH_TESTS` or `POCO_ENABLE_SAMPLES` and ensure the additional binaries are disabled. This minimizes build times and dependencies for the average user. + +Optionally, you can add a `test` feature which enables building the tests, however this should not be in the `Default-Features` list. + +## Enable existing users of the library to switch to vcpkg + +### Do not add `CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS` + +Unless the author of the library is already using it, we should not use this CMake functionality because it interacts poorly with C++ templates and breaks certain compiler features. Libraries that don't provide a .def file and do not use __declspec() declarations simply do not support shared builds for Windows and should be marked as such with `vcpkg_check_linkage(ONLY_STATIC_LIBRARY)`. + +### Do not rename binaries outside the names given by upstream + +This means that if the upstream library has different names in release and debug (libx versus libxd), then the debug library should not be renamed to `libx`. Vice versa, if the upstream library has the same name in release and debug, we should not introduce a new name. + +Important caveat: +- Static and shared variants often should be renamed to a common scheme. This enables consumers to use a common name and be ignorant of the downstream linkage. This is safe because we only make one at a time available. + +Note that if a library generates CMake integration files (`foo-config.cmake`), renaming must be done through patching the CMake build itself instead of simply calling `file(RENAME)` on the output archives/LIBs. + +Finally, DLL files on Windows should never be renamed post-build because it breaks the generated LIBs. + +## Useful implementation notes + +### Portfiles are run in Script Mode + +While `portfile.cmake`'s and `CMakeLists.txt`'s share a common syntax and core CMake language constructs, portfiles run in "Script Mode", whereas `CMakeLists.txt` files run in "Build Mode" (unofficial term). The most important difference between these two modes is that "Script Mode" does not have a concept of "Target" -- any behaviors that depend on the "target" machine (`CMAKE_CXX_COMPILER`, `CMAKE_EXECUTABLE_SUFFIX`, `CMAKE_SYSTEM_NAME`, etc) will not be correct. + +Portfiles have direct access to variables set in the triplet file, but `CMakeLists.txt`s do not (though there is often a translation that happens -- `VCPKG_LIBRARY_LINKAGE` versus `BUILD_SHARED_LIBS`). + +Finally, portfiles and CMake builds invoked by portfiles are run in different processes. Conceptually: + +```no-highlight ++----------------------------+ +------------------------------------+ +| CMake.exe | | CMake.exe | ++----------------------------+ +------------------------------------+ +| Triplet file | ====> | Toolchain file | +| (x64-windows.cmake) | | (scripts/buildsystems/vcpkg.cmake) | ++----------------------------+ +------------------------------------+ +| Portfile | ====> | CMakeLists.txt | +| (ports/foo/portfile.cmake) | | (buildtrees/../CMakeLists.txt) | ++----------------------------+ +------------------------------------+ +``` + +To determine the host in a portfile, the standard CMake variables are fine (`CMAKE_HOST_WIN32`). + +To determine the target in a portfile, the vcpkg triplet variables should be used (`VCPKG_CMAKE_SYSTEM_NAME`). + +See also our [triplet documentation](../users/triplets.md) for a full enumeration of possible settings. From d1b4e88d3c1bd714069f10009c6f9cef172cc822 Mon Sep 17 00:00:00 2001 From: Sean Yen Date: Fri, 21 Jun 2019 22:45:40 -0700 Subject: [PATCH 077/123] [libftdi-compat] Add new port (#6843) * [libftdi-compat] v0.20 port * Fixed wrong version number in CONTROL file. * Download source archive file instead. * restrict to shared library build only. * Remove dlls from static build. * [libftdi-compat] Update to 1.4. Replace CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS with a def file. Minimize patching. * [libftdi] Rename from libftdi-compat * [libftdi][libftdi1] Restore v0.20 as libftdi, move 1.4 to libftdi1 --- ports/libftdi/CONTROL | 4 ++ ports/libftdi/export-cmake.patch | 24 +++++++++++ ports/libftdi/exports.def | 56 ++++++++++++++++++++++++++ ports/libftdi/libusb-win32.patch | 43 ++++++++++++++++++++ ports/libftdi/portfile.cmake | 45 +++++++++++++++++++++ ports/libftdi/shared-static.patch | 52 ++++++++++++++++++++++++ ports/libftdi1/CONTROL | 4 ++ ports/libftdi1/cmake-fix.patch | 13 ++++++ ports/libftdi1/exports.def | 67 +++++++++++++++++++++++++++++++ ports/libftdi1/portfile.cmake | 47 ++++++++++++++++++++++ ports/libftdi1/win32.patch | 28 +++++++++++++ 11 files changed, 383 insertions(+) create mode 100644 ports/libftdi/CONTROL create mode 100644 ports/libftdi/export-cmake.patch create mode 100644 ports/libftdi/exports.def create mode 100644 ports/libftdi/libusb-win32.patch create mode 100644 ports/libftdi/portfile.cmake create mode 100644 ports/libftdi/shared-static.patch create mode 100644 ports/libftdi1/CONTROL create mode 100644 ports/libftdi1/cmake-fix.patch create mode 100644 ports/libftdi1/exports.def create mode 100644 ports/libftdi1/portfile.cmake create mode 100644 ports/libftdi1/win32.patch diff --git a/ports/libftdi/CONTROL b/ports/libftdi/CONTROL new file mode 100644 index 00000000000000..3c50a00e26547f --- /dev/null +++ b/ports/libftdi/CONTROL @@ -0,0 +1,4 @@ +Source: libftdi +Version: 0.20 +Build-Depends: libusb-win32 +Description: FTDI USB driver with bitbang mode (v0.20) diff --git a/ports/libftdi/export-cmake.patch b/ports/libftdi/export-cmake.patch new file mode 100644 index 00000000000000..29078c25d360b4 --- /dev/null +++ b/ports/libftdi/export-cmake.patch @@ -0,0 +1,24 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 1c326fe..3c1d9ab 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -47,14 +47,19 @@ if(WIN32 OR 1) + + if(BUILD_SHARED_LIBS) + install( TARGETS ftdi ++ EXPORT ftdi + COMPONENT sharedlibs + ) + ++ target_link_libraries(ftdi PUBLIC $) + else() + install( TARGETS ftdi-static ++ EXPORT ftdi + COMPONENT staticlibs + ) ++ target_link_libraries(ftdi-static PUBLIC $) + endif() ++ install(EXPORT ftdi FILE libftdi-config.cmake NAMESPACE libftdi:: DESTINATION share/libftdi) + + install( FILES ${c_headers} + DESTINATION include diff --git a/ports/libftdi/exports.def b/ports/libftdi/exports.def new file mode 100644 index 00000000000000..31ebd214ef51a3 --- /dev/null +++ b/ports/libftdi/exports.def @@ -0,0 +1,56 @@ +EXPORTS + ftdi_deinit + ftdi_disable_bitbang + ftdi_eeprom_build + ftdi_eeprom_decode + ftdi_eeprom_free + ftdi_eeprom_initdefaults + ftdi_eeprom_setsize + ftdi_enable_bitbang + ftdi_erase_eeprom + ftdi_free + ftdi_get_error_string + ftdi_get_latency_timer + ftdi_init + ftdi_list_free + ftdi_list_free2 + ftdi_new + ftdi_poll_modem_status + ftdi_read_chipid + ftdi_read_data + ftdi_read_data_get_chunksize + ftdi_read_data_set_chunksize + ftdi_read_eeprom + ftdi_read_eeprom_getsize + ftdi_read_eeprom_location + ftdi_read_pins + ftdi_set_baudrate + ftdi_set_bitmode + ftdi_set_error_char + ftdi_set_event_char + ftdi_set_interface + ftdi_set_latency_timer + ftdi_set_line_property + ftdi_set_line_property2 + ftdi_set_usbdev + ftdi_setdtr + ftdi_setdtr_rts + ftdi_setflowctrl + ftdi_setrts + ftdi_usb_close + ftdi_usb_find_all + ftdi_usb_get_strings + ftdi_usb_open + ftdi_usb_open_desc + ftdi_usb_open_desc_index + ftdi_usb_open_dev + ftdi_usb_open_string + ftdi_usb_purge_buffers + ftdi_usb_purge_rx_buffer + ftdi_usb_purge_tx_buffer + ftdi_usb_reset + ftdi_write_data + ftdi_write_data_get_chunksize + ftdi_write_data_set_chunksize + ftdi_write_eeprom + ftdi_write_eeprom_location diff --git a/ports/libftdi/libusb-win32.patch b/ports/libftdi/libusb-win32.patch new file mode 100644 index 00000000000000..55bc1c3f17b8ca --- /dev/null +++ b/ports/libftdi/libusb-win32.patch @@ -0,0 +1,43 @@ +diff --git a/FindUSB.cmake b/FindUSB.cmake +index 566cdd8..0710345 100644 +--- a/FindUSB.cmake ++++ b/FindUSB.cmake +@@ -24,10 +24,10 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + pkg_check_modules(PC_LIBUSB libusb) + ENDIF(NOT WIN32) + +- FIND_PATH(LIBUSB_INCLUDE_DIR usb.h ++ FIND_PATH(LIBUSB_INCLUDE_DIR lusb0_usb.h + PATHS ${PC_LIBUSB_INCLUDEDIR} ${PC_LIBUSB_INCLUDE_DIRS}) + +- FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb ++ FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb0 libusb0 + PATHS ${PC_LIBUSB_LIBDIR} ${PC_LIBUSB_LIBRARY_DIRS}) + + include(FindPackageHandleStandardArgs) +diff --git a/src/ftdi.c b/src/ftdi.c +index 980622d..8f6ab67 100644 +--- a/src/ftdi.c ++++ b/src/ftdi.c +@@ -28,7 +28,7 @@ + /** \addtogroup libftdi */ + /* @{ */ + +-#include ++#include + #include + #include + #include +diff --git a/src/ftdi.h b/src/ftdi.h +index 6bb7a3e..d4472c2 100644 +--- a/src/ftdi.h ++++ b/src/ftdi.h +@@ -17,7 +17,7 @@ + #ifndef __libftdi_h__ + #define __libftdi_h__ + +-#include ++#include + + #define FTDI_DEFAULT_EEPROM_SIZE 128 + diff --git a/ports/libftdi/portfile.cmake b/ports/libftdi/portfile.cmake new file mode 100644 index 00000000000000..29e5bc42dfcfca --- /dev/null +++ b/ports/libftdi/portfile.cmake @@ -0,0 +1,45 @@ +include(vcpkg_common_functions) + +vcpkg_download_distfile(ARCHIVE + URLS "https://www.intra2net.com/en/developer/libftdi/download/libftdi-0.20.tar.gz" + FILENAME "libftdi-0.20.tar.gz" + SHA512 540e5eb201a65936c3dbabff70c251deba1615874b11ff27c5ca16c39d71c150cf61758a68b541135a444fe32ab403b0fba0daf55c587647aaf9b3f400f1dee7 +) + +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + REF 0.20 + PATCHES + libusb-win32.patch + shared-static.patch + export-cmake.patch +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/exports.def DESTINATION ${SOURCE_PATH}/src) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DDOCUMENTATION=OFF + -DEXAMPLES=OFF + -DPYTHON_BINDINGS=OFF + -DFTDIPP=OFF + + -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Boost=ON + + -DLIBUSB_INCLUDE_DIR=${CURRENT_INSTALLED_DIR}/include +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libftdi) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/libftdi/LICENSE ${CURRENT_PACKAGES_DIR}/share/libftdi/copyright) + +vcpkg_copy_pdbs() diff --git a/ports/libftdi/shared-static.patch b/ports/libftdi/shared-static.patch new file mode 100644 index 00000000000000..dad7aa0c52e9c7 --- /dev/null +++ b/ports/libftdi/shared-static.patch @@ -0,0 +1,52 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 071ae90..b42bbcd 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -4,7 +4,7 @@ include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR} + ) + + # Targets +-set(c_sources ftdi.c) ++set(c_sources ftdi.c exports.def) + set(c_headers ftdi.h) + + add_library(ftdi SHARED ${c_sources}) +@@ -24,7 +24,7 @@ set_target_properties(ftdi-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) + target_link_libraries(ftdi ${LIBUSB_LIBRARIES}) + + # Install +-if(${UNIX}) ++if(UNIX AND 0) + + install( TARGETS ftdi + LIBRARY DESTINATION lib${LIB_SUFFIX} +@@ -41,23 +41,24 @@ if(${UNIX}) + COMPONENT headers + ) + +-endif(${UNIX}) ++endif() + +-if(${WIN32}) ++if(WIN32 OR 1) + ++ if(BUILD_SHARED_LIBS) + install( TARGETS ftdi +- DESTINATION bin + COMPONENT sharedlibs + ) + ++ else() + install( TARGETS ftdi-static +- DESTINATION bin + COMPONENT staticlibs + ) ++ endif() + + install( FILES ${c_headers} + DESTINATION include + COMPONENT headers + ) + +-endif(${WIN32}) ++endif() diff --git a/ports/libftdi1/CONTROL b/ports/libftdi1/CONTROL new file mode 100644 index 00000000000000..d282ad9eb8d28a --- /dev/null +++ b/ports/libftdi1/CONTROL @@ -0,0 +1,4 @@ +Source: libftdi1 +Version: 1.4 +Build-Depends: libusb +Description: FTDI USB driver with bitbang mode (v1.4) diff --git a/ports/libftdi1/cmake-fix.patch b/ports/libftdi1/cmake-fix.patch new file mode 100644 index 00000000000000..ea541f719a256b --- /dev/null +++ b/ports/libftdi1/cmake-fix.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/FindUSB1.cmake b/cmake/FindUSB1.cmake +index b90e297..6cc97a0 100644 +--- a/cmake/FindUSB1.cmake ++++ b/cmake/FindUSB1.cmake +@@ -26,7 +26,7 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + PATH_SUFFIXES libusb-1.0 + PATHS ${PC_LIBUSB_INCLUDEDIR} ${PC_LIBUSB_INCLUDE_DIRS}) + +- FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb-1.0 ++ FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb-1.0 libusb-1.0 + PATHS ${PC_LIBUSB_LIBDIR} ${PC_LIBUSB_LIBRARY_DIRS}) + + include(FindPackageHandleStandardArgs) diff --git a/ports/libftdi1/exports.def b/ports/libftdi1/exports.def new file mode 100644 index 00000000000000..f5179c59dc204f --- /dev/null +++ b/ports/libftdi1/exports.def @@ -0,0 +1,67 @@ +EXPORTS + convert_baudrate_UT_export + ftdi_deinit + ftdi_disable_bitbang + ftdi_eeprom_build + ftdi_eeprom_decode + ftdi_eeprom_get_strings + ftdi_eeprom_initdefaults + ftdi_eeprom_set_strings + ftdi_erase_eeprom + ftdi_free + ftdi_get_eeprom_buf + ftdi_get_eeprom_value + ftdi_get_error_string + ftdi_get_latency_timer + ftdi_get_library_version + ftdi_init + ftdi_list_free + ftdi_list_free2 + ftdi_new + ftdi_poll_modem_status + ftdi_read_chipid + ftdi_read_data + ftdi_read_data_get_chunksize + ftdi_read_data_set_chunksize + ftdi_read_data_submit + ftdi_read_eeprom + ftdi_read_eeprom_location + ftdi_read_pins + ftdi_set_baudrate + ftdi_set_bitmode + ftdi_set_eeprom_buf + ftdi_set_eeprom_user_data + ftdi_set_eeprom_value + ftdi_set_error_char + ftdi_set_event_char + ftdi_set_interface + ftdi_set_latency_timer + ftdi_set_line_property + ftdi_set_line_property2 + ftdi_set_usbdev + ftdi_setdtr + ftdi_setdtr_rts + ftdi_setflowctrl + ftdi_setrts + ftdi_transfer_data_cancel + ftdi_transfer_data_done + ftdi_usb_close + ftdi_usb_find_all + ftdi_usb_get_strings + ftdi_usb_get_strings2 + ftdi_usb_open + ftdi_usb_open_bus_addr + ftdi_usb_open_desc + ftdi_usb_open_desc_index + ftdi_usb_open_dev + ftdi_usb_open_string + ftdi_usb_purge_buffers + ftdi_usb_purge_rx_buffer + ftdi_usb_purge_tx_buffer + ftdi_usb_reset + ftdi_write_data + ftdi_write_data_get_chunksize + ftdi_write_data_set_chunksize + ftdi_write_data_submit + ftdi_write_eeprom + ftdi_write_eeprom_location diff --git a/ports/libftdi1/portfile.cmake b/ports/libftdi1/portfile.cmake new file mode 100644 index 00000000000000..4007e91220b3f5 --- /dev/null +++ b/ports/libftdi1/portfile.cmake @@ -0,0 +1,47 @@ +include(vcpkg_common_functions) + +vcpkg_download_distfile(ARCHIVE + URLS "https://www.intra2net.com/en/developer/libftdi/download/libftdi1-1.4.tar.bz2" + FILENAME "libftdi1-1.4.tar.bz2" + SHA512 dbab74f7bc35ca835b9c6dd5b70a64816948d65da1f73a9ece37a0f0f630bd0df1a676543acc517b02a718bc34ba4f7a30cbc48b6eed1c154c917f8ef0a358fc +) + +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + REF 1.4 + PATCHES + cmake-fix.patch + win32.patch +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/exports.def DESTINATION ${SOURCE_PATH}/src) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DBUILD_TESTS=OFF + -DDOCUMENTATION=OFF + -DEXAMPLES=OFF + -DPYTHON_BINDINGS=OFF + -DLINK_PYTHON_LIBRARY=OFF + + -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Boost=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Confuse=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Libintl=ON + -DCMAKE_DISABLE_FIND_PACKAGE_PythonLibs=ON + -DCMAKE_DISABLE_FIND_PACKAGE_PythonInterp=ON +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/libftdi1 TARGET_PATH share/libftdi1) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libftdi1) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/libftdi1/LICENSE ${CURRENT_PACKAGES_DIR}/share/libftdi1/copyright) + +vcpkg_copy_pdbs() diff --git a/ports/libftdi1/win32.patch b/ports/libftdi1/win32.patch new file mode 100644 index 00000000000000..8cf35c92030f24 --- /dev/null +++ b/ports/libftdi1/win32.patch @@ -0,0 +1,28 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 9fd86a6..e1e848c 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -18,9 +18,14 @@ message(STATUS "Detected git snapshot version: ${SNAPSHOT_VERSION}") + configure_file(ftdi_version_i.h.in "${CMAKE_CURRENT_BINARY_DIR}/ftdi_version_i.h" @ONLY) + + # Targets ++if(WIN32) ++set(c_sources ${CMAKE_CURRENT_SOURCE_DIR}/ftdi.c ${CMAKE_CURRENT_SOURCE_DIR}/exports.def CACHE INTERNAL "List of c sources" ) ++else() + set(c_sources ${CMAKE_CURRENT_SOURCE_DIR}/ftdi.c ${CMAKE_CURRENT_SOURCE_DIR}/ftdi_stream.c CACHE INTERNAL "List of c sources" ) ++endif() + set(c_headers ${CMAKE_CURRENT_SOURCE_DIR}/ftdi.h CACHE INTERNAL "List of c headers" ) + ++if(BUILD_SHARED_LIBS) + add_library(ftdi1 SHARED ${c_sources}) + + math(EXPR VERSION_FIXUP "${MAJOR_VERSION} + 1") # Compatiblity with previous releases +@@ -38,7 +43,7 @@ install ( TARGETS ftdi1 + ARCHIVE DESTINATION lib${LIB_SUFFIX} + ) + +-if ( STATICLIBS ) ++else() + add_library(ftdi1-static STATIC ${c_sources}) + target_link_libraries(ftdi1-static ${LIBUSB_LIBRARIES}) + set_target_properties(ftdi1-static PROPERTIES OUTPUT_NAME "ftdi1") From f3db66b403840b24ea2612d09cca30a5285f5ea3 Mon Sep 17 00:00:00 2001 From: Victor Romero Date: Fri, 21 Jun 2019 23:50:05 -0700 Subject: [PATCH 078/123] Ports Overlay partial implementation (#6981) * Ports Overlay feature spec * Ports Overlay implementation * [--overlay-ports] Refactor handling of additional paths * Code cleanup * [--overlay-ports] Add help * [depend-info] Support --overlay-ports * Add method to load all ports using PathsPortFileProvider * Make PortFileProvider::load_all_control_files() const * Remove unused code * [vcpkg] Avoid double-load of source control file between Build::perform_and_exit and Build::perform_and_exit_ex * [vcpkg] Clang format * [vcpkg] Fixup build failure introduced in b069ceb2f231 * Report errors from Paragraphs::try_load_port() --- docs/specifications/ports-overlay.md | 178 ++++++++++++++++++ toolsrc/include/vcpkg/build.h | 2 +- toolsrc/include/vcpkg/dependencies.h | 27 +-- toolsrc/include/vcpkg/postbuildlint.h | 3 +- toolsrc/include/vcpkg/sourceparagraph.h | 9 + toolsrc/include/vcpkg/vcpkgcmdarguments.h | 16 +- toolsrc/include/vcpkg/vcpkgpaths.h | 2 - toolsrc/src/tests.plan.cpp | 8 +- toolsrc/src/tests.update.cpp | 16 +- toolsrc/src/vcpkg/build.cpp | 45 +++-- toolsrc/src/vcpkg/commands.autocomplete.cpp | 3 +- toolsrc/src/vcpkg/commands.buildexternal.cpp | 9 +- toolsrc/src/vcpkg/commands.ci.cpp | 21 ++- toolsrc/src/vcpkg/commands.dependinfo.cpp | 19 +- toolsrc/src/vcpkg/commands.edit.cpp | 1 + toolsrc/src/vcpkg/commands.search.cpp | 8 +- toolsrc/src/vcpkg/commands.upgrade.cpp | 9 +- toolsrc/src/vcpkg/dependencies.cpp | 170 ++++++++++++++--- toolsrc/src/vcpkg/export.cpp | 5 +- toolsrc/src/vcpkg/help.cpp | 4 +- toolsrc/src/vcpkg/install.cpp | 14 +- toolsrc/src/vcpkg/postbuildlint.cpp | 5 +- toolsrc/src/vcpkg/remove.cpp | 3 +- toolsrc/src/vcpkg/update.cpp | 8 +- toolsrc/src/vcpkg/vcpkgcmdarguments.cpp | 115 ++++++++++- toolsrc/src/vcpkg/vcpkgpaths.cpp | 3 - toolsrc/vcpkg/vcpkg.vcxproj | 4 +- toolsrc/vcpkglib/vcpkglib.vcxproj | 4 +- .../vcpkgmetricsuploader.vcxproj | 4 +- toolsrc/vcpkgtest/vcpkgtest.vcxproj | 6 +- 30 files changed, 598 insertions(+), 123 deletions(-) create mode 100644 docs/specifications/ports-overlay.md diff --git a/docs/specifications/ports-overlay.md b/docs/specifications/ports-overlay.md new file mode 100644 index 00000000000000..e877f50109b022 --- /dev/null +++ b/docs/specifications/ports-overlay.md @@ -0,0 +1,178 @@ +# Ports Overlay (Jun 19, 2019) + + +## 1. Motivation + +### A. Allow users to override ports with alternate versions + +It's a common scenario for `vcpkg` users to keep specific versions of libraries to use in their own projects. The current recommendation for users is to fork `vcpkg`'s repository and create tags for commits containing the specific versions of the ports they want to use. + +This proposal adds an alternative to solve this problem. By allowing `vcpkg` users to specify additional locations in their file system containing ports for: + + * older or newer versions of libraries, + * modified libraries, or + * libraries not available in `vcpkg`. + +These locations will be searched when resolving port names during package installation, and override ports in `/ports`. + +### B. Allow users to keep unmodified upstream ports + +Users will be able to keep unmodified versions of the ports shipped with `vcpkg` and update them via `vcpkg update` and `vcpkg upgrade` without having to solve merge conflicts. + + +## 2. Other design concerns + +* Allow a set of `vcpkg` commands to optionally accept additional paths to be used when searching for ports. +* Additional paths must take precedence when resolving names of ports to install. +* Allow users to specify multiple additional paths. +* Provide a simple disambiguation mechanism to resolve ambiguous port names. +* After resolving a port name, the installation process has to work the same as for ports shipped by `vcpkg`. +* This **DOES NOT ENABLE MULTIPLE VERSIONS** of a same library to be **INSTALLED SIDE-BY-SIDE**. + + +## 3. Proposed solution + +This document proposes allowing additional locations to search for ports during package installation that will override and complement the set of ports provided by `vcpkg` (ports under the `/ports` directory).` + +A new option `--overlay-ports` will be added to the `vcpkg install`, `vcpkg update`, `vcpkg upgrade`, `vcpkg export`, and `vcpkg depend-info` commands to specify additional paths containing ports. + +From a user experience perspective, a user expresses interest in adding additional lookup locations by passing the `--overlay-ports` option followed by a path to: + +* an individual port (directory containing a `CONTROL` file), + * `vcpkg install sqlite3 --overlay-ports="C:\custom-ports\sqlite3"` + +* a directory containing ports, + * `vcpkg install sqlite3 --overlay-ports=\\share\org\custom-ports` + +* a file listing paths to the former two. + * `vcpkg install sqlite3 --overlay-ports=..\port-repos.txt` + + _port-repos.txt_ + + ``` + .\experimental-ports\sqlite3 + C:\custom-ports + \\share\team\custom-ports + \\share\org\custom-ports + ``` + *Relative paths inside this file are resolved relatively to the file's location. In this case a `experimental-ports` directory should exist at the same level as the `port-repos.txt` file.* + +_NOTE: It is not the goal of this document to discuss library versioning or project dependency management solutions, which require the ability to install multiple versions of a same library side-by-side._ + +### Multiple additional paths + +Users can provide multiple additional paths by repeating the `--overlay-ports` option. + +``` +vcpkg install sqlite3 + --overlay-ports="..\experimental-ports\sqlite3" + --overlay-ports="C:\custom-ports" + --overlay-ports="\\share\team\custom-ports +``` + +### Overlaying ports + +Port name resolution follows the order in which additional paths are specified, with the first match being selected for installation, and falling back to `/ports` if the port is not found in any of the additional paths. + +No effort is made to compare version numbers inside the `CONTROL` files, or to determine which port contains newer or older files. + +### Examples + +Given the following directory structure: + + ``` + team-ports/ + |-- sqlite3/ + |---- CONTROL + |-- rapidjson/ + |---- CONTROL + |-- curl/ + |---- CONTROL + + my-ports/ + |-- sqlite3/ + |---- CONTROL + |-- rapidjson/ + |---- CONTROL + + vcpkg + |-- ports/ + |---- + |-- vcpkg.exe + |-- preferred-ports.txt + ``` +* #### Example #1: + + Running: + + ``` + vcpkg/vcpkg.exe install sqlite3 --overlay-ports=my-ports --overlay-ports=team-ports + ``` + + Results in `my-ports/sqlite3` getting installed as that location appears first in the command line arguments. + +* #### Example #2: + + A specific version of a port can be given priority by adding its path first in the list of arguments: + + ``` + vcpkg/vcpkg.exe install sqlite3 rapidjson curl + --overlay-ports=my-ports/rapidjson + --overlay-ports=vcpkg/ports/curl + --overlay-ports=team-ports + ``` + + Installs: + * `sqlite3` from `team-ports/sqlite3` + * `rapidjson` from `my-ports/rapidjson` + * `curl` from `vcpkg/ports/curl` + +* #### Example #3: + + Given the content of `preferred-ports.txt` as: + + ``` + ./ports/curl + /my-ports/rapidjson + /team-ports + ``` + + A location can be appended or prepended to those included in `preferred-ports.txt` via the command line, like this: + + ``` + vcpkg/vcpkg.exe install sqlite3 curl --overlay-ports=my-ports --overlay-ports=vcpkg/preferred-ports.txt + ``` + + Which results in `my-ports/sqlite3` and `vcpkg/ports/curl` getting installed. + + +## 4. Proposed User experience + +### i. User wants to preserve an older version of a port + +Developer Alice and her team use `vcpkg` to acquire **OpenCV** and some other packages. She has even contributed many patches to add features to the **OpenCV 3** port in `vcpkg`. But, one day, she notices that a PR to update **OpenCV** to the next major version has been merged. + +Alice wants to update some packages available in `vcpkg`. Unfortunately, updating her project to use the latest **OpenCV** is not immediately possible. + +Alice creates a private GitHub repository and checks in the set of ports that she wants to preserve. Then provides her teammates with the link to clone her private ports repository. + +``` +mkdir vcpkg-custom-ports +cd vcpkg-custom-ports +git init +cp -r %VCPKG_ROOT%/ports/opencv . +git add . +git commit -m "[opencv] Add OpenCV 3 port" +git remote add origin https://github.com//vcpkg-custom-ports.git +git push -u origin master +``` + +Now her team is able to use: + +``` +git clone https://github.com//vcpkg-custom-ports.git +vcpkg update --overlay-ports=./vcpkg-custom-ports +vcpkg upgrade --no-dry-run --overlay-ports=./vcpkg-custom-ports +``` + +to upgrade their packages and preserve the old version of **OpenCV** they require. diff --git a/toolsrc/include/vcpkg/build.h b/toolsrc/include/vcpkg/build.h index 9044cb5566d22a..04cd7cf873e637 100644 --- a/toolsrc/include/vcpkg/build.h +++ b/toolsrc/include/vcpkg/build.h @@ -20,7 +20,7 @@ namespace vcpkg::Build namespace Command { void perform_and_exit_ex(const FullPackageSpec& full_spec, - const fs::path& port_dir, + const SourceControlFileLocation& scfl, const ParsedArguments& options, const VcpkgPaths& paths); diff --git a/toolsrc/include/vcpkg/dependencies.h b/toolsrc/include/vcpkg/dependencies.h index 16fdb3f73d69b1..8c2050b3d1c82c 100644 --- a/toolsrc/include/vcpkg/dependencies.h +++ b/toolsrc/include/vcpkg/dependencies.h @@ -48,7 +48,7 @@ namespace vcpkg::Dependencies const RequestType& request_type); InstallPlanAction(const PackageSpec& spec, - const SourceControlFile& scf, + const SourceControlFileLocation& scfl, const std::set& features, const RequestType& request_type, std::vector&& dependencies); @@ -57,7 +57,7 @@ namespace vcpkg::Dependencies PackageSpec spec; - Optional source_control_file; + Optional source_control_file_location; Optional installed_package; InstallPlanType plan_type; @@ -129,26 +129,31 @@ namespace vcpkg::Dependencies struct PortFileProvider { - virtual Optional get_control_file(const std::string& src_name) const = 0; + virtual Optional get_control_file(const std::string& src_name) const = 0; + virtual std::vector load_all_control_files() const = 0; }; struct MapPortFileProvider : Util::ResourceBase, PortFileProvider { - explicit MapPortFileProvider(const std::unordered_map& map); - Optional get_control_file(const std::string& src_name) const override; + explicit MapPortFileProvider(const std::unordered_map& map); + Optional get_control_file(const std::string& src_name) const override; + std::vector load_all_control_files() const override; private: - const std::unordered_map& ports; + const std::unordered_map& ports; }; struct PathsPortFileProvider : Util::ResourceBase, PortFileProvider { - explicit PathsPortFileProvider(const VcpkgPaths& paths); - Optional get_control_file(const std::string& src_name) const override; + explicit PathsPortFileProvider(const vcpkg::VcpkgPaths& paths, + const std::vector* ports_dirs_paths); + Optional get_control_file(const std::string& src_name) const override; + std::vector load_all_control_files() const override; private: - const VcpkgPaths& ports; - mutable std::unordered_map cache; + Files::Filesystem& filesystem; + std::vector ports_dirs; + mutable std::unordered_map cache; }; struct ClusterGraph; @@ -181,7 +186,7 @@ namespace vcpkg::Dependencies std::vector create_export_plan(const std::vector& specs, const StatusParagraphs& status_db); - std::vector create_feature_install_plan(const std::unordered_map& map, + std::vector create_feature_install_plan(const std::unordered_map& map, const std::vector& specs, const StatusParagraphs& status_db); diff --git a/toolsrc/include/vcpkg/postbuildlint.h b/toolsrc/include/vcpkg/postbuildlint.h index 5dcfeb8dfa5d33..027619eb8b6d6c 100644 --- a/toolsrc/include/vcpkg/postbuildlint.h +++ b/toolsrc/include/vcpkg/postbuildlint.h @@ -9,5 +9,6 @@ namespace vcpkg::PostBuildLint size_t perform_all_checks(const PackageSpec& spec, const VcpkgPaths& paths, const Build::PreBuildInfo& pre_build_info, - const Build::BuildInfo& build_info); + const Build::BuildInfo& build_info, + const fs::path& port_dir); } diff --git a/toolsrc/include/vcpkg/sourceparagraph.h b/toolsrc/include/vcpkg/sourceparagraph.h index d70fd43373d9a9..6232a3fd292440 100644 --- a/toolsrc/include/vcpkg/sourceparagraph.h +++ b/toolsrc/include/vcpkg/sourceparagraph.h @@ -68,6 +68,15 @@ namespace vcpkg Optional find_feature(const std::string& featurename) const; }; + /// + /// Full metadata of a package: core and other features. As well as the location the SourceControlFile was loaded from. + /// + struct SourceControlFileLocation + { + std::unique_ptr source_control_file; + fs::path source_location; + }; + void print_error_message(Span> error_info_list); inline void print_error_message(const std::unique_ptr& error_info_list) { diff --git a/toolsrc/include/vcpkg/vcpkgcmdarguments.h b/toolsrc/include/vcpkg/vcpkgcmdarguments.h index de65eec28622b7..cad013eb88b722 100644 --- a/toolsrc/include/vcpkg/vcpkgcmdarguments.h +++ b/toolsrc/include/vcpkg/vcpkgcmdarguments.h @@ -15,6 +15,7 @@ namespace vcpkg { std::unordered_set switches; std::unordered_map settings; + std::unordered_map> multisettings; }; struct VcpkgPaths; @@ -41,10 +42,22 @@ namespace vcpkg StringLiteral short_help_text; }; + struct CommandMultiSetting + { + constexpr CommandMultiSetting(const StringLiteral& name, const StringLiteral& short_help_text) + : name(name), short_help_text(short_help_text) + { + } + + StringLiteral name; + StringLiteral short_help_text; + }; + struct CommandOptionsStructure { Span switches; Span settings; + Span multisettings; }; struct CommandStructure @@ -74,6 +87,7 @@ namespace vcpkg std::unique_ptr vcpkg_root_dir; std::unique_ptr triplet; + std::unique_ptr> overlay_ports; Optional debug = nullopt; Optional sendmetrics = nullopt; Optional printmetrics = nullopt; @@ -88,6 +102,6 @@ namespace vcpkg ParsedArguments parse_arguments(const CommandStructure& command_structure) const; private: - std::unordered_map> optional_command_arguments; + std::unordered_map>> optional_command_arguments; }; } diff --git a/toolsrc/include/vcpkg/vcpkgpaths.h b/toolsrc/include/vcpkg/vcpkgpaths.h index 42de40d9c09563..b09169b0274ba0 100644 --- a/toolsrc/include/vcpkg/vcpkgpaths.h +++ b/toolsrc/include/vcpkg/vcpkgpaths.h @@ -50,8 +50,6 @@ namespace vcpkg static Expected create(const fs::path& vcpkg_root_dir, const std::string& default_vs_path); fs::path package_dir(const PackageSpec& spec) const; - fs::path port_dir(const PackageSpec& spec) const; - fs::path port_dir(const std::string& name) const; fs::path build_info_file_path(const PackageSpec& spec) const; fs::path listfile_path(const BinaryParagraph& pgh) const; diff --git a/toolsrc/src/tests.plan.cpp b/toolsrc/src/tests.plan.cpp index 238aa70324b632..ab24266b488228 100644 --- a/toolsrc/src/tests.plan.cpp +++ b/toolsrc/src/tests.plan.cpp @@ -47,7 +47,8 @@ namespace UnitTest1 Assert::AreEqual(plan.spec.triplet().to_string().c_str(), triplet.to_string().c_str()); - Assert::AreEqual(pkg_name.c_str(), plan.source_control_file.get()->core_paragraph->name.c_str()); + auto* scfl = plan.source_control_file_location.get(); + Assert::AreEqual(pkg_name.c_str(), scfl->source_control_file->core_paragraph->name.c_str()); Assert::AreEqual(size_t(vec.size()), feature_list.size()); for (auto&& feature_name : vec) @@ -79,7 +80,7 @@ namespace UnitTest1 /// struct PackageSpecMap { - std::unordered_map map; + std::unordered_map map; Triplet triplet; PackageSpecMap(const Triplet& t = Triplet::X86_WINDOWS) noexcept { triplet = t; } @@ -94,7 +95,8 @@ namespace UnitTest1 { auto spec = PackageSpec::from_name_and_triplet(scf.core_paragraph->name, triplet); Assert::IsTrue(spec.has_value()); - map.emplace(scf.core_paragraph->name, std::move(scf)); + map.emplace(scf.core_paragraph->name, + SourceControlFileLocation{std::unique_ptr(std::move(&scf)), ""}); return PackageSpec{*spec.get()}; } }; diff --git a/toolsrc/src/tests.update.cpp b/toolsrc/src/tests.update.cpp index b6e487c17ffbae..5e3f9f3e20a8cd 100644 --- a/toolsrc/src/tests.update.cpp +++ b/toolsrc/src/tests.update.cpp @@ -21,9 +21,9 @@ namespace UnitTest1 StatusParagraphs status_db(std::move(status_paragraphs)); - std::unordered_map map; + std::unordered_map map; auto scf = unwrap(SourceControlFile::parse_control_file(Pgh{{{"Source", "a"}, {"Version", "0"}}})); - map.emplace("a", std::move(*scf)); + map.emplace("a", SourceControlFileLocation { std::move(scf), "" }); Dependencies::MapPortFileProvider provider(map); auto pkgs = SortedVector(Update::find_outdated_packages(provider, status_db), @@ -45,9 +45,9 @@ namespace UnitTest1 StatusParagraphs status_db(std::move(status_paragraphs)); - std::unordered_map map; + std::unordered_map map; auto scf = unwrap(SourceControlFile::parse_control_file(Pgh{{{"Source", "a"}, {"Version", "0"}}})); - map.emplace("a", std::move(*scf)); + map.emplace("a", SourceControlFileLocation { std::move(scf), "" }); Dependencies::MapPortFileProvider provider(map); auto pkgs = SortedVector(Update::find_outdated_packages(provider, status_db), @@ -71,9 +71,9 @@ namespace UnitTest1 StatusParagraphs status_db(std::move(status_paragraphs)); - std::unordered_map map; + std::unordered_map map; auto scf = unwrap(SourceControlFile::parse_control_file(Pgh{{{"Source", "a"}, {"Version", "0"}}})); - map.emplace("a", std::move(*scf)); + map.emplace("a", SourceControlFileLocation{ std::move(scf), "" }); Dependencies::MapPortFileProvider provider(map); auto pkgs = SortedVector(Update::find_outdated_packages(provider, status_db), @@ -92,9 +92,9 @@ namespace UnitTest1 StatusParagraphs status_db(std::move(status_paragraphs)); - std::unordered_map map; + std::unordered_map map; auto scf = unwrap(SourceControlFile::parse_control_file(Pgh{{{"Source", "a"}, {"Version", "2"}}})); - map.emplace("a", std::move(*scf)); + map.emplace("a", SourceControlFileLocation{ std::move(scf), "" }); Dependencies::MapPortFileProvider provider(map); auto pkgs = SortedVector(Update::find_outdated_packages(provider, status_db), diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index daff7e6c8f1716..059a09432c967e 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -23,6 +23,7 @@ #include using vcpkg::Build::BuildResult; +using vcpkg::Dependencies::PathsPortFileProvider; using vcpkg::Parse::ParseControlErrorInfo; using vcpkg::Parse::ParseExpected; @@ -34,34 +35,26 @@ namespace vcpkg::Build::Command static constexpr StringLiteral OPTION_CHECKS_ONLY = "--checks-only"; void perform_and_exit_ex(const FullPackageSpec& full_spec, - const fs::path& port_dir, + const SourceControlFileLocation& scfl, const ParsedArguments& options, const VcpkgPaths& paths) { const PackageSpec& spec = full_spec.package_spec; + const auto& scf = *scfl.source_control_file; if (Util::Sets::contains(options.switches, OPTION_CHECKS_ONLY)) { const auto pre_build_info = Build::PreBuildInfo::from_triplet_file(paths, spec.triplet()); const auto build_info = Build::read_build_info(paths.get_filesystem(), paths.build_info_file_path(spec)); - const size_t error_count = PostBuildLint::perform_all_checks(spec, paths, pre_build_info, build_info); + const size_t error_count = + PostBuildLint::perform_all_checks(spec, paths, pre_build_info, build_info, scfl.source_location); Checks::check_exit(VCPKG_LINE_INFO, error_count == 0); Checks::exit_success(VCPKG_LINE_INFO); } - const ParseExpected source_control_file = - Paragraphs::try_load_port(paths.get_filesystem(), port_dir); - - if (!source_control_file.has_value()) - { - print_error_message(source_control_file.error()); - Checks::exit_fail(VCPKG_LINE_INFO); - } - - const auto& scf = source_control_file.value_or_exit(VCPKG_LINE_INFO); Checks::check_exit(VCPKG_LINE_INFO, - spec.name() == scf->core_paragraph->name, + spec.name() == scf.core_paragraph->name, "The Source field inside the CONTROL file does not match the port directory: '%s' != '%s'", - scf->core_paragraph->name, + scf.core_paragraph->name, spec.name()); const StatusParagraphs status_db = database_load_check(paths); @@ -80,7 +73,7 @@ namespace vcpkg::Build::Command features_as_set.emplace("core"); const Build::BuildPackageConfig build_config{ - *scf, spec.triplet(), fs::path{port_dir}, build_package_options, features_as_set}; + scf, spec.triplet(), fs::path(scfl.source_location), build_package_options, features_as_set}; const auto build_timer = Chrono::ElapsedTimer::create_started(); const auto result = Build::build_package(paths, build_config, status_db); @@ -128,10 +121,19 @@ namespace vcpkg::Build::Command // Build only takes a single package and all dependencies must already be installed const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE); std::string first_arg = args.command_arguments.at(0); + const FullPackageSpec spec = Input::check_and_get_full_package_spec( std::move(first_arg), default_triplet, COMMAND_STRUCTURE.example_text); + Input::check_triplet(spec.package_spec.triplet(), paths); - perform_and_exit_ex(spec, paths.port_dir(spec.package_spec), options, paths); + + PathsPortFileProvider provider(paths, args.overlay_ports.get()); + const auto port_name = spec.package_spec.name(); + const auto* scfl = provider.get_control_file(port_name).get(); + + Checks::check_exit(VCPKG_LINE_INFO, scfl != nullptr, "Error: Couldn't find port '%s'", port_name); + + perform_and_exit_ex(spec, *scfl, options, paths); } } @@ -360,6 +362,12 @@ namespace vcpkg::Build auto& fs = paths.get_filesystem(); const Triplet& triplet = spec.triplet(); + if (!Strings::starts_with(Strings::ascii_to_lowercase(config.port_dir.u8string()), + Strings::ascii_to_lowercase(paths.ports.u8string()))) + { + System::printf("-- Installing port from location: %s\n", config.port_dir.u8string()); + } + #if !defined(_WIN32) // TODO: remove when vcpkg.exe is in charge for acquiring tools. Change introduced in vcpkg v0.0.107. // bootstrap should have already downloaded ninja, but making sure it is present in case it was deleted. @@ -428,7 +436,8 @@ namespace vcpkg::Build } const BuildInfo build_info = read_build_info(fs, paths.build_info_file_path(spec)); - const size_t error_count = PostBuildLint::perform_all_checks(spec, paths, pre_build_info, build_info); + const size_t error_count = + PostBuildLint::perform_all_checks(spec, paths, pre_build_info, build_info, config.port_dir); auto bcf = create_binary_control_file(*config.scf.core_paragraph, triplet, build_info, abi_tag); @@ -705,7 +714,7 @@ namespace vcpkg::Build } } - System::print2("Could not locate cached archive: ", archive_path.u8string(), "\n"); + System::printf("Could not locate cached archive: %s\n", archive_path.u8string()); ExtendedBuildResult result = do_build_package_and_clean_buildtrees( paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config); diff --git a/toolsrc/src/vcpkg/commands.autocomplete.cpp b/toolsrc/src/vcpkg/commands.autocomplete.cpp index afef518eb08cf0..3cf4dd98fd2435 100644 --- a/toolsrc/src/vcpkg/commands.autocomplete.cpp +++ b/toolsrc/src/vcpkg/commands.autocomplete.cpp @@ -90,7 +90,8 @@ namespace vcpkg::Commands::Autocomplete const auto port_name = match[2].str(); const auto triplet_prefix = match[3].str(); - auto maybe_port = Paragraphs::try_load_port(paths.get_filesystem(), paths.port_dir(port_name)); + // TODO: Support autocomplete for ports in --overlay-ports + auto maybe_port = Paragraphs::try_load_port(paths.get_filesystem(), paths.ports / port_name); if (maybe_port.error()) { Checks::exit_success(VCPKG_LINE_INFO); diff --git a/toolsrc/src/vcpkg/commands.buildexternal.cpp b/toolsrc/src/vcpkg/commands.buildexternal.cpp index 19b89c2f52985c..1c3c511c27eb0d 100644 --- a/toolsrc/src/vcpkg/commands.buildexternal.cpp +++ b/toolsrc/src/vcpkg/commands.buildexternal.cpp @@ -23,7 +23,12 @@ namespace vcpkg::Commands::BuildExternal std::string(args.command_arguments.at(0)), default_triplet, COMMAND_STRUCTURE.example_text); Input::check_triplet(spec.package_spec.triplet(), paths); - const fs::path port_dir = args.command_arguments.at(1); - Build::Command::perform_and_exit_ex(spec, port_dir, options, paths); + auto overlays = args.overlay_ports ? *args.overlay_ports : std::vector(); + overlays.insert(overlays.begin(), args.command_arguments.at(1)); + Dependencies::PathsPortFileProvider provider(paths, &overlays); + auto maybe_scfl = provider.get_control_file(spec.package_spec.name()); + Checks::check_exit( + VCPKG_LINE_INFO, maybe_scfl.has_value(), "could not load control file for %s", spec.package_spec.name()); + Build::Command::perform_and_exit_ex(spec, maybe_scfl.value_or_exit(VCPKG_LINE_INFO), options, paths); } } diff --git a/toolsrc/src/vcpkg/commands.ci.cpp b/toolsrc/src/vcpkg/commands.ci.cpp index de66d917b31123..8cab79504a3771 100644 --- a/toolsrc/src/vcpkg/commands.ci.cpp +++ b/toolsrc/src/vcpkg/commands.ci.cpp @@ -232,12 +232,17 @@ namespace vcpkg::Commands::CI { // determine abi tag std::string abi; - if (auto scf = p->source_control_file.get()) + if (auto scfl = p->source_control_file_location.get()) { auto triplet = p->spec.triplet(); const Build::BuildPackageConfig build_config{ - *scf, triplet, paths.port_dir(p->spec), build_options, p->feature_list}; + *scfl->source_control_file, + triplet, + static_cast(scfl->source_location), + build_options, + p->feature_list + }; auto dependency_abis = Util::fmap(p->computed_dependencies, [&](const PackageSpec& spec) -> Build::AbiEntry { @@ -351,7 +356,8 @@ namespace vcpkg::Commands::CI } StatusParagraphs status_db = database_load_check(paths); - const auto& paths_port_file = Dependencies::PathsPortFileProvider(paths); + + Dependencies::PathsPortFileProvider provider(paths, args.overlay_ports.get()); const Build::BuildPackageOptions install_plan_options = { Build::UseHeadVersion::NO, @@ -369,7 +375,10 @@ namespace vcpkg::Commands::CI XunitTestResults xunitTestResults; - std::vector all_ports = Install::get_all_port_names(paths); + std::vector all_ports = + Util::fmap(provider.load_all_control_files(), [](auto&& scfl) -> std::string { + return scfl->source_control_file.get()->core_paragraph->name; + }); std::vector results; auto timer = Chrono::ElapsedTimer::create_started(); for (const Triplet& triplet : triplets) @@ -378,13 +387,13 @@ namespace vcpkg::Commands::CI xunitTestResults.push_collection(triplet.canonical_name()); - Dependencies::PackageGraph pgraph(paths_port_file, status_db); + Dependencies::PackageGraph pgraph(provider, status_db); std::vector specs = PackageSpec::to_package_specs(all_ports, triplet); // Install the default features for every package auto all_feature_specs = Util::fmap(specs, [](auto& spec) { return FeatureSpec(spec, ""); }); auto split_specs = - find_unknown_ports_for_ci(paths, exclusions_set, paths_port_file, all_feature_specs, purge_tombstones); + find_unknown_ports_for_ci(paths, exclusions_set, provider, all_feature_specs, purge_tombstones); auto feature_specs = FullPackageSpec::to_feature_specs(split_specs->unknown); for (auto&& fspec : feature_specs) diff --git a/toolsrc/src/vcpkg/commands.dependinfo.cpp b/toolsrc/src/vcpkg/commands.dependinfo.cpp index 48a289fa5d0113..c0800a4b549f9c 100644 --- a/toolsrc/src/vcpkg/commands.dependinfo.cpp +++ b/toolsrc/src/vcpkg/commands.dependinfo.cpp @@ -6,6 +6,9 @@ #include #include #include +#include + +using vcpkg::Dependencies::PathsPortFileProvider; namespace vcpkg::Commands::DependInfo { @@ -35,7 +38,7 @@ namespace vcpkg::Commands::DependInfo return output; } - std::string create_dot_as_string(const std::vector>& source_control_files) + std::string create_dot_as_string(const std::vector& source_control_files) { int empty_node_count = 0; @@ -64,7 +67,7 @@ namespace vcpkg::Commands::DependInfo return s; } - std::string create_dgml_as_string(const std::vector>& source_control_files) + std::string create_dgml_as_string(const std::vector& source_control_files) { std::string s; s.append(""); @@ -109,7 +112,7 @@ namespace vcpkg::Commands::DependInfo } std::string create_graph_as_string(const std::unordered_set& switches, - const std::vector>& source_control_files) + const std::vector& source_control_files) { if (Util::Sets::contains(switches, OPTION_DOT)) { @@ -124,7 +127,7 @@ namespace vcpkg::Commands::DependInfo void build_dependencies_list(std::set& packages_to_keep, const std::string& requested_package, - const std::vector>& source_control_files, + const std::vector& source_control_files, const std::unordered_set& switches) { const auto source_control_file = @@ -154,7 +157,11 @@ namespace vcpkg::Commands::DependInfo { const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE); - auto source_control_files = Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports); + // TODO: Optimize implementation, current implementation needs to load all ports from disk which is too slow. + PathsPortFileProvider provider(paths, args.overlay_ports.get()); + auto source_control_files = Util::fmap(provider.load_all_control_files(), [](auto&& scfl) -> const SourceControlFile * { + return scfl->source_control_file.get(); + }); if (args.command_arguments.size() >= 1) { @@ -178,7 +185,7 @@ namespace vcpkg::Commands::DependInfo for (auto&& source_control_file : source_control_files) { - const SourceParagraph& source_paragraph = *source_control_file->core_paragraph; + const SourceParagraph& source_paragraph = *source_control_file->core_paragraph.get(); const auto s = Strings::join(", ", source_paragraph.depends, [](const Dependency& d) { return d.name(); }); System::print2(source_paragraph.name, ": ", s, "\n"); } diff --git a/toolsrc/src/vcpkg/commands.edit.cpp b/toolsrc/src/vcpkg/commands.edit.cpp index 98176b2b056c99..f2f0b156938ec9 100644 --- a/toolsrc/src/vcpkg/commands.edit.cpp +++ b/toolsrc/src/vcpkg/commands.edit.cpp @@ -79,6 +79,7 @@ namespace vcpkg::Commands::Edit const auto& fs = paths.get_filesystem(); auto packages = fs.get_files_non_recursive(paths.packages); + // TODO: Support edit for --overlay-ports return Util::fmap(ports, [&](const std::string& port_name) -> std::string { const auto portpath = paths.ports / port_name; const auto portfile = portpath / "portfile.cmake"; diff --git a/toolsrc/src/vcpkg/commands.search.cpp b/toolsrc/src/vcpkg/commands.search.cpp index a0afd69e132de5..3d8387ee128408 100644 --- a/toolsrc/src/vcpkg/commands.search.cpp +++ b/toolsrc/src/vcpkg/commands.search.cpp @@ -7,6 +7,9 @@ #include #include #include +#include + +using vcpkg::Dependencies::PathsPortFileProvider; namespace vcpkg::Commands::Search { @@ -63,7 +66,10 @@ namespace vcpkg::Commands::Search const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE); const bool full_description = Util::Sets::contains(options.switches, OPTION_FULLDESC); - auto source_paragraphs = Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports); + PathsPortFileProvider provider(paths, args.overlay_ports.get()); + auto source_paragraphs = Util::fmap(provider.load_all_control_files(), [](auto&& port) -> const SourceControlFile * { + return port->source_control_file.get(); + }); if (args.command_arguments.empty()) { diff --git a/toolsrc/src/vcpkg/commands.upgrade.cpp b/toolsrc/src/vcpkg/commands.upgrade.cpp index 29815ca9490c2c..77183ceaf718cb 100644 --- a/toolsrc/src/vcpkg/commands.upgrade.cpp +++ b/toolsrc/src/vcpkg/commands.upgrade.cpp @@ -43,7 +43,8 @@ namespace vcpkg::Commands::Upgrade StatusParagraphs status_db = database_load_check(paths); - Dependencies::PathsPortFileProvider provider(paths); + // Load ports from ports dirs + Dependencies::PathsPortFileProvider provider(paths, args.overlay_ports.get()); Dependencies::PackageGraph graph(provider, status_db); // input sanitization @@ -85,12 +86,12 @@ namespace vcpkg::Commands::Upgrade not_installed.push_back(spec); } - auto maybe_scf = provider.get_control_file(spec.name()); - if (auto p_scf = maybe_scf.get()) + auto maybe_scfl = provider.get_control_file(spec.name()); + if (auto p_scfl = maybe_scfl.get()) { if (it != status_db.end()) { - if (p_scf->core_paragraph->version != (*it)->package.version) + if (p_scfl->source_control_file->core_paragraph->version != (*it)->package.version) { to_upgrade.push_back(spec); } diff --git a/toolsrc/src/vcpkg/dependencies.cpp b/toolsrc/src/vcpkg/dependencies.cpp index f4a05e7dc94cda..df472515fd03e4 100644 --- a/toolsrc/src/vcpkg/dependencies.cpp +++ b/toolsrc/src/vcpkg/dependencies.cpp @@ -22,7 +22,7 @@ namespace vcpkg::Dependencies struct ClusterSource { - const SourceControlFile* scf = nullptr; + const SourceControlFileLocation* scfl = nullptr; std::unordered_map> build_edges; }; @@ -92,12 +92,12 @@ namespace vcpkg::Dependencies if (it == m_graph.end()) { // Load on-demand from m_provider - auto maybe_scf = m_provider.get_control_file(spec.name()); + auto maybe_scfl = m_provider.get_control_file(spec.name()); auto& clust = m_graph[spec]; clust.spec = spec; - if (auto p_scf = maybe_scf.get()) + if (auto p_scfl = maybe_scfl.get()) { - clust.source = cluster_from_scf(*p_scf, clust.spec.triplet()); + clust.source = cluster_from_scf(*p_scfl, clust.spec.triplet()); } return clust; } @@ -105,15 +105,17 @@ namespace vcpkg::Dependencies } private: - static ClusterSource cluster_from_scf(const SourceControlFile& scf, Triplet t) + static ClusterSource cluster_from_scf(const SourceControlFileLocation& scfl, Triplet t) { ClusterSource ret; - ret.build_edges.emplace("core", filter_dependencies_to_specs(scf.core_paragraph->depends, t)); + ret.build_edges.emplace("core", + filter_dependencies_to_specs(scfl.source_control_file->core_paragraph->depends, + t)); - for (const auto& feature : scf.feature_paragraphs) + for (const auto& feature : scfl.source_control_file->feature_paragraphs) ret.build_edges.emplace(feature->name, filter_dependencies_to_specs(feature->depends, t)); - ret.scf = &scf; + ret.scfl = &scfl; return ret; } @@ -151,12 +153,12 @@ namespace vcpkg::Dependencies } InstallPlanAction::InstallPlanAction(const PackageSpec& spec, - const SourceControlFile& scf, + const SourceControlFileLocation& scfl, const std::set& features, const RequestType& request_type, std::vector&& dependencies) : spec(spec) - , source_control_file(scf) + , source_control_file_location(scfl) , plan_type(InstallPlanType::BUILD_AND_INSTALL) , request_type(request_type) , build_options{} @@ -268,37 +270,145 @@ namespace vcpkg::Dependencies return left->spec.name() < right->spec.name(); } - MapPortFileProvider::MapPortFileProvider(const std::unordered_map& map) : ports(map) - { - } + MapPortFileProvider::MapPortFileProvider(const std::unordered_map& map) + : ports(map) + {} - Optional MapPortFileProvider::get_control_file(const std::string& spec) const + Optional MapPortFileProvider::get_control_file(const std::string& spec) const { auto scf = ports.find(spec); if (scf == ports.end()) return nullopt; return scf->second; } - PathsPortFileProvider::PathsPortFileProvider(const VcpkgPaths& paths) : ports(paths) {} + std::vector MapPortFileProvider::load_all_control_files() const + { + return Util::fmap(ports, [](auto&& kvpair) -> const SourceControlFileLocation * { return &kvpair.second; }); + } - Optional PathsPortFileProvider::get_control_file(const std::string& spec) const + PathsPortFileProvider::PathsPortFileProvider(const vcpkg::VcpkgPaths& paths, + const std::vector* ports_dirs_paths) + : filesystem(paths.get_filesystem()) + { + if (ports_dirs_paths) + { + for (auto&& overlay_path : *ports_dirs_paths) + { + if (!overlay_path.empty()) + { + auto overlay = fs::stdfs::canonical(fs::u8path(overlay_path)); + + Checks::check_exit(VCPKG_LINE_INFO, + filesystem.exists(overlay), + "Error: Path \"%s\" does not exist", + overlay.string()); + + Checks::check_exit(VCPKG_LINE_INFO, + fs::stdfs::is_directory(overlay), + "Error: Path \"%s\" must be a directory", + overlay.string()); + + ports_dirs.emplace_back(overlay); + } + } + } + ports_dirs.emplace_back(paths.ports); + } + + Optional PathsPortFileProvider::get_control_file(const std::string& spec) const { auto cache_it = cache.find(spec); if (cache_it != cache.end()) { return cache_it->second; } - Parse::ParseExpected source_control_file = - Paragraphs::try_load_port(ports.get_filesystem(), ports.port_dir(spec)); - if (auto scf = source_control_file.get()) + for (auto&& ports_dir : ports_dirs) { - auto it = cache.emplace(spec, std::move(*scf->get())); - return it.first->second; + // Try loading individual port + if (filesystem.exists(ports_dir / "CONTROL")) + { + auto maybe_scf = Paragraphs::try_load_port(filesystem, ports_dir); + if (auto scf = maybe_scf.get()) + { + if (scf->get()->core_paragraph->name == spec) + { + SourceControlFileLocation scfl{ std::move(*scf), ports_dir }; + auto it = cache.emplace(spec, std::move(scfl)); + return it.first->second; + } + } + else + { + vcpkg::print_error_message(maybe_scf.error()); + Checks::exit_with_message(VCPKG_LINE_INFO, + "Error: Failed to load port from %s", + spec, ports_dir.u8string()); + } + } + + auto found_scf = Paragraphs::try_load_port(filesystem, ports_dir / spec); + if (auto scf = found_scf.get()) + { + if (scf->get()->core_paragraph->name == spec) + { + SourceControlFileLocation scfl{ std::move(*scf), ports_dir / spec }; + auto it = cache.emplace(spec, std::move(scfl)); + return it.first->second; + } + } } + return nullopt; } + std::vector PathsPortFileProvider::load_all_control_files() const + { + // Reload cache with ports contained in all ports_dirs + cache.clear(); + std::vector ret; + for (auto&& ports_dir : ports_dirs) + { + // Try loading individual port + if (filesystem.exists(ports_dir / "CONTROL")) + { + auto maybe_scf = Paragraphs::try_load_port(filesystem, ports_dir); + if (auto scf = maybe_scf.get()) + { + auto port_name = scf->get()->core_paragraph->name; + if (cache.find(port_name) == cache.end()) + { + SourceControlFileLocation scfl{ std::move(*scf), ports_dir }; + auto it = cache.emplace(port_name, std::move(scfl)); + ret.emplace_back(&it.first->second); + } + } + else + { + vcpkg::print_error_message(maybe_scf.error()); + Checks::exit_with_message(VCPKG_LINE_INFO, + "Error: Failed to load port from %s", + ports_dir.u8string()); + } + continue; + } + + // Try loading all ports inside ports_dir + auto found_scf = Paragraphs::load_all_ports(filesystem, ports_dir); + for (auto&& scf : found_scf) + { + auto port_name = scf->core_paragraph->name; + if (cache.find(port_name) == cache.end()) + { + SourceControlFileLocation scfl{ std::move(scf), ports_dir / port_name }; + auto it = cache.emplace(port_name, std::move(scfl)); + ret.emplace_back(&it.first->second); + } + } + } + return ret; + } + std::vector create_remove_plan(const std::vector& specs, const StatusParagraphs& status_db) { @@ -495,10 +605,11 @@ namespace vcpkg::Dependencies VCPKG_LINE_INFO, "Error: Cannot find definition for package `%s`.", cluster.spec.name()); } + auto&& control_file = *p_source->scfl->source_control_file.get(); if (feature.empty()) { // Add default features for this package. This is an exact reference, so ignore prevent_default_features. - for (auto&& default_feature : p_source->scf->core_paragraph.get()->default_features) + for (auto&& default_feature : control_file.core_paragraph.get()->default_features) { auto res = mark_plus(default_feature, cluster, graph, graph_plan, prevent_default_features); if (res != MarkPlusResult::SUCCESS) @@ -513,7 +624,7 @@ namespace vcpkg::Dependencies if (feature == "*") { - for (auto&& fpgh : p_source->scf->feature_paragraphs) + for (auto&& fpgh : control_file.feature_paragraphs) { auto res = mark_plus(fpgh->name, cluster, graph, graph_plan, prevent_default_features); @@ -590,7 +701,8 @@ namespace vcpkg::Dependencies // Check if any default features have been added auto& previous_df = p_installed->ipv.core->package.default_features; - for (auto&& default_feature : p_source->scf->core_paragraph->default_features) + auto&& control_file = *p_source->scfl->source_control_file.get(); + for (auto&& default_feature : control_file.core_paragraph->default_features) { if (std::find(previous_df.begin(), previous_df.end(), default_feature) == previous_df.end()) { @@ -635,7 +747,7 @@ namespace vcpkg::Dependencies /// Map of all source control files in the current environment. /// Feature specifications to resolve dependencies for. /// Status of installed packages in the current environment. - std::vector create_feature_install_plan(const std::unordered_map& map, + std::vector create_feature_install_plan(const std::unordered_map& map, const std::vector& specs, const StatusParagraphs& status_db) { @@ -698,7 +810,11 @@ namespace vcpkg::Dependencies if (p_cluster->transient_uninstalled) { // If it will be transiently uninstalled, we need to issue a full installation command - auto pscf = p_cluster->source.value_or_exit(VCPKG_LINE_INFO).scf; + auto* pscfl = p_cluster->source.value_or_exit(VCPKG_LINE_INFO).scfl; + Checks::check_exit(VCPKG_LINE_INFO, + pscfl != nullptr, + "Error: Expected a SourceControlFileLocation to exist"); + auto&& scfl = *pscfl; auto dep_specs = Util::fmap(m_graph_plan->install_graph.adjacency_list(p_cluster), [](ClusterPtr const& p) { return p->spec; }); @@ -706,7 +822,7 @@ namespace vcpkg::Dependencies plan.emplace_back(InstallPlanAction{ p_cluster->spec, - *pscf, + scfl, p_cluster->to_install_features, p_cluster->request_type, std::move(dep_specs), diff --git a/toolsrc/src/vcpkg/export.cpp b/toolsrc/src/vcpkg/export.cpp index 23fc7441a62d2c..88c1526c5cc6a3 100644 --- a/toolsrc/src/vcpkg/export.cpp +++ b/toolsrc/src/vcpkg/export.cpp @@ -488,7 +488,10 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console // create the plan const StatusParagraphs status_db = database_load_check(paths); - Dependencies::PathsPortFileProvider provider(paths); + + // Load ports from ports dirs + Dependencies::PathsPortFileProvider provider(paths, args.overlay_ports.get()); + std::vector export_plan = Dependencies::create_export_plan(opts.specs, status_db); Checks::check_exit(VCPKG_LINE_INFO, !export_plan.empty(), "Export plan cannot be empty"); diff --git a/toolsrc/src/vcpkg/help.cpp b/toolsrc/src/vcpkg/help.cpp index b92e9ca59c5c01..6ee573dfccdf9a 100644 --- a/toolsrc/src/vcpkg/help.cpp +++ b/toolsrc/src/vcpkg/help.cpp @@ -111,10 +111,12 @@ namespace vcpkg::Help " vcpkg contact Display contact information to send feedback\n" "\n" "Options:\n" - " --triplet Specify the target architecture triplet.\n" + " --triplet Specify the target architecture triplet\n" " (default: " ENVVAR(VCPKG_DEFAULT_TRIPLET) // ", see 'vcpkg help triplet')\n" "\n" + " --overlay-ports= Specify directories to be used when searching for ports\n" + "\n" " --vcpkg-root Specify the vcpkg root " "directory\n" " (default: " ENVVAR(VCPKG_ROOT) // diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index 88b15fe7a21e85..781629236a8c2a 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -330,9 +330,10 @@ namespace vcpkg::Install System::printf("Building package %s...\n", display_name_with_features); auto result = [&]() -> Build::ExtendedBuildResult { - const Build::BuildPackageConfig build_config{action.source_control_file.value_or_exit(VCPKG_LINE_INFO), + const auto& scfl = action.source_control_file_location.value_or_exit(VCPKG_LINE_INFO); + const Build::BuildPackageConfig build_config{*scfl.source_control_file, action.spec.triplet(), - paths.port_dir(action.spec), + static_cast(scfl.source_location), action.build_options, action.feature_list}; return Build::build_package(paths, build_config, status_db); @@ -652,13 +653,10 @@ namespace vcpkg::Install Build::FailOnTombstone::NO, }; - auto all_ports = Paragraphs::load_all_ports(fs, paths.ports); - std::unordered_map scf_map; - for (auto&& port : all_ports) - scf_map[port->core_paragraph->name] = std::move(*port); - MapPortFileProvider provider(scf_map); + //// Load ports from ports dirs + PathsPortFileProvider provider(paths, args.overlay_ports.get()); - // Note: action_plan will hold raw pointers to SourceControlFiles from this map + // Note: action_plan will hold raw pointers to SourceControlFileLocations from this map std::vector action_plan = create_feature_install_plan(provider, FullPackageSpec::to_feature_specs(specs), status_db); diff --git a/toolsrc/src/vcpkg/postbuildlint.cpp b/toolsrc/src/vcpkg/postbuildlint.cpp index d6581c2b4d19cb..c760a034f3e100 100644 --- a/toolsrc/src/vcpkg/postbuildlint.cpp +++ b/toolsrc/src/vcpkg/postbuildlint.cpp @@ -857,14 +857,15 @@ namespace vcpkg::PostBuildLint size_t perform_all_checks(const PackageSpec& spec, const VcpkgPaths& paths, const PreBuildInfo& pre_build_info, - const BuildInfo& build_info) + const BuildInfo& build_info, + const fs::path& port_dir) { System::print2("-- Performing post-build validation\n"); const size_t error_count = perform_all_checks_and_return_error_count(spec, paths, pre_build_info, build_info); if (error_count != 0) { - const fs::path portfile = paths.ports / spec.name() / "portfile.cmake"; + const fs::path portfile = port_dir / "portfile.cmake"; System::print2(System::Color::error, "Found ", error_count, diff --git a/toolsrc/src/vcpkg/remove.cpp b/toolsrc/src/vcpkg/remove.cpp index f997667ace7eeb..a40b27bd745bf2 100644 --- a/toolsrc/src/vcpkg/remove.cpp +++ b/toolsrc/src/vcpkg/remove.cpp @@ -229,7 +229,8 @@ namespace vcpkg::Remove Checks::exit_fail(VCPKG_LINE_INFO); } - Dependencies::PathsPortFileProvider provider(paths); + // Load ports from ports dirs + Dependencies::PathsPortFileProvider provider(paths, args.overlay_ports.get()); specs = Util::fmap(Update::find_outdated_packages(provider, status_db), [](auto&& outdated) { return outdated.spec; }); diff --git a/toolsrc/src/vcpkg/update.cpp b/toolsrc/src/vcpkg/update.cpp index 2c52d595245cc2..6320bae5b7991d 100644 --- a/toolsrc/src/vcpkg/update.cpp +++ b/toolsrc/src/vcpkg/update.cpp @@ -23,10 +23,10 @@ namespace vcpkg::Update for (auto&& ipv : installed_packages) { const auto& pgh = ipv.core; - auto maybe_scf = provider.get_control_file(pgh->package.spec.name()); - if (auto p_scf = maybe_scf.get()) + auto maybe_scfl = provider.get_control_file(pgh->package.spec.name()); + if (auto p_scfl = maybe_scfl.get()) { - auto&& port_version = p_scf->core_paragraph->version; + auto&& port_version = p_scfl->source_control_file->core_paragraph->version; auto&& installed_version = pgh->package.version; if (installed_version != port_version) { @@ -57,7 +57,7 @@ namespace vcpkg::Update const StatusParagraphs status_db = database_load_check(paths); - Dependencies::PathsPortFileProvider provider(paths); + Dependencies::PathsPortFileProvider provider(paths, args.overlay_ports.get()); const auto outdated_packages = SortedVector(find_outdated_packages(provider, status_db), &OutdatedPackage::compare_by_name); diff --git a/toolsrc/src/vcpkg/vcpkgcmdarguments.cpp b/toolsrc/src/vcpkg/vcpkgcmdarguments.cpp index 8565c28f97fef4..21bf4d02852117 100644 --- a/toolsrc/src/vcpkg/vcpkgcmdarguments.cpp +++ b/toolsrc/src/vcpkg/vcpkgcmdarguments.cpp @@ -45,6 +45,45 @@ namespace vcpkg option_field = new_setting; } + static void parse_multivalue(const std::string* arg_begin, + const std::string* arg_end, + const std::string& option_name, + std::unique_ptr>& option_field) + { + if (arg_begin == arg_end) + { + System::print2(System::Color::error, "Error: expected value after ", option_name, '\n'); + Metrics::g_metrics.lock()->track_property("error", "error option name"); + Help::print_usage(); + Checks::exit_fail(VCPKG_LINE_INFO); + } + + if (!option_field) + { + option_field = std::make_unique>(); + } + option_field->emplace_back(*arg_begin); + } + + static void parse_cojoined_multivalue(std::string new_value, + const std::string& option_name, + std::unique_ptr>& option_field) + { + if (new_value.empty()) + { + System::print2(System::Color::error, "Error: expected value after ", option_name, '\n'); + Metrics::g_metrics.lock()->track_property("error", "error option name"); + Help::print_usage(); + Checks::exit_fail(VCPKG_LINE_INFO); + } + + if (!option_field) + { + option_field = std::make_unique>(); + } + option_field->emplace_back(std::move(new_value)); + } + VcpkgCmdArguments VcpkgCmdArguments::create_from_command_line(const int argc, const CommandLineCharType* const* const argv) { @@ -117,6 +156,13 @@ namespace vcpkg parse_value(arg_begin, arg_end, "--triplet", args.triplet); continue; } + if (Strings::starts_with(arg, "--overlay-ports=")) + { + parse_cojoined_multivalue(arg.substr(sizeof("--overlay-ports=") - 1), + "--overlay-ports", + args.overlay_ports); + continue; + } if (arg == "--debug") { parse_switch(true, "debug", args.debug); @@ -166,7 +212,21 @@ namespace vcpkg const auto eq_pos = arg.find('='); if (eq_pos != std::string::npos) { - args.optional_command_arguments.emplace(arg.substr(0, eq_pos), arg.substr(eq_pos + 1)); + const auto& key = arg.substr(0, eq_pos); + const auto& value = arg.substr(eq_pos + 1); + + auto it = args.optional_command_arguments.find(key); + if (args.optional_command_arguments.end() == it) + { + args.optional_command_arguments.emplace(key, std::vector { value }); + } + else + { + if (auto* maybe_values = it->second.get()) + { + maybe_values->emplace_back(value); + } + } } else { @@ -264,7 +324,51 @@ namespace vcpkg } else { - output.settings.emplace(option.name, it->second.value_or_exit(VCPKG_LINE_INFO)); + const auto& value = it->second.value_or_exit(VCPKG_LINE_INFO); + if (value.front().empty()) + { + // Fail when not given a value, e.g.: "vcpkg install sqlite3 --additional-ports=" + System::printf( + System::Color::error, "Error: The option '%s' must be passed an argument.\n", option.name); + failed = true; + } + else + { + output.settings.emplace(option.name, value.front()); + options_copy.erase(it); + } + } + } + } + + for (auto&& option : command_structure.options.multisettings) + { + const auto it = options_copy.find(option.name); + if (it != options_copy.end()) + { + if (!it->second.has_value()) + { + // Not having a string value indicates it was passed like '--a' + System::printf( + System::Color::error, "Error: The option '%s' must be passed an argument.\n", option.name); + failed = true; + } + else + { + const auto& value = it->second.value_or_exit(VCPKG_LINE_INFO); + for (auto&& v : value) + { + if (v.empty()) + { + System::printf( + System::Color::error, "Error: The option '%s' must be passed an argument.\n", option.name); + failed = true; + } + else + { + output.multisettings[option.name].emplace_back(v); + } + } options_copy.erase(it); } } @@ -306,7 +410,14 @@ namespace vcpkg { System::printf(" %-40s %s\n", (option.name + "=..."), option.short_help_text); } + for (auto&& option : command_structure.options.multisettings) + { + System::printf(" %-40s %s\n", (option.name + "=..."), option.short_help_text); + } System::printf(" %-40s %s\n", "--triplet ", "Set the default triplet for unqualified packages"); + System::printf(" %-40s %s\n", + "--overlay-ports=", + "Specify directories to be used when searching for ports"); System::printf(" %-40s %s\n", "--vcpkg-root ", "Specify the vcpkg directory to use instead of current directory or tool directory"); diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index 512bcfc35ca88b..562a18c9bada49 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -81,9 +81,6 @@ namespace vcpkg fs::path VcpkgPaths::package_dir(const PackageSpec& spec) const { return this->packages / spec.dir(); } - fs::path VcpkgPaths::port_dir(const PackageSpec& spec) const { return this->ports / spec.name(); } - fs::path VcpkgPaths::port_dir(const std::string& name) const { return this->ports / name; } - fs::path VcpkgPaths::build_info_file_path(const PackageSpec& spec) const { return this->package_dir(spec) / "BUILD_INFO"; diff --git a/toolsrc/vcpkg/vcpkg.vcxproj b/toolsrc/vcpkg/vcpkg.vcxproj index 8edea2244f2fa2..06d849a740d8b4 100644 --- a/toolsrc/vcpkg/vcpkg.vcxproj +++ b/toolsrc/vcpkg/vcpkg.vcxproj @@ -21,8 +21,8 @@ {34671B80-54F9-46F5-8310-AC429C11D4FB} vcpkg - 8.1 - v140 + 10.0 + v142 diff --git a/toolsrc/vcpkglib/vcpkglib.vcxproj b/toolsrc/vcpkglib/vcpkglib.vcxproj index a64eb42fd24e67..2a6853b8a99a02 100644 --- a/toolsrc/vcpkglib/vcpkglib.vcxproj +++ b/toolsrc/vcpkglib/vcpkglib.vcxproj @@ -21,8 +21,8 @@ {B98C92B7-2874-4537-9D46-D14E5C237F04} vcpkglib - 8.1 - v140 + 10.0 + v142 diff --git a/toolsrc/vcpkgmetricsuploader/vcpkgmetricsuploader.vcxproj b/toolsrc/vcpkgmetricsuploader/vcpkgmetricsuploader.vcxproj index e533d0e15d6062..2e689c7fca0913 100644 --- a/toolsrc/vcpkgmetricsuploader/vcpkgmetricsuploader.vcxproj +++ b/toolsrc/vcpkgmetricsuploader/vcpkgmetricsuploader.vcxproj @@ -21,8 +21,8 @@ {7D6FDEEB-B299-4A23-85EE-F67C4DED47BE} vcpkgmetricsuploader - 8.1 - v140 + 10.0 + v142 diff --git a/toolsrc/vcpkgtest/vcpkgtest.vcxproj b/toolsrc/vcpkgtest/vcpkgtest.vcxproj index 4cda2946186bbe..a7517ec541cd55 100644 --- a/toolsrc/vcpkgtest/vcpkgtest.vcxproj +++ b/toolsrc/vcpkgtest/vcpkgtest.vcxproj @@ -48,8 +48,8 @@ {F27B8DB0-1279-4AF8-A2E3-1D49C4F0220D} Win32Proj vcpkgtest - 8.1 - v140 + 10.0 + v142 @@ -84,7 +84,7 @@ - + $(SolutionDir)msbuild.x86.debug\$(ProjectName)\ $(SolutionDir)msbuild.x86.debug\ From 17b8cd9d0520ba5941d25de7e1373b62f7e53b5c Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Sat, 22 Jun 2019 23:30:45 -0700 Subject: [PATCH 079/123] [ppconsul] remove conflict with json11 (#6967) * [ppconsol] remove conflict with json11 --- ports/json11/CONTROL | 2 +- ports/json11/destination.patch | 14 ++++ ports/json11/json11-config.cmake | 25 ++++++++ ports/json11/portfile.cmake | 3 + ports/ppconsul/CONTROL | 4 +- ports/ppconsul/cmake_build.patch | 107 ++++++++++++++++++++----------- ports/ppconsul/portfile.cmake | 4 ++ 7 files changed, 119 insertions(+), 40 deletions(-) create mode 100644 ports/json11/destination.patch create mode 100644 ports/json11/json11-config.cmake diff --git a/ports/json11/CONTROL b/ports/json11/CONTROL index d624f9e7be24e8..34cee37de0c59b 100644 --- a/ports/json11/CONTROL +++ b/ports/json11/CONTROL @@ -1,3 +1,3 @@ Source: json11 -Version: 2017-06-20-1 +Version: 2017-06-20-2 Description: json11 is a tiny JSON library for C++11, providing JSON parsing and serialization. diff --git a/ports/json11/destination.patch b/ports/json11/destination.patch new file mode 100644 index 00000000000000..6d1630329245e8 --- /dev/null +++ b/ports/json11/destination.patch @@ -0,0 +1,14 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 819c36f..847489e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -52,6 +52,6 @@ if (JSON11_BUILD_TESTS) + target_link_libraries(json11_test json11) + endif() + +-install(TARGETS json11 DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE}) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/json11.hpp" DESTINATION include/${CMAKE_LIBRARY_ARCHITECTURE}) +-install(FILES "${CMAKE_CURRENT_BINARY_DIR}/json11.pc" DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE}/pkgconfig) ++install(TARGETS json11 DESTINATION lib) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/json11.hpp" DESTINATION include) ++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/json11.pc" DESTINATION lib/pkgconfig) diff --git a/ports/json11/json11-config.cmake b/ports/json11/json11-config.cmake new file mode 100644 index 00000000000000..0bc3bb27ca47e8 --- /dev/null +++ b/ports/json11/json11-config.cmake @@ -0,0 +1,25 @@ +get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) + +if(NOT JSON11_FIND_COMPONENTS) + set(JSON11_FIND_COMPONENTS json11 json11) + if(JSON11_FIND_REQUIRED) + set(JSON11_FIND_REQUIRED_json11 TRUE) + endif() + + set(JSON11_FOUND TRUE) +endif() + +set(JSON11_INCLUDE_DIRS ${_DIR}/../../include) +set(JSON11_LIBRARIES) +if (EXISTS ${_DIR}/../../lib/libjson11.a) + list(APPEND JSON11_LIBRARIES optimized ${_DIR}/../../lib/libjson11.a) +endif() +if (EXISTS ${_DIR}/../../debug/lib/libjson11.a) + list(APPEND JSON11_LIBRARIES debug ${_DIR}/../../debug/lib/libjson11.a) +endif() +if (EXISTS ${_DIR}/../../lib/json11.lib) + list(APPEND JSON11_LIBRARIES optimized ${_DIR}/../../lib/json11.lib) +endif() +if (EXISTS ${_DIR}/../../debug/lib/json11.lib) + list(APPEND JSON11_LIBRARIES debug ${_DIR}/../../debug/lib/json11.lib) +endif() diff --git a/ports/json11/portfile.cmake b/ports/json11/portfile.cmake index f6592693a2f033..a3c2b9cabd7c08 100644 --- a/ports/json11/portfile.cmake +++ b/ports/json11/portfile.cmake @@ -8,6 +8,7 @@ vcpkg_from_github( REF ec4e45219af1d7cde3d58b49ed762376fccf1ace SHA512 2129e048d8dee027dc1ba789d9901e017b7d698465e15236802ef68639161e1cc7c8665d5f50079333801717fd41ffbe2cb90fa2165b9a85629e8ced8f2b3cd8 HEAD_REF master + PATCHES destination.patch ) vcpkg_configure_cmake( @@ -20,6 +21,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +file(INSTALL ${CURRENT_PORT_DIR}/json11-config.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/json11) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # Handle copyright diff --git a/ports/ppconsul/CONTROL b/ports/ppconsul/CONTROL index 4591b6a0153bca..cc122ecf6df517 100644 --- a/ports/ppconsul/CONTROL +++ b/ports/ppconsul/CONTROL @@ -1,5 +1,5 @@ Source: ppconsul -Version: 0.3 +Version: 0.3-1 Homepage: https://github.com/oliora/ppconsul Description: A C++ client library for Consul. Consul is a distributed tool for discovering and configuring services in your infrastructure. -Build-Depends: boost-core, boost-variant, curl[openssl] +Build-Depends: boost-core, boost-variant, curl[openssl], json11 diff --git a/ports/ppconsul/cmake_build.patch b/ports/ppconsul/cmake_build.patch index f607e37e42c186..95c795743b71ab 100644 --- a/ports/ppconsul/cmake_build.patch +++ b/ports/ppconsul/cmake_build.patch @@ -1,37 +1,70 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 92e4698..002981e 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -75,6 +75,8 @@ else () - set (CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "${CURL_ROOT}/lib") - endif () - find_package(CURL REQUIRED) -+ find_package(OpenSSL REQUIRED) -+ find_package(ZLIB REQUIRED) - endif () - - set(LIBB64_DIR "${PROJECT_SOURCE_DIR}/ext/b64") -@@ -89,7 +91,6 @@ endif() - - add_subdirectory(ext/json11) - add_subdirectory(src) --add_subdirectory(tests) - - install( - DIRECTORY "${HEADERS_DIR}" -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 8e24aab..beaac68 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -85,7 +85,10 @@ if (${USE_CPPNETLIB}) - target_link_libraries(${PROJECT_NAME} PRIVATE ${CPPNETLIB_LIBRARIES}) - else () - target_include_directories(${PROJECT_NAME} PRIVATE ${CURL_INCLUDE_DIR}) -- target_link_libraries(${PROJECT_NAME} PRIVATE ${CURL_LIBRARIES}) -+ target_link_libraries(${PROJECT_NAME} PRIVATE ${CURL_LIBRARIES} ${OPENSSL_LIBRARIES} ZLIB::ZLIB) -+ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") -+ target_link_libraries(${PROJECT_NAME} PRIVATE "-framework CoreFoundation" "-framework Security") -+ endif () - endif () - - source_group(${PROJECT_NAME} FILES ${SOURCES}) +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 92e4698..aa643aa 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -52,6 +52,8 @@ endif() + + enable_testing() + ++find_package(json11 REQUIRED) ++ + if (${USE_CPPNETLIB}) + find_package(Boost ${BOOST_MIN_VERSION} REQUIRED COMPONENTS thread filesystem system date_time chrono regex) + +@@ -75,6 +77,8 @@ else () + set (CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "${CURL_ROOT}/lib") + endif () + find_package(CURL REQUIRED) ++ find_package(OpenSSL REQUIRED) ++ find_package(ZLIB REQUIRED) + endif () + + set(LIBB64_DIR "${PROJECT_SOURCE_DIR}/ext/b64") +@@ -87,9 +91,7 @@ if (WIN32 AND NOT BUILD_STATIC_LIB) + message(FATAL_ERROR "Building Ppconsul as dynamic library on Windows is not supported, see https://github.com/oliora/ppconsul/issues/25") + endif() + +-add_subdirectory(ext/json11) + add_subdirectory(src) +-add_subdirectory(tests) + + install( + DIRECTORY "${HEADERS_DIR}" +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index d747100..966c7e2 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -78,7 +78,7 @@ target_include_directories(${PROJECT_NAME} + + target_link_libraries(${PROJECT_NAME} + PRIVATE +- json11 ++ ${JSON11_LIBRARIES} + ${Boost_LIBRARIES} + ) + +@@ -87,7 +87,10 @@ if (${USE_CPPNETLIB}) + target_link_libraries(${PROJECT_NAME} PRIVATE ${CPPNETLIB_LIBRARIES}) + else () + target_include_directories(${PROJECT_NAME} PRIVATE ${CURL_INCLUDE_DIR}) +- target_link_libraries(${PROJECT_NAME} PRIVATE ${CURL_LIBRARIES}) ++ target_link_libraries(${PROJECT_NAME} PRIVATE ${CURL_LIBRARIES} ${OPENSSL_LIBRARIES} ZLIB::ZLIB) ++ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") ++ target_link_libraries(${PROJECT_NAME} PRIVATE "-framework CoreFoundation" "-framework Security") ++ endif () + endif () + + source_group(${PROJECT_NAME} FILES ${SOURCES}) +diff --git a/src/s11n.h b/src/s11n.h +index 962a1ac..6ab7f3b 100644 +--- a/src/s11n.h ++++ b/src/s11n.h +@@ -6,7 +6,7 @@ + + #include "ppconsul/config.h" + #include "ppconsul/error.h" +-#include ++#include + #include + #include + #include diff --git a/ports/ppconsul/portfile.cmake b/ports/ppconsul/portfile.cmake index 43e7eaecad09ad..a1290019fe8206 100644 --- a/ports/ppconsul/portfile.cmake +++ b/ports/ppconsul/portfile.cmake @@ -9,6 +9,10 @@ vcpkg_from_github( PATCHES "cmake_build.patch" ) +# Force the use of the vcpkg installed versions +file(REMOVE_RECURSE ${SOURCE_PATH}/ext/json11) +file(REMOVE_RECURSE ${SOURCE_PATH}/ext/catch) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA From 25f628e05f8f6a838b68ad25cc52a4ee221bd8ec Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Tue, 25 Jun 2019 01:46:37 +0800 Subject: [PATCH 080/123] [flann]Upgrade version to 1.9.1 and fix build error. (#6931) * [flann]Upgrade version to 1.9.1 and fix build error. * [flann]apply new patches. * [flann]Regenerate patches. * [flann]Combine all patches. --- ports/flann/CONTROL | 2 +- ...ix_targets.patch => fix-build-error.patch} | 109 ++++++------------ ports/flann/portfile.cmake | 7 +- 3 files changed, 41 insertions(+), 77 deletions(-) rename ports/flann/{fix_targets.patch => fix-build-error.patch} (71%) diff --git a/ports/flann/CONTROL b/ports/flann/CONTROL index fd8ecebc1fc7dd..c2aba2e18a3d4f 100644 --- a/ports/flann/CONTROL +++ b/ports/flann/CONTROL @@ -1,5 +1,5 @@ Source: flann -Version: jan2019 +Version: 1.9.1 Homepage: https://github.com/mariusmuja/flann Build-Depends: lz4 Description: Fast Library for Approximate Nearest Neighbors diff --git a/ports/flann/fix_targets.patch b/ports/flann/fix-build-error.patch similarity index 71% rename from ports/flann/fix_targets.patch rename to ports/flann/fix-build-error.patch index b9ebe7cb7d60c2..f4867cba95a8b6 100644 --- a/ports/flann/fix_targets.patch +++ b/ports/flann/fix-build-error.patch @@ -1,19 +1,19 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index f4b94d2..e55195b 100644 +index f4b94d2..7ff331a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -146,9 +146,6 @@ if (BUILD_CUDA_LIB) +@@ -146,8 +146,7 @@ if (BUILD_CUDA_LIB) endif(CUDA_FOUND) endif(BUILD_CUDA_LIB) -find_package(PkgConfig REQUIRED) -pkg_check_modules(LZ4 REQUIRED liblz4) -- ++find_package(lz4 REQUIRED) + #set the C/C++ include path to the "include" directory include_directories(BEFORE ${PROJECT_SOURCE_DIR}/src/cpp) - diff --git a/cmake/Config.cmake.in b/cmake/Config.cmake.in -index 6b95a71..2c95b6e 100644 +index 6b95a71..778aec4 100644 --- a/cmake/Config.cmake.in +++ b/cmake/Config.cmake.in @@ -3,3 +3,5 @@ @@ -22,8 +22,9 @@ index 6b95a71..2c95b6e 100644 +include(CMakeFindDependencyMacro) +find_dependency(lz4) +\ No newline at end of file diff --git a/cmake/flann_utils.cmake b/cmake/flann_utils.cmake -index afe4742..0cf8289 100644 +index afe4742..8aef8e0 100644 --- a/cmake/flann_utils.cmake +++ b/cmake/flann_utils.cmake @@ -1,8 +1,7 @@ @@ -37,26 +38,8 @@ index afe4742..0cf8289 100644 endmacro(GET_OS_INFO) -@@ -27,7 +26,7 @@ macro(find_hdf5) - set( HDF5_IS_PARALLEL FALSE ) - foreach( _dir ${HDF5_INCLUDE_DIRS} ) - if( EXISTS "${_dir}/H5pubconf.h" ) -- file( STRINGS "${_dir}/H5pubconf.h" -+ file( STRINGS "${_dir}/H5pubconf.h" - HDF5_HAVE_PARALLEL_DEFINE - REGEX "HAVE_PARALLEL 1" ) - if( HDF5_HAVE_PARALLEL_DEFINE ) -@@ -106,7 +105,7 @@ endmacro(flann_add_pyunit) - - macro(flann_download_test_data _name _md5) - string(REPLACE "/" "_" _dataset_name dataset_${_name}) -- -+ - add_custom_target(${_dataset_name} - COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/bin/download_checkmd5.py http://people.cs.ubc.ca/~mariusm/uploads/FLANN/datasets/${_name} ${TEST_OUTPUT_PATH}/${_name} ${_md5} - VERBATIM) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt -index 3f4655a..918b94a 100644 +index 3f4655a..bc1d758 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -1,9 +1,10 @@ @@ -89,19 +72,19 @@ index 3f4655a..918b94a 100644 target_link_libraries(flann_example_mpi flann_cpp ${HDF5_LIBRARIES} ${MPI_LIBRARIES} ${Boost_LIBRARIES}) add_dependencies(examples flann_example_mpi) -@@ -36,7 +37,3 @@ if (HDF5_FOUND) - else() - message("hdf5 library not found, not compiling flann_example.cpp") - endif() -- -- -- -- diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt -index b30f3da..1535d37 100644 +index b421abb..78f9a64 100644 --- a/src/cpp/CMakeLists.txt +++ b/src/cpp/CMakeLists.txt -@@ -8,12 +8,13 @@ file(GLOB_RECURSE C_SOURCES flann.cpp) +@@ -1,6 +1,6 @@ + #include_directories(${CMAKE_SOURCE_DIR}/include algorithms ext util nn .) + +-add_definitions(-D_FLANN_VERSION=${FLANN_VERSION}) ++add_definitions(-D_FLANN_VERSION=${FLANN_VERSION} -std=c++11) + + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/flann/config.h.in ${CMAKE_CURRENT_SOURCE_DIR}/flann/config.h) + +@@ -8,12 +8,11 @@ file(GLOB_RECURSE C_SOURCES flann.cpp) file(GLOB_RECURSE CPP_SOURCES flann_cpp.cpp) file(GLOB_RECURSE CU_SOURCES *.cu) @@ -112,16 +95,14 @@ index b30f3da..1535d37 100644 -endif() -set_property(TARGET flann_cpp_s PROPERTY COMPILE_DEFINITIONS FLANN_STATIC FLANN_USE_CUDA) +find_package(lz4 REQUIRED) -+ +set(CMAKE_POSITION_INDEPENDENT_CODE ON) -+ +add_library(flann_cpp STATIC ${CPP_SOURCES}) +target_link_libraries(flann_cpp PRIVATE lz4::lz4) +set_property(TARGET flann_cpp PROPERTY COMPILE_DEFINITIONS FLANN_STATIC) if (BUILD_CUDA_LIB) SET(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS};-DFLANN_USE_CUDA") -@@ -25,48 +26,11 @@ if (BUILD_CUDA_LIB) +@@ -25,45 +24,9 @@ if (BUILD_CUDA_LIB) else() set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS};" ) endif() @@ -169,46 +150,27 @@ index b30f3da..1535d37 100644 + set_property(TARGET flann_cpp PROPERTY COMPILE_DEFINITIONS FLANN_USE_CUDA) endif() -- - if (USE_MPI AND HDF5_IS_PARALLEL) - add_executable(flann_mpi_server flann/mpi/flann_mpi_server.cpp) - target_link_libraries(flann_mpi_server flann_cpp ${HDF5_LIBRARIES} ${MPI_LIBRARIES} ${Boost_LIBRARIES}) -@@ -80,31 +44,9 @@ endif() + +@@ -80,6 +43,7 @@ endif() if (BUILD_C_BINDINGS) -- add_library(flann_s STATIC ${C_SOURCES}) -- target_link_libraries(flann_cpp -Wl,--push-state,--no-as-needed ${LZ4_LIBRARIES} -Wl,--pop-state) -- if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG) -- set_target_properties(flann_s PROPERTIES COMPILE_FLAGS -fPIC) -- endif() -- set_property(TARGET flann_s PROPERTY COMPILE_DEFINITIONS FLANN_STATIC) -- -- if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC) -- add_library(flann SHARED "") -- set_target_properties(flann PROPERTIES LINKER_LANGUAGE CXX) -- target_link_libraries(flann -Wl,-whole-archive flann_s -Wl,-no-whole-archive) -- else() -- add_library(flann SHARED ${C_SOURCES}) -- target_link_libraries(flann_cpp -Wl,--push-state,--no-as-needed ${LZ4_LIBRARIES} -Wl,--pop-state) -- -- if(MINGW AND OPENMP_FOUND) -- target_link_libraries(flann gomp) -- endif() -- endif() -- -- set_target_properties(flann PROPERTIES -- VERSION ${FLANN_VERSION} -- SOVERSION ${FLANN_SOVERSION} -- DEFINE_SYMBOL FLANN_EXPORTS -- ) ++ if (0) + add_library(flann_s STATIC ${C_SOURCES}) + target_link_libraries(flann_s -Wl,--push-state,--no-as-needed ${LZ4_LIBRARIES} -Wl,--pop-state) + if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG) +@@ -105,6 +69,10 @@ if (BUILD_C_BINDINGS) + SOVERSION ${FLANN_SOVERSION} + DEFINE_SYMBOL FLANN_EXPORTS + ) ++ endif() + add_library(flann STATIC ${C_SOURCES}) + target_link_libraries(flann PRIVATE lz4::lz4) + set_property(TARGET flann PROPERTY COMPILE_DEFINITIONS FLANN_STATIC) endif() if(WIN32) -@@ -118,9 +60,9 @@ endif(WIN32) +@@ -118,9 +86,9 @@ endif(WIN32) install ( @@ -220,7 +182,7 @@ index b30f3da..1535d37 100644 RUNTIME DESTINATION bin LIBRARY DESTINATION ${FLANN_LIB_INSTALL_DIR} ARCHIVE DESTINATION ${FLANN_LIB_INSTALL_DIR} -@@ -128,9 +70,9 @@ install ( +@@ -128,9 +96,9 @@ install ( if (BUILD_CUDA_LIB) install ( @@ -232,12 +194,15 @@ index b30f3da..1535d37 100644 RUNTIME DESTINATION bin LIBRARY DESTINATION ${FLANN_LIB_INSTALL_DIR} ARCHIVE DESTINATION ${FLANN_LIB_INSTALL_DIR} -@@ -139,7 +81,7 @@ endif() +@@ -139,9 +107,9 @@ endif() if (BUILD_C_BINDINGS) install ( - TARGETS flann flann_s + TARGETS flann EXPORT ${targets_export_name} - INCLUDES DESTINATION include +- INCLUDES DESTINATION include ++ INCLUDES DESTINATION ${FLANN_INCLUDE_INSTALL_DIR} RUNTIME DESTINATION bin + LIBRARY DESTINATION ${FLANN_LIB_INSTALL_DIR} + ARCHIVE DESTINATION ${FLANN_LIB_INSTALL_DIR} diff --git a/ports/flann/portfile.cmake b/ports/flann/portfile.cmake index 17770bd29b34dd..baf79035a324ea 100644 --- a/ports/flann/portfile.cmake +++ b/ports/flann/portfile.cmake @@ -7,11 +7,10 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mariusmuja/flann - REF aa40936816f4feaa714d3a09f92a495da017d95c - SHA512 f6f2e75f4ce4bc4bc4cc1feab27fe683b8a5f9f5dcea35de4df5136a683b5dff5e68776008821a16ccf1a52a9807cb053c0062deba4fe121948248acd52864ef + REF 1d04523268c388dabf1c0865d69e1b638c8c7d9d + SHA512 61e322222c2daa0b9677095e5ca231cba7c305ce754ad8e659eee350111c1e04351181c3af04e45ab6e5c9edea49c7b9ec6499bb0dbc080b87af36eb11c6ef7c HEAD_REF master - PATCHES - fix_targets.patch + PATCHES fix-build-error.patch ) vcpkg_configure_cmake( From 4f675eafb64afc103f7cb1dc14cbfe07a65559ec Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Tue, 25 Jun 2019 02:38:10 +0800 Subject: [PATCH 081/123] [libtins]Upgrade version to 4.2 and adds dependent ports to new version. (#7008) --- ports/libtins/CONTROL | 4 ++-- ports/libtins/portfile.cmake | 12 ++++++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/ports/libtins/CONTROL b/ports/libtins/CONTROL index 4bd5d3755cac9f..11cb86ea88ad8b 100644 --- a/ports/libtins/CONTROL +++ b/ports/libtins/CONTROL @@ -1,4 +1,4 @@ Source: libtins -Version: 4.0-3 +Version: 4.2 Description: High-level, multiplatform C++ network packet sniffing and crafting library -Build-Depends: winpcap (windows) +Build-Depends: winpcap (windows), boost-icl, boost-any diff --git a/ports/libtins/portfile.cmake b/ports/libtins/portfile.cmake index 1839d118c90510..dabd283d0b84df 100644 --- a/ports/libtins/portfile.cmake +++ b/ports/libtins/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mfontanini/libtins - REF v4.0 - SHA512 8a497617ca68f4bad331452778b92c51ce87e42d1ceae493ecd6799cabbe71609214ca962c4a8c83d205f76277f2a82f92d3d17341984caa1592cf237eb3cf3b + REF v4.2 + SHA512 46d07712604c780e418135c996f195046fd85a9e1411962c9bcee3c8d0fc64f494aa50164236ffd1e77ff8a398e9617bbf040b3e01a5771c5621c0faa1ce312f HEAD_REF master ) @@ -25,12 +25,16 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "windows" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") #Windows + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) +else() #Linux/Unix/Darwin + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/libtins) +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # Handle copyright -configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/libtins/copyright COPYONLY) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libtins RENAME copyright) # Post-build test for cmake libraries vcpkg_test_cmake(PACKAGE_NAME libtins) From 9e565e986789cf273de12fe1b07ce31800d10417 Mon Sep 17 00:00:00 2001 From: Victor Romero Date: Mon, 24 Jun 2019 12:09:48 -0700 Subject: [PATCH 082/123] [--overlay-ports] Show location of overriden ports during install plan (#7002) * [--overlay-ports] Show source location of overlayed ports during install plan * Code cleanup * Code cleanup --- toolsrc/include/vcpkg/dependencies.h | 4 ++- toolsrc/src/vcpkg/commands.ci.cpp | 2 +- toolsrc/src/vcpkg/commands.upgrade.cpp | 2 +- toolsrc/src/vcpkg/dependencies.cpp | 40 ++++++++++++++++++++++---- toolsrc/src/vcpkg/install.cpp | 2 +- 5 files changed, 41 insertions(+), 9 deletions(-) diff --git a/toolsrc/include/vcpkg/dependencies.h b/toolsrc/include/vcpkg/dependencies.h index 8c2050b3d1c82c..9641580268bdf5 100644 --- a/toolsrc/include/vcpkg/dependencies.h +++ b/toolsrc/include/vcpkg/dependencies.h @@ -199,5 +199,7 @@ namespace vcpkg::Dependencies const StatusParagraphs& status_db, const CreateInstallPlanOptions& options = {}); - void print_plan(const std::vector& action_plan, const bool is_recursive = true); + void print_plan(const std::vector& action_plan, + const bool is_recursive = true, + const fs::path& default_ports_dir = ""); } diff --git a/toolsrc/src/vcpkg/commands.ci.cpp b/toolsrc/src/vcpkg/commands.ci.cpp index 8cab79504a3771..c12c26ff7ba7ec 100644 --- a/toolsrc/src/vcpkg/commands.ci.cpp +++ b/toolsrc/src/vcpkg/commands.ci.cpp @@ -451,7 +451,7 @@ namespace vcpkg::Commands::CI if (is_dry_run) { - Dependencies::print_plan(action_plan); + Dependencies::print_plan(action_plan, true, paths.ports); } else { diff --git a/toolsrc/src/vcpkg/commands.upgrade.cpp b/toolsrc/src/vcpkg/commands.upgrade.cpp index 77183ceaf718cb..1e64b2eb69993d 100644 --- a/toolsrc/src/vcpkg/commands.upgrade.cpp +++ b/toolsrc/src/vcpkg/commands.upgrade.cpp @@ -171,7 +171,7 @@ namespace vcpkg::Commands::Upgrade } } - Dependencies::print_plan(plan, true); + Dependencies::print_plan(plan, true, paths.ports); if (!no_dry_run) { diff --git a/toolsrc/src/vcpkg/dependencies.cpp b/toolsrc/src/vcpkg/dependencies.cpp index df472515fd03e4..b604c9acfe3f6b 100644 --- a/toolsrc/src/vcpkg/dependencies.cpp +++ b/toolsrc/src/vcpkg/dependencies.cpp @@ -123,6 +123,27 @@ namespace vcpkg::Dependencies const PortFileProvider& m_provider; }; + std::string to_output_string(RequestType request_type, + const CStringView s, + const Build::BuildPackageOptions& options, + const fs::path& install_port_path, + const fs::path& default_port_path) + { + if (!default_port_path.empty() + && !Strings::case_insensitive_ascii_starts_with(install_port_path.u8string(), + default_port_path.u8string())) + { + const char* const from_head = options.use_head_version == Build::UseHeadVersion::YES ? " (from HEAD)" : ""; + switch (request_type) + { + case RequestType::AUTO_SELECTED: return Strings::format(" * %s%s -- %s", s, from_head, install_port_path.u8string()); + case RequestType::USER_REQUESTED: return Strings::format(" %s%s -- %s", s, from_head, install_port_path.u8string()); + default: Checks::unreachable(VCPKG_LINE_INFO); + } + } + return to_output_string(request_type, s, options); + } + std::string to_output_string(RequestType request_type, const CStringView s, const Build::BuildPackageOptions& options) @@ -131,7 +152,7 @@ namespace vcpkg::Dependencies switch (request_type) { - case RequestType::AUTO_SELECTED: return Strings::format(" * %s%s", s, from_head); + case RequestType::AUTO_SELECTED: return Strings::format(" * %s%s", s, from_head); case RequestType::USER_REQUESTED: return Strings::format(" %s%s", s, from_head); default: Checks::unreachable(VCPKG_LINE_INFO); } @@ -141,7 +162,7 @@ namespace vcpkg::Dependencies { switch (request_type) { - case RequestType::AUTO_SELECTED: return Strings::format(" * %s", s); + case RequestType::AUTO_SELECTED: return Strings::format(" * %s", s); case RequestType::USER_REQUESTED: return Strings::format(" %s", s); default: Checks::unreachable(VCPKG_LINE_INFO); } @@ -893,7 +914,7 @@ namespace vcpkg::Dependencies PackageGraph::~PackageGraph() = default; - void print_plan(const std::vector& action_plan, const bool is_recursive) + void print_plan(const std::vector& action_plan, const bool is_recursive, const fs::path& default_ports_dir) { std::vector remove_plans; std::vector rebuilt_plans; @@ -948,8 +969,17 @@ namespace vcpkg::Dependencies std::sort(already_installed_plans.begin(), already_installed_plans.end(), &InstallPlanAction::compare_by_name); std::sort(excluded.begin(), excluded.end(), &InstallPlanAction::compare_by_name); - static auto actions_to_output_string = [](const std::vector& v) { - return Strings::join("\n", v, [](const InstallPlanAction* p) { + static auto actions_to_output_string = [&](const std::vector& v) { + return Strings::join("\n", v, [&](const InstallPlanAction* p) { + if (auto * pscfl = p->source_control_file_location.get()) + { + return to_output_string(p->request_type, + p->displayname(), + p->build_options, + pscfl->source_location, + default_ports_dir); + } + return to_output_string(p->request_type, p->displayname(), p->build_options); }); }; diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index 781629236a8c2a..de19c360a95e1f 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -684,7 +684,7 @@ namespace vcpkg::Install Metrics::g_metrics.lock()->track_property("installplan", specs_string); - Dependencies::print_plan(action_plan, is_recursive); + Dependencies::print_plan(action_plan, is_recursive, paths.ports); if (dry_run) { From 92a86a1e54359edaf17eadf5784078d671304fb6 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Tue, 25 Jun 2019 04:23:55 +0800 Subject: [PATCH 083/123] [sprout] Add new port (#6997) --- ports/sprout/CONTROL | 5 +++++ ports/sprout/portfile.cmake | 16 ++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 ports/sprout/CONTROL create mode 100644 ports/sprout/portfile.cmake diff --git a/ports/sprout/CONTROL b/ports/sprout/CONTROL new file mode 100644 index 00000000000000..67240a5e1c877b --- /dev/null +++ b/ports/sprout/CONTROL @@ -0,0 +1,5 @@ +Source: sprout +Version: 2019-06-20 +Homepage: https://github.com/bolero-MURAKAMI/Sprout +Description: C++11/14 constexpr based Containers, Algorithms, Random numbers, Parsing, Ray tracing, Synthesizer, and others +Build-Depends: boost-array, boost-mpl diff --git a/ports/sprout/portfile.cmake b/ports/sprout/portfile.cmake new file mode 100644 index 00000000000000..7be1c19859e5ec --- /dev/null +++ b/ports/sprout/portfile.cmake @@ -0,0 +1,16 @@ +# header-only library + +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO bolero-MURAKAMI/Sprout + REF 6b5addba9face0a6403e66e7db2aa94d87387f61 + SHA512 b81c299842c48626a7fbedb5b70932623ddb128bd5c71115269253b2c82a331d4f5d5adeab24529be2c886d293de96c15c9641280b4eb31bd60379b284556900 + HEAD_REF master +) + +file(COPY ${SOURCE_PATH}/sprout DESTINATION ${CURRENT_PACKAGES_DIR}/include) + +# Handle copyright +configure_file(${SOURCE_PATH}/LICENSE_1_0.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) From bc08706eecf6a4c2174b737ffe7d1b8bae596752 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Tue, 25 Jun 2019 04:36:41 +0800 Subject: [PATCH 084/123] [doctest] Update to 2.3.3 (#6998) --- ports/doctest/CONTROL | 2 +- ports/doctest/portfile.cmake | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ports/doctest/CONTROL b/ports/doctest/CONTROL index e623f8b8586f16..135b8a4d8b722e 100644 --- a/ports/doctest/CONTROL +++ b/ports/doctest/CONTROL @@ -1,4 +1,4 @@ Source: doctest -Version: 2.3.2 +Version: 2.3.3 Homepage: https://github.com/onqtam/doctest Description: The fastest feature-rich C++ single-header testing framework for unit tests and TDD diff --git a/ports/doctest/portfile.cmake b/ports/doctest/portfile.cmake index dbb94990ea1f4e..7c9c4bfed80fed 100644 --- a/ports/doctest/portfile.cmake +++ b/ports/doctest/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO onqtam/doctest - REF 2.3.2 - SHA512 316c804d04c51e38ee54edb321c3f6c11e8b45d542add865e930a36430bb2b768c4302ec85a7470d2df7952981432ec4c1da662be46021eff0fa377f5cea85ba + REF 2.3.3 + SHA512 9ef94de93906f3c43918f232b3baa64756fdaee883afc5b2e785e76b108f1aa0d526a49dac58ffb0475ebfd8d8394ef266aec499c29282eea9a2752fb60b663f HEAD_REF master ) @@ -21,3 +21,6 @@ vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/doctest) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) configure_file(${SOURCE_PATH}/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/doctest/copyright COPYONLY) + +# CMake integration test +vcpkg_test_cmake(PACKAGE_NAME ${PORT}) From aefbaa1ba9c7b44af0c91c89018ae3f65f3e73ab Mon Sep 17 00:00:00 2001 From: Stefano Sinigardi Date: Tue, 25 Jun 2019 00:22:57 +0200 Subject: [PATCH 085/123] [darknet] update to latest release (#6787) * [darknet] update to latest release * [darknet] Reduce patch size * update to latest release, does not require any patch :) --- ports/darknet/CONTROL | 4 ++-- ports/darknet/fix_cmakelists.patch | 22 ---------------------- ports/darknet/portfile.cmake | 10 ++++++---- 3 files changed, 8 insertions(+), 28 deletions(-) delete mode 100644 ports/darknet/fix_cmakelists.patch diff --git a/ports/darknet/CONTROL b/ports/darknet/CONTROL index 88b4cdb7b26582..39350348591105 100644 --- a/ports/darknet/CONTROL +++ b/ports/darknet/CONTROL @@ -1,5 +1,5 @@ Source: darknet -Version: 0.2.5-1 +Version: 0.2.5-3 Description: Darknet is an open source neural network framework written in C and CUDA. You only look once (YOLO) is a state-of-the-art, real-time object detection system, best example of darknet functionalities. Build-Depends: pthreads (windows), stb Default-Features: weights @@ -16,5 +16,5 @@ Feature: weights Description: Download common weights from official websites, using vcpkg proxy-enabled functions Feature: opencv-cuda -Build-Depends: opencv[ffmpeg],opencv[cuda] +Build-Depends: opencv[ffmpeg], opencv[cuda] Description: Build darknet with support for a CUDA-enabled OpenCV diff --git a/ports/darknet/fix_cmakelists.patch b/ports/darknet/fix_cmakelists.patch deleted file mode 100644 index 68451de453b408..00000000000000 --- a/ports/darknet/fix_cmakelists.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 585eb0e..7515d98 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -28,8 +28,7 @@ enable_language(CXX) - set(CMAKE_CXX_STANDARD 11) - set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake/Modules/" ${CMAKE_MODULE_PATH}) - --set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Install prefix" FORCE) --set(INSTALL_BIN_DIR "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Path where exe and dll will be installed") -+set(INSTALL_BIN_DIR "bin" CACHE PATH "Path where exe and dll will be installed") - set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed") - set(INSTALL_INCLUDE_DIR "include" CACHE PATH "Path where headers will be installed") - set(INSTALL_CMAKE_DIR "share/darknet" CACHE PATH "Path where cmake configs will be installed") -@@ -88,7 +87,6 @@ if(USE_INTEGRATED_LIBS) - set(PThreads_windows_DIR ${CMAKE_CURRENT_LIST_DIR}/3rdparty/pthreads CACHE PATH "Path where pthreads for windows can be located") - add_definitions(-D_TIMESPEC_DEFINED) - endif() --set(Stb_DIR ${CMAKE_CURRENT_LIST_DIR}/3rdparty/stb CACHE PATH "Path where Stb image library can be located") - - set(CMAKE_DEBUG_POSTFIX d) - add_definitions(-DUSE_CMAKE_LIBS) diff --git a/ports/darknet/portfile.cmake b/ports/darknet/portfile.cmake index 986bdb03df25fd..3733420adfab58 100644 --- a/ports/darknet/portfile.cmake +++ b/ports/darknet/portfile.cmake @@ -11,11 +11,9 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO AlexeyAB/darknet - REF 8c970498a296ed129ffef7d872ccc25d42d1afda - SHA512 70dda24656469b8a61a645533ac227b644d365c7d5f4dbc93077a3f46563dd45ae88c563fb1c8f8d02a2021760aba24bea35d81f0f307975d051d0f9bfe92265 + REF a1abd07e23fc5b143a6197de9908fe4f33791c6a + SHA512 df91bf595666a4db5beb5cc55f6c60be19667ab987a784faef04cf2215317c9a340cfc0a200640741fcc88c29cff077d5153b86ff497c31ad5ad132f05987516 HEAD_REF master - PATCHES - fix_cmakelists.patch ) set(ENABLE_CUDA OFF) @@ -61,7 +59,11 @@ file(REMOVE_RECURSE ${SOURCE_PATH}/3rdparty) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + DISABLE_PARALLEL_CONFIGURE #since darknet configures a file inside source tree, it is better to disable parallel configure + #PREFER_NINJA #it does not work with cuda on windows https://gitlab.kitware.com/cmake/cmake/issues/19173 OPTIONS + -DINSTALL_BIN_DIR:STRING=bin + -DINSTALL_LIB_DIR:STRING=lib -DENABLE_CUDA=${ENABLE_CUDA} -DENABLE_OPENCV=${ENABLE_OPENCV} ) From ecc4b1631f7e3252a8b84ab7564c83ecda8a6763 Mon Sep 17 00:00:00 2001 From: Benjamin Sergeant Date: Mon, 24 Jun 2019 15:38:04 -0700 Subject: [PATCH 086/123] [ixwebsocket] add new port (#6835) * Add ixwebsocket * remove commented cmake directives * add dependencies * directive to remove share folder * try again with 4.0.3 which is using find_library for external code instead of vendoring it by default * use vcpkg feature flag to detect ssl backend + compile ws * do not build ws command line tool * add a feature for osx / control file closer to curl one * stop using features, as this makes CI unhappy * Revert "stop using features, as this makes CI unhappy" This reverts commit 4666b185671a9e37de5252334965fd63c060aea0. * play again with Build-Depends to fix error which appears to be only on uwp * call vcpkg_from_github instead * share folder not created --- ports/ixwebsocket/CONTROL | 21 +++++++++++++++++++++ ports/ixwebsocket/portfile.cmake | 24 ++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 ports/ixwebsocket/CONTROL create mode 100644 ports/ixwebsocket/portfile.cmake diff --git a/ports/ixwebsocket/CONTROL b/ports/ixwebsocket/CONTROL new file mode 100644 index 00000000000000..98b64cd28d50d4 --- /dev/null +++ b/ports/ixwebsocket/CONTROL @@ -0,0 +1,21 @@ +Source: ixwebsocket +Version: 4.0.3 +Build-Depends: zlib +Description: Lightweight WebSocket Client and Server + HTTP Client +Default-Features: ssl + +Feature: ssl +Build-Depends: ixwebsocket[openssl] (!uwp&!windows&!osx), ixwebsocket[mbedtls] (windows), ixwebsocket[mbedtls] (uwp), ixwebsocket[sectransp] (osx) +Description: Default SSL backend + +# SSL backends +Feature: openssl +Build-Depends: openssl +Description: SSL support (OpenSSL) + +Feature: mbedtls +Build-Depends: mbedtls +Description: SSL support (mbedTLS) + +Feature: sectransp +Description: SSL support (sectransp) diff --git a/ports/ixwebsocket/portfile.cmake b/ports/ixwebsocket/portfile.cmake new file mode 100644 index 00000000000000..b4beeed9b655a0 --- /dev/null +++ b/ports/ixwebsocket/portfile.cmake @@ -0,0 +1,24 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO machinezone/IXWebSocket + REF v4.0.3 + SHA512 41cda81ef28ae2a51d77bf09158f4c07350f22b17ed4b6645a87c7defd2a901b7656de260bc785c42990ddbea0ab23ad6e099694d2712537de0ca328aee8e229 +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA # Disable this option if project cannot be built with Ninja + OPTIONS -DUSE_TLS=1 +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/ixwebsocket RENAME copyright) + +# Post-build test for cmake libraries +# vcpkg_test_cmake(PACKAGE_NAME ixwebsocket) From 54b3be6b60466370d37edbe64fb6c6ede8487f04 Mon Sep 17 00:00:00 2001 From: tarcila Date: Tue, 25 Jun 2019 02:21:30 -0400 Subject: [PATCH 087/123] [scripts] Fix vcpkg_fixup_cmake on non Windows platforms (#5630) * [scripts] Fix vcpkg_fixup_cmake on non Windows platforms Script was only handling tools executables ending with .exe. Changed it so anything under /bin/ in transformed. This fixes for instance FlatcTargets-release.cmake from flatbuffers port on osx. --- ports/grpc/portfile.cmake | 17 +++-------------- scripts/cmake/vcpkg_fixup_cmake_targets.cmake | 14 +++++++++++--- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake index b71a554208c3d1..2dca1c34ceced6 100644 --- a/ports/grpc/portfile.cmake +++ b/ports/grpc/portfile.cmake @@ -63,7 +63,7 @@ vcpkg_configure_cmake( -DgRPC_GFLAGS_PROVIDER=none -DgRPC_BENCHMARK_PROVIDER=none -DgRPC_INSTALL_CSHARP_EXT=OFF - -DgRPC_INSTALL_BINDIR:STRING=bin + -DgRPC_INSTALL_BINDIR:STRING=tools/grpc -DgRPC_INSTALL_LIBDIR:STRING=lib -DgRPC_INSTALL_INCLUDEDIR:STRING=include -DgRPC_INSTALL_CMAKEDIR:STRING=share/grpc @@ -76,22 +76,11 @@ vcpkg_fixup_cmake_targets() file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/grpc RENAME copyright) -# Install tools -file(GLOB TOOLS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*.exe") -if(TOOLS) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/grpc) - file(COPY ${TOOLS} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/grpc) - vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/grpc) -endif() - -file(GLOB EXES "${CURRENT_PACKAGES_DIR}/bin/*.exe" "${CURRENT_PACKAGES_DIR}/debug/bin/*.exe") -if(EXES) - file(REMOVE ${EXES}) -endif() +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/grpc) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/tools") # Ignore the C# extension DLL in bin/ SET(VCPKG_POLICY_EMPTY_PACKAGE enabled) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) vcpkg_copy_pdbs() -## diff --git a/scripts/cmake/vcpkg_fixup_cmake_targets.cmake b/scripts/cmake/vcpkg_fixup_cmake_targets.cmake index 982f414b632e3a..1e0f2493df9b3f 100644 --- a/scripts/cmake/vcpkg_fixup_cmake_targets.cmake +++ b/scripts/cmake/vcpkg_fixup_cmake_targets.cmake @@ -4,7 +4,8 @@ # Transform all /debug/share//*targets-debug.cmake files and move them to /share/. # Removes all /debug/share//*targets.cmake and /debug/share//*config.cmake # -# Transform all references matching /bin/*.exe to /tools//*.exe +# Transform all references matching /bin/*.exe to /tools//*.exe on Windows +# Transform all references matching /bin/* to /tools//* on other platforms # # Fix ${_IMPORT_PREFIX} in auto generated targets to be one folder deeper. # Replace ${CURRENT_INSTALLED_DIR} with ${_IMPORT_PREFIX} in configs/targets. @@ -27,6 +28,13 @@ function(vcpkg_fixup_cmake_targets) set(_vfct_TARGET_PATH share/${PORT}) endif() + + if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + set(EXECUTABLE_SUFFIX "\\.exe") + else() + set(EXECUTABLE_SUFFIX) + endif() + set(DEBUG_SHARE ${CURRENT_PACKAGES_DIR}/debug/${_vfct_TARGET_PATH}) set(RELEASE_SHARE ${CURRENT_PACKAGES_DIR}/${_vfct_TARGET_PATH}) @@ -107,7 +115,7 @@ function(vcpkg_fixup_cmake_targets) foreach(RELEASE_TARGET IN LISTS RELEASE_TARGETS) file(READ ${RELEASE_TARGET} _contents) string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_IMPORT_PREFIX}" _contents "${_contents}") - string(REGEX REPLACE "\\\${_IMPORT_PREFIX}/bin/([^ \"]+\\.exe)" "\${_IMPORT_PREFIX}/tools/${PORT}/\\1" _contents "${_contents}") + string(REGEX REPLACE "\\\${_IMPORT_PREFIX}/bin/([^ \"]+${EXECUTABLE_SUFFIX})" "\${_IMPORT_PREFIX}/tools/${PORT}/\\1" _contents "${_contents}") file(WRITE ${RELEASE_TARGET} "${_contents}") endforeach() @@ -120,7 +128,7 @@ function(vcpkg_fixup_cmake_targets) file(READ ${DEBUG_TARGET} _contents) string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_IMPORT_PREFIX}" _contents "${_contents}") - string(REGEX REPLACE "\\\${_IMPORT_PREFIX}/bin/([^ \";]+\\.exe)" "\${_IMPORT_PREFIX}/tools/${PORT}/\\1" _contents "${_contents}") + string(REGEX REPLACE "\\\${_IMPORT_PREFIX}/bin/([^ \";]+${EXECUTABLE_SUFFIX})" "\${_IMPORT_PREFIX}/tools/${PORT}/\\1" _contents "${_contents}") string(REPLACE "\${_IMPORT_PREFIX}/lib" "\${_IMPORT_PREFIX}/debug/lib" _contents "${_contents}") string(REPLACE "\${_IMPORT_PREFIX}/bin" "\${_IMPORT_PREFIX}/debug/bin" _contents "${_contents}") file(WRITE ${RELEASE_SHARE}/${DEBUG_TARGET_REL} "${_contents}") From 40a78054f50ed5eb5bf24cd9a522b48b62725f34 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Tue, 25 Jun 2019 10:55:24 -0700 Subject: [PATCH 088/123] [cnl] Update cnl to latest(#7031) --- ports/cnl/CONTROL | 2 +- ports/cnl/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/cnl/CONTROL b/ports/cnl/CONTROL index 7aa93f60ebc48e..8daea5ae60981d 100644 --- a/ports/cnl/CONTROL +++ b/ports/cnl/CONTROL @@ -1,3 +1,3 @@ Source: cnl -Version: 2019-01-09 +Version: 2019-06-23 Description: A Compositional Numeric Library for C++ diff --git a/ports/cnl/portfile.cmake b/ports/cnl/portfile.cmake index 0eb23e1c9dde0f..885cad137bc0ba 100644 --- a/ports/cnl/portfile.cmake +++ b/ports/cnl/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO johnmcfarlane/cnl - REF 9f632898a4738b9e41de90e66d4f6ddb84bda08b - SHA512 ffde0b5aa58e79b5a03eee588c0e43d17ab2ddb2ffb12508f9d1b0e05aa54bb6c653986f183ce339e73c562efd749af6bd3907d816c9f79bf48f1e84ded3ac13 + REF 48428242e72b8239cb14c963e40f724929d54df7 + SHA512 c7e012d99409977137a44915dd7a4df5014b6e8540ceee3e82492052541ce77a254d79e624d766b510e7d3a6b17a9d9b02391c6993ae55d3904334116e747983 HEAD_REF develop ) From 6a6d350d49e6a3bee55d7f644b43e57ccfc9f98a Mon Sep 17 00:00:00 2001 From: wangli28 <47812810+wangli28@users.noreply.github.com> Date: Wed, 26 Jun 2019 01:56:21 +0800 Subject: [PATCH 089/123] [armadillo] Fix build error in Linux (#7022) [armadillo] Fix installation path --- ports/armadillo/CONTROL | 2 +- ports/armadillo/portfile.cmake | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ports/armadillo/CONTROL b/ports/armadillo/CONTROL index 5baafdfdf9ed50..78f0a66c302b36 100644 --- a/ports/armadillo/CONTROL +++ b/ports/armadillo/CONTROL @@ -1,4 +1,4 @@ Source: armadillo -Version: 2019-04-16-2 +Version: 2019-04-16-3 Description: Armadillo is a high quality linear algebra library (matrix maths) for the C++ language, aiming towards a good balance between speed and ease of use Build-Depends: openblas (!osx), clapack (!osx) diff --git a/ports/armadillo/portfile.cmake b/ports/armadillo/portfile.cmake index 437f174ddc2016..143591de64941b 100644 --- a/ports/armadillo/portfile.cmake +++ b/ports/armadillo/portfile.cmake @@ -25,11 +25,12 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/armadillo/CMake) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/Armadillo/CMake) vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/Armadillo) file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/armadillo RENAME copyright) From 14d1575e0b1e77d2308891966f7aac5515266487 Mon Sep 17 00:00:00 2001 From: tarcila Date: Tue, 25 Jun 2019 13:59:52 -0400 Subject: [PATCH 090/123] [capnproto] Enable Linux and OSX support (#7024) Now that #5630 is fix, this package is fully supported on both Linux and Mac OS X. --- ports/capnproto/portfile.cmake | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ports/capnproto/portfile.cmake b/ports/capnproto/portfile.cmake index 4043a53c550ad3..5c189acc7fc825 100644 --- a/ports/capnproto/portfile.cmake +++ b/ports/capnproto/portfile.cmake @@ -2,10 +2,6 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) message(FATAL_ERROR "Error: UWP build is not supported.") endif() -if(DEFINED VCPKG_CMAKE_SYSTEM_NAME) - message(FATAL_ERROR "Error: CapnProto only build on Windows for now. See #5630 and #5635") -endif() - include(vcpkg_common_functions) vcpkg_check_linkage(ONLY_STATIC_LIBRARY) From 90ad82908e85ff4b6cd385b82da3e8b66692a8b1 Mon Sep 17 00:00:00 2001 From: wangli28 <47812810+wangli28@users.noreply.github.com> Date: Wed, 26 Jun 2019 02:00:48 +0800 Subject: [PATCH 091/123] [nana, fmi4cpp] Fix Visual Studio 2019 deprecates . (#7021) --- ports/fmi4cpp/CONTROL | 2 +- ports/fmi4cpp/fix-build_error.patch | 25 +++++++++++++++++++++++++ ports/fmi4cpp/portfile.cmake | 2 ++ ports/nana/CONTROL | 2 +- ports/nana/fix-build-error.patch | 12 ++++++++++++ ports/nana/portfile.cmake | 2 ++ 6 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 ports/fmi4cpp/fix-build_error.patch create mode 100644 ports/nana/fix-build-error.patch diff --git a/ports/fmi4cpp/CONTROL b/ports/fmi4cpp/CONTROL index 2a05be3b5464b9..4659e9d1a175b3 100644 --- a/ports/fmi4cpp/CONTROL +++ b/ports/fmi4cpp/CONTROL @@ -1,5 +1,5 @@ Source: fmi4cpp -Version: 0.7.0 +Version: 0.7.0-1 Description: FMI 2.0 implementation written in modern C++ Build-Depends: boost-property-tree, libzip[openssl] diff --git a/ports/fmi4cpp/fix-build_error.patch b/ports/fmi4cpp/fix-build_error.patch new file mode 100644 index 00000000000000..ef0950e87122d2 --- /dev/null +++ b/ports/fmi4cpp/fix-build_error.patch @@ -0,0 +1,25 @@ +diff --git a/include/fmi4cpp/fmu_resource.hpp b/include/fmi4cpp/fmu_resource.hpp +index 98f2067..8e88dcf 100644 +--- a/include/fmi4cpp/fmu_resource.hpp ++++ b/include/fmi4cpp/fmu_resource.hpp +@@ -24,6 +24,7 @@ + + #ifndef FMI4CPP_FMURESOURCE_HPP + #define FMI4CPP_FMURESOURCE_HPP ++#define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING + + #include + #include +diff --git a/src/fmi2/fmu.cpp b/src/fmi2/fmu.cpp +index a0d5f75..bd01487 100644 +--- a/src/fmi2/fmu.cpp ++++ b/src/fmi2/fmu.cpp +@@ -26,6 +26,8 @@ + #include + #endif + ++#define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING ++ + #include + #include + diff --git a/ports/fmi4cpp/portfile.cmake b/ports/fmi4cpp/portfile.cmake index 0952f5c5a9aac3..ad45b5abe43d02 100644 --- a/ports/fmi4cpp/portfile.cmake +++ b/ports/fmi4cpp/portfile.cmake @@ -18,6 +18,8 @@ vcpkg_from_github( REF v0.7.0 SHA512 5846f5b28badb5b4836ffd9d284f602dd243df20d3c82cab5e2b62b8be37e0ab05b7422bca066f37ca67ee0d5b35abd2febe87f623fc3b9854d245e86e1e21fe HEAD_REF master + PATCHES + fix-build_error.patch ) set(WITH_CURL OFF) diff --git a/ports/nana/CONTROL b/ports/nana/CONTROL index 0e832f7e876c9b..4038c6f9edc855 100644 --- a/ports/nana/CONTROL +++ b/ports/nana/CONTROL @@ -1,5 +1,5 @@ Source: nana -Version: 1.7.1 +Version: 1.7.1-1 Homepage: https://github.com/cnjinhao/nana Description: Cross-platform library for GUI programming in modern C++ style. Build-Depends: libpng, libjpeg-turbo, freetype (!uwp&&!windows), fontconfig (!uwp&&!windows) diff --git a/ports/nana/fix-build-error.patch b/ports/nana/fix-build-error.patch new file mode 100644 index 00000000000000..3894f9600eb286 --- /dev/null +++ b/ports/nana/fix-build-error.patch @@ -0,0 +1,12 @@ +diff --git a/include/nana/filesystem/filesystem.hpp b/include/nana/filesystem/filesystem.hpp +index 86b907a..ea8db75 100644 +--- a/include/nana/filesystem/filesystem.hpp ++++ b/include/nana/filesystem/filesystem.hpp +@@ -30,6 +30,7 @@ + #ifndef NANA_FILESYSTEM_HPP + #define NANA_FILESYSTEM_HPP + #include ++#define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING + + //Filesystem Selection + #include diff --git a/ports/nana/portfile.cmake b/ports/nana/portfile.cmake index 981bc424425e2c..fa08158138092d 100644 --- a/ports/nana/portfile.cmake +++ b/ports/nana/portfile.cmake @@ -12,6 +12,8 @@ vcpkg_from_github( REF v1.7.1 SHA512 43bd6f6321557184431935b4fdd636427458e79333879f6310685a70ee25f4344851910e67c52145382c38a3cea9d1761b40c8edbc072a7cc9c62406ed402549 HEAD_REF develop + PATCHES + fix-build-error.patch ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) From 728c767817d594d6043a305e254048d43da33e75 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Tue, 25 Jun 2019 11:01:19 -0700 Subject: [PATCH 092/123] [libpmemobj-cpp] Add new port (#7020) --- ports/libpmemobj-cpp/CONTROL | 4 ++++ ports/libpmemobj-cpp/portfile.cmake | 30 +++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 ports/libpmemobj-cpp/CONTROL create mode 100644 ports/libpmemobj-cpp/portfile.cmake diff --git a/ports/libpmemobj-cpp/CONTROL b/ports/libpmemobj-cpp/CONTROL new file mode 100644 index 00000000000000..ebc46931bde2b9 --- /dev/null +++ b/ports/libpmemobj-cpp/CONTROL @@ -0,0 +1,4 @@ +Source: libpmemobj-cpp +Version: 1.6 +#Build-Depends: pmdk +Description: C++ bindings for libpmemobj (https://github.com/pmem/pmdk). \ No newline at end of file diff --git a/ports/libpmemobj-cpp/portfile.cmake b/ports/libpmemobj-cpp/portfile.cmake new file mode 100644 index 00000000000000..563dd67d7e47fc --- /dev/null +++ b/ports/libpmemobj-cpp/portfile.cmake @@ -0,0 +1,30 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO pmem/libpmemobj-cpp + REF 1.6 + SHA512 c9a90ebc6e3231b9fcc86c9c55cc8dc219b663b39828680fb58ad7229dba1d60428c34824445f627350013bf32b83e5f0f9c2d4c17054f2321d5200832e6fea0 + HEAD_REF master +) + +vcpkg_find_acquire_program(PERL) +get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) +set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH}") + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DBUILD_TESTS=OFF + -DBUILD_EXAMPLES=OFF + -DBUILD_DOC=OFF +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) + From b9764f8d89b4713fad3ff4573f2b7504ae79a771 Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Wed, 26 Jun 2019 02:02:43 +0800 Subject: [PATCH 093/123] [qt5-base]Add execute permission when installing executables in Linux. (#7019) --- ports/qt5-base/CONTROL | 2 +- ports/qt5-base/portfile.cmake | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ports/qt5-base/CONTROL b/ports/qt5-base/CONTROL index 0082dc46cff12b..562a9cc9dd5709 100644 --- a/ports/qt5-base/CONTROL +++ b/ports/qt5-base/CONTROL @@ -1,5 +1,5 @@ Source: qt5-base -Version: 5.12.3-1 +Version: 5.12.3-2 Homepage: https://www.qt.io/ Description: Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components. Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion, openssl diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake index 6020376ba0e005..a57411562478ad 100644 --- a/ports/qt5-base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -153,7 +153,9 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") file(GLOB BINARY_TOOLS "${CURRENT_PACKAGES_DIR}/bin/*") list(FILTER BINARY_TOOLS EXCLUDE REGEX "\\.dll\$") - file(INSTALL ${BINARY_TOOLS} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/qt5) + file(INSTALL ${BINARY_TOOLS} + PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE + DESTINATION ${CURRENT_PACKAGES_DIR}/tools/qt5) file(REMOVE ${BINARY_TOOLS}) file(COPY ${CMAKE_CURRENT_LIST_DIR}/qt_release.conf DESTINATION ${CURRENT_PACKAGES_DIR}/tools/qt5) From 1004b2ea11f67c59f2b3388ac4fb7947d0fa5e87 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Tue, 25 Jun 2019 14:19:57 -0700 Subject: [PATCH 094/123] [libmikmod] patch cmake warning (#7035) * [libmikmod] Address cmake warnings --- ports/libmikmod/CONTROL | 2 +- ports/libmikmod/cmake_policy.patch | 13 +++++++++++++ ports/libmikmod/portfile.cmake | 1 + 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 ports/libmikmod/cmake_policy.patch diff --git a/ports/libmikmod/CONTROL b/ports/libmikmod/CONTROL index 57d399a268ec66..6a02a4ae4f35cb 100644 --- a/ports/libmikmod/CONTROL +++ b/ports/libmikmod/CONTROL @@ -1,5 +1,5 @@ Source: libmikmod -Version: 3.3.11.1-2 +Version: 3.3.11.1-3 Homepage: https://sourceforge.net/projects/mikmod/ Description: Mikmod is a module player and library supporting many formats, including mod, s3m, it, and xm. Build-Depends: openal-soft diff --git a/ports/libmikmod/cmake_policy.patch b/ports/libmikmod/cmake_policy.patch new file mode 100644 index 00000000000000..17d48278a366eb --- /dev/null +++ b/ports/libmikmod/cmake_policy.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b4d31d3..67951e6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -23,6 +23,8 @@ + # + # (This copyright notice applies only to this file) + ++cmake_policy(SET CMP0003 NEW) ++ + PROJECT(libmikmod C) + CMAKE_MINIMUM_REQUIRED(VERSION 2.8) + LIST(APPEND CMAKE_MODULE_PATH "${libmikmod_SOURCE_DIR}/cmake") diff --git a/ports/libmikmod/portfile.cmake b/ports/libmikmod/portfile.cmake index 3ff7ecb5281820..1ec5d6773992b2 100644 --- a/ports/libmikmod/portfile.cmake +++ b/ports/libmikmod/portfile.cmake @@ -23,6 +23,7 @@ vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH PATCHES fix-missing-dll.patch + cmake_policy.patch ) vcpkg_configure_cmake( From ab81312c6300519ecf67f7e459f0921065e42872 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Tue, 25 Jun 2019 14:52:31 -0700 Subject: [PATCH 095/123] [libfabric] reorder patch (#7036) --- ports/libfabric/CONTROL | 2 +- ports/libfabric/add_additional_includes.patch | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ports/libfabric/CONTROL b/ports/libfabric/CONTROL index 931d10f5e45919..9666bc2288b453 100644 --- a/ports/libfabric/CONTROL +++ b/ports/libfabric/CONTROL @@ -1,5 +1,5 @@ Source: libfabric -Version: 1.7.1 +Version: 1.7.1-1 Description: The OpenFabrics Interfaces Working Group (OFIWG) and the Libfabric open-source community are pleased to announce the release of version v1.6.2 of libfabric. See NEWS.md for the list of features and enhancements that have been added since the last release. Homepage: https://github.com/ofiwg/libfabric Build-Depends: networkdirect-sdk (windows) diff --git a/ports/libfabric/add_additional_includes.patch b/ports/libfabric/add_additional_includes.patch index 377a810d282f25..da3d3254c52c2e 100644 --- a/ports/libfabric/add_additional_includes.patch +++ b/ports/libfabric/add_additional_includes.patch @@ -7,7 +7,7 @@ index 43a05e7..ceb596f 100644 WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;ENABLE_DEBUG;%(PreprocessorDefinitions) true - $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include -+ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include ++ $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include;$(AdditionalIncludeDirectories); CompileAsC 4127;4200;4204;4221;4115;4201;4100 true @@ -16,7 +16,7 @@ index 43a05e7..ceb596f 100644 WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;ENABLE_DEBUG;%(PreprocessorDefinitions) true - $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; -+ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; ++ $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include;$(AdditionalIncludeDirectories); CompileAsC 4127;4200;4204;4221;4115;4201;4100 true @@ -25,7 +25,7 @@ index 43a05e7..ceb596f 100644 WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;ENABLE_DEBUG;%(PreprocessorDefinitions) true - $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include -+ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include ++ $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include;$(AdditionalIncludeDirectories); CompileAsC 4127;4200;94;4204;4221;869 true @@ -34,7 +34,7 @@ index 43a05e7..ceb596f 100644 WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;%(PreprocessorDefinitions) true - $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include -+ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include ++ $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include;$(AdditionalIncludeDirectories); 4127;4200;4204;4221;4115;4201;4100 true false @@ -43,7 +43,7 @@ index 43a05e7..ceb596f 100644 WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;%(PreprocessorDefinitions) true - $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; -+ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; ++ $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include;$(AdditionalIncludeDirectories); 4127;4200;4204;4221;4115;4201;4100 true false @@ -52,7 +52,7 @@ index 43a05e7..ceb596f 100644 WIN32;_WINSOCKAPI_=;_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WINDOWS;_USRDLL;LIBFABRIC_EXPORTS;HAVE_CONFIG_H;%(PreprocessorDefinitions) true - $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; -+ $(AdditionalIncludeDirectories);$(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include; ++ $(ProjectDir)include;$(ProjectDir)include\windows;$(ProjectDir)prov\netdir\NetDirect;$(ProjectDir)prov\hook\src;$(ProjectDir)prov\hook\include;$(ProjectDir)prov\hook\perf\include;$(AdditionalIncludeDirectories); 4127;4200;94;4204;4221;869 true false From 1ce24dd0db6d9cf6cdb348ff29aa8454b3f1b028 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Tue, 25 Jun 2019 16:08:18 -0700 Subject: [PATCH 096/123] [docs]Update cmake docs (#7039) --- docs/maintainers/portfile-functions.md | 1 + docs/maintainers/vcpkg_configure_cmake.md | 1 + .../vcpkg_execute_build_process.md | 36 +++++++++++++++++++ .../vcpkg_extract_source_archive_ex.md | 2 +- .../maintainers/vcpkg_find_acquire_program.md | 1 + scripts/cmake/vcpkg_configure_cmake.cmake | 1 + .../vcpkg_extract_source_archive_ex.cmake | 2 +- 7 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 docs/maintainers/vcpkg_execute_build_process.md diff --git a/docs/maintainers/portfile-functions.md b/docs/maintainers/portfile-functions.md index f159f7f64f30c9..c4b810dc045c2d 100644 --- a/docs/maintainers/portfile-functions.md +++ b/docs/maintainers/portfile-functions.md @@ -12,6 +12,7 @@ - [vcpkg\_copy\_pdbs](vcpkg_copy_pdbs.md) - [vcpkg\_copy\_tool\_dependencies](vcpkg_copy_tool_dependencies.md) - [vcpkg\_download\_distfile](vcpkg_download_distfile.md) +- [vcpkg\_execute\_build\_process](vcpkg_execute_build_process.md) - [vcpkg\_execute\_required\_process](vcpkg_execute_required_process.md) - [vcpkg\_extract\_source\_archive](vcpkg_extract_source_archive.md) - [vcpkg\_extract\_source\_archive\_ex](vcpkg_extract_source_archive_ex.md) diff --git a/docs/maintainers/vcpkg_configure_cmake.md b/docs/maintainers/vcpkg_configure_cmake.md index 200d358ae2442d..f61a6fa2048212 100644 --- a/docs/maintainers/vcpkg_configure_cmake.md +++ b/docs/maintainers/vcpkg_configure_cmake.md @@ -7,6 +7,7 @@ Configure CMake for Debug and Release builds of a project. vcpkg_configure_cmake( SOURCE_PATH <${SOURCE_PATH}> [PREFER_NINJA] + [DISABLE_PARALLEL_CONFIGURE] [GENERATOR <"NMake Makefiles">] [OPTIONS <-DUSE_THIS_IN_ALL_BUILDS=1>...] [OPTIONS_RELEASE <-DOPTIMIZE=1>...] diff --git a/docs/maintainers/vcpkg_execute_build_process.md b/docs/maintainers/vcpkg_execute_build_process.md new file mode 100644 index 00000000000000..d5b3593d9f0d65 --- /dev/null +++ b/docs/maintainers/vcpkg_execute_build_process.md @@ -0,0 +1,36 @@ +# vcpkg_execute_build_process + +Execute a required build process + +## Usage +```cmake +vcpkg_execute_build_process( + COMMAND [...] + [NO_PARALLEL_COMMAND [...]] + WORKING_DIRECTORY + LOGNAME ) +) +``` +## Parameters +### COMMAND +The command to be executed, along with its arguments. + +### NO_PARALLEL_COMMAND +Optional parameter which specifies a non-parallel command to attempt if a +failure potentially due to parallelism is detected. + +### WORKING_DIRECTORY +The directory to execute the command in. + +### LOGNAME +The prefix to use for the log files. + +This should be a unique name for different triplets so that the logs don't +conflict when building multiple at once. + +## Examples + +* [icu](https://github.com/Microsoft/vcpkg/blob/master/ports/icu/portfile.cmake) + +## Source +[scripts/cmake/vcpkg_execute_build_process.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_execute_build_process.cmake) diff --git a/docs/maintainers/vcpkg_extract_source_archive_ex.md b/docs/maintainers/vcpkg_extract_source_archive_ex.md index 92c90b2960e49d..8f525c3ce579e3 100644 --- a/docs/maintainers/vcpkg_extract_source_archive_ex.md +++ b/docs/maintainers/vcpkg_extract_source_archive_ex.md @@ -25,7 +25,7 @@ The full path to the archive to be extracted. This is usually obtained from calling [`vcpkg_download_distfile`](vcpkg_download_distfile.md). ### REF -A friendly name that will be used instead of the filename of the archive. +A friendly name that will be used instead of the filename of the archive. If more than 10 characters it will be truncated. By convention, this is set to the version number or tag fetched diff --git a/docs/maintainers/vcpkg_find_acquire_program.md b/docs/maintainers/vcpkg_find_acquire_program.md index 57a2bf75a37fb9..b868ea418ee602 100644 --- a/docs/maintainers/vcpkg_find_acquire_program.md +++ b/docs/maintainers/vcpkg_find_acquire_program.md @@ -24,6 +24,7 @@ The current list of programs includes: - MESON - NASM - NINJA +- NUGET - YASM - ARIA2 (Downloader) diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake index 8f3aa6425751ad..c17bd68c8ea4f7 100644 --- a/scripts/cmake/vcpkg_configure_cmake.cmake +++ b/scripts/cmake/vcpkg_configure_cmake.cmake @@ -7,6 +7,7 @@ ## vcpkg_configure_cmake( ## SOURCE_PATH <${SOURCE_PATH}> ## [PREFER_NINJA] +## [DISABLE_PARALLEL_CONFIGURE] ## [GENERATOR <"NMake Makefiles">] ## [OPTIONS <-DUSE_THIS_IN_ALL_BUILDS=1>...] ## [OPTIONS_RELEASE <-DOPTIMIZE=1>...] diff --git a/scripts/cmake/vcpkg_extract_source_archive_ex.cmake b/scripts/cmake/vcpkg_extract_source_archive_ex.cmake index a70a5e4a34f739..a775c2094cd8b0 100644 --- a/scripts/cmake/vcpkg_extract_source_archive_ex.cmake +++ b/scripts/cmake/vcpkg_extract_source_archive_ex.cmake @@ -25,7 +25,7 @@ ## This is usually obtained from calling [`vcpkg_download_distfile`](vcpkg_download_distfile.md). ## ## ### REF -## A friendly name that will be used instead of the filename of the archive. +## A friendly name that will be used instead of the filename of the archive. If more than 10 characters it will be truncated. ## ## By convention, this is set to the version number or tag fetched ## From 7401e2ff644779be3a1d0ec90be90282990e704b Mon Sep 17 00:00:00 2001 From: wangli28 <47812810+wangli28@users.noreply.github.com> Date: Wed, 26 Jun 2019 07:11:45 +0800 Subject: [PATCH 097/123] [libevent] Upgrade to version 2.1.10 (#6969) --- ports/fizz/fix-build_error.patch | 13 ++++++++++ ports/fizz/portfile.cmake | 4 ++- ports/libevent/CONTROL | 2 +- ports/libevent/fix-arm_build.patch | 36 +++++++++++++++++++++++++++ ports/libevent/fix-file_path.patch | 26 +++++++++++++++++++ ports/libevent/fix-target-files.patch | 36 --------------------------- ports/libevent/portfile.cmake | 23 ++++++++++++++--- 7 files changed, 98 insertions(+), 42 deletions(-) create mode 100644 ports/fizz/fix-build_error.patch create mode 100644 ports/libevent/fix-arm_build.patch create mode 100644 ports/libevent/fix-file_path.patch delete mode 100644 ports/libevent/fix-target-files.patch diff --git a/ports/fizz/fix-build_error.patch b/ports/fizz/fix-build_error.patch new file mode 100644 index 00000000000000..e85f16c6e49c0c --- /dev/null +++ b/ports/fizz/fix-build_error.patch @@ -0,0 +1,13 @@ +diff --git a/fizz/CMakeLists.txt b/fizz/CMakeLists.txt +index 7f8769a..debac4e 100644 +--- a/fizz/CMakeLists.txt ++++ b/fizz/CMakeLists.txt +@@ -81,7 +81,7 @@ if(TARGET event) + message(STATUS "Found libevent from package config") + list(APPEND FIZZ_SHINY_DEPENDENCIES event) + else() +- find_package(Libevent MODULE REQUIRED) ++ find_package(Libevent CONFIG REQUIRED) + list(APPEND FIZZ_LINK_LIBRARIES ${LIBEVENT_LIB}) + list(APPEND FIZZ_INCLUDE_DIRECTORIES ${LIBEVENT_INCLUDE_DIR}) + endif() diff --git a/ports/fizz/portfile.cmake b/ports/fizz/portfile.cmake index 373f1d40760e63..16459cbf48c10b 100644 --- a/ports/fizz/portfile.cmake +++ b/ports/fizz/portfile.cmake @@ -8,7 +8,9 @@ vcpkg_from_github( REF 6d26a1be8d7a20d8d89c374ee3dc5c452d18c18d SHA512 bc6aa17a97fdfc53d0a247b876cbd1fea8214608b7e463dcf21e34df65015fe77e617c5a6c6bfa84b87e60e56b6aeb89aa2d8d774f97fc1f76f415869948a48a HEAD_REF master - PATCHES find-zlib.patch + PATCHES + find-zlib.patch + fix-build_error.patch ) # Prefer installed config files diff --git a/ports/libevent/CONTROL b/ports/libevent/CONTROL index 2534bf1f6a6e32..95a4c37dafe8ae 100644 --- a/ports/libevent/CONTROL +++ b/ports/libevent/CONTROL @@ -1,5 +1,5 @@ Source: libevent -Version: 2.1.8-5 +Version: 2.1.10 Build-Depends: openssl Homepage: https://github.com/libevent/libevent Description: An event notification library diff --git a/ports/libevent/fix-arm_build.patch b/ports/libevent/fix-arm_build.patch new file mode 100644 index 00000000000000..7bfad04496b816 --- /dev/null +++ b/ports/libevent/fix-arm_build.patch @@ -0,0 +1,36 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 44b6e18..19c024f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -322,7 +322,7 @@ endif() + # Winsock. + if(WIN32) + set(CMAKE_EXTRA_INCLUDE_FILES winsock2.h ws2tcpip.h) +- set(CMAKE_REQUIRED_LIBRARIES ws2_32.lib) ++ set(CMAKE_REQUIRED_LIBRARIES ws2_32.lib advapi32.lib shell32.lib) + set(CMAKE_REQUIRED_DEFINITIONS -FIwinsock2.h -FIws2tcpip.h) + endif() + if (SOLARIS) +diff --git a/cmake/AddEventLibrary.cmake b/cmake/AddEventLibrary.cmake +index 411ca9d..869735e 100644 +--- a/cmake/AddEventLibrary.cmake ++++ b/cmake/AddEventLibrary.cmake +@@ -73,6 +73,8 @@ macro(add_event_library LIB_NAME) + list(APPEND ADD_EVENT_LIBRARY_TARGETS "${LIB_NAME}_static") + + set(ADD_EVENT_LIBRARY_INTERFACE "${LIB_NAME}_static") ++ ++ target_link_libraries("${LIB_NAME}_static" PRIVATE ${CMAKE_REQUIRED_LIBRARIES}) + endif() + + if (${EVENT_LIBRARY_SHARED}) +@@ -81,7 +83,8 @@ macro(add_event_library LIB_NAME) + target_link_libraries("${LIB_NAME}_shared" + ${CMAKE_THREAD_LIBS_INIT} + ${LIB_PLATFORM} +- ${LIB_LIBRARIES}) ++ ${LIB_LIBRARIES} ++ ${CMAKE_REQUIRED_LIBRARIES}) + + if (EVENT_SHARED_FLAGS) + set_event_shared_lib_flags("${LIB_NAME}" "${EVENT_SHARED_FLAGS}") diff --git a/ports/libevent/fix-file_path.patch b/ports/libevent/fix-file_path.patch new file mode 100644 index 00000000000000..179700b7ed2c17 --- /dev/null +++ b/ports/libevent/fix-file_path.patch @@ -0,0 +1,26 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 6e91c08..44b6e18 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1430,7 +1430,7 @@ configure_file(${PROJECT_SOURCE_DIR}/cmake/LibeventConfigBuildTree.cmake.in + # Calculate the relative directory from the Cmake dir. + file(RELATIVE_PATH + REL_INCLUDE_DIR +- "${EVENT_INSTALL_CMAKE_DIR}" ++ "${CURRENT_PACKAGES_DIR}/${EVENT_INSTALL_CMAKE_DIR}" + "${CMAKE_INSTALL_PREFIX}/include") + + # Note the LIBEVENT_CMAKE_DIR is defined in LibeventConfig.cmake.in, +diff --git a/cmake/AddEventLibrary.cmake b/cmake/AddEventLibrary.cmake +index 9de4484..411ca9d 100644 +--- a/cmake/AddEventLibrary.cmake ++++ b/cmake/AddEventLibrary.cmake +@@ -113,7 +113,7 @@ macro(add_event_library LIB_NAME) + EXPORT LibeventTargets + LIBRARY DESTINATION "lib" COMPONENT lib + ARCHIVE DESTINATION "lib" COMPONENT lib +- RUNTIME DESTINATION "lib" COMPONENT lib ++ RUNTIME DESTINATION "bin" COMPONENT bin + PUBLIC_HEADER DESTINATION "include/event2" + COMPONENT dev + ) diff --git a/ports/libevent/fix-target-files.patch b/ports/libevent/fix-target-files.patch deleted file mode 100644 index d1b2d59700e727..00000000000000 --- a/ports/libevent/fix-target-files.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index b4a34f3d..4bd80d84 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1343,10 +1343,10 @@ endif() - set(EVENT_INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files") - - # Make sure the paths are absolute. --foreach(p LIB BIN INCLUDE CMAKE) -+foreach(p INCLUDE CMAKE) - set(var EVENT_INSTALL_${p}_DIR) - if(NOT IS_ABSOLUTE "${${var}}") -- set(${var} "${CMAKE_INSTALL_PREFIX}/${${var}}") -+ set(${var}_FULL "${CMAKE_INSTALL_PREFIX}/${${var}}") - endif() - endforeach() - -@@ -1371,15 +1371,15 @@ configure_file(${PROJECT_SOURCE_DIR}/cmake/LibeventConfigBuildTree.cmake.in - # Generate the config file for the installation tree. - file(RELATIVE_PATH - REL_INCLUDE_DIR -- "${EVENT_INSTALL_CMAKE_DIR}" -- "${EVENT_INSTALL_INCLUDE_DIR}") # Calculate the relative directory from the Cmake dir. -+ "${EVENT_INSTALL_CMAKE_DIR_FULL}" -+ "${EVENT_INSTALL_INCLUDE_DIR_FULL}") # Calculate the relative directory from the Cmake dir. - - # Note the EVENT_CMAKE_DIR is defined in LibeventConfig.cmake.in, - # we escape it here so it's evaluated when it is included instead - # so that the include dirs are givenrelative to where the - # config file is located. - set(EVENT__INCLUDE_DIRS -- "\${EVENT_CMAKE_DIR}/${REL_INCLUDE_DIR}") -+ "\${EVENT_CMAKE_DIR_FULL}/${REL_INCLUDE_DIR}") - - configure_file(${PROJECT_SOURCE_DIR}/cmake/LibeventConfig.cmake.in - ${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/LibeventConfig.cmake diff --git a/ports/libevent/portfile.cmake b/ports/libevent/portfile.cmake index 28028ce3ca9c00..ee3fdd3b68da95 100644 --- a/ports/libevent/portfile.cmake +++ b/ports/libevent/portfile.cmake @@ -7,17 +7,25 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO libevent/libevent - REF release-2.1.8-stable - SHA512 0d5c872dc797b69ab8ea4b83aebcbac20735b8c6f5adfcc2950aa4d6013d240f5fac3376e817da75ae0ccead50cec0d931619e135a050add438777457b086549 + REF release-2.1.10-stable + SHA512 8c336df258f7a12164da739b0ea68bebcc8b2ea4f4a839300aa1c5edfb673ac5d6517f882ba04ab35d406489ddd682a319e39fa6784ac0cab73227d42e503a55 PATCHES - "fix-target-files.patch" + fix-file_path.patch + fix-arm_build.patch ) +if (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(LIBEVENT_LIB_TYPE SHARED) +else() + set(LIBEVENT_LIB_TYPE STATIC) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DEVENT_INSTALL_CMAKE_DIR:PATH=share/libevent + -DEVENT__LIBRARY_TYPE=${LIBEVENT_LIB_TYPE} -DEVENT__DISABLE_BENCHMARK=ON -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_REGRESS=ON @@ -28,7 +36,14 @@ vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -vcpkg_fixup_cmake_targets() +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "windows" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/libevent) +elseif (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake TARGET_PATH share) +elseif (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake TARGET_PATH share) +endif() + vcpkg_copy_pdbs() file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libevent) From abb7f546defc5c66f0a89523d81f474a05fd8446 Mon Sep 17 00:00:00 2001 From: Maxime Gervais Date: Wed, 26 Jun 2019 06:44:17 +0200 Subject: [PATCH 098/123] [libzen] Add new port (#7004) --- ports/libzen/CONTROL | 3 ++ ports/libzen/portfile.cmake | 31 +++++++++++++++++++ .../libzen/vcpkg_support_in_cmakelists.patch | 31 +++++++++++++++++++ 3 files changed, 65 insertions(+) create mode 100644 ports/libzen/CONTROL create mode 100644 ports/libzen/portfile.cmake create mode 100644 ports/libzen/vcpkg_support_in_cmakelists.patch diff --git a/ports/libzen/CONTROL b/ports/libzen/CONTROL new file mode 100644 index 00000000000000..aca3ff287daf83 --- /dev/null +++ b/ports/libzen/CONTROL @@ -0,0 +1,3 @@ +Source: libzen +Version: 0.4.37 +Description: ZenLib is a C++ utility library for easiest cross-platform development diff --git a/ports/libzen/portfile.cmake b/ports/libzen/portfile.cmake new file mode 100644 index 00000000000000..52ad55ef60a942 --- /dev/null +++ b/ports/libzen/portfile.cmake @@ -0,0 +1,31 @@ +include(vcpkg_common_functions) + +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO MediaArea/ZenLib + REF v0.4.37 + SHA512 857091422d6425aeae59bf5a9dfedd72f5c9b4a18f29acf88842d812f2b470fc8b1b03a245af6b7d08d616dd5596a8905cc138daecee23dadea39ae4215f77d4 + HEAD_REF master + + PATCHES vcpkg_support_in_cmakelists.patch +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH}/Project/CMake + PREFER_NINJA +) + +vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/zenlib TARGET_PATH share/zenlib) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig) + +file(INSTALL ${SOURCE_PATH}/License.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/libzen RENAME copyright) + +vcpkg_test_cmake(PACKAGE_NAME ZenLib MODULE) diff --git a/ports/libzen/vcpkg_support_in_cmakelists.patch b/ports/libzen/vcpkg_support_in_cmakelists.patch new file mode 100644 index 00000000000000..fb2ce81f700a78 --- /dev/null +++ b/ports/libzen/vcpkg_support_in_cmakelists.patch @@ -0,0 +1,31 @@ +diff --git a/Project/CMake/CMakeLists.txt b/Project/CMake/CMakeLists.txt +index cb96dc8..8b05a25 100644 +--- a/Project/CMake/CMakeLists.txt ++++ b/Project/CMake/CMakeLists.txt +@@ -33,10 +33,12 @@ set(BIN_INSTALL_DIR "${CMAKE_INSTALL_FULL_BINDIR}" CACHE STRING "Directory where + set(LIB_INSTALL_DIR "${CMAKE_INSTALL_FULL_LIBDIR}" CACHE STRING "Directory where library will install") + set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_FULL_INCLUDEDIR}" CACHE PATH "The directory the headers are installed in") + +-if(NOT MSVC) +- set(ZenLib_CONFIG_INSTALL_DIR "${LIB_INSTALL_DIR}/cmake/zenlib") ++if(VCPKG_TARGET_TRIPLET) ++ set(ZenLib_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/zenlib") ++elseif(MSVC) ++ set(ZenLib_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/cmake") + else() +- set(ZenLib_CONFIG_INSTALL_DIR "cmake") ++ set(ZenLib_CONFIG_INSTALL_DIR "${LIB_INSTALL_DIR}/cmake/zenlib") + endif() + + set(ZenLib_HDRS +@@ -136,10 +138,6 @@ set_target_properties(zen PROPERTIES + PUBLIC_HEADER "${ZenLib_HDRS}" + ) + +-if(MSVC) +- install(FILES $ DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS "Debug;RelWithDebInfo" OPTIONAL) +-endif() +- + install(TARGETS zen EXPORT zen-export + PUBLIC_HEADER DESTINATION ${INCLUDE_INSTALL_DIR}/ZenLib + RUNTIME DESTINATION ${BIN_INSTALL_DIR} From 32ee6c96ce48beffd64fea04c676ffb0d297681b Mon Sep 17 00:00:00 2001 From: John Zhu Date: Tue, 25 Jun 2019 21:45:02 -0700 Subject: [PATCH 099/123] #5248 make vcpkg buildable as 'system' user (#7038) If we keep TMP, when run as 'system' user it is using Windows\Temp folder. --- scripts/cleanEnvironmentHelper.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/cleanEnvironmentHelper.ps1 b/scripts/cleanEnvironmentHelper.ps1 index a3792ecd342b6a..fa5fe869dd371e 100644 --- a/scripts/cleanEnvironmentHelper.ps1 +++ b/scripts/cleanEnvironmentHelper.ps1 @@ -1,6 +1,6 @@ # Capture environment variables for the System and User. Also add some special/built-in variables. # These will be used to synthesize a clean environment -$specialEnvironmentMap = @{ "SystemDrive"=$env:SystemDrive; "SystemRoot"=$env:SystemRoot; "UserProfile"=$env:UserProfile } # These are built-in and not set in the registry +$specialEnvironmentMap = @{ "SystemDrive"=$env:SystemDrive; "SystemRoot"=$env:SystemRoot; "UserProfile"=$env:UserProfile; "TMP"=$env:TMP } # These are built-in and not set in the registry $machineEnvironmentMap = [Environment]::GetEnvironmentVariables('Machine') # HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment $userEnvironmentMap = [Environment]::GetEnvironmentVariables('User') # HKEY_CURRENT_USER\Environment From 7b540fe2084bbe1fff46cfdfcde10fadbd021189 Mon Sep 17 00:00:00 2001 From: Simon Brand Date: Wed, 26 Jun 2019 06:09:16 +0100 Subject: [PATCH 100/123] [tl] Update tl::expected and tl::optional, add tl::function_ref (#7028) * [tl] Update tl::expected and tl::optional, add tl::function_ref * [tl-expected][tl-function-ref][tl-optional] Always prepopulate FetchContent --- ports/tl-expected/CONTROL | 2 +- ports/tl-expected/portfile.cmake | 26 ++++++++++++++++++---- ports/tl-function-ref/CONTROL | 3 +++ ports/tl-function-ref/portfile.cmake | 33 ++++++++++++++++++++++++++++ ports/tl-optional/CONTROL | 2 +- ports/tl-optional/portfile.cmake | 26 ++++++++++++++++++---- 6 files changed, 82 insertions(+), 10 deletions(-) create mode 100644 ports/tl-function-ref/CONTROL create mode 100644 ports/tl-function-ref/portfile.cmake diff --git a/ports/tl-expected/CONTROL b/ports/tl-expected/CONTROL index 440efe9faa88dc..b07479595c910d 100644 --- a/ports/tl-expected/CONTROL +++ b/ports/tl-expected/CONTROL @@ -1,3 +1,3 @@ Source: tl-expected -Version: 0.3-1 +Version: 1.0.0-1 Description: C++11/14/17 std::expected implementation with functional-style extensions diff --git a/ports/tl-expected/portfile.cmake b/ports/tl-expected/portfile.cmake index 95a4861c23cb20..80ec7e89bf3991 100644 --- a/ports/tl-expected/portfile.cmake +++ b/ports/tl-expected/portfile.cmake @@ -3,13 +3,31 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO TartanLlama/expected - REF v0.3 - SHA512 a228399f7103020ed814f1c755b82cf831b3d8c6aaa23dbc3aedc226b3cbd39c22075952dda3af84c8cf6f74ab1131c6997a2431ee62314bd82ccafdc9ab23a3 + REF v1.0.0 + SHA512 747ea34b5540dfcf595896332851f10c52a823ab8ba3fc8152478b0a9e8ca01f0f26827348407249827f4106ff577bd6e697ea6f749c1f21bd1f0913a621075d HEAD_REF master ) -# Install header file -file(INSTALL ${SOURCE_PATH}/tl DESTINATION ${CURRENT_PACKAGES_DIR}/include) +vcpkg_from_github( + OUT_SOURCE_PATH TL_CMAKE_SOURCE_DIR + REPO TartanLlama/tl-cmake + REF 284c6a3f0f61823cc3871b0f193e8df699e2c4ce + SHA512 f611326d75d6e87e58cb05e91f9506b1d83e6fd3b214fe311c4c15604feabfb7a18bbf9c4b4c389a39d615eb468b1f4b15802ab9f44f334a12310cb183fa77a7 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DFETCHCONTENT_FULLY_DISCONNECTED=ON + -DFETCHCONTENT_SOURCE_DIR_TL_CMAKE=${TL_CMAKE_SOURCE_DIR} + -DEXPECTED_ENABLE_TESTS=OFF +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) # Handle copyright file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/tl-expected RENAME copyright) diff --git a/ports/tl-function-ref/CONTROL b/ports/tl-function-ref/CONTROL new file mode 100644 index 00000000000000..be89f774177183 --- /dev/null +++ b/ports/tl-function-ref/CONTROL @@ -0,0 +1,3 @@ +Source: tl-function-ref +Version: 1.0.0-1 +Description: A lightweight, non-owning reference to a callable. \ No newline at end of file diff --git a/ports/tl-function-ref/portfile.cmake b/ports/tl-function-ref/portfile.cmake new file mode 100644 index 00000000000000..07df6a048a8118 --- /dev/null +++ b/ports/tl-function-ref/portfile.cmake @@ -0,0 +1,33 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO TartanLlama/function_ref + REF v1.0.0 + SHA512 64324049021548361caa667a5ad61a8c0acc787d3966e5b132520da99af709970e37b5a5cb71f69523b6254c9d0d8bab441356e7a25880fe53a6998067c587bd + HEAD_REF master +) + +vcpkg_from_github( + OUT_SOURCE_PATH TL_CMAKE_SOURCE_DIR + REPO TartanLlama/tl-cmake + REF 284c6a3f0f61823cc3871b0f193e8df699e2c4ce + SHA512 f611326d75d6e87e58cb05e91f9506b1d83e6fd3b214fe311c4c15604feabfb7a18bbf9c4b4c389a39d615eb468b1f4b15802ab9f44f334a12310cb183fa77a7 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DFETCHCONTENT_FULLY_DISCONNECTED=ON + -DFETCHCONTENT_SOURCE_DIR_TL_CMAKE=${TL_CMAKE_SOURCE_DIR} + -DFUNCTION_REF_ENABLE_TESTS=OFF +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/tl-function-ref RENAME copyright) diff --git a/ports/tl-optional/CONTROL b/ports/tl-optional/CONTROL index 3be044dbe4bbcb..5464d80542df2d 100644 --- a/ports/tl-optional/CONTROL +++ b/ports/tl-optional/CONTROL @@ -1,3 +1,3 @@ Source: tl-optional -Version: 0.5-1 +Version: 1.0.0-1 Description: C++11/14/17 std::optional implementation with functional-style extensions diff --git a/ports/tl-optional/portfile.cmake b/ports/tl-optional/portfile.cmake index b6d98b9e0760e4..3c3085cc93edb3 100644 --- a/ports/tl-optional/portfile.cmake +++ b/ports/tl-optional/portfile.cmake @@ -3,13 +3,31 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO TartanLlama/optional - REF v0.5 - SHA512 f4f72c1ba431737fb7b1b6468b7dbbb025f299775e0a3401993490a60d5999d31ccf1e48c0cd57836293a5534ea4749b9f1c8f65f896144204af3389a5e512f9 + REF v1.0.0 + SHA512 6e5020808650ec312f5cdf4bc92be9067dc214c2e02d635511e99b325d34c360ce360cf93e67287dba4b9c0d674f3cbae96a75b83b13374fbb1291d2bb0f078a HEAD_REF master ) -# Install header file -file(INSTALL ${SOURCE_PATH}/tl DESTINATION ${CURRENT_PACKAGES_DIR}/include) +vcpkg_from_github( + OUT_SOURCE_PATH TL_CMAKE_SOURCE_DIR + REPO TartanLlama/tl-cmake + REF 284c6a3f0f61823cc3871b0f193e8df699e2c4ce + SHA512 f611326d75d6e87e58cb05e91f9506b1d83e6fd3b214fe311c4c15604feabfb7a18bbf9c4b4c389a39d615eb468b1f4b15802ab9f44f334a12310cb183fa77a7 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DFETCHCONTENT_FULLY_DISCONNECTED=ON + -DFETCHCONTENT_SOURCE_DIR_TL_CMAKE=${TL_CMAKE_SOURCE_DIR} + -DOPTIONAL_ENABLE_TESTS=OFF +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) # Handle copyright file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/tl-optional RENAME copyright) From 9c3e312d81f402ccd122255a464ea4e27e950483 Mon Sep 17 00:00:00 2001 From: John McNamara Date: Wed, 26 Jun 2019 06:11:41 +0100 Subject: [PATCH 101/123] [libxlsxwriter] upgrade to 0.8.7 (#7034) Upgrade to the latest version of libxlsxwriter. Closes #6982 --- ports/libxlsxwriter/0003-fix-include-file.patch | 14 ++++++++++++++ ports/libxlsxwriter/CONTROL | 2 +- ports/libxlsxwriter/portfile.cmake | 7 ++++--- 3 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 ports/libxlsxwriter/0003-fix-include-file.patch diff --git a/ports/libxlsxwriter/0003-fix-include-file.patch b/ports/libxlsxwriter/0003-fix-include-file.patch new file mode 100644 index 00000000000000..faa0517b862198 --- /dev/null +++ b/ports/libxlsxwriter/0003-fix-include-file.patch @@ -0,0 +1,14 @@ +diff --git a/include/xlsxwriter/utility.h b/include/xlsxwriter/utility.h +index 5b4b365..5f86335 100644 +--- a/include/xlsxwriter/utility.h ++++ b/include/xlsxwriter/utility.h +@@ -17,7 +17,9 @@ + #define __LXW_UTILITY_H__ + + #include ++#ifndef _MSC_VER + #include ++#endif + #include "common.h" + #include "xmlwriter.h" + diff --git a/ports/libxlsxwriter/CONTROL b/ports/libxlsxwriter/CONTROL index 0cf7ed9655951a..8848ce5f9ea4ed 100644 --- a/ports/libxlsxwriter/CONTROL +++ b/ports/libxlsxwriter/CONTROL @@ -1,4 +1,4 @@ Source: libxlsxwriter -Version: 0.8.6-1 +Version: 0.8.7-1 Description: Libxlsxwriter is a C library that can be used to write text, numbers, formulas and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file. Build-Depends: zlib diff --git a/ports/libxlsxwriter/portfile.cmake b/ports/libxlsxwriter/portfile.cmake index f60d2f88d8ac64..cf77a09e4157ad 100644 --- a/ports/libxlsxwriter/portfile.cmake +++ b/ports/libxlsxwriter/portfile.cmake @@ -3,12 +3,13 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO jmcnamara/libxlsxwriter - REF RELEASE_0.8.6 - SHA512 60822dc5f87531edc97cf774e234f25229a605d4430061c24b95c387318e6e05dde1b0f2f433cea14c6f84ee901c1dffe0d174bfd7e2a8459f59bcee900097db + REF RELEASE_0.8.7 + SHA512 20bf09f084808a8db00315848213c550fb809b587ea49ce3b25b310de981c176a44c518452507b6e00ca3f0a8e0056d88a6f575c031d54aa68791575cb9ab285 HEAD_REF master PATCHES 0001-fix-build-error.patch 0002-fix-uwp-build.patch + 0003-fix-include-file.patch ) if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") @@ -30,4 +31,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) vcpkg_copy_pdbs() file(COPY ${SOURCE_PATH}/License.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}/) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/License.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright) \ No newline at end of file +file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/License.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright) From eff0769b757481f0f3a42f195355abbd319b6f78 Mon Sep 17 00:00:00 2001 From: JackBoosY <47264268+JackBoosY@users.noreply.github.com> Date: Thu, 27 Jun 2019 01:33:36 +0800 Subject: [PATCH 102/123] [openvdb]Upgrade version to 6.1.0, regenerate patches and fix build errors. (#6864) --- ports/openvdb/0001-fix-cmake-modules.patch | 207 --- ports/openvdb/0001-remove-pkgconfig.patch | 129 ++ ports/openvdb/0002-add-custom-options.patch | 14 - ports/openvdb/0002-fix-cmake-modules.patch | 1125 +++++++++++++++++ .../0003-build-only-necessary-targets.patch | 282 ----- ports/openvdb/0003-fix-cmake.patch | 90 ++ ports/openvdb/0004-add-necessary-head.patch | 59 - ports/openvdb/CONTROL | 4 +- ports/openvdb/blosc.patch | 24 - ports/openvdb/portfile.cmake | 35 +- 10 files changed, 1366 insertions(+), 603 deletions(-) delete mode 100644 ports/openvdb/0001-fix-cmake-modules.patch create mode 100644 ports/openvdb/0001-remove-pkgconfig.patch delete mode 100644 ports/openvdb/0002-add-custom-options.patch create mode 100644 ports/openvdb/0002-fix-cmake-modules.patch delete mode 100644 ports/openvdb/0003-build-only-necessary-targets.patch create mode 100644 ports/openvdb/0003-fix-cmake.patch delete mode 100644 ports/openvdb/0004-add-necessary-head.patch delete mode 100644 ports/openvdb/blosc.patch diff --git a/ports/openvdb/0001-fix-cmake-modules.patch b/ports/openvdb/0001-fix-cmake-modules.patch deleted file mode 100644 index 03cc2461ed557d..00000000000000 --- a/ports/openvdb/0001-fix-cmake-modules.patch +++ /dev/null @@ -1,207 +0,0 @@ -diff --git a/cmake/FindBlosc.cmake b/cmake/FindBlosc.cmake -index 2d9d9d3..e9b4abc 100644 ---- a/cmake/FindBlosc.cmake -+++ b/cmake/FindBlosc.cmake -@@ -37,11 +37,7 @@ - - FIND_PACKAGE ( PackageHandleStandardArgs ) - --FIND_PATH( BLOSC_LOCATION include/blosc.h -- "$ENV{BLOSC_ROOT}" -- NO_DEFAULT_PATH -- NO_SYSTEM_ENVIRONMENT_PATH -- ) -+FIND_PATH( BLOSC_LOCATION include/blosc.h) - - FIND_PACKAGE_HANDLE_STANDARD_ARGS ( Blosc - REQUIRED_VARS BLOSC_LOCATION -@@ -53,7 +49,7 @@ IF ( BLOSC_FOUND ) - CACHE STRING "Blosc library directories") - - SET ( _blosc_library_name "blosc" ) -- -+ - # Static library setup - IF (Blosc_USE_STATIC_LIBS) - SET(CMAKE_FIND_LIBRARY_SUFFIXES_BACKUP ${CMAKE_FIND_LIBRARY_SUFFIXES}) -@@ -69,7 +65,7 @@ IF ( BLOSC_FOUND ) - NO_DEFAULT_PATH - NO_SYSTEM_ENVIRONMENT_PATH - ) -- -+ - # Static library tear down - IF (Blosc_USE_STATIC_LIBS) - SET( CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES_BACKUP} ) -diff --git a/cmake/FindGLEW.cmake b/cmake/FindGLEW.cmake -index 0b72457..75951a6 100644 ---- a/cmake/FindGLEW.cmake -+++ b/cmake/FindGLEW.cmake -@@ -39,11 +39,7 @@ - - FIND_PACKAGE ( PackageHandleStandardArgs ) - --FIND_PATH( GLEW_LOCATION include/GL/glew.h -- "$ENV{GLEW_ROOT}" -- NO_DEFAULT_PATH -- NO_SYSTEM_ENVIRONMENT_PATH -- ) -+FIND_PATH( GLEW_LOCATION include/GL/glew.h) - - FIND_PACKAGE_HANDLE_STANDARD_ARGS ( GLEW - REQUIRED_VARS GLEW_LOCATION -diff --git a/cmake/FindGLFW3.cmake b/cmake/FindGLFW3.cmake -index cea0b86..07ea09e 100644 ---- a/cmake/FindGLFW3.cmake -+++ b/cmake/FindGLFW3.cmake -@@ -39,11 +39,7 @@ - - FIND_PACKAGE ( PackageHandleStandardArgs ) - --FIND_PATH( GLFW3_LOCATION include/GLFW/glfw3.h -- "$ENV{GLFW3_ROOT}" -- NO_DEFAULT_PATH -- NO_SYSTEM_ENVIRONMENT_PATH --) -+FIND_PATH( GLFW3_LOCATION include/GLFW/glfw3.h) - - FIND_PACKAGE_HANDLE_STANDARD_ARGS ( GLFW3 - REQUIRED_VARS GLFW3_LOCATION -@@ -59,7 +59,7 @@ IF (GLFW3_FOUND) - NO_CMAKE_SYSTEM_PATH - ) - ELSE (GLFW3_USE_STATIC_LIBS) -- FIND_LIBRARY ( GLFW3_glfw_LIBRARY glfw -+ FIND_LIBRARY ( GLFW3_glfw_LIBRARY glfw3dll - PATHS ${GLFW3_LOCATION}/lib - PATH_SUFFIXES ${GLFW3_PATH_SUFFIXES} - NO_DEFAULT_PATH -diff --git a/cmake/FindILMBase.cmake b/cmake/FindILMBase.cmake -index 664affd..5197110 100644 ---- a/cmake/FindILMBase.cmake -+++ b/cmake/FindILMBase.cmake -@@ -43,11 +43,7 @@ - - FIND_PACKAGE ( PackageHandleStandardArgs ) - --FIND_PATH ( ILMBASE_LOCATION include/OpenEXR/IlmBaseConfig.h -- "$ENV{ILMBASE_ROOT}" -- NO_DEFAULT_PATH -- NO_SYSTEM_ENVIRONMENT_PATH -- ) -+FIND_PATH ( ILMBASE_LOCATION include/OpenEXR/IlmBaseConfig.h) - - FIND_PACKAGE_HANDLE_STANDARD_ARGS ( ILMBase - REQUIRED_VARS ILMBASE_LOCATION -@@ -70,11 +66,13 @@ IF ( ILMBASE_FOUND ) - SET ( IEXMATH_LIBRARY_NAME IexMath-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) - SET ( ILMTHREAD_LIBRARY_NAME IlmThread-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) - SET ( IMATH_LIBRARY_NAME Imath-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) -+ SET ( HALF_LIBRARY_NAME Half-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) - ELSE ( ILMBASE_NAMESPACE_VERSIONING ) - SET ( IEX_LIBRARY_NAME Iex ) - SET ( IEXMATH_LIBRARY_NAME IexMath ) - SET ( ILMTHREAD_LIBRARY_NAME IlmThread ) - SET ( IMATH_LIBRARY_NAME Imath ) -+ SET ( HALF_LIBRARY_NAME Half ) - ENDIF ( ILMBASE_NAMESPACE_VERSIONING ) - - SET ( ILMBASE_INCLUDE_DIRS -@@ -84,7 +82,7 @@ IF ( ILMBASE_FOUND ) - SET ( ILMBASE_LIBRARYDIR ${ILMBASE_LOCATION}/lib - CACHE STRING "ILMBase library directories") - SET ( ILMBASE_FOUND TRUE ) -- -+ - SET ( ORIGINAL_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) - IF (Ilmbase_USE_STATIC_LIBS) - IF (APPLE) -@@ -129,14 +127,14 @@ IF ( ILMBASE_FOUND ) - ELSEIF (WIN32) - # Link library - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib") -- FIND_LIBRARY ( Ilmbase_HALF_LIBRARY Half PATHS ${ILMBASE_LIBRARYDIR} ) -+ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) - FIND_LIBRARY ( Ilmbase_IEX_LIBRARY ${IEX_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) - FIND_LIBRARY ( Ilmbase_IEXMATH_LIBRARY ${IEXMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) - FIND_LIBRARY ( Ilmbase_ILMTHREAD_LIBRARY ${ILMTHREAD_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) - FIND_LIBRARY ( Ilmbase_IMATH_LIBRARY ${IMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) - # Load library - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dll") -- FIND_LIBRARY ( Ilmbase_HALF_DLL Half PATHS ${ILMBASE_LOCATION}/bin -+ FIND_LIBRARY ( Ilmbase_HALF_DLL ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LOCATION}/bin - NO_DEFAULT_PATH - NO_SYSTEM_ENVIRONMENT_PATH - ) -@@ -157,7 +155,7 @@ IF ( ILMBASE_FOUND ) - NO_SYSTEM_ENVIRONMENT_PATH - ) - ELSE (APPLE) -- FIND_LIBRARY ( Ilmbase_HALF_LIBRARY Half PATHS ${ILMBASE_LIBRARYDIR} -+ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} - NO_DEFAULT_PATH - NO_SYSTEM_ENVIRONMENT_PATH - ) -diff --git a/cmake/FindOpenEXR.cmake b/cmake/FindOpenEXR.cmake -index 6d69c03..5ecf8fa 100644 ---- a/cmake/FindOpenEXR.cmake -+++ b/cmake/FindOpenEXR.cmake -@@ -38,11 +38,7 @@ - - FIND_PACKAGE ( PackageHandleStandardArgs ) - --FIND_PATH ( OPENEXR_LOCATION include/OpenEXR/OpenEXRConfig.h -- ENV OPENEXR_ROOT -- NO_DEFAULT_PATH -- NO_SYSTEM_ENVIRONMENT_PATH -- ) -+FIND_PATH ( OPENEXR_LOCATION include/OpenEXR/OpenEXRConfig.h) - - FIND_PACKAGE_HANDLE_STANDARD_ARGS ( OpenEXR - REQUIRED_VARS OPENEXR_LOCATION -@@ -59,7 +55,7 @@ IF ( OPENEXR_FOUND ) - FILE ( STRINGS "${OPENEXR_LOCATION}/include/OpenEXR/OpenEXRConfig.h" _openexr_version_minor_string REGEX "#define OPENEXR_VERSION_MINOR ") - STRING ( REGEX REPLACE "#define OPENEXR_VERSION_MINOR" "" _openexr_version_minor_unstrip "${_openexr_version_minor_string}") - STRING ( STRIP "${_openexr_version_minor_unstrip}" OPENEXR_VERSION_MINOR ) -- -+ - MESSAGE ( STATUS "Found OpenEXR v${OPENEXR_VERSION_MAJOR}.${OPENEXR_VERSION_MINOR} at ${OPENEXR_LOCATION}" ) - - IF ( OPENEXR_NAMESPACE_VERSIONING ) -@@ -67,7 +63,7 @@ IF ( OPENEXR_FOUND ) - ELSE ( OPENEXR_NAMESPACE_VERSIONING ) - SET ( ILMIMF_LIBRARY_NAME IlmImf ) - ENDIF ( OPENEXR_NAMESPACE_VERSIONING ) -- -+ - SET ( OPENEXR_INCLUDE_DIRS - ${OPENEXR_LOCATION}/include - ${OPENEXR_LOCATION}/include/OpenEXR -@@ -120,6 +116,5 @@ IF ( OPENEXR_FOUND ) - ENDIF () - - # SET( Openexr_ILMIMF_LIBRARY ${OPENEXR_ILMIMF_LIBRARY_PATH} CACHE STRING "Openexr's IlmImf library") -- --ENDIF ( OPENEXR_FOUND ) - -+ENDIF ( OPENEXR_FOUND ) -diff --git a/cmake/FindTBB.cmake b/cmake/FindTBB.cmake -index 8a56ec0..9f5a7b4 100644 ---- a/cmake/FindTBB.cmake -+++ b/cmake/FindTBB.cmake -@@ -42,14 +42,7 @@ FIND_PACKAGE ( PackageHandleStandardArgs ) - - # SET ( TBB_FOUND FALSE ) - --FIND_PATH( TBB_LOCATION include/tbb/tbb.h -- "$ENV{TBB_ROOT}" -- NO_DEFAULT_PATH -- NO_CMAKE_ENVIRONMENT_PATH -- NO_CMAKE_PATH -- NO_SYSTEM_ENVIRONMENT_PATH -- NO_CMAKE_SYSTEM_PATH -- ) -+FIND_PATH( TBB_LOCATION include/tbb/tbb.h) - - FIND_PACKAGE_HANDLE_STANDARD_ARGS ( TBB - REQUIRED_VARS TBB_LOCATION diff --git a/ports/openvdb/0001-remove-pkgconfig.patch b/ports/openvdb/0001-remove-pkgconfig.patch new file mode 100644 index 00000000000000..01803d531a4260 --- /dev/null +++ b/ports/openvdb/0001-remove-pkgconfig.patch @@ -0,0 +1,129 @@ +diff --git a/cmake/FindBlosc.cmake b/cmake/FindBlosc.cmake +index 03e361e..b44f46d 100644 +--- a/cmake/FindBlosc.cmake ++++ b/cmake/FindBlosc.cmake +@@ -104,11 +104,6 @@ else() + endif() + endif() + +-# Additionally try and use pkconfig to find blosc +- +-find_package(PkgConfig) +-pkg_check_modules(PC_Blosc QUIET blosc) +- + # ------------------------------------------------------------------------ + # Search for blosc include DIR + # ------------------------------------------------------------------------ +diff --git a/cmake/FindCppUnit.cmake b/cmake/FindCppUnit.cmake +index fb8a28b..fea685e 100644 +--- a/cmake/FindCppUnit.cmake ++++ b/cmake/FindCppUnit.cmake +@@ -106,11 +106,6 @@ else() + endif() + endif() + +-# Additionally try and use pkconfig to find cppunit +- +-find_package(PkgConfig) +-pkg_check_modules(PC_CppUnit QUIET cppunit) +- + # ------------------------------------------------------------------------ + # Search for CppUnit include DIR + # ------------------------------------------------------------------------ +diff --git a/cmake/FindIlmBase.cmake b/cmake/FindIlmBase.cmake +index f0a0d7f..9f31355 100644 +--- a/cmake/FindIlmBase.cmake ++++ b/cmake/FindIlmBase.cmake +@@ -152,11 +152,6 @@ else() + endif() + endif() + +-# Additionally try and use pkconfig to find IlmBase +- +-find_package(PkgConfig) +-pkg_check_modules(PC_IlmBase QUIET IlmBase) +- + # ------------------------------------------------------------------------ + # Search for IlmBase include DIR + # ------------------------------------------------------------------------ +diff --git a/cmake/FindLog4cplus.cmake b/cmake/FindLog4cplus.cmake +index 6890724..10dc931 100644 +--- a/cmake/FindLog4cplus.cmake ++++ b/cmake/FindLog4cplus.cmake +@@ -106,11 +106,6 @@ else() + endif() + endif() + +-# Additionally try and use pkconfig to find log4cplus +- +-find_package(PkgConfig) +-pkg_check_modules(PC_Log4cplus QUIET log4cplus) +- + # ------------------------------------------------------------------------ + # Search for Log4cplus include DIR + # ------------------------------------------------------------------------ +diff --git a/cmake/FindOpenEXR.cmake b/cmake/FindOpenEXR.cmake +index 302c1df..3d00c3d 100644 +--- a/cmake/FindOpenEXR.cmake ++++ b/cmake/FindOpenEXR.cmake +@@ -145,11 +145,6 @@ else() + endif() + endif() + +-# Additionally try and use pkconfig to find OpenEXR +- +-find_package(PkgConfig) +-pkg_check_modules(PC_OpenEXR QUIET OpenEXR) +- + # ------------------------------------------------------------------------ + # Search for OpenEXR include DIR + # ------------------------------------------------------------------------ +diff --git a/cmake/FindOpenVDB.cmake b/cmake/FindOpenVDB.cmake +index 783dfed..1fd43be 100644 +--- a/cmake/FindOpenVDB.cmake ++++ b/cmake/FindOpenVDB.cmake +@@ -153,11 +153,6 @@ else() + endif() + endif() + +-# Additionally try and use pkconfig to find OpenVDB +- +-find_package(PkgConfig) +-pkg_check_modules(PC_OpenVDB QUIET OpenVDB) +- + # This CMake module supports being called from external packages AND from + # within the OpenVDB repository for building openvdb components with the + # core library build disabled. Determine where we are being called from: +diff --git a/cmake/FindTBB.cmake b/cmake/FindTBB.cmake +index 01696ce..8fe73e5 100644 +--- a/cmake/FindTBB.cmake ++++ b/cmake/FindTBB.cmake +@@ -141,11 +141,6 @@ else() + endif() + endif() + +-# Additionally try and use pkconfig to find Tbb +- +-find_package(PkgConfig) +-pkg_check_modules(PC_Tbb QUIET tbb) +- + # ------------------------------------------------------------------------ + # Search for tbb include DIR + # ------------------------------------------------------------------------ +diff --git a/cmake/OpenVDBGLFW3Setup.cmake b/cmake/OpenVDBGLFW3Setup.cmake +index 3a29dc7..4dc6269 100644 +--- a/cmake/OpenVDBGLFW3Setup.cmake ++++ b/cmake/OpenVDBGLFW3Setup.cmake +@@ -77,12 +77,6 @@ else() + endif() + endif() + +-# Additionally try and use pkconfig to find glfw, though we only use +-# pkg-config to re-direct to the cmake. In other words, glfw's cmake is +-# expected to be installed +-find_package(PkgConfig) +-pkg_check_modules(PC_glfw3 QUIET glfw3) +- + if(PC_glfw3_FOUND) + foreach(DIR ${PC_glfw3_LIBRARY_DIRS}) + list(APPEND _GLFW3_ROOT_SEARCH_DIR ${DIR}) diff --git a/ports/openvdb/0002-add-custom-options.patch b/ports/openvdb/0002-add-custom-options.patch deleted file mode 100644 index 5e8d49091208d7..00000000000000 --- a/ports/openvdb/0002-add-custom-options.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index b35ec70..801e7df 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -38,6 +38,9 @@ if(CCACHE_FOUND) - set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) - endif(CCACHE_FOUND) - -+OPTION ( OPENVDB_BUILD_TOOLS "Build OpenVDB utilities" OFF ) -+OPTION ( OPENVDB_STATIC "Build statically linked library" OFF ) -+OPTION ( OPENVDB_SHARED "Build dynamically linked library" ON ) - OPTION ( OPENVDB_BUILD_UNITTESTS "Build the OpenVDB unit tests" ON ) - OPTION ( OPENVDB_BUILD_DOCS "Build the OpenVDB documentation" OFF ) - OPTION ( OPENVDB_BUILD_PYTHON_MODULE "Build the pyopenvdb Python module" ON ) diff --git a/ports/openvdb/0002-fix-cmake-modules.patch b/ports/openvdb/0002-fix-cmake-modules.patch new file mode 100644 index 00000000000000..7b36161c5cb8b7 --- /dev/null +++ b/ports/openvdb/0002-fix-cmake-modules.patch @@ -0,0 +1,1125 @@ +diff --git a/cmake/FindBlosc.cmake b/cmake/FindBlosc.cmake +index e8b57a2..61ba83b 100644 +--- a/cmake/FindBlosc.cmake ++++ b/cmake/FindBlosc.cmake +@@ -1,4 +1,4 @@ +-# Copyright (c) 2012-2019 DreamWorks Animation LLC ++# Copyright (c) 2012-2016 DreamWorks Animation LLC + # + # All rights reserved. This software is distributed under the + # Mozilla Public License 2.0 ( http://www.mozilla.org/MPL/2.0/ ) +@@ -24,190 +24,51 @@ + # IN NO EVENT SHALL THE COPYRIGHT HOLDERS' AND CONTRIBUTORS' AGGREGATE + # LIABILITY FOR ALL CLAIMS REGARDLESS OF THEIR BASIS EXCEED US$250.00. + # +-#[=======================================================================[.rst: + +-FindBlosc +---------- +- +-Find Blosc include dirs and libraries +- +-Use this module by invoking find_package with the form:: +- +- find_package(Blosc +- [version] [EXACT] # Minimum or EXACT version e.g. 1.5.0 +- [REQUIRED] # Fail with error if Blosc is not found +- ) +- +-IMPORTED Targets +-^^^^^^^^^^^^^^^^ +- +-``Blosc::blosc`` +- This module defines IMPORTED target Blosc::Blosc, if Blosc has been found. +- +-Result Variables +-^^^^^^^^^^^^^^^^ +- +-This will define the following variables: +- +-``Blosc_FOUND`` +- True if the system has the Blosc library. +-``Blosc_VERSION`` +- The version of the Blosc library which was found. +-``Blosc_INCLUDE_DIRS`` +- Include directories needed to use Blosc. +-``Blosc_LIBRARIES`` +- Libraries needed to link to Blosc. +-``Blosc_LIBRARY_DIRS`` +- Blosc library directories. +- +-Cache Variables +-^^^^^^^^^^^^^^^ +- +-The following cache variables may also be set: +- +-``Blosc_INCLUDE_DIR`` +- The directory containing ``blosc.h``. +-``Blosc_LIBRARY`` +- The path to the Blosc library. +- +-Hints +-^^^^^ +- +-Instead of explicitly setting the cache variables, the following variables +-may be provided to tell this module where to look. +- +-``BLOSC_ROOT`` +- Preferred installation prefix. +-``BLOSC_INCLUDEDIR`` +- Preferred include directory e.g. /include +-``BLOSC_LIBRARYDIR`` +- Preferred library directory e.g. /lib +-``SYSTEM_LIBRARY_PATHS`` +- Paths appended to all include and lib searches. +- +-#]=======================================================================] +- +-mark_as_advanced( +- Blosc_INCLUDE_DIR +- Blosc_LIBRARY +-) +- +-# Append BLOSC_ROOT or $ENV{BLOSC_ROOT} if set (prioritize the direct cmake var) +-set(_BLOSC_ROOT_SEARCH_DIR "") +- +-if(BLOSC_ROOT) +- list(APPEND _BLOSC_ROOT_SEARCH_DIR ${BLOSC_ROOT}) +-else() +- set(_ENV_BLOSC_ROOT $ENV{BLOSC_ROOT}) +- if(_ENV_BLOSC_ROOT) +- list(APPEND _BLOSC_ROOT_SEARCH_DIR ${_ENV_BLOSC_ROOT}) +- endif() +-endif() +- +-# ------------------------------------------------------------------------ +-# Search for blosc include DIR +-# ------------------------------------------------------------------------ +- +-set(_BLOSC_INCLUDE_SEARCH_DIRS "") +-list(APPEND _BLOSC_INCLUDE_SEARCH_DIRS +- ${BLOSC_INCLUDEDIR} +- ${_BLOSC_ROOT_SEARCH_DIR} +- ${PC_Blosc_INCLUDE_DIRS} +- ${SYSTEM_LIBRARY_PATHS} +-) ++# -*- cmake -*- ++# - Find Blosc ++# ++# Author : Nicholas Yue yue.nicholas@gmail.com ++# ++# BLOSC_FOUND set if Blosc is found. ++# BLOSC_INCLUDE_DIR Blosc's include directory ++# BLOSC_LIBRARYDIR Blosc's library directory ++# BLOSC_LIBRARIES all Blosc libraries + +-# Look for a standard blosc header file. +-find_path(Blosc_INCLUDE_DIR blosc.h +- NO_DEFAULT_PATH +- PATHS ${_BLOSC_INCLUDE_SEARCH_DIRS} +- PATH_SUFFIXES include +-) ++FIND_PACKAGE ( PackageHandleStandardArgs ) + +-if(EXISTS "${Blosc_INCLUDE_DIR}/blosc.h") +- file(STRINGS "${Blosc_INCLUDE_DIR}/blosc.h" +- _blosc_version_major_string REGEX "#define BLOSC_VERSION_MAJOR +[0-9]+ " +- ) +- string(REGEX REPLACE "#define BLOSC_VERSION_MAJOR +([0-9]+).*$" "\\1" +- _blosc_version_major_string "${_blosc_version_major_string}" +- ) +- string(STRIP "${_blosc_version_major_string}" Blosc_VERSION_MAJOR) ++FIND_PATH( BLOSC_LOCATION include/blosc.h) + +- file(STRINGS "${Blosc_INCLUDE_DIR}/blosc.h" +- _blosc_version_minor_string REGEX "#define BLOSC_VERSION_MINOR +[0-9]+ " ++FIND_PACKAGE_HANDLE_STANDARD_ARGS ( Blosc ++ REQUIRED_VARS BLOSC_LOCATION + ) +- string(REGEX REPLACE "#define BLOSC_VERSION_MINOR +([0-9]+).*$" "\\1" +- _blosc_version_minor_string "${_blosc_version_minor_string}" +- ) +- string(STRIP "${_blosc_version_minor_string}" Blosc_VERSION_MINOR) +- +- unset(_blosc_version_major_string) +- unset(_blosc_version_minor_string) +- +- set(Blosc_VERSION ${Blosc_VERSION_MAJOR}.${Blosc_VERSION_MINOR}) +-endif() +- +-# ------------------------------------------------------------------------ +-# Search for blosc lib DIR +-# ------------------------------------------------------------------------ + +-set(_BLOSC_LIBRARYDIR_SEARCH_DIRS "") +-list(APPEND _BLOSC_LIBRARYDIR_SEARCH_DIRS +- ${BLOSC_LIBRARYDIR} +- ${_BLOSC_ROOT_SEARCH_DIR} +- ${PC_Blosc_LIBRARY_DIRS} +- ${SYSTEM_LIBRARY_PATHS} +-) ++IF ( BLOSC_FOUND ) + +-# Static library setup +-if(UNIX AND BLOSC_USE_STATIC_LIBS) +- set(_BLOSC_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) +- set(CMAKE_FIND_LIBRARY_SUFFIXES ".a") +-endif() ++# SET ( BLOSC_LIBRARYDIR ${BLOSC_LOCATION}/lib ++# CACHE STRING "Blosc library directories") + +-set(BLOSC_PATH_SUFFIXES +- lib64 +- lib +-) ++ SET ( _blosc_library_name "blosc" ) + +-find_library(Blosc_LIBRARY blosc +- NO_DEFAULT_PATH +- PATHS ${_BLOSC_LIBRARYDIR_SEARCH_DIRS} +- PATH_SUFFIXES ${BLOSC_PATH_SUFFIXES} +-) ++ # Static library setup ++ IF (Blosc_USE_STATIC_LIBS) ++ SET(CMAKE_FIND_LIBRARY_SUFFIXES_BACKUP ${CMAKE_FIND_LIBRARY_SUFFIXES}) ++ IF (WIN32) ++ SET ( _blosc_library_name "libblosc" ) ++ ELSE () ++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") ++ ENDIF () ++ ENDIF() + +-if(UNIX AND BLOSC_USE_STATIC_LIBS) +- set(CMAKE_FIND_LIBRARY_SUFFIXES ${_BLOSC_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) +- unset(_BLOSC_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES) +-endif() +- +-# ------------------------------------------------------------------------ +-# Cache and set Blosc_FOUND +-# ------------------------------------------------------------------------ +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(Blosc +- FOUND_VAR Blosc_FOUND +- REQUIRED_VARS +- Blosc_LIBRARY +- Blosc_INCLUDE_DIR +- VERSION_VAR Blosc_VERSION +-) ++ FIND_LIBRARY ( BLOSC_blosc_LIBRARY ${_blosc_library_name} ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) + +-if(Blosc_FOUND) +- set(Blosc_LIBRARIES ${Blosc_LIBRARY}) +- set(Blosc_INCLUDE_DIRS ${Blosc_INCLUDE_DIR}) +- set(Blosc_DEFINITIONS ${PC_Blosc_CFLAGS_OTHER}) ++ # Static library tear down ++ IF (Blosc_USE_STATIC_LIBS) ++ SET( CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES_BACKUP} ) ++ ENDIF() + +- get_filename_component(Blosc_LIBRARY_DIRS ${Blosc_LIBRARY} DIRECTORY) ++ SET( BLOSC_INCLUDE_DIR "${BLOSC_LOCATION}/include" CACHE STRING "Blosc include directory" ) + +- if(NOT TARGET Blosc::blosc) +- add_library(Blosc::blosc UNKNOWN IMPORTED) +- set_target_properties(Blosc::blosc PROPERTIES +- IMPORTED_LOCATION "${Blosc_LIBRARIES}" +- INTERFACE_COMPILE_DEFINITIONS "${Blosc_DEFINITIONS}" +- INTERFACE_INCLUDE_DIRECTORIES "${Blosc_INCLUDE_DIRS}" +- ) +- endif() +-elseif(Blosc_FIND_REQUIRED) +- message(FATAL_ERROR "Unable to find Blosc") +-endif() ++ENDIF ( BLOSC_FOUND ) +diff --git a/cmake/FindIlmBase.cmake b/cmake/FindIlmBase.cmake +index 7f71a72..bb14fb4 100644 +--- a/cmake/FindIlmBase.cmake ++++ b/cmake/FindIlmBase.cmake +@@ -1,4 +1,4 @@ +-# Copyright (c) 2012-2019 DreamWorks Animation LLC ++# Copyright (c) 2012-2016 DreamWorks Animation LLC + # + # All rights reserved. This software is distributed under the + # Mozilla Public License 2.0 ( http://www.mozilla.org/MPL/2.0/ ) +@@ -24,309 +24,162 @@ + # IN NO EVENT SHALL THE COPYRIGHT HOLDERS' AND CONTRIBUTORS' AGGREGATE + # LIABILITY FOR ALL CLAIMS REGARDLESS OF THEIR BASIS EXCEED US$250.00. + # +-#[=======================================================================[.rst: + +-FindIlmBase +------------ +- +-Find IlmBase include dirs and libraries +- +-Use this module by invoking find_package with the form:: +- +- find_package(IlmBase +- [version] [EXACT] # Minimum or EXACT version +- [REQUIRED] # Fail with error if IlmBase is not found +- [COMPONENTS ...] # IlmBase libraries by their canonical name +- # e.g. "Half" for "libHalf" +- ) +- +-IMPORTED Targets +-^^^^^^^^^^^^^^^^ +- +-``IlmBase::Half`` +- The Half library target. +-``IlmBase::Iex`` +- The Iex library target. +-``IlmBase::IexMath`` +- The IexMath library target. +-``IlmBase::IlmThread`` +- The IlmThread library target. +-``IlmBase::Imath`` +- The Imath library target. +- +-Result Variables +-^^^^^^^^^^^^^^^^ +- +-This will define the following variables: +- +-``IlmBase_FOUND`` +- True if the system has the IlmBase library. +-``IlmBase_VERSION`` +- The version of the IlmBase library which was found. +-``IlmBase_INCLUDE_DIRS`` +- Include directories needed to use IlmBase. +-``IlmBase_LIBRARIES`` +- Libraries needed to link to IlmBase. +-``IlmBase_LIBRARY_DIRS`` +- IlmBase library directories. +-``IlmBase_{COMPONENT}_FOUND`` +- True if the system has the named IlmBase component. +- +-Cache Variables +-^^^^^^^^^^^^^^^ +- +-The following cache variables may also be set: +- +-``IlmBase_INCLUDE_DIR`` +- The directory containing ``IlmBase/config-auto.h``. +-``IlmBase_{COMPONENT}_LIBRARY`` +- Individual component libraries for IlmBase +-``IlmBase_{COMPONENT}_DLL`` +- Individual component dlls for IlmBase on Windows. +- +-Hints +-^^^^^ +- +-Instead of explicitly setting the cache variables, the following variables +-may be provided to tell this module where to look. +- +-``ILMBASE_ROOT`` +- Preferred installation prefix. +-``ILMBASE_INCLUDEDIR`` +- Preferred include directory e.g. /include +-``ILMBASE_LIBRARYDIR`` +- Preferred library directory e.g. /lib +-``SYSTEM_LIBRARY_PATHS`` +- Paths appended to all include and lib searches. +- +-#]=======================================================================] +- +-# Support new if() IN_LIST operator +-if(POLICY CMP0057) +- cmake_policy(SET CMP0057 NEW) +-endif() +- +-mark_as_advanced( +- IlmBase_INCLUDE_DIR +- IlmBase_LIBRARY +-) +- +-set(_ILMBASE_COMPONENT_LIST +- Half +- Iex +- IexMath +- IlmThread +- Imath +-) +- +-if(IlmBase_FIND_COMPONENTS) +- set(ILMBASE_COMPONENTS_PROVIDED TRUE) +- set(_IGNORED_COMPONENTS "") +- foreach(COMPONENT ${IlmBase_FIND_COMPONENTS}) +- if(NOT ${COMPONENT} IN_LIST _ILMBASE_COMPONENT_LIST) +- list(APPEND _IGNORED_COMPONENTS ${COMPONENT}) +- endif() +- endforeach() +- +- if(_IGNORED_COMPONENTS) +- message(STATUS "Ignoring unknown components of IlmBase:") +- foreach(COMPONENT ${_IGNORED_COMPONENTS}) +- message(STATUS " ${COMPONENT}") +- endforeach() +- list(REMOVE_ITEM IlmBase_FIND_COMPONENTS ${_IGNORED_COMPONENTS}) +- endif() +-else() +- set(ILMBASE_COMPONENTS_PROVIDED FALSE) +- set(IlmBase_FIND_COMPONENTS ${_ILMBASE_COMPONENT_LIST}) +-endif() +- +-# Append ILMBASE_ROOT or $ENV{ILMBASE_ROOT} if set (prioritize the direct cmake var) +-set(_ILMBASE_ROOT_SEARCH_DIR "") +- +-if(ILMBASE_ROOT) +- list(APPEND _ILMBASE_ROOT_SEARCH_DIR ${ILMBASE_ROOT}) +-else() +- set(_ENV_ILMBASE_ROOT $ENV{ILMBASE_ROOT}) +- if(_ENV_ILMBASE_ROOT) +- list(APPEND _ILMBASE_ROOT_SEARCH_DIR ${_ENV_ILMBASE_ROOT}) +- endif() +-endif() +- +-# ------------------------------------------------------------------------ +-# Search for IlmBase include DIR +-# ------------------------------------------------------------------------ +- +-set(_ILMBASE_INCLUDE_SEARCH_DIRS "") +-list(APPEND _ILMBASE_INCLUDE_SEARCH_DIRS +- ${ILMBASE_INCLUDEDIR} +- ${_ILMBASE_ROOT_SEARCH_DIR} +- ${PC_IlmBase_INCLUDEDIR} +- ${SYSTEM_LIBRARY_PATHS} +-) +- +-# Look for a standard IlmBase header file. +-find_path(IlmBase_INCLUDE_DIR IlmBaseConfig.h +- NO_DEFAULT_PATH +- PATHS ${_ILMBASE_INCLUDE_SEARCH_DIRS} +- PATH_SUFFIXES include/OpenEXR OpenEXR +-) +- +-if(EXISTS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h") +- # Get the ILMBASE version information from the config header +- file(STRINGS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h" +- _ilmbase_version_major_string REGEX "#define ILMBASE_VERSION_MAJOR " +- ) +- string(REGEX REPLACE "#define ILMBASE_VERSION_MAJOR" "" +- _ilmbase_version_major_string "${_ilmbase_version_major_string}" +- ) +- string(STRIP "${_ilmbase_version_major_string}" IlmBase_VERSION_MAJOR) +- +- file(STRINGS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h" +- _ilmbase_version_minor_string REGEX "#define ILMBASE_VERSION_MINOR " +- ) +- string(REGEX REPLACE "#define ILMBASE_VERSION_MINOR" "" +- _ilmbase_version_minor_string "${_ilmbase_version_minor_string}" +- ) +- string(STRIP "${_ilmbase_version_minor_string}" IlmBase_VERSION_MINOR) +- +- unset(_ilmbase_version_major_string) +- unset(_ilmbase_version_minor_string) +- +- set(IlmBase_VERSION ${IlmBase_VERSION_MAJOR}.${IlmBase_VERSION_MINOR}) +-endif() +- +-# ------------------------------------------------------------------------ +-# Search for ILMBASE lib DIR +-# ------------------------------------------------------------------------ +- +-set(_ILMBASE_LIBRARYDIR_SEARCH_DIRS "") +- +-# Append to _ILMBASE_LIBRARYDIR_SEARCH_DIRS in priority order +- +-list(APPEND _ILMBASE_LIBRARYDIR_SEARCH_DIRS +- ${ILMBASE_LIBRARYDIR} +- ${_ILMBASE_ROOT_SEARCH_DIR} +- ${PC_IlmBase_LIBDIR} +- ${SYSTEM_LIBRARY_PATHS} +-) +- +-# Build suffix directories +- +-set(ILMBASE_PATH_SUFFIXES +- lib64 +- lib +-) +- +-if(UNIX) +- list(INSERT ILMBASE_PATH_SUFFIXES 0 lib/x86_64-linux-gnu) +-endif() +- +-set(_ILMBASE_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) +- +-# library suffix handling +-if(WIN32) +- list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +- "-${IlmBase_VERSION_MAJOR}_${IlmBase_VERSION_MINOR}.lib" +- ) +-else() +- if(ILMBASE_USE_STATIC_LIBS) +- list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +- "-${IlmBase_VERSION_MAJOR}_${IlmBase_VERSION_MINOR}.a" +- ) +- else() +- if(APPLE) +- list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +- "-${IlmBase_VERSION_MAJOR}_${IlmBase_VERSION_MINOR}.dylib" +- ) +- else() +- list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +- "-${IlmBase_VERSION_MAJOR}_${IlmBase_VERSION_MINOR}.so" +- ) +- endif() +- endif() +-endif() +- +-set(IlmBase_LIB_COMPONENTS "") +- +-foreach(COMPONENT ${IlmBase_FIND_COMPONENTS}) +- find_library(IlmBase_${COMPONENT}_LIBRARY ${COMPONENT} +- NO_DEFAULT_PATH +- PATHS ${_ILMBASE_LIBRARYDIR_SEARCH_DIRS} +- PATH_SUFFIXES ${ILMBASE_PATH_SUFFIXES} +- ) +- list(APPEND IlmBase_LIB_COMPONENTS ${IlmBase_${COMPONENT}_LIBRARY}) +- +- if(WIN32 AND NOT ILMBASE_USE_STATIC_LIBS) +- set(_ILMBASE_TMP ${CMAKE_FIND_LIBRARY_SUFFIXES}) +- set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll") +- find_library(IlmBase_${COMPONENT}_DLL ${COMPONENT} +- NO_DEFAULT_PATH +- PATHS ${_ILMBASE_LIBRARYDIR_SEARCH_DIRS} +- PATH_SUFFIXES bin +- ) +- set(CMAKE_FIND_LIBRARY_SUFFIXES ${_ILMBASE_TMP}) +- unset(_ILMBASE_TMP) +- endif() +- +- if(IlmBase_${COMPONENT}_LIBRARY) +- set(IlmBase_${COMPONENT}_FOUND TRUE) +- else() +- set(IlmBase_${COMPONENT}_FOUND FALSE) +- endif() +-endforeach() +- +-# reset lib suffix +- +-set(CMAKE_FIND_LIBRARY_SUFFIXES ${_ILMBASE_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) +-unset(_ILMBASE_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES) +- +-# ------------------------------------------------------------------------ +-# Cache and set ILMBASE_FOUND +-# ------------------------------------------------------------------------ +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(IlmBase +- FOUND_VAR IlmBase_FOUND +- REQUIRED_VARS +- IlmBase_INCLUDE_DIR +- IlmBase_LIB_COMPONENTS +- VERSION_VAR IlmBase_VERSION +- HANDLE_COMPONENTS +-) ++#-*-cmake-*- ++# - Find ILMBase ++# ++# Author : Nicholas Yue yue.nicholas@gmail.com ++# ++# This auxiliary CMake file helps in find the ILMBASE headers and libraries ++# ++# ILMBASE_FOUND set if ILMBASE is found. ++# ILMBASE_INCLUDE_DIR ILMBASE's include directory ++# ILMBASE_LIBRARYDIR ILMBASE's include directory ++# Ilmbase_HALF_LIBRARY ILMBASE's Half libraries ++# Ilmbase_IEX_LIBRARY ILMBASE's Iex libraries ++# Ilmbase_IEXMATH_LIBRARY ILMBASE's IexMath libraries ++# Ilmbase_ILMTHREAD_LIBRARY ILMBASE's IlmThread libraries ++# Ilmbase_IMATH_LIBRARY ILMBASE's Imath libraries + +-if(IlmBase_FOUND) +- set(IlmBase_LIBRARIES ${IlmBase_LIB_COMPONENTS}) ++FIND_PACKAGE ( PackageHandleStandardArgs ) + +- # We have to add both include and include/OpenEXR to the include +- # path in case OpenEXR and IlmBase are installed separately ++FIND_PATH ( ILMBASE_LOCATION include/OpenEXR/IlmBaseConfig.h) + +- set(IlmBase_INCLUDE_DIRS) +- list(APPEND IlmBase_INCLUDE_DIRS +- ${IlmBase_INCLUDE_DIR}/../ +- ${IlmBase_INCLUDE_DIR} ++FIND_PACKAGE_HANDLE_STANDARD_ARGS ( ILMBase ++ REQUIRED_VARS ILMBASE_LOCATION + ) +- set(IlmBase_DEFINITIONS ${PC_IlmBase_CFLAGS_OTHER}) +- +- set(IlmBase_LIBRARY_DIRS "") +- foreach(LIB ${IlmBase_LIB_COMPONENTS}) +- get_filename_component(_ILMBASE_LIBDIR ${LIB} DIRECTORY) +- list(APPEND IlmBase_LIBRARY_DIRS ${_ILMBASE_LIBDIR}) +- endforeach() +- list(REMOVE_DUPLICATES IlmBase_LIBRARY_DIRS) +- +- # Configure imported targets +- +- foreach(COMPONENT ${IlmBase_FIND_COMPONENTS}) +- if(NOT TARGET IlmBase::${COMPONENT}) +- add_library(IlmBase::${COMPONENT} UNKNOWN IMPORTED) +- set_target_properties(IlmBase::${COMPONENT} PROPERTIES +- IMPORTED_LOCATION "${IlmBase_${COMPONENT}_LIBRARY}" +- INTERFACE_COMPILE_OPTIONS "${IlmBase_DEFINITIONS}" +- INTERFACE_INCLUDE_DIRECTORIES "${IlmBase_INCLUDE_DIRS}" +- ) +- endif() +- endforeach() + +-elseif(IlmBase_FIND_REQUIRED) +- message(FATAL_ERROR "Unable to find IlmBase") +-endif() ++OPTION ( ILMBASE_NAMESPACE_VERSIONING "Namespace versioning of libraries" ON ) ++ ++IF ( ILMBASE_FOUND ) ++ ++ FILE ( STRINGS "${ILMBASE_LOCATION}/include/OpenEXR/IlmBaseConfig.h" _ilmbase_version_major_string REGEX "#define ILMBASE_VERSION_MAJOR ") ++ STRING ( REGEX REPLACE "#define ILMBASE_VERSION_MAJOR" "" _ilmbase_version_major_unstrip "${_ilmbase_version_major_string}") ++ STRING ( STRIP "${_ilmbase_version_major_unstrip}" ILMBASE_VERSION_MAJOR ) ++ ++ FILE ( STRINGS "${ILMBASE_LOCATION}/include/OpenEXR/IlmBaseConfig.h" _ilmbase_version_minor_string REGEX "#define ILMBASE_VERSION_MINOR ") ++ STRING ( REGEX REPLACE "#define ILMBASE_VERSION_MINOR" "" _ilmbase_version_minor_unstrip "${_ilmbase_version_minor_string}") ++ STRING ( STRIP "${_ilmbase_version_minor_unstrip}" ILMBASE_VERSION_MINOR ) ++ ++ IF ( ILMBASE_NAMESPACE_VERSIONING ) ++ SET ( IEX_LIBRARY_NAME Iex-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) ++ SET ( IEXMATH_LIBRARY_NAME IexMath-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) ++ SET ( ILMTHREAD_LIBRARY_NAME IlmThread-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) ++ SET ( IMATH_LIBRARY_NAME Imath-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) ++ SET ( HALF_LIBRARY_NAME Half-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) ++ ELSE ( ILMBASE_NAMESPACE_VERSIONING ) ++ SET ( IEX_LIBRARY_NAME Iex ) ++ SET ( IEXMATH_LIBRARY_NAME IexMath ) ++ SET ( ILMTHREAD_LIBRARY_NAME IlmThread ) ++ SET ( IMATH_LIBRARY_NAME Imath ) ++ SET ( HALF_LIBRARY_NAME Half ) ++ ENDIF ( ILMBASE_NAMESPACE_VERSIONING ) ++ ++ SET ( ILMBASE_INCLUDE_DIRS ++ ${ILMBASE_LOCATION}/include ++ ${ILMBASE_LOCATION}/include/OpenEXR ++ CACHE STRING "ILMBase include directories") ++ SET ( ILMBASE_LIBRARYDIR ${ILMBASE_LOCATION}/lib ++ CACHE STRING "ILMBase library directories") ++ SET ( ILMBASE_FOUND TRUE ) ++ ++ SET ( ORIGINAL_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) ++ IF (Ilmbase_USE_STATIC_LIBS) ++ IF (APPLE) ++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") ++ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY Half PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IEX_LIBRARY Iex PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_ILMTHREAD_LIBRARY IlmThread PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IMATH_LIBRARY Imath PATHS ${ILMBASE_LIBRARYDIR} ) ++ ELSEIF (WIN32) ++ # Link library ++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib") ++ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY Half_static PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IEX_LIBRARY Iex_static PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_ILMTHREAD_LIBRARY IlmThread_static PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IMATH_LIBRARY Imath_static PATHS ${ILMBASE_LIBRARYDIR} ) ++ ELSE (APPLE) ++ SET ( CMAKE_FIND_LIBRARY_SUFFIXES ".a") ++ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY Half PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_IEX_LIBRARY Iex PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_ILMTHREAD_LIBRARY IlmThread PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_IMATH_LIBRARY Imath PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ ENDIF (APPLE) ++ ELSE (Ilmbase_USE_STATIC_LIBS) ++ IF (APPLE) ++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib") ++ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY Half PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IEX_LIBRARY Iex PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_ILMTHREAD_LIBRARY IlmThread PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IMATH_LIBRARY Imath PATHS ${ILMBASE_LIBRARYDIR} ) ++ ELSEIF (WIN32) ++ # Link library ++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib") ++ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IEX_LIBRARY ${IEX_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IEXMATH_LIBRARY ${IEXMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_ILMTHREAD_LIBRARY ${ILMTHREAD_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_IMATH_LIBRARY ${IMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) ++ # Load library ++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dll") ++ FIND_LIBRARY ( Ilmbase_HALF_DLL ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LOCATION}/bin ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_IEX_DLL ${IEX_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_IEXMATH_DLL ${IEXMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_ILMTHREAD_DLL ${ILMTHREAD_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_IMATH_DLL ${IMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ ELSE (APPLE) ++ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_IEX_LIBRARY ${IEX_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_IEXMATH_LIBRARY ${IEXMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_ILMTHREAD_LIBRARY ${ILMTHREAD_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ FIND_LIBRARY ( Ilmbase_IMATH_LIBRARY ${IMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ++ NO_DEFAULT_PATH ++ NO_SYSTEM_ENVIRONMENT_PATH ++ ) ++ ENDIF (APPLE) ++ ENDIF () ++ # MUST reset ++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ${ORIGINAL_CMAKE_FIND_LIBRARY_SUFFIXES}) ++ ++ELSE ( ILMBASE_FOUND ) ++ MESSAGE ( FATAL_ERROR "Unable to find ILMBase, ILMBASE_ROOT = $ENV{ILMBASE_ROOT}") ++ENDIF ( ILMBASE_FOUND ) +diff --git a/cmake/FindOpenEXR.cmake b/cmake/FindOpenEXR.cmake +index 2f771ad..a381c6d 100644 +--- a/cmake/FindOpenEXR.cmake ++++ b/cmake/FindOpenEXR.cmake +@@ -1,324 +1,87 @@ +-# Copyright (c) 2012-2019 DreamWorks Animation LLC +-# +-# All rights reserved. This software is distributed under the +-# Mozilla Public License 2.0 ( http://www.mozilla.org/MPL/2.0/ ) +-# +-# Redistributions of source code must retain the above copyright +-# and license notice and the following restrictions and disclaimer. +-# +-# * Neither the name of DreamWorks Animation nor the names of +-# its contributors may be used to endorse or promote products derived +-# from this software without specific prior written permission. +-# +-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY INDIRECT, INCIDENTAL, +-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +-# IN NO EVENT SHALL THE COPYRIGHT HOLDERS' AND CONTRIBUTORS' AGGREGATE +-# LIABILITY FOR ALL CLAIMS REGARDLESS OF THEIR BASIS EXCEED US$250.00. +-# +-#[=======================================================================[.rst: +- +-FindOpenEXR +------------ +- +-Find OpenEXR include dirs and libraries +- +-Use this module by invoking find_package with the form:: +- +- find_package(OpenEXR +- [version] [EXACT] # Minimum or EXACT version +- [REQUIRED] # Fail with error if OpenEXR is not found +- [COMPONENTS ...] # OpenEXR libraries by their canonical name +- # e.g. "IlmImf" for "libIlmImf" +- ) +- +-IMPORTED Targets +-^^^^^^^^^^^^^^^^ +- +-``OpenEXR::IlmImf`` +- The IlmImf library target. +-``OpenEXR::IlmImfUtil`` +- The IlmImfUtil library target. +- +-Result Variables +-^^^^^^^^^^^^^^^^ +- +-This will define the following variables: +- +-``OpenEXR_FOUND`` +- True if the system has the OpenEXR library. +-``OpenEXR_VERSION`` +- The version of the OpenEXR library which was found. +-``OpenEXR_INCLUDE_DIRS`` +- Include directories needed to use OpenEXR. +-``OpenEXR_LIBRARIES`` +- Libraries needed to link to OpenEXR. +-``OpenEXR_LIBRARY_DIRS`` +- OpenEXR library directories. +-``OpenEXR_DEFINITIONS`` +- Definitions to use when compiling code that uses OpenEXR. +-``OpenEXR_{COMPONENT}_FOUND`` +- True if the system has the named OpenEXR component. +- +-Cache Variables +-^^^^^^^^^^^^^^^ +- +-The following cache variables may also be set: +- +-``OpenEXR_INCLUDE_DIR`` +- The directory containing ``OpenEXR/config-auto.h``. +-``OpenEXR_{COMPONENT}_LIBRARY`` +- Individual component libraries for OpenEXR +-``OpenEXR_{COMPONENT}_DLL`` +- Individual component dlls for OpenEXR on Windows. +- +-Hints +-^^^^^ +- +-Instead of explicitly setting the cache variables, the following variables +-may be provided to tell this module where to look. +- +-``OPENEXR_ROOT`` +- Preferred installation prefix. +-``OPENEXR_INCLUDEDIR`` +- Preferred include directory e.g. /include +-``OPENEXR_LIBRARYDIR`` +- Preferred library directory e.g. /lib +-``SYSTEM_LIBRARY_PATHS`` +- Paths appended to all include and lib searches. +- +-#]=======================================================================] +- +-# Support new if() IN_LIST operator +-if(POLICY CMP0057) +- cmake_policy(SET CMP0057 NEW) +-endif() +- +-mark_as_advanced( +- OpenEXR_INCLUDE_DIR +- OpenEXR_LIBRARY +-) +- +-set(_OPENEXR_COMPONENT_LIST +- IlmImf +- IlmImfUtil +-) +- +-if(OpenEXR_FIND_COMPONENTS) +- set(OPENEXR_COMPONENTS_PROVIDED TRUE) +- set(_IGNORED_COMPONENTS "") +- foreach(COMPONENT ${OpenEXR_FIND_COMPONENTS}) +- if(NOT ${COMPONENT} IN_LIST _OPENEXR_COMPONENT_LIST) +- list(APPEND _IGNORED_COMPONENTS ${COMPONENT}) +- endif() +- endforeach() +- +- if(_IGNORED_COMPONENTS) +- message(STATUS "Ignoring unknown components of OpenEXR:") +- foreach(COMPONENT ${_IGNORED_COMPONENTS}) +- message(STATUS " ${COMPONENT}") +- endforeach() +- list(REMOVE_ITEM OpenEXR_FIND_COMPONENTS ${_IGNORED_COMPONENTS}) +- endif() +-else() +- set(OPENEXR_COMPONENTS_PROVIDED FALSE) +- set(OpenEXR_FIND_COMPONENTS ${_OPENEXR_COMPONENT_LIST}) +-endif() +- +-# Append OPENEXR_ROOT or $ENV{OPENEXR_ROOT} if set (prioritize the direct cmake var) +-set(_OPENEXR_ROOT_SEARCH_DIR "") +- +-if(OPENEXR_ROOT) +- list(APPEND _OPENEXR_ROOT_SEARCH_DIR ${OPENEXR_ROOT}) +-else() +- set(_ENV_OPENEXR_ROOT $ENV{OPENEXR_ROOT}) +- if(_ENV_OPENEXR_ROOT) +- list(APPEND _OPENEXR_ROOT_SEARCH_DIR ${_ENV_OPENEXR_ROOT}) +- endif() +-endif() +- +-# ------------------------------------------------------------------------ +-# Search for OpenEXR include DIR +-# ------------------------------------------------------------------------ +- +-set(_OPENEXR_INCLUDE_SEARCH_DIRS "") +-list(APPEND _OPENEXR_INCLUDE_SEARCH_DIRS +- ${OPENEXR_INCLUDEDIR} +- ${_OPENEXR_ROOT_SEARCH_DIR} +- ${PC_OpenEXR_INCLUDEDIR} +- ${SYSTEM_LIBRARY_PATHS} +-) +- +-# Look for a standard OpenEXR header file. +-find_path(OpenEXR_INCLUDE_DIR OpenEXRConfig.h +- NO_DEFAULT_PATH +- PATHS ${_OPENEXR_INCLUDE_SEARCH_DIRS} +- PATH_SUFFIXES include/OpenEXR OpenEXR +-) +- +-if(EXISTS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h") +- # Get the EXR version information from the config header +- file(STRINGS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h" +- _openexr_version_major_string REGEX "#define OPENEXR_VERSION_MAJOR " +- ) +- string(REGEX REPLACE "#define OPENEXR_VERSION_MAJOR" "" +- _openexr_version_major_string "${_openexr_version_major_string}" +- ) +- string(STRIP "${_openexr_version_major_string}" OpenEXR_VERSION_MAJOR) +- +- file(STRINGS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h" +- _openexr_version_minor_string REGEX "#define OPENEXR_VERSION_MINOR " +- ) +- string(REGEX REPLACE "#define OPENEXR_VERSION_MINOR" "" +- _openexr_version_minor_string "${_openexr_version_minor_string}" +- ) +- string(STRIP "${_openexr_version_minor_string}" OpenEXR_VERSION_MINOR) +- +- unset(_openexr_version_major_string) +- unset(_openexr_version_minor_string) +- +- set(OpenEXR_VERSION ${OpenEXR_VERSION_MAJOR}.${OpenEXR_VERSION_MINOR}) +-endif() +- +-# ------------------------------------------------------------------------ +-# Search for OPENEXR lib DIR +-# ------------------------------------------------------------------------ +- +-set(_OPENEXR_LIBRARYDIR_SEARCH_DIRS "") +- +-# Append to _OPENEXR_LIBRARYDIR_SEARCH_DIRS in priority order +- +-list(APPEND _OPENEXR_LIBRARYDIR_SEARCH_DIRS +- ${OPENEXR_LIBRARYDIR} +- ${_OPENEXR_ROOT_SEARCH_DIR} +- ${PC_OpenEXR_LIBDIR} +- ${SYSTEM_LIBRARY_PATHS} +-) +- +-# Build suffix directories +- +-set(OPENEXR_PATH_SUFFIXES +- lib64 +- lib +-) +- +-if(UNIX ) +- list(INSERT OPENEXR_PATH_SUFFIXES 0 lib/x86_64-linux-gnu) +-endif() +- +-set(_OPENEXR_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) +- +-# library suffix handling +-if(WIN32) +- list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +- "-${OpenEXR_VERSION_MAJOR}_${OpenEXR_VERSION_MINOR}.lib" +- ) +-else() +- if(OPENEXR_USE_STATIC_LIBS) +- list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +- "-${OpenEXR_VERSION_MAJOR}_${OpenEXR_VERSION_MINOR}.a" +- ) +- else() +- if(APPLE) +- list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +- "-${OpenEXR_VERSION_MAJOR}_${OpenEXR_VERSION_MINOR}.dylib" +- ) +- else() +- list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +- "-${OpenEXR_VERSION_MAJOR}_${OpenEXR_VERSION_MINOR}.so" +- ) +- endif() +- endif() +-endif() +- +-set(OpenEXR_LIB_COMPONENTS "") +- +-foreach(COMPONENT ${OpenEXR_FIND_COMPONENTS}) +- find_library(OpenEXR_${COMPONENT}_LIBRARY ${COMPONENT} +- NO_DEFAULT_PATH +- PATHS ${_OPENEXR_LIBRARYDIR_SEARCH_DIRS} +- PATH_SUFFIXES ${OPENEXR_PATH_SUFFIXES} +- ) +- list(APPEND OpenEXR_LIB_COMPONENTS ${OpenEXR_${COMPONENT}_LIBRARY}) +- +- if(WIN32 AND NOT OPENEXR_USE_STATIC_LIBS) +- set(_OPENEXR_TMP ${CMAKE_FIND_LIBRARY_SUFFIXES}) +- set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll") +- find_library(OpenEXR_${COMPONENT}_DLL ${COMPONENT} +- NO_DEFAULT_PATH +- PATHS ${_OPENEXR_LIBRARYDIR_SEARCH_DIRS} +- PATH_SUFFIXES bin +- ) +- set(CMAKE_FIND_LIBRARY_SUFFIXES ${_OPENEXR_TMP}) +- unset(_OPENEXR_TMP) +- endif() +- +- if(OpenEXR_${COMPONENT}_LIBRARY) +- set(OpenEXR_${COMPONENT}_FOUND TRUE) +- else() +- set(OpenEXR_${COMPONENT}_FOUND FALSE) +- endif() +-endforeach() +- +-# reset lib suffix +- +-set(CMAKE_FIND_LIBRARY_SUFFIXES ${_OPENEXR_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) +-unset(_OPENEXR_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES) +- +-# ------------------------------------------------------------------------ +-# Cache and set OPENEXR_FOUND +-# ------------------------------------------------------------------------ +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(OpenEXR +- FOUND_VAR OpenEXR_FOUND +- REQUIRED_VARS +- OpenEXR_INCLUDE_DIR +- OpenEXR_LIB_COMPONENTS +- VERSION_VAR OpenEXR_VERSION +- HANDLE_COMPONENTS +-) +- +-if(OpenEXR_FOUND) +- set(OpenEXR_LIBRARIES ${OpenEXR_LIB_COMPONENTS}) +- +- # We have to add both include and include/OpenEXR to the include +- # path in case OpenEXR and IlmBase are installed separately +- +- set(OpenEXR_INCLUDE_DIRS) +- list(APPEND OpenEXR_INCLUDE_DIRS +- ${OpenEXR_INCLUDE_DIR}/../ +- ${OpenEXR_INCLUDE_DIR} +- ) +- set(OpenEXR_DEFINITIONS ${PC_OpenEXR_CFLAGS_OTHER}) +- +- set(OpenEXR_LIBRARY_DIRS "") +- foreach(LIB ${OpenEXR_LIB_COMPONENTS}) +- get_filename_component(_OPENEXR_LIBDIR ${LIB} DIRECTORY) +- list(APPEND OpenEXR_LIBRARY_DIRS ${_OPENEXR_LIBDIR}) +- endforeach() +- list(REMOVE_DUPLICATES OpenEXR_LIBRARY_DIRS) +- +- # Configure imported target +- +- foreach(COMPONENT ${OpenEXR_FIND_COMPONENTS}) +- if(NOT TARGET OpenEXR::${COMPONENT}) +- add_library(OpenEXR::${COMPONENT} UNKNOWN IMPORTED) +- set_target_properties(OpenEXR::${COMPONENT} PROPERTIES +- IMPORTED_LOCATION "${OpenEXR_${COMPONENT}_LIBRARY}" +- INTERFACE_COMPILE_OPTIONS "${OpenEXR_DEFINITIONS}" +- INTERFACE_INCLUDE_DIRECTORIES "${OpenEXR_INCLUDE_DIRS}" +- ) +- endif() +- endforeach() +-elseif(OpenEXR_FIND_REQUIRED) +- message(FATAL_ERROR "Unable to find OpenEXR") +-endif() ++include(FindPackageHandleStandardArgs) ++ ++find_path(OpenEXR_INCLUDE_DIRS OpenEXR/OpenEXRConfig.h) ++find_path(OPENEXR_INCLUDE_PATHS NAMES ImfRgbaFile.h PATH_SUFFIXES OpenEXR) ++ ++file(STRINGS "${OpenEXR_INCLUDE_DIRS}/OpenEXR/OpenEXRConfig.h" OPENEXR_CONFIG_H) ++ ++string(REGEX REPLACE "^.*define OPENEXR_VERSION_MAJOR ([0-9]+).*$" "\\1" OpenEXR_VERSION_MAJOR "${OPENEXR_CONFIG_H}") ++string(REGEX REPLACE "^.*define OPENEXR_VERSION_MINOR ([0-9]+).*$" "\\1" OpenEXR_VERSION_MINOR "${OPENEXR_CONFIG_H}") ++set(OpenEXR_LIB_SUFFIX "${OpenEXR_VERSION_MAJOR}_${OpenEXR_VERSION_MINOR}") ++ ++include(SelectLibraryConfigurations) ++ ++if(NOT OpenEXR_BASE_LIBRARY) ++ find_library(OpenEXR_BASE_LIBRARY_RELEASE NAMES IlmImf-${OpenEXR_LIB_SUFFIX}) ++ find_library(OpenEXR_BASE_LIBRARY_DEBUG NAMES IlmImf-${OpenEXR_LIB_SUFFIX}_d) ++ select_library_configurations(OpenEXR_BASE) ++endif() ++ ++if(NOT OpenEXR_UTIL_LIBRARY) ++ find_library(OpenEXR_UTIL_LIBRARY_RELEASE NAMES IlmImfUtil-${OpenEXR_LIB_SUFFIX}) ++ find_library(OpenEXR_UTIL_LIBRARY_DEBUG NAMES IlmImfUtil-${OpenEXR_LIB_SUFFIX}_d) ++ select_library_configurations(OpenEXR_UTIL) ++endif() ++ ++if(NOT OpenEXR_HALF_LIBRARY) ++ find_library(OpenEXR_HALF_LIBRARY_RELEASE NAMES Half-${OpenEXR_LIB_SUFFIX}) ++ find_library(OpenEXR_HALF_LIBRARY_DEBUG NAMES Half-${OpenEXR_LIB_SUFFIX}_d) ++ select_library_configurations(OpenEXR_HALF) ++endif() ++ ++if(NOT OpenEXR_IEX_LIBRARY) ++ find_library(OpenEXR_IEX_LIBRARY_RELEASE NAMES Iex-${OpenEXR_LIB_SUFFIX}) ++ find_library(OpenEXR_IEX_LIBRARY_DEBUG NAMES Iex-${OpenEXR_LIB_SUFFIX}_d) ++ select_library_configurations(OpenEXR_IEX) ++endif() ++ ++if(NOT OpenEXR_MATH_LIBRARY) ++ find_library(OpenEXR_MATH_LIBRARY_RELEASE NAMES Imath-${OpenEXR_LIB_SUFFIX}) ++ find_library(OpenEXR_MATH_LIBRARY_DEBUG NAMES Imath-${OpenEXR_LIB_SUFFIX}_d) ++ select_library_configurations(OpenEXR_MATH) ++endif() ++ ++if(NOT OpenEXR_THREAD_LIBRARY) ++ find_library(OpenEXR_THREAD_LIBRARY_RELEASE NAMES IlmThread-${OpenEXR_LIB_SUFFIX}) ++ find_library(OpenEXR_THREAD_LIBRARY_DEBUG NAMES IlmThread-${OpenEXR_LIB_SUFFIX}_d) ++ select_library_configurations(OpenEXR_THREAD) ++endif() ++ ++if(NOT OpenEXR_IEXMATH_LIBRARY) ++ find_library(OpenEXR_IEXMATH_LIBRARY_RELEASE NAMES IexMath-${OpenEXR_LIB_SUFFIX}) ++ find_library(OpenEXR_IEXMATH_LIBRARY_DEBUG NAMES IexMath-${OpenEXR_LIB_SUFFIX}d) ++ select_library_configurations(OpenEXR_IEXMATH) ++endif() ++ ++set(OPENEXR_HALF_LIBRARY "${OpenEXR_HALF_LIBRARY}") ++set(OPENEXR_IEX_LIBRARY "${OpenEXR_IEX_LIBRARY}") ++set(OPENEXR_IMATH_LIBRARY "${OpenEXR_MATH_LIBRARY}") ++set(OPENEXR_ILMIMF_LIBRARY "${OpenEXR_BASE_LIBRARY}") ++set(OPENEXR_ILMIMFUTIL_LIBRARY "${OpenEXR_UTIL_LIBRARY}") ++set(OPENEXR_ILMTHREAD_LIBRARY "${OpenEXR_THREAD_LIBRARY}") ++ ++set(OpenEXR_LIBRARY "${OpenEXR_BASE_LIBRARY}") ++ ++set(OpenEXR_LIBRARIES ++ ${OpenEXR_LIBRARY} ++ ${OpenEXR_MATH_LIBRARY} ++ ${OpenEXR_IEXMATH_LIBRARY} ++ ${OpenEXR_UTIL_LIBRARY} ++ ${OpenEXR_HALF_LIBRARY} ++ ${OpenEXR_IEX_LIBRARY} ++ ${OpenEXR_THREAD_LIBRARY} ++) ++ ++set(OPENEXR_LIBRARIES ++ ${OPENEXR_HALF_LIBRARY} ++ ${OPENEXR_IEX_LIBRARY} ++ ${OPENEXR_IMATH_LIBRARY} ++ ${OPENEXR_ILMIMF_LIBRARY} ++ ${OPENEXR_ILMTHREAD_LIBRARY} ++) ++ ++FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR REQUIRED_VARS OpenEXR_LIBRARIES OpenEXR_INCLUDE_DIRS) ++ ++if(OpenEXR_FOUND) ++ set(OPENEXR_FOUND 1) ++endif() diff --git a/ports/openvdb/0003-build-only-necessary-targets.patch b/ports/openvdb/0003-build-only-necessary-targets.patch deleted file mode 100644 index 8be8263a566707..00000000000000 --- a/ports/openvdb/0003-build-only-necessary-targets.patch +++ /dev/null @@ -1,282 +0,0 @@ -diff --git a/openvdb/CMakeLists.txt b/openvdb/CMakeLists.txt -index 9404dbc..94daf8c 100644 ---- a/openvdb/CMakeLists.txt -+++ b/openvdb/CMakeLists.txt -@@ -29,28 +29,31 @@ PROJECT ( OpenVDBCore ) - - set(CMAKE_CXX_STANDARD 11) - -+IF ( OPENVDB_BUILD_TOOLS ) - IF ( USE_GLFW3 ) - FIND_PACKAGE ( GLFW3 REQUIRED ) - SET ( OPENVDB_USE_GLFW_FLAG "-DOPENVDB_USE_GLFW_3" ) - IF ( UNIX AND NOT APPLE ) -- SET ( GLFW_DEPENDENT_LIBRARIES "X11;Xi;Xrandr;Xinerama;Xcursor;Xxf86vm" ) -- ENDIF ( UNIX AND NOT APPLE ) -+ SET ( GLFW_DEPENDENT_LIBRARIES "X11;Xi;Xrandr;Xinerama;Xcursor;Xxf86vm" ) -+ ENDIF () - SET ( GLFW_LINK_LIBRARY ${GLFW3_glfw_LIBRARY} ) - SET ( GLFW_INCLUDE_DIRECTORY ${GLFW3_INCLUDE_DIR} CACHE STRING "GLFW3 include directory") - ELSE () - FIND_PACKAGE ( GLFW REQUIRED ) - IF ( UNIX AND NOT APPLE ) -- SET ( GLFW_DEPENDENT_LIBRARIES "X11;Xi;Xrandr;Xinerama;Xcursor;Xxf86vm" ) -+ SET ( GLFW_DEPENDENT_LIBRARIES "X11;Xi;Xrandr;Xinerama;Xcursor;Xxf86vm" ) - ENDIF () - SET ( GLFW_LINK_LIBRARY ${GLFW_glfw_LIBRARY} ) - SET ( GLFW_INCLUDE_DIRECTORY ${GLFW_INCLUDE_DIR} CACHE STRING "GLFW include directory") - ENDIF () -+ENDIF () - -+IF ( OPENVDB_BUILD_TOOLS ) - IF (WIN32) - FIND_PACKAGE ( GLEW REQUIRED ) --ELSE () -- FIND_PACKAGE ( Threads REQUIRED ) --ENDIF() -+ENDIF () -+ENDIF () -+FIND_PACKAGE ( Threads REQUIRED ) - - # Determine OpenVDB version - #define OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER 4 -@@ -130,7 +133,12 @@ INCLUDE_DIRECTORIES ( SYSTEM ${BLOSC_INCLUDE_DIR} ) - INCLUDE_DIRECTORIES ( SYSTEM ${CPPUNIT_INCLUDE_DIR} ) - - IF (WIN32) -- ADD_DEFINITIONS ( -D_WIN32 -DNOMINMAX -DHALF_EXPORTS -DOPENVDB_DLL ) -+ ADD_DEFINITIONS ( -D__TBB_NO_IMPLICIT_LINKAGE ) -+ ADD_DEFINITIONS ( -D__TBBMALLOC_NO_IMPLICIT_LINKAGE ) -+ ADD_DEFINITIONS ( -D_WIN32 -DNOMINMAX ) -+ IF ( OPENVDB_SHARED ) -+ ADD_DEFINITIONS ( -DOPENEXR_DLL -DOPENVDB_DLL ) -+ ENDIF () - ELSE () - ADD_DEFINITIONS ( -pthread -fPIC ) - ENDIF () -@@ -170,16 +178,21 @@ SET ( OPENVDB_LIBRARY_SOURCE_FILES - - SET_SOURCE_FILES_PROPERTIES ( ${OPENVDB_LIBRARY_SOURCE_FILES} - PROPERTIES -- COMPILE_FLAGS "-DOPENVDB_PRIVATE -DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG}" -+ COMPILE_FLAGS "-DOPENVDB_PRIVATE -DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} $<$:/bigobj>" - ) -- -+ -+IF ( OPENVDB_STATIC ) - ADD_LIBRARY ( openvdb_static STATIC - ${OPENVDB_LIBRARY_SOURCE_FILES} - ) -+ENDIF () -+IF ( OPENVDB_SHARED ) - ADD_LIBRARY ( openvdb_shared SHARED - ${OPENVDB_LIBRARY_SOURCE_FILES} - ) -+ENDIF () - -+IF ( OPENVDB_STATIC ) - TARGET_LINK_LIBRARIES ( openvdb_static - ${Boost_IOSTREAMS_LIBRARY} - ${Boost_SYSTEM_LIBRARY} -@@ -188,6 +201,8 @@ TARGET_LINK_LIBRARIES ( openvdb_static - ${ZLIB_LIBRARY} - ${BLOSC_blosc_LIBRARY} - ) -+ENDIF () -+IF ( OPENVDB_SHARED ) - TARGET_LINK_LIBRARIES ( openvdb_shared - ${Boost_IOSTREAMS_LIBRARY} - ${Boost_SYSTEM_LIBRARY} -@@ -196,7 +211,9 @@ TARGET_LINK_LIBRARIES ( openvdb_shared - ${ZLIB_LIBRARY} - ${BLOSC_blosc_LIBRARY} - ) -+ENDIF () - -+IF ( OPENVDB_STATIC ) - IF (WIN32) - SET_TARGET_PROPERTIES ( openvdb_static - PROPERTIES OUTPUT_NAME libopenvdb -@@ -205,8 +222,10 @@ ELSE() - SET_TARGET_PROPERTIES ( openvdb_static - PROPERTIES OUTPUT_NAME openvdb - ) --ENDIF() -+ENDIF () -+ENDIF () - -+IF ( OPENVDB_SHARED ) - SET_TARGET_PROPERTIES( - openvdb_shared - PROPERTIES -@@ -214,13 +233,15 @@ SET_TARGET_PROPERTIES( - SOVERSION ${OPENVDB_MAJOR_VERSION_NUMBER}.${OPENVDB_MINOR_VERSION_NUMBER} - VERSION ${OPENVDB_MAJOR_VERSION_NUMBER}.${OPENVDB_MINOR_VERSION_NUMBER}.${OPENVDB_PATCH_VERSION_NUMBER} - ) -+ENDIF () - - SET ( VDB_PRINT_SOURCE_FILES cmd/openvdb_print/main.cc ) - SET_SOURCE_FILES_PROPERTIES ( ${VDB_PRINT_SOURCE_FILES} - PROPERTIES -- COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG}" -+ COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} $<$:/bigobj>" - ) - -+IF ( OPENVDB_BUILD_TOOLS ) - ADD_EXECUTABLE ( vdb_print - ${VDB_PRINT_SOURCE_FILES} - ) -@@ -229,14 +250,19 @@ TARGET_LINK_LIBRARIES ( vdb_print - openvdb_shared - ${CMAKE_THREAD_LIBS_INIT} - ${BLOSC_blosc_LIBRARY} -+ ) -+ -+IF (NOT WIN32) -+TARGET_LINK_LIBRARIES ( vdb_print - m - stdc++ - ) -+ENDIF () - - SET ( VDB_RENDER_SOURCE_FILES cmd/openvdb_render/main.cc ) - SET_SOURCE_FILES_PROPERTIES ( ${VDB_RENDER_SOURCE_FILES} - PROPERTIES -- COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG}" -+ COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} $<$:/bigobj>" - ) - ADD_EXECUTABLE ( vdb_render - ${VDB_RENDER_SOURCE_FILES} -@@ -249,9 +275,14 @@ TARGET_LINK_LIBRARIES ( vdb_render - ${Openexr_ILMIMF_LIBRARY} - ${Ilmbase_ILMTHREAD_LIBRARY} - ${Ilmbase_IEX_LIBRARY} -+ ) -+ -+IF (NOT WIN32) -+TARGET_LINK_LIBRARIES ( vdb_render - m - stdc++ - ) -+ENDIF () - - SET ( VDB_VIEW_SOURCE_FILES - cmd/openvdb_view/main.cc -@@ -263,29 +294,38 @@ SET ( VDB_VIEW_SOURCE_FILES - ) - SET_SOURCE_FILES_PROPERTIES ( ${VDB_VIEW_SOURCE_FILES} - PROPERTIES -- COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} -DGL_GLEXT_PROTOTYPES=1" -+ COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} -DGL_GLEXT_PROTOTYPES=1 $<$:/bigobj>" -+ ) -+ -+ADD_EXECUTABLE ( vdb_view -+ ${VDB_VIEW_SOURCE_FILES} - ) --IF (NOT WIN32) -- ADD_EXECUTABLE ( vdb_view -- ${VDB_VIEW_SOURCE_FILES} -- ) - -- target_include_directories ( vdb_view SYSTEM PRIVATE ${Boost_INCLUDE_DIR} ) -+target_include_directories ( vdb_view SYSTEM PRIVATE ${Boost_INCLUDE_DIR} ) - -- TARGET_LINK_LIBRARIES ( vdb_view -- openvdb_shared -- ${Boost_THREAD_LIBRARY} -- ${OPENGL_gl_LIBRARY} -- ${OPENGL_glu_LIBRARY} -- ${COCOA_LIBRARY} -- ${IOKIT_LIBRARY} -- ${COREVIDEO_LIBRARY} -- ${GLFW_LINK_LIBRARY} -- ${GLFW_DEPENDENT_LIBRARIES} -- ${GLEW_GLEW_LIBRARY} -- m -- stdc++ -- ) -+TARGET_LINK_LIBRARIES ( vdb_view -+ openvdb_shared -+ ${Boost_LIBRARIES} -+ ${OPENGL_gl_LIBRARY} -+ ${OPENGL_glu_LIBRARY} -+ ${GLFW_LINK_LIBRARY} -+ ${GLFW_DEPENDENT_LIBRARIES} -+ ${GLEW_GLEW_LIBRARY} -+ ) -+IF (APPLE) -+TARGET_LINK_LIBRARIES ( vdb_view -+ ${COCOA_LIBRARY} -+ ${IOKIT_LIBRARY} -+ ${COREVIDEO_LIBRARY} -+) -+ENDIF () -+IF (NOT WIN32) -+TARGET_LINK_LIBRARIES ( vdb_view -+ m -+ stdc++ -+ ) -+ -+ENDIF () - ENDIF () - - SET ( UNITTEST_SOURCE_FILES -@@ -398,7 +438,7 @@ IF ( OPENVDB_BUILD_UNITTESTS ) - - ADD_TEST ( vdb_unit_test vdb_test ) - --ENDIF (OPENVDB_BUILD_UNITTESTS) -+ENDIF () - - # Doxygen docmentation - IF (OPENVDB_BUILD_DOCS) -@@ -419,26 +459,29 @@ IF (OPENVDB_BUILD_DOCS) - ENDIF () - - # Installation --IF ( NOT WIN32 ) -+IF ( OPENVDB_BUILD_TOOLS ) - INSTALL ( TARGETS - vdb_view - DESTINATION - bin - ) -+ INSTALL ( TARGETS -+ vdb_print -+ vdb_render -+ DESTINATION -+ bin -+ ) - ENDIF () --INSTALL ( TARGETS -- vdb_print -- vdb_render -- DESTINATION -- bin -- ) - --INSTALL ( TARGETS -- openvdb_static -- DESTINATION -- lib -- ) -+IF ( OPENVDB_STATIC) -+ INSTALL ( TARGETS -+ openvdb_static -+ DESTINATION -+ lib -+ ) -+ENDIF () - -+IF ( OPENVDB_SHARED ) - IF (WIN32) - INSTALL ( TARGETS - openvdb_shared -@@ -452,6 +495,7 @@ ELSE() - lib - ) - ENDIF () -+ENDIF () - - INSTALL ( DIRECTORY ${PROJECT_SOURCE_DIR} DESTINATION include - FILES_MATCHING PATTERN "*.h" diff --git a/ports/openvdb/0003-fix-cmake.patch b/ports/openvdb/0003-fix-cmake.patch new file mode 100644 index 00000000000000..b70a4756f1204b --- /dev/null +++ b/ports/openvdb/0003-fix-cmake.patch @@ -0,0 +1,90 @@ +diff --git a/openvdb/CMakeLists.txt b/openvdb/CMakeLists.txt +index b84d3e6..524a59e 100644 +--- a/openvdb/CMakeLists.txt ++++ b/openvdb/CMakeLists.txt +@@ -71,13 +71,13 @@ message(STATUS "----------------------------------------------------") + # Collect and configure lib dependencies + + if(USE_EXR) +- find_package(IlmBase ${MINIMUM_ILMBASE_VERSION} REQUIRED) +- find_package(OpenEXR ${MINIMUM_OPENEXR_VERSION} REQUIRED) ++ find_package(IlmBase REQUIRED) ++ find_package(OpenEXR REQUIRED) + else() +- find_package(IlmBase ${MINIMUM_ILMBASE_VERSION} REQUIRED COMPONENTS Half) ++ find_package(IlmBase REQUIRED COMPONENTS Half) + endif() + +-find_package(TBB ${MINIMUM_TBB_VERSION} REQUIRED COMPONENTS tbb) ++find_package(TBB CONFIG REQUIRED) + find_package(ZLIB ${MINIMUM_ZLIB_VERSION} REQUIRED) + + if(USE_LOG4CPLUS) +@@ -115,15 +115,15 @@ endif() + set(OPENVDB_CORE_DEPENDENT_LIBS + Boost::iostreams + Boost::system +- IlmBase::Half ++ ${Ilmbase_HALF_LIBRARY} + ) + + if(USE_EXR) + list(APPEND OPENVDB_CORE_DEPENDENT_LIBS +- IlmBase::IlmThread +- IlmBase::Iex +- IlmBase::Imath +- OpenEXR::IlmImf ++ ${Ilmbase_ILMTHREAD_LIBRARY} ++ ${Ilmbase_IEX_LIBRARY} ++ ${Ilmbase_IMATH_LIBRARY} ++ ${OPENEXR_ILMIMF_LIBRARY} + ) + endif() + +@@ -135,7 +135,7 @@ endif() + # See FindOpenVDB.cmake + + if(USE_BLOSC) +- list(APPEND OPENVDB_CORE_DEPENDENT_LIBS Blosc::blosc) ++ list(APPEND OPENVDB_CORE_DEPENDENT_LIBS ${BLOSC_blosc_LIBRARY}) + endif() + + list(APPEND OPENVDB_CORE_DEPENDENT_LIBS +@@ -160,7 +160,11 @@ endif() + + # @todo Should be target definitions + if(WIN32) +- add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_DLL) ++ add_definitions(-D_WIN32 -DNOMINMAX) ++ add_definitions(-D__TBB_NO_IMPLICIT_LINKAGE -D__TBBMALLOC_NO_IMPLICIT_LINKAGE) ++ if (OPENVDB_SHARED) ++ add_definitions(-DOPENEXR_DLL -DOPENVDB_DLL) ++ endif() + endif() + + ##### Core library configuration +@@ -374,6 +378,7 @@ list(APPEND OPENVDB_CORE_PRIVATE_DEFINES "-DOPENVDB_PRIVATE") + if(USE_BLOSC) + list(APPEND OPENVDB_CORE_PRIVATE_DEFINES "-DOPENVDB_USE_BLOSC") + endif() ++list(APPEND OPENVDB_CORE_PRIVATE_DEFINES "$<$:/bigobj>") + + # Public defines + +diff --git a/openvdb/cmd/CMakeLists.txt b/openvdb/cmd/CMakeLists.txt +index 124bc3c..d58b3fe 100644 +--- a/openvdb/cmd/CMakeLists.txt ++++ b/openvdb/cmd/CMakeLists.txt +@@ -155,9 +155,9 @@ if(OPENVDB_BUILD_VDB_RENDER) + # headers + + target_link_libraries(vdb_render +- OpenEXR::IlmImf +- IlmBase::IlmThread +- IlmBase::Iex ++ ${OPENEXR_ILMIMF_LIBRARY} ++ ${Ilmbase_ILMTHREAD_LIBRARY} ++ ${Ilmbase_IEX_LIBRARY} + ${OPENVDB_BINARIES_DEPENDENT_LIBS} + ) + diff --git a/ports/openvdb/0004-add-necessary-head.patch b/ports/openvdb/0004-add-necessary-head.patch deleted file mode 100644 index bbe7246b18f79f..00000000000000 --- a/ports/openvdb/0004-add-necessary-head.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/openvdb/viewer/ClipBox.h b/openvdb/viewer/ClipBox.h -index ad62d39..c68c5be 100644 ---- a/openvdb/viewer/ClipBox.h -+++ b/openvdb/viewer/ClipBox.h -@@ -37,6 +37,7 @@ - #include - #include - #else -+#include - #include - #include - #endif -diff --git a/openvdb/viewer/Font.h b/openvdb/viewer/Font.h -index da62993..b341165 100644 ---- a/openvdb/viewer/Font.h -+++ b/openvdb/viewer/Font.h -@@ -37,6 +37,7 @@ - #include - #include - #else -+#include - #include - #include - #endif -diff --git a/openvdb/viewer/RenderModules.h b/openvdb/viewer/RenderModules.h -index b9fa5b1..fd38a50 100644 ---- a/openvdb/viewer/RenderModules.h -+++ b/openvdb/viewer/RenderModules.h -@@ -31,6 +31,7 @@ - #ifndef OPENVDB_VIEWER_RENDERMODULES_HAS_BEEN_INCLUDED - #define OPENVDB_VIEWER_RENDERMODULES_HAS_BEEN_INCLUDED - -+#include - #include - #include - #include -@@ -41,6 +42,7 @@ - #include - - #if defined(__APPLE__) || defined(MACOSX) -+#include - #include - #include - #else -diff --git a/openvdb/viewer/Viewer.cc b/openvdb/viewer/Viewer.cc -index 31bb7a4..88bd308 100644 ---- a/openvdb/viewer/Viewer.cc -+++ b/openvdb/viewer/Viewer.cc -@@ -31,9 +31,9 @@ - #include "Viewer.h" - - #include "Camera.h" -+#include "RenderModules.h" - #include "ClipBox.h" - #include "Font.h" --#include "RenderModules.h" - #include // for formattedInt() - #include - #include diff --git a/ports/openvdb/CONTROL b/ports/openvdb/CONTROL index 77a06c78cfaed4..5a49417d1a5e76 100644 --- a/ports/openvdb/CONTROL +++ b/ports/openvdb/CONTROL @@ -1,6 +1,6 @@ Source: openvdb -Version: 6.0.0-2 -Build-Depends: boost-ptr-container, openexr, tbb, blosc, boost-iostreams, boost-system, boost-thread, boost-date-time, boost-any, boost-uuid, boost-interprocess +Version: 6.1.0 +Build-Depends: boost-ptr-container, openexr, tbb, blosc, boost-iostreams, boost-system, boost-thread, boost-date-time, boost-any, boost-uuid, boost-interprocess, ilmbase Homepage: https://github.com/dreamworksanimation/openvdb Description: Sparse volume data structure and tools diff --git a/ports/openvdb/blosc.patch b/ports/openvdb/blosc.patch deleted file mode 100644 index 2b9782a1b2f91f..00000000000000 --- a/ports/openvdb/blosc.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/cmake/FindBlosc.cmake b/cmake/FindBlosc.cmake -index 5ac3780c..61ba83bc 100644 ---- a/cmake/FindBlosc.cmake -+++ b/cmake/FindBlosc.cmake -@@ -45,8 +45,8 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS ( Blosc - - IF ( BLOSC_FOUND ) - -- SET ( BLOSC_LIBRARYDIR ${BLOSC_LOCATION}/lib -- CACHE STRING "Blosc library directories") -+# SET ( BLOSC_LIBRARYDIR ${BLOSC_LOCATION}/lib -+# CACHE STRING "Blosc library directories") - - SET ( _blosc_library_name "blosc" ) - -@@ -61,8 +61,6 @@ IF ( BLOSC_FOUND ) - ENDIF() - - FIND_LIBRARY ( BLOSC_blosc_LIBRARY ${_blosc_library_name} -- PATHS ${BLOSC_LIBRARYDIR} -- NO_DEFAULT_PATH - NO_SYSTEM_ENVIRONMENT_PATH - ) - diff --git a/ports/openvdb/portfile.cmake b/ports/openvdb/portfile.cmake index d1c4cb8cec7188..1d837fcf93839d 100644 --- a/ports/openvdb/portfile.cmake +++ b/ports/openvdb/portfile.cmake @@ -3,15 +3,13 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO AcademySoftwareFoundation/openvdb - REF v6.0.0 - SHA512 6b9e267fff46647b39e1e6faa12059442196c1858df1fda1515cfc375e25bc3033e2828c80e63a652509cfba386376e022cebf81ec85aaccece421b0c721529b + REF v6.1.0 + SHA512 99ebbb50104ef87792ab73989e8714c4f283fb02d04c3033126b5f0d927ff7bbdebe35c8214ded841692941d8ed8ae551fd6d1bf90ad7dc07bedc3b38b9c4b38 HEAD_REF master PATCHES - 0001-fix-cmake-modules.patch - 0002-add-custom-options.patch - 0003-build-only-necessary-targets.patch - 0004-add-necessary-head.patch - blosc.patch + 0001-remove-pkgconfig.patch + 0002-fix-cmake-modules.patch + 0003-fix-cmake.patch ) if (VCPKG_LIBRARY_LINKAGE STREQUAL static) @@ -38,29 +36,36 @@ vcpkg_configure_cmake( -DOPENVDB_BUILD_PYTHON_MODULE=OFF -DOPENVDB_ENABLE_3_ABI_COMPATIBLE=OFF -DUSE_GLFW3=ON - -DOPENVDB_STATIC=${OPENVDB_STATIC} - -DOPENVDB_SHARED=${OPENVDB_SHARED} - -DOPENVDB_BUILD_TOOLS=${OPENVDB_BUILD_TOOLS} + -DOPENVDB_CORE_STATIC=${OPENVDB_STATIC} + -DOPENVDB_CORE_SHARED=${OPENVDB_SHARED} + -DOPENVDB_BUILD_VDB_PRINT=${OPENVDB_BUILD_TOOLS} + -DOPENVDB_BUILD_VDB_VIEW=${OPENVDB_BUILD_TOOLS} + #-DOPENVDB_BUILD_VDB_RENDER=${OPENVDB_BUILD_TOOLS} # Enable vdb_render when https://github.com/openexr/openexr/issues/302 is fixed + -DOPENVDB_BUILD_VDB_LOD=${OPENVDB_BUILD_TOOLS} ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/OpenVDB TARGET_PATH share/openvdb) + vcpkg_copy_pdbs() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) if (OPENVDB_BUILD_TOOLS) # copy tools to tools/openvdb directory file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/${PORT}/) file(RENAME ${CURRENT_PACKAGES_DIR}/bin/vdb_print.exe ${CURRENT_PACKAGES_DIR}/tools/${PORT}/vdb_print.exe) - file(RENAME ${CURRENT_PACKAGES_DIR}/bin/vdb_render.exe ${CURRENT_PACKAGES_DIR}/tools/${PORT}/vdb_render.exe) - file(RENAME ${CURRENT_PACKAGES_DIR}/bin/vdb_view.exe ${CURRENT_PACKAGES_DIR}/tools/${PORT}/vdb_view.exe) + #file(RENAME ${CURRENT_PACKAGES_DIR}/bin/vdb_render.exe ${CURRENT_PACKAGES_DIR}/tools/${PORT}/vdb_render.exe) + #file(RENAME ${CURRENT_PACKAGES_DIR}/bin/vdb_view.exe ${CURRENT_PACKAGES_DIR}/tools/${PORT}/vdb_view.exe) # vdb_view does not support win32 currently. + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/vdb_lod.exe ${CURRENT_PACKAGES_DIR}/tools/${PORT}/vdb_lod.exe) vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}) # remove debug versions of tools - file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vdb_render.exe) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vdb_print.exe) - file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vdb_view.exe) + #file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vdb_render.exe) + #file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vdb_view.exe) # vdb_view does not support win32 currently. + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vdb_lod.exe) endif() # Handle copyright From faf17a0f4a497eb5ac28389f3be4aa3612aa5d86 Mon Sep 17 00:00:00 2001 From: Daniel Marshall Date: Wed, 26 Jun 2019 18:34:19 +0100 Subject: [PATCH 103/123] Fix homepage for range-v3(-vs2015) (#7049) --- ports/range-v3-vs2015/CONTROL | 1 + ports/range-v3/CONTROL | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/range-v3-vs2015/CONTROL b/ports/range-v3-vs2015/CONTROL index 62c9f63cedf1a0..34ce349e190d9a 100644 --- a/ports/range-v3-vs2015/CONTROL +++ b/ports/range-v3-vs2015/CONTROL @@ -1,3 +1,4 @@ Source: range-v3-vs2015 Version: 20151130-vcpkg5 +Homepage: https://github.com/Microsoft/Range-V3-VS2015 Description: Range library for C++11/14/17. diff --git a/ports/range-v3/CONTROL b/ports/range-v3/CONTROL index fb534ac2975b1f..1e1274d4bf04da 100644 --- a/ports/range-v3/CONTROL +++ b/ports/range-v3/CONTROL @@ -1,4 +1,4 @@ Source: range-v3 Version: 0.5.0 -Homepage: https://github.com/Microsoft/Range-V3-VS2015 +Homepage: https://github.com/ericniebler/range-v3 Description: Range library for C++11/14/17. From 64d8f9503120b8d51643129efd8e32341638e106 Mon Sep 17 00:00:00 2001 From: Phoebe <925731795@qq.com> Date: Thu, 27 Jun 2019 01:36:16 +0800 Subject: [PATCH 104/123] [Boost-variant] Upgrade to 1.70.0 (#7047) * [Boost-variant] Upgrade to 1.70.0 * Update patch --- ports/boost-variant/CONTROL | 2 +- ports/boost-variant/fix-regression-1.70.patch | 47 +++++++++++++++++++ ports/boost-variant/portfile.cmake | 6 ++- 3 files changed, 52 insertions(+), 3 deletions(-) create mode 100644 ports/boost-variant/fix-regression-1.70.patch diff --git a/ports/boost-variant/CONTROL b/ports/boost-variant/CONTROL index 395d00758de3ec..5aec459fdf70f4 100644 --- a/ports/boost-variant/CONTROL +++ b/ports/boost-variant/CONTROL @@ -1,6 +1,6 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-variant -Version: 1.69.0 +Version: 1.70.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-move, boost-mpl, boost-preprocessor, boost-static-assert, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers Homepage: https://github.com/boostorg/variant Description: Boost variant module diff --git a/ports/boost-variant/fix-regression-1.70.patch b/ports/boost-variant/fix-regression-1.70.patch new file mode 100644 index 00000000000000..79c0e2c23479a6 --- /dev/null +++ b/ports/boost-variant/fix-regression-1.70.patch @@ -0,0 +1,47 @@ +diff --git a/include/boost/variant/detail/apply_visitor_unary.hpp b/include/boost/variant/detail/apply_visitor_unary.hpp +index 71610cb..c3a741e 100644 +--- a/include/boost/variant/detail/apply_visitor_unary.hpp ++++ b/include/boost/variant/detail/apply_visitor_unary.hpp +@@ -23,6 +23,7 @@ + # include + # include + # include ++# include + # include + # include + #endif +@@ -85,7 +86,7 @@ namespace detail { namespace variant { + // This class serves only metaprogramming purposes. none of its methods must be called at runtime! + template + struct result_multideduce1 { +- typedef typename Variant::types types; ++ typedef typename remove_reference::type::types types; + typedef typename boost::mpl::begin::type begin_it; + typedef typename boost::mpl::advance< + begin_it, boost::mpl::int_::type::value - 1> +@@ -95,14 +96,14 @@ struct result_multideduce1 { + struct deduce_impl { + typedef typename boost::mpl::next::type next_t; + typedef typename boost::mpl::deref::type value_t; +- typedef decltype(true ? boost::declval< Visitor& >()( boost::declval< value_t >() ) ++ typedef decltype(true ? boost::declval< Visitor& >()( boost::declval< copy_cv_ref_t< value_t, Variant > >() ) + : boost::declval< typename deduce_impl::type >()) type; + }; + + template + struct deduce_impl { + typedef typename boost::mpl::deref::type value_t; +- typedef decltype(boost::declval< Visitor& >()( boost::declval< value_t >() )) type; ++ typedef decltype(boost::declval< Visitor& >()( boost::declval< copy_cv_ref_t< value_t, Variant > >() )) type; + }; + + typedef typename deduce_impl::type type; +@@ -132,7 +133,7 @@ inline decltype(auto) apply_visitor(Visitor&& visitor, Visitable&& visitable, + boost::detail::variant::has_result_type + >::type* = 0) + { +- boost::detail::variant::result_wrapper1::type> cpp14_vis(::boost::forward(visitor)); ++ boost::detail::variant::result_wrapper1 cpp14_vis(::boost::forward(visitor)); + return ::boost::forward(visitable).apply_visitor(cpp14_vis); + } + diff --git a/ports/boost-variant/portfile.cmake b/ports/boost-variant/portfile.cmake index 95352b3f02de7f..a1d8be5283a06c 100644 --- a/ports/boost-variant/portfile.cmake +++ b/ports/boost-variant/portfile.cmake @@ -5,9 +5,11 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/variant - REF boost-1.69.0 - SHA512 281f2a89317603e4875d35388d941c3a174024618f2f9c255344e69d43d43509de2947e35374d8498e337326c7637805160a84f3b2b4da8811660c8429e11be0 + REF boost-1.70.0 + SHA512 e5a555c666bd692a5ed6e556a66d93db82707357ae5f7e62af8565e5bf56b134adefb3049c38af72f420a969308f120b8270a9e9187eac984b74573b8e9e1d75 HEAD_REF master + PATCHES + fix-regression-1.70.patch ) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) From af1c9e10fc573ade3824464e58799289b1d4b069 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Wed, 26 Jun 2019 10:37:04 -0700 Subject: [PATCH 105/123] [libmupdf] Update the port to version 1.15.0 (#7046) --- ports/libmupdf/CMakeLists.txt | 2 +- ports/libmupdf/CONTROL | 2 +- ports/libmupdf/portfile.cmake | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/libmupdf/CMakeLists.txt b/ports/libmupdf/CMakeLists.txt index 6018c50aaee650..daafef74c50a79 100644 --- a/ports/libmupdf/CMakeLists.txt +++ b/ports/libmupdf/CMakeLists.txt @@ -22,7 +22,7 @@ file(GLOB_RECURSE SOURCES "source/*.c" "generated/*.c") list(FILTER SOURCES EXCLUDE REGEX "source/tools/[a-z]*\\.c$") add_library(libmupdf ${SOURCES}) -target_compile_definitions(libmupdf PRIVATE -DSHARE_JPEG -DFZ_ENABLE_JS=0 -DNO_ICC) +target_compile_definitions(libmupdf PRIVATE -DSHARE_JPEG -DFZ_ENABLE_JS=0 -DFZ_ENABLE_ICC=0) target_include_directories(libmupdf PUBLIC include diff --git a/ports/libmupdf/CONTROL b/ports/libmupdf/CONTROL index 4de343cb30d02d..1285b8c856c638 100644 --- a/ports/libmupdf/CONTROL +++ b/ports/libmupdf/CONTROL @@ -1,5 +1,5 @@ Source: libmupdf -Version: 1.12.0-2 +Version: 1.15.0 Build-Depends: freetype, libjpeg-turbo, harfbuzz, zlib, curl, glfw3, openjpeg, jbig2dec Homepage: https://github.com/ArtifexSoftware/mupdf Description: a lightweight PDF, XPS, and E-book library diff --git a/ports/libmupdf/portfile.cmake b/ports/libmupdf/portfile.cmake index 0569b5505dc2f6..937daa4c48d5ad 100644 --- a/ports/libmupdf/portfile.cmake +++ b/ports/libmupdf/portfile.cmake @@ -5,8 +5,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ArtifexSoftware/mupdf - REF 1.12.0 - SHA512 893a1958e34355acf73624e9c47f4a97adf13d5fe33604ac384df9ac22a56ef7c18e02143eaffc3c2a08f460e4c71fee00c094b6d6696f8446977bb18f65e3da + REF 1.15.0 + SHA512 9f47a79a2040ff3da885f54d143a7c44712f8a08650fca1d2be21199a7103364a35e28a1832708c2b7752b11c95bf0755ae6c922afc35ee8ae639da7a6ac03b0 HEAD_REF master PATCHES Fix-error-C2169.patch From 94494ddf6ccdc2d44b78b4df4c66af285cb1f2bf Mon Sep 17 00:00:00 2001 From: Leonid Pospelov Date: Wed, 26 Jun 2019 19:41:48 +0200 Subject: [PATCH 106/123] [cpp-httplib] Add new port (#7037) --- ports/cpp-httplib/CONTROL | 4 ++++ ports/cpp-httplib/portfile.cmake | 23 +++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 ports/cpp-httplib/CONTROL create mode 100644 ports/cpp-httplib/portfile.cmake diff --git a/ports/cpp-httplib/CONTROL b/ports/cpp-httplib/CONTROL new file mode 100644 index 00000000000000..66d4938f025c47 --- /dev/null +++ b/ports/cpp-httplib/CONTROL @@ -0,0 +1,4 @@ +Source: cpp-httplib +Version: 0.2.0 +Homepage: https://github.com/yhirose/cpp-httplib +Description: A single file C++11 header-only HTTP/HTTPS server and client library diff --git a/ports/cpp-httplib/portfile.cmake b/ports/cpp-httplib/portfile.cmake new file mode 100644 index 00000000000000..9e85b57e302f0f --- /dev/null +++ b/ports/cpp-httplib/portfile.cmake @@ -0,0 +1,23 @@ +include(vcpkg_common_functions) + +set(VERSION 0.2.0) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO yhirose/cpp-httplib + REF 2f8479016fa9af9a63056571992b31c32741d89b + SHA512 2f17a6a95c849a5c873a65e8da8bf85311f0152e439a973354c24d02ee9e6c3b0f3a456b60f90637ea4588d9ac09f7e41f42199de61315754e5fe9eecbb657ed + HEAD_REF master +) + +file( + COPY ${SOURCE_PATH}/httplib.h + DESTINATION ${CURRENT_PACKAGES_DIR}/include +) + +# Handle copyright +configure_file( + ${SOURCE_PATH}/LICENSE + ${CURRENT_PACKAGES_DIR}/share/cpp-httplib/copyright + COPYONLY +) From 7a3818f575fadf1ded97244f803930fe2464f190 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 26 Jun 2019 11:47:39 -0700 Subject: [PATCH 107/123] [angle] Update to latest master (#6892) * [angle] Update to latest master * [angle] Add gpu_info_util --- ports/angle/CMakeLists.txt | 57 ++++++++++++++++++++++++++++---------- ports/angle/CONTROL | 2 +- ports/angle/portfile.cmake | 4 +-- 3 files changed, 45 insertions(+), 18 deletions(-) diff --git a/ports/angle/CMakeLists.txt b/ports/angle/CMakeLists.txt index f83f6294e7ebd7..7d791db8450ae2 100644 --- a/ports/angle/CMakeLists.txt +++ b/ports/angle/CMakeLists.txt @@ -42,25 +42,25 @@ include_directories(include src ${CMAKE_CURRENT_BINARY_DIR}/include) ########## # angle::common if(WIN32) - set(ANGLE_COMMON_PLATFORM_FILTER "_linux|_mac|_posix") + set(ANGLE_COMMON_PLATFORM_FILTER "_linux|_mac|_posix|android_") elseif(LINUX) - set(ANGLE_COMMON_PLATFORM_FILTER "_win|_mac") + set(ANGLE_COMMON_PLATFORM_FILTER "_win|_mac|android_") elseif(APPLE) - set(ANGLE_COMMON_PLATFORM_FILTER "_linux|_win") + set(ANGLE_COMMON_PLATFORM_FILTER "_linux|_win|android_") endif() file(GLOB ANGLE_COMMON_SOURCES - "src/common/*.h" - "src/common/*.inl" - "src/common/*.cpp" - "src/common/third_party/base/anglebase/*.h" - "src/common/third_party/base/anglebase/*.cc" - "src/common/third_party/base/anglebase/containers/*.h" - "src/common/third_party/base/anglebase/numerics/*.h" - "src/common/third_party/base/anglebase/numerics/*.cc" - "src/common/third_party/xxhash/*.h" - "src/common/third_party/xxhash/*.c" - "src/common/third_party/smhasher/src/*.h" - "src/common/third_party/smhasher/src/*.cpp") + "src/common/*.h" + "src/common/*.inl" + "src/common/*.cpp" + "src/common/third_party/base/anglebase/*.h" + "src/common/third_party/base/anglebase/*.cc" + "src/common/third_party/base/anglebase/containers/*.h" + "src/common/third_party/base/anglebase/numerics/*.h" + "src/common/third_party/base/anglebase/numerics/*.cc" + "src/common/third_party/xxhash/*.h" + "src/common/third_party/xxhash/*.c" + "src/common/third_party/smhasher/src/*.h" + "src/common/third_party/smhasher/src/*.cpp") list(FILTER ANGLE_COMMON_SOURCES EXCLUDE REGEX "_unittest|event_tracer|${ANGLE_COMMON_PLATFORM_FILTER}") add_library(angle_common STATIC ${ANGLE_COMMON_SOURCES}) target_include_directories(angle_common PUBLIC src/common/third_party/base) @@ -191,6 +191,32 @@ if(WIN32) add_library(angle::renderer::d3d ALIAS angle_renderer_d3d) endif() +## angle::gpu_info_util +file(GLOB ANGLE_GPU_INFO_UTIL_SOURCES + "src/gpu_info_util/SystemInfo.h" + "src/gpu_info_util/SystemInfo_internal.h" + "src/gpu_info_util/SystemInfo.cpp" +) +add_library(angle_gpu_info_util STATIC ${ANGLE_GPU_INFO_UTIL_SOURCES}) +if(WIN32) + target_sources(angle_gpu_info_util PRIVATE "src/gpu_info_util/SystemInfo_win.cpp") + target_link_libraries(angle_gpu_info_util PRIVATE setupapi.lib dxgi.lib) +elseif(APPLE) + target_sources(angle_gpu_info_util PRIVATE "src/gpu_info_util/SystemInfo_mac.mm") + find_library(IOKit IOKit) + find_library(CoreFoundation CoreFoundation) + find_library(CoreGraphics CoreGraphics) + target_link_libraries(angle_gpu_info_util PRIVATE ${IOKit} ${CoreFoundation} ${CoreGraphics}) +elseif(LINUX) + target_sources(angle_gpu_info_util PRIVATE "src/gpu_info_util/SystemInfo_linux.cpp" "src/gpu_info_util/SystemInfo_x11.cpp") + target_compile_definitions(angle_gpu_info_util PRIVATE GPU_INFO_USE_X11) + target_link_libraries(angle_gpu_info_util PRIVATE X11 Xi Xext) +elseif(ANDROID) + target_sources(angle_gpu_info_util PRIVATE "src/gpu_info_util/SystemInfo_android.cpp") +endif() +target_link_libraries(angle_gpu_info_util PRIVATE angle::common) +add_library(angle::gpu_info_util ALIAS angle_gpu_info_util) + ## Core libANGLE library if(WIN32) set(LIBANGLE_SOURCES_PLATFORM @@ -252,6 +278,7 @@ add_library(libANGLE STATIC ${LIBANGLE_SOURCES}) target_link_libraries(libANGLE PRIVATE angle::common angle::image_util + angle::gpu_info_util angle::translator angle::preprocessor ${LIBANGLE_RENDERER_PLATFORM} diff --git a/ports/angle/CONTROL b/ports/angle/CONTROL index cac71fae2abffc..faa26f276a4d0a 100644 --- a/ports/angle/CONTROL +++ b/ports/angle/CONTROL @@ -1,5 +1,5 @@ Source: angle -Version: 2019-03-13-c2ee2cc-3 +Version: 2019-06-13 Homepage: https://github.com/google/angle Description: A conformant OpenGL ES implementation for Windows, Mac and Linux. The goal of ANGLE is to allow users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform. ANGLE currently provides translation from OpenGL ES 2.0 and 3.0 to desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11. Support for translation from OpenGL ES to Vulkan is underway, and future plans include compute shader support (ES 3.1) and MacOS support. diff --git a/ports/angle/portfile.cmake b/ports/angle/portfile.cmake index f0bda4a3d8fa6a..48a6f7a3ceef4d 100644 --- a/ports/angle/portfile.cmake +++ b/ports/angle/portfile.cmake @@ -15,8 +15,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/angle - REF chromium/3672 - SHA512 dd6a05f0f1f4544b8646c41ffcb4d5e3b41f5261771ada47889345a24d4e55e6370df55a26c354a7073efcde307644cec6c6064ea6fe498ed6b52c3017249f81 + REF 0d3cf7085c8e953e78d4fa0656b26ee93d005452 + SHA512 91550749933e278a72ae1094178ea28b36ee2b2fa553549477596ee772d1a39653386b3f3a9f168b0840a1511b7d31384b4e2d53cd5b5629028ca9c5a18a9288 PATCHES 001-fix-uwp.patch ) From db0c6043dcee80bbdbea6a320525f5fcf0b7dbda Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 26 Jun 2019 11:49:39 -0700 Subject: [PATCH 108/123] [curl] Revert revert of `-imp` suffix removal. (#6698) * [curl] Revert revert of `-imp` suffix removal. * [idevicerestore][libideviceactivation] Simplify dependency on curl * [curl] Trivial change to provoke rebuild --- ports/curl/0005_remove_imp_suffix.patch | 13 +++++++ ports/curl/portfile.cmake | 11 +++++- ports/idevicerestore/CONTROL | 2 +- ports/idevicerestore/libcurl_imp.patch | 40 -------------------- ports/idevicerestore/portfile.cmake | 13 +------ ports/libideviceactivation/CONTROL | 2 +- ports/libideviceactivation/libcurl_imp.patch | 40 -------------------- ports/libideviceactivation/portfile.cmake | 15 +------- 8 files changed, 27 insertions(+), 109 deletions(-) create mode 100644 ports/curl/0005_remove_imp_suffix.patch delete mode 100644 ports/idevicerestore/libcurl_imp.patch delete mode 100644 ports/libideviceactivation/libcurl_imp.patch diff --git a/ports/curl/0005_remove_imp_suffix.patch b/ports/curl/0005_remove_imp_suffix.patch new file mode 100644 index 00000000000000..356af2d52987b8 --- /dev/null +++ b/ports/curl/0005_remove_imp_suffix.patch @@ -0,0 +1,13 @@ +diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt +index eca9a8a..6f72955 100644 +--- a/lib/CMakeLists.txt ++++ b/lib/CMakeLists.txt +@@ -97,7 +97,7 @@ endif() + set_target_properties(${LIB_NAME} PROPERTIES PREFIX "") + set_target_properties(${LIB_NAME} PROPERTIES IMPORT_PREFIX "") + +-if(WIN32) ++if(WIN32 AND 0) + if(BUILD_SHARED_LIBS) + # Add "_imp" as a suffix before the extension to avoid conflicting with the statically linked "libcurl.lib" + set_target_properties(${LIB_NAME} PROPERTIES IMPORT_SUFFIX "_imp.lib") diff --git a/ports/curl/portfile.cmake b/ports/curl/portfile.cmake index 5366fe88c4a830..091fe9205d7995 100644 --- a/ports/curl/portfile.cmake +++ b/ports/curl/portfile.cmake @@ -11,6 +11,7 @@ vcpkg_from_github( 0002_fix_uwp.patch 0003_fix_libraries.patch 0004_nghttp2_staticlib.patch + 0005_remove_imp_suffix.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" CURL_STATICLIB) @@ -140,17 +141,23 @@ if(EXISTS "${CURRENT_PACKAGES_DIR}/bin/curl${EXECUTABLE_SUFFIX}") endif() endif() +if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/libcurl_imp.lib OR EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/libcurl-d_imp.lib) + # Because vcpkg only ever installs one or the other, there is no need to have the libraries be different names. + # Using the same name improves compatibility, because downstream projects can always rely on "libcurl.lib" + message(FATAL_ERROR "Curl's import library name should be consistent with the static library name.") +endif() + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) else() file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/curl-config ${CURRENT_PACKAGES_DIR}/debug/bin/curl-config) endif() file(READ ${CURRENT_PACKAGES_DIR}/include/curl/curl.h CURL_H) -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") string(REPLACE "#ifdef CURL_STATICLIB" "#if 1" CURL_H "${CURL_H}") else() string(REPLACE "#ifdef CURL_STATICLIB" "#if 0" CURL_H "${CURL_H}") diff --git a/ports/idevicerestore/CONTROL b/ports/idevicerestore/CONTROL index 36c31d97c947ef..ca6cabbd02ed19 100644 --- a/ports/idevicerestore/CONTROL +++ b/ports/idevicerestore/CONTROL @@ -1,4 +1,4 @@ Source: idevicerestore -Version: 1.0.12-2 +Version: 1.0.12-3 Description: Restore/upgrade firmware of iOS devices Build-Depends: libimobiledevice, curl, libirecovery, libzip \ No newline at end of file diff --git a/ports/idevicerestore/libcurl_imp.patch b/ports/idevicerestore/libcurl_imp.patch deleted file mode 100644 index f93dfb2b516174..00000000000000 --- a/ports/idevicerestore/libcurl_imp.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff --git a/idevicerestore.vcxproj b/idevicerestore.vcxproj -index fa209fae..cf89306b 100644 ---- a/idevicerestore.vcxproj -+++ b/idevicerestore.vcxproj -@@ -94,7 +94,7 @@ - _MBCS;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_WINSOCK_DEPRECATED_NO_WARNINGS - - -- kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl.lib;%(AdditionalDependencies) -+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl-d_imp.lib;%(AdditionalDependencies) - - - -@@ -105,7 +105,7 @@ - _MBCS;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_WINSOCK_DEPRECATED_NO_WARNINGS - - -- kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl.lib;%(AdditionalDependencies) -+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl-d_imp.lib;%(AdditionalDependencies) - - - -@@ -120,7 +120,7 @@ - - true - true -- kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl.lib;%(AdditionalDependencies) -+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl_imp.lib;%(AdditionalDependencies) - - - -@@ -135,7 +135,7 @@ - - true - true -- kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl.lib;%(AdditionalDependencies) -+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl_imp.lib;%(AdditionalDependencies) - - - diff --git a/ports/idevicerestore/portfile.cmake b/ports/idevicerestore/portfile.cmake index 271c249c6211d4..67aeb4c373ab04 100644 --- a/ports/idevicerestore/portfile.cmake +++ b/ports/idevicerestore/portfile.cmake @@ -6,20 +6,9 @@ vcpkg_from_github( REF 1.0.12 SHA512 ba623be56c2f37853516d7d4c32e16f1ec72f33d512f18aa812ce6830af4b9e389f7af5321888dd0ddd168e282b652e379b60f90970680e213eabf489f406915 HEAD_REF msvc-master + PATCHES libcurl_d.patch ) -if(${VCPKG_LIBRARY_LINKAGE} MATCHES dynamic) - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - libcurl_imp.patch) -else() - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - libcurl_d.patch) -endif() - vcpkg_install_msbuild( SOURCE_PATH ${SOURCE_PATH} PROJECT_SUBPATH idevicerestore.vcxproj diff --git a/ports/libideviceactivation/CONTROL b/ports/libideviceactivation/CONTROL index cbc1aef46af0a4..8ff0a857e6d629 100644 --- a/ports/libideviceactivation/CONTROL +++ b/ports/libideviceactivation/CONTROL @@ -1,4 +1,4 @@ Source: libideviceactivation -Version: 1.2.68 +Version: 1.2.68-1 Description: A library to handle the activation process of iOS devices Build-Depends: libimobiledevice, libxml2, curl \ No newline at end of file diff --git a/ports/libideviceactivation/libcurl_imp.patch b/ports/libideviceactivation/libcurl_imp.patch deleted file mode 100644 index bf1bfefac9e035..00000000000000 --- a/ports/libideviceactivation/libcurl_imp.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff --git a/libideviceactivation.vcxproj b/libideviceactivation.vcxproj -index ba473f7a..47a20d15 100644 ---- a/libideviceactivation.vcxproj -+++ b/libideviceactivation.vcxproj -@@ -76,7 +76,7 @@ - $(OutDir)$(ProjectName).pdb - - -- libcurl.lib;libxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) -+ libcurl-d_imp.lib;libxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) - - - -@@ -89,7 +89,7 @@ - $(OutDir)$(ProjectName).pdb - - -- libcurl.lib;libxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) -+ libcurl-d_imp.lib;libxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) - - - -@@ -106,7 +106,7 @@ - - true - true -- libcurl.lib;libxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) -+ libcurl_imp.lib;libxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) - - - -@@ -123,7 +123,7 @@ - - true - true -- libcurl.lib;libxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) -+ libcurl_imp.lib;libxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) - - - diff --git a/ports/libideviceactivation/portfile.cmake b/ports/libideviceactivation/portfile.cmake index a904b52ef0b59d..7e4776c69819fc 100644 --- a/ports/libideviceactivation/portfile.cmake +++ b/ports/libideviceactivation/portfile.cmake @@ -5,23 +5,12 @@ vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY ONLY_DYNAMIC_CRT) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO libimobiledevice-win32/libideviceactivation - REF v1.2.68 + REF v1.2.68 SHA512 c2742bba2d90c21e853255c9ef1b9a63560c3e65541a0a3daaace9b0c48d236b7947008dbcd6e42622251015b686758ebc6b564e379d831cb4f52af812430140 HEAD_REF msvc-master + PATCHES libcurl_d.patch ) -if(${VCPKG_LIBRARY_LINKAGE} MATCHES dynamic) - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - libcurl_imp.patch) -else() - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - libcurl_d.patch) -endif() - vcpkg_install_msbuild( SOURCE_PATH ${SOURCE_PATH} PROJECT_SUBPATH libideviceactivation.sln From 8c22bd9aadc510623cd082f1d9ad59b862be9f22 Mon Sep 17 00:00:00 2001 From: Jackie Ng Date: Thu, 27 Jun 2019 07:51:58 +1000 Subject: [PATCH 109/123] [freexl]: Linux build support (#6813) * [freexl]: Add linux build support * [freexl]: Remove various commented-out references to gdal (from which this initial Linux support was based from) * [freexl]: Port changes based on PR feedback * [freexl]: The CI error logs suggest the port has issues building for both debug/release in the same source directory on Linux. Split this off into separate debug/release source directories. --- ports/freexl/CONTROL | 2 +- ports/freexl/portfile.cmake | 238 +++++++++++++++++++++++++----------- 2 files changed, 165 insertions(+), 75 deletions(-) diff --git a/ports/freexl/CONTROL b/ports/freexl/CONTROL index 00f97f562d47c9..dc4ec446ad00b2 100644 --- a/ports/freexl/CONTROL +++ b/ports/freexl/CONTROL @@ -1,5 +1,5 @@ Source: freexl -Version: 1.0.4-1 +Version: 1.0.4-2 Homepage: https://www.gaia-gis.it/gaia-sins/freexl-sources Description: FreeXL is an open source library to extract valid data from within an Excel (.xls) spreadsheet Build-Depends: libiconv diff --git a/ports/freexl/portfile.cmake b/ports/freexl/portfile.cmake index ff8879fba5f8c4..e770d61f1dfae1 100644 --- a/ports/freexl/portfile.cmake +++ b/ports/freexl/portfile.cmake @@ -1,90 +1,180 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/freexl-1.0.4) +set(FREEXL_VERSION_STR "1.0.4") +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/freexl-${FREEXL_VERSION_STR}) vcpkg_download_distfile(ARCHIVE - URLS "http://www.gaia-gis.it/gaia-sins/freexl-sources/freexl-1.0.4.tar.gz" - FILENAME "freexl-1.0.4.tar.gz" + URLS "http://www.gaia-gis.it/gaia-sins/freexl-sources/freexl-${FREEXL_VERSION_STR}.tar.gz" + FILENAME "freexl-${FREEXL_VERSION_STR}.tar.gz" SHA512 d72561f7b82e0281cb211fbf249e5e45411a7cdd009cfb58da3696f0a0341ea7df210883bfde794be28738486aeb4ffc67ec2c98fd2acde5280e246e204ce788 ) -vcpkg_extract_source_archive(${ARCHIVE}) +if (CMAKE_HOST_WIN32) + vcpkg_extract_source_archive(${ARCHIVE}) + vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/fix-makefiles.patch + ${CMAKE_CURRENT_LIST_DIR}/fix-sources.patch + ) + find_program(NMAKE nmake) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/fix-makefiles.patch - ${CMAKE_CURRENT_LIST_DIR}/fix-sources.patch -) -find_program(NMAKE nmake) - -set(LIBS_ALL_DBG - "\"${CURRENT_INSTALLED_DIR}/debug/lib/libiconv.lib\" \ - \"${CURRENT_INSTALLED_DIR}/debug/lib/libcharset.lib\"" - ) -set(LIBS_ALL_REL - "\"${CURRENT_INSTALLED_DIR}/lib/libiconv.lib\" \ - \"${CURRENT_INSTALLED_DIR}/lib/libcharset.lib\"" - ) - - -if(VCPKG_CRT_LINKAGE STREQUAL dynamic) - set(CL_FLAGS_DBG "/MDd /Zi") - set(CL_FLAGS_REL "/MD /Ox") -else() - set(CL_FLAGS_DBG "/MTd /Zi") - set(CL_FLAGS_REL "/MT /Ox") -endif() + set(LIBS_ALL_DBG + "\"${CURRENT_INSTALLED_DIR}/debug/lib/libiconv.lib\" \ + \"${CURRENT_INSTALLED_DIR}/debug/lib/libcharset.lib\"" + ) + set(LIBS_ALL_REL + "\"${CURRENT_INSTALLED_DIR}/lib/libiconv.lib\" \ + \"${CURRENT_INSTALLED_DIR}/lib/libcharset.lib\"" + ) -################ -# Debug build -################ -if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - message(STATUS "Building ${TARGET_TRIPLET}-dbg") + if(VCPKG_CRT_LINKAGE STREQUAL dynamic) + set(CL_FLAGS_DBG "/MDd /Zi") + set(CL_FLAGS_REL "/MD /Ox") + else() + set(CL_FLAGS_DBG "/MTd /Zi") + set(CL_FLAGS_REL "/MT /Ox") + endif() - file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) - vcpkg_execute_required_process( - COMMAND ${NMAKE} -f makefile.vc clean install - INST_DIR="${INST_DIR_DBG}" INSTALLED_ROOT="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=/debug" "CL_FLAGS=${CL_FLAGS_DBG}" "LIBS_ALL=${LIBS_ALL_DBG}" - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME nmake-build-${TARGET_TRIPLET}-debug - ) - message(STATUS "Building ${TARGET_TRIPLET}-dbg done") - vcpkg_copy_pdbs() -endif() -################ -# Release build -################ -if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - message(STATUS "Building ${TARGET_TRIPLET}-rel") - - file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}" INST_DIR_REL) - vcpkg_execute_required_process( - COMMAND ${NMAKE} -f makefile.vc clean install - INST_DIR="${INST_DIR_REL}" INSTALLED_ROOT="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=" "CL_FLAGS=${CL_FLAGS_REL}" "LIBS_ALL=${LIBS_ALL_REL}" - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME nmake-build-${TARGET_TRIPLET}-release - ) - message(STATUS "Building ${TARGET_TRIPLET}-rel done") -endif() + ################ + # Debug build + ################ + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + message(STATUS "Building ${TARGET_TRIPLET}-dbg") + + file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) + vcpkg_execute_required_process( + COMMAND ${NMAKE} -f makefile.vc clean install + INST_DIR="${INST_DIR_DBG}" INSTALLED_ROOT="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=/debug" "CL_FLAGS=${CL_FLAGS_DBG}" "LIBS_ALL=${LIBS_ALL_DBG}" + WORKING_DIRECTORY ${SOURCE_PATH} + LOGNAME nmake-build-${TARGET_TRIPLET}-debug + ) + message(STATUS "Building ${TARGET_TRIPLET}-dbg done") + vcpkg_copy_pdbs() + endif() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/freexl RENAME copyright) - -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) - file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/freexl_i.lib) - file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/freexl_i.lib) -else() - file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/freexl.lib) - file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/freexl.lib) + ################ + # Release build + ################ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/freexl_i.lib ${CURRENT_PACKAGES_DIR}/lib/freexl.lib) + message(STATUS "Building ${TARGET_TRIPLET}-rel") + + file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}" INST_DIR_REL) + vcpkg_execute_required_process( + COMMAND ${NMAKE} -f makefile.vc clean install + INST_DIR="${INST_DIR_REL}" INSTALLED_ROOT="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=" "CL_FLAGS=${CL_FLAGS_REL}" "LIBS_ALL=${LIBS_ALL_REL}" + WORKING_DIRECTORY ${SOURCE_PATH} + LOGNAME nmake-build-${TARGET_TRIPLET}-release + ) + message(STATUS "Building ${TARGET_TRIPLET}-rel done") endif() - if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/freexl_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/freexl.lib) + + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/freexl RENAME copyright) + + if (VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/freexl_i.lib) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/freexl_i.lib) + else() + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/freexl.lib) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/freexl.lib) + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/freexl_i.lib ${CURRENT_PACKAGES_DIR}/lib/freexl.lib) + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/freexl_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/freexl.lib) + endif() endif() -endif() +elseif (CMAKE_HOST_UNIX OR CMAKE_HOST_APPLE) # Build in UNIX + + # Check build system first + find_program(MAKE make) + if (NOT MAKE) + message(FATAL_ERROR "MAKE not found") + endif() + + # CI error logs appear to indicate that it doesn't like ./configure in the same source dir + # so extract the source into separate debug/release source directories + set(SOURCE_ROOT_DEBUG ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-debug) + set(SOURCE_ROOT_RELEASE ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-release) + set(SOURCE_PATH_DEBUG ${SOURCE_ROOT_DEBUG}/freexl-${FREEXL_VERSION_STR}) + set(SOURCE_PATH_RELEASE ${SOURCE_ROOT_RELEASE}/freexl-${FREEXL_VERSION_STR}) + + file(REMOVE_RECURSE ${SOURCE_ROOT_DEBUG}) + file(REMOVE_RECURSE ${SOURCE_ROOT_RELEASE}) + + vcpkg_extract_source_archive(${ARCHIVE} ${SOURCE_ROOT_DEBUG}) + vcpkg_extract_source_archive(${ARCHIVE} ${SOURCE_ROOT_RELEASE}) + + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + ################ + # Release build + ################ + message(STATUS "Configuring ${TARGET_TRIPLET}-rel") + set(OUT_PATH_RELEASE ${SOURCE_PATH_RELEASE}/../../make-build-${TARGET_TRIPLET}-release) + file(MAKE_DIRECTORY ${OUT_PATH_RELEASE}) + vcpkg_execute_required_process( + COMMAND "${SOURCE_PATH_RELEASE}/configure" --prefix=${OUT_PATH_RELEASE} "${FREEXL_CONFIGURE_ARGS_REL}" + WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} + LOGNAME config-${TARGET_TRIPLET}-rel + ) + + message(STATUS "Building ${TARGET_TRIPLET}-rel") + vcpkg_execute_required_process( + COMMAND make + WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} + LOGNAME make-build-${TARGET_TRIPLET}-release + ) + + message(STATUS "Installing ${TARGET_TRIPLET}-rel") + vcpkg_execute_required_process( + COMMAND make install + WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} + LOGNAME make-install-${TARGET_TRIPLET}-release + ) + + file(COPY ${OUT_PATH_RELEASE}/lib DESTINATION ${CURRENT_PACKAGES_DIR}) + file(COPY ${OUT_PATH_RELEASE}/include DESTINATION ${CURRENT_PACKAGES_DIR}) + file(COPY ${SOURCE_PATH_RELEASE}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/freexl) + file(RENAME ${CURRENT_PACKAGES_DIR}/share/freexl/COPYING ${CURRENT_PACKAGES_DIR}/share/freexl/copyright) + message(STATUS "Installing ${TARGET_TRIPLET}-rel done") + endif() + + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + ################ + # Debug build + ################ + message(STATUS "Configuring ${TARGET_TRIPLET}-dbg") + set(OUT_PATH_DEBUG ${SOURCE_PATH_DEBUG}/../../make-build-${TARGET_TRIPLET}-debug) + file(MAKE_DIRECTORY ${OUT_PATH_DEBUG}) + vcpkg_execute_required_process( + COMMAND "${SOURCE_PATH_DEBUG}/configure" --prefix=${OUT_PATH_DEBUG} "${FREEXL_CONFIGURE_ARGS_DBG}" + WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} + LOGNAME config-${TARGET_TRIPLET}-debug + ) + + message(STATUS "Building ${TARGET_TRIPLET}-dbg") + vcpkg_execute_required_process( + COMMAND make + WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} + LOGNAME make-build-${TARGET_TRIPLET}-debug + ) + + message(STATUS "Installing ${TARGET_TRIPLET}-dbg") + vcpkg_execute_required_process( + COMMAND make install + WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} + LOGNAME make-install-${TARGET_TRIPLET}-debug + ) + + file(COPY ${OUT_PATH_DEBUG}/lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug) + message(STATUS "Installing ${TARGET_TRIPLET}-dbg done") + endif() + +else()# Other build system + message(FATAL_ERROR "Unsupported build system.") +endif() message(STATUS "Packaging ${TARGET_TRIPLET} done") From fd87a081bb6acc33ec4e581f1ce60edcad80eda1 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Thu, 27 Jun 2019 00:00:48 +0200 Subject: [PATCH 110/123] Introduce an easier way to identify target systems... (#6846) * Introduce an easier way to identify target systems... * fix missing () * move the include around. also added vcpkg_common_functions to be automatically included * remove warning message * added remaining VCPKG_CMAKE_SYSTEM_NAMEs found only in vcpkg_configure_cmake to load a toolchain. * remove warning again from messed up merge --- scripts/cmake/vcpkg_common_definitions.cmake | 14 ++++++++++++++ scripts/ports.cmake | 2 ++ 2 files changed, 16 insertions(+) create mode 100644 scripts/cmake/vcpkg_common_definitions.cmake diff --git a/scripts/cmake/vcpkg_common_definitions.cmake b/scripts/cmake/vcpkg_common_definitions.cmake new file mode 100644 index 00000000000000..8dc05de3cc14be --- /dev/null +++ b/scripts/cmake/vcpkg_common_definitions.cmake @@ -0,0 +1,14 @@ +if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + set(VCPKG_TARGET_IS_WINDOWS 1) + if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + set(VCPKG_TARGET_IS_UWP 1) + endif() +elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") + set(VCPKG_TARGET_IS_OSX 1) +elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(VCPKG_TARGET_IS_LINUX 1) +elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Android") + set(VCPKG_TARGET_IS_ANDROID 1) +elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") + set(VCPKG_TARGET_IS_FREEBSD 1) +endif() diff --git a/scripts/ports.cmake b/scripts/ports.cmake index 7a5f2749f351cc..118cc948134f93 100644 --- a/scripts/ports.cmake +++ b/scripts/ports.cmake @@ -68,6 +68,8 @@ if(CMD MATCHES "^BUILD$") include(${CMAKE_TRIPLET_FILE}) set(TRIPLET_SYSTEM_ARCH ${VCPKG_TARGET_ARCHITECTURE}) + include(${CMAKE_CURRENT_LIST_DIR}/cmake/vcpkg_common_definitions.cmake) + include(${CMAKE_CURRENT_LIST_DIR}/cmake/vcpkg_common_functions.cmake) include(${CURRENT_PORT_DIR}/portfile.cmake) set(BUILD_INFO_FILE_PATH ${CURRENT_PACKAGES_DIR}/BUILD_INFO) From 22ebb8ca681ed2dffbf931cf2ad72d53b846f2e2 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Wed, 26 Jun 2019 16:03:13 -0700 Subject: [PATCH 111/123] [libmikmod] resolve ninja error (-w dupbuild=err) (#7052) --- ports/libmikmod/CONTROL | 2 +- ports/libmikmod/cmake_policy.patch | 13 ------------- ports/libmikmod/name_conflict.patch | 13 +++++++++++++ ports/libmikmod/portfile.cmake | 9 ++++++++- 4 files changed, 22 insertions(+), 15 deletions(-) delete mode 100644 ports/libmikmod/cmake_policy.patch create mode 100644 ports/libmikmod/name_conflict.patch diff --git a/ports/libmikmod/CONTROL b/ports/libmikmod/CONTROL index 6a02a4ae4f35cb..bc289f59c938e7 100644 --- a/ports/libmikmod/CONTROL +++ b/ports/libmikmod/CONTROL @@ -1,5 +1,5 @@ Source: libmikmod -Version: 3.3.11.1-3 +Version: 3.3.11.1-4 Homepage: https://sourceforge.net/projects/mikmod/ Description: Mikmod is a module player and library supporting many formats, including mod, s3m, it, and xm. Build-Depends: openal-soft diff --git a/ports/libmikmod/cmake_policy.patch b/ports/libmikmod/cmake_policy.patch deleted file mode 100644 index 17d48278a366eb..00000000000000 --- a/ports/libmikmod/cmake_policy.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index b4d31d3..67951e6 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -23,6 +23,8 @@ - # - # (This copyright notice applies only to this file) - -+cmake_policy(SET CMP0003 NEW) -+ - PROJECT(libmikmod C) - CMAKE_MINIMUM_REQUIRED(VERSION 2.8) - LIST(APPEND CMAKE_MODULE_PATH "${libmikmod_SOURCE_DIR}/cmake") diff --git a/ports/libmikmod/name_conflict.patch b/ports/libmikmod/name_conflict.patch new file mode 100644 index 00000000000000..be0ba1d289a6ea --- /dev/null +++ b/ports/libmikmod/name_conflict.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 53a174e..5983882 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -404,7 +404,7 @@ IF (ENABLE_STATIC) + + SET_TARGET_PROPERTIES( + mikmod-static +- PROPERTIES OUTPUT_NAME "mikmod" ++ PROPERTIES OUTPUT_NAME "mikmod-static" + ) + SET_TARGET_PROPERTIES( + ${LIBMIKMOD_LIBS} diff --git a/ports/libmikmod/portfile.cmake b/ports/libmikmod/portfile.cmake index 1ec5d6773992b2..ef0b6d5e064da8 100644 --- a/ports/libmikmod/portfile.cmake +++ b/ports/libmikmod/portfile.cmake @@ -23,9 +23,15 @@ vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH PATCHES fix-missing-dll.patch - cmake_policy.patch + name_conflict.patch ) +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + set(ENABLE_STATIC ON) +else() + set(ENABLE_STATIC OFF) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA # Disable this option if project cannot be built with Ninja @@ -42,6 +48,7 @@ vcpkg_configure_cmake( -DENABLE_STDOUT=ON -DENABLE_WAV=ON -DOPENAL_INCLUDE_DIR=${CURRENT_INSTALLED_DIR}/include + -DENABLE_STATIC=${ENABLE_STATIC} OPTIONS_RELEASE -DENABLE_SIMD=ON OPTIONS_DEBUG -DENABLE_SIMD=OFF ) From 539695e5445a435db848ff76cd39bf4fd7ab414e Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Wed, 26 Jun 2019 16:03:27 -0700 Subject: [PATCH 112/123] [restclient-cpp] disable tests (#7054) --- ports/restclient-cpp/CONTROL | 2 +- ports/restclient-cpp/portfile.cmake | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ports/restclient-cpp/CONTROL b/ports/restclient-cpp/CONTROL index 975f5df7a7f799..2aac1bbaf4e532 100644 --- a/ports/restclient-cpp/CONTROL +++ b/ports/restclient-cpp/CONTROL @@ -1,4 +1,4 @@ Source: restclient-cpp -Version: 0.5.1-1 +Version: 0.5.1-2 Build-Depends: curl Description: Binn is a binary data serialization format designed to be compact, fast and easy to use. diff --git a/ports/restclient-cpp/portfile.cmake b/ports/restclient-cpp/portfile.cmake index 116e609202ba04..6ad2fa7cfa3249 100644 --- a/ports/restclient-cpp/portfile.cmake +++ b/ports/restclient-cpp/portfile.cmake @@ -13,6 +13,9 @@ vcpkg_from_github( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + OPTIONS + -DCMAKE_DISABLE_FIND_PACKAGE_GTest=TRUE + -DCMAKE_DISABLE_FIND_PACKAGE_jsoncpp=TRUE ) vcpkg_install_cmake() From 40537b848b0ee9eaee2fb1bf08f838b1e75c9925 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Wed, 26 Jun 2019 16:35:03 -0700 Subject: [PATCH 113/123] [libftdi] resolve ninja error (-w dupbuild=err) (#7055) --- ports/libftdi/CONTROL | 2 +- ports/libftdi/export-cmake.patch | 24 ------------------------ ports/libftdi/portfile.cmake | 1 - ports/libftdi/shared-static.patch | 18 ++++++++++++++++-- 4 files changed, 17 insertions(+), 28 deletions(-) delete mode 100644 ports/libftdi/export-cmake.patch diff --git a/ports/libftdi/CONTROL b/ports/libftdi/CONTROL index 3c50a00e26547f..16ebe6fabc6c9d 100644 --- a/ports/libftdi/CONTROL +++ b/ports/libftdi/CONTROL @@ -1,4 +1,4 @@ Source: libftdi -Version: 0.20 +Version: 0.20-1 Build-Depends: libusb-win32 Description: FTDI USB driver with bitbang mode (v0.20) diff --git a/ports/libftdi/export-cmake.patch b/ports/libftdi/export-cmake.patch deleted file mode 100644 index 29078c25d360b4..00000000000000 --- a/ports/libftdi/export-cmake.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 1c326fe..3c1d9ab 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -47,14 +47,19 @@ if(WIN32 OR 1) - - if(BUILD_SHARED_LIBS) - install( TARGETS ftdi -+ EXPORT ftdi - COMPONENT sharedlibs - ) - -+ target_link_libraries(ftdi PUBLIC $) - else() - install( TARGETS ftdi-static -+ EXPORT ftdi - COMPONENT staticlibs - ) -+ target_link_libraries(ftdi-static PUBLIC $) - endif() -+ install(EXPORT ftdi FILE libftdi-config.cmake NAMESPACE libftdi:: DESTINATION share/libftdi) - - install( FILES ${c_headers} - DESTINATION include diff --git a/ports/libftdi/portfile.cmake b/ports/libftdi/portfile.cmake index 29e5bc42dfcfca..318e21a9e08d57 100644 --- a/ports/libftdi/portfile.cmake +++ b/ports/libftdi/portfile.cmake @@ -13,7 +13,6 @@ vcpkg_extract_source_archive_ex( PATCHES libusb-win32.patch shared-static.patch - export-cmake.patch ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/exports.def DESTINATION ${SOURCE_PATH}/src) diff --git a/ports/libftdi/shared-static.patch b/ports/libftdi/shared-static.patch index dad7aa0c52e9c7..df76b910b612ee 100644 --- a/ports/libftdi/shared-static.patch +++ b/ports/libftdi/shared-static.patch @@ -1,5 +1,5 @@ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 071ae90..b42bbcd 100644 +index 071ae90..f91f6f7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -4,7 +4,7 @@ include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR} @@ -11,6 +11,15 @@ index 071ae90..b42bbcd 100644 set(c_headers ftdi.h) add_library(ftdi SHARED ${c_sources}) +@@ -14,7 +14,7 @@ set_target_properties(ftdi PROPERTIES VERSION ${VERSION_FIXUP}.${MINOR_VERSION}. + + # Static library + add_library(ftdi-static STATIC ${c_sources}) +-set_target_properties(ftdi-static PROPERTIES OUTPUT_NAME "ftdi") ++set_target_properties(ftdi-static PROPERTIES OUTPUT_NAME "ftdi-static") + + # Prevent clobbering each other during the build + set_target_properties(ftdi PROPERTIES CLEAN_DIRECT_OUTPUT 1) @@ -24,7 +24,7 @@ set_target_properties(ftdi-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) target_link_libraries(ftdi ${LIBUSB_LIBRARIES}) @@ -20,7 +29,7 @@ index 071ae90..b42bbcd 100644 install( TARGETS ftdi LIBRARY DESTINATION lib${LIB_SUFFIX} -@@ -41,23 +41,24 @@ if(${UNIX}) +@@ -41,23 +41,29 @@ if(${UNIX}) COMPONENT headers ) @@ -33,15 +42,20 @@ index 071ae90..b42bbcd 100644 + if(BUILD_SHARED_LIBS) install( TARGETS ftdi - DESTINATION bin ++ EXPORT ftdi COMPONENT sharedlibs ) ++ target_link_libraries(ftdi PUBLIC $) + else() install( TARGETS ftdi-static - DESTINATION bin ++ EXPORT ftdi COMPONENT staticlibs ) ++ target_link_libraries(ftdi-static PUBLIC $) + endif() ++ install(EXPORT ftdi FILE libftdi-config.cmake NAMESPACE libftdi:: DESTINATION share/libftdi) install( FILES ${c_headers} DESTINATION include From a6fe726ebb7fa39023342a91803d9c5de51d7c54 Mon Sep 17 00:00:00 2001 From: Sean Yen Date: Wed, 26 Jun 2019 22:20:04 -0700 Subject: [PATCH 114/123] Fix header path propagation. (#7015) --- ports/libftdi/shared-static.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/libftdi/shared-static.patch b/ports/libftdi/shared-static.patch index df76b910b612ee..3197fb823db08b 100644 --- a/ports/libftdi/shared-static.patch +++ b/ports/libftdi/shared-static.patch @@ -46,14 +46,14 @@ index 071ae90..f91f6f7 100644 COMPONENT sharedlibs ) -+ target_link_libraries(ftdi PUBLIC $) ++ target_include_directories(ftdi PUBLIC $) + else() install( TARGETS ftdi-static - DESTINATION bin + EXPORT ftdi COMPONENT staticlibs ) -+ target_link_libraries(ftdi-static PUBLIC $) ++ target_include_directories(ftdi-static PUBLIC $) + endif() + install(EXPORT ftdi FILE libftdi-config.cmake NAMESPACE libftdi:: DESTINATION share/libftdi) From 82cd021b42ddce34b487a9665cf2614b563919de Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Thu, 27 Jun 2019 11:08:20 -0700 Subject: [PATCH 115/123] [libxslt] Update the version to 1.1.33 and change the URL. (#7058) --- ports/libxslt/CONTROL | 2 +- ports/libxslt/portfile.cmake | 24 +++++++++++------------- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/ports/libxslt/CONTROL b/ports/libxslt/CONTROL index 965079523af29e..e1de01067c80da 100644 --- a/ports/libxslt/CONTROL +++ b/ports/libxslt/CONTROL @@ -1,5 +1,5 @@ Source: libxslt -Version: 1.1.29 +Version: 1.1.33 Homepage: http://xmlsoft.org/XSLT/ Description: Libxslt is a XSLT library implemented in C for XSLT 1.0 and most of EXSLT Build-Depends: libxml2 diff --git a/ports/libxslt/portfile.cmake b/ports/libxslt/portfile.cmake index 2343ba99f13169..a688c374b6d11d 100644 --- a/ports/libxslt/portfile.cmake +++ b/ports/libxslt/portfile.cmake @@ -7,21 +7,19 @@ # include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libxslt-1.1.29) -vcpkg_download_distfile(ARCHIVE - URLS "ftp://xmlsoft.org/libxslt/libxslt-1.1.29.tar.gz" - FILENAME "libxslt-1.1.29.tar.gz" - SHA512 a1ce555a74a9dabe65e8f64bb66e27e77760fd76940d88f2d59f58dd63ca73c8ae59f3fcbd8e76c8f92ff992fb0c09328528c20ea38ccac83e63252106bf5f31 + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO GNOME/libxslt + REF v1.1.33 + SHA512 2c20b2af3c19952b25b10dca0d95fe227602f7f815db352b04dd061c52c458d745f92c597ce08ac9207ba0fbe0169ea2fb78263d8590743717553f84463fe1d9 + HEAD_REF master + PATCHES + 0001-Fix-makefile.patch ) -vcpkg_extract_source_archive(${ARCHIVE}) find_program(NMAKE nmake) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH}/ - PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001-Fix-makefile.patch -) - set(SCRIPTS_DIR ${SOURCE_PATH}/win32) set(CONFIGURE_COMMAND_TEMPLATE cscript configure.js @@ -170,7 +168,7 @@ else() endif() # Handle copyright -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libxslt) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/libxslt/COPYING ${CURRENT_PACKAGES_DIR}/share/libxslt/copyright) +file(COPY ${SOURCE_PATH}/Copyright DESTINATION ${CURRENT_PACKAGES_DIR}/share/libxslt) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/libxslt/Copyright ${CURRENT_PACKAGES_DIR}/share/libxslt/copyright) vcpkg_copy_pdbs() \ No newline at end of file From 35e985d3ccf60235bc4881df4d934610cd507090 Mon Sep 17 00:00:00 2001 From: Victor Romero Date: Thu, 27 Jun 2019 12:20:12 -0700 Subject: [PATCH 116/123] Triplets Overlay Implementation (#7053) * Triplets Overlay Implementation * Use cache for get_triplet_file_path() * Code cleanup --- scripts/ports.cmake | 2 +- toolsrc/include/vcpkg/vcpkgcmdarguments.h | 1 + toolsrc/include/vcpkg/vcpkgpaths.h | 11 ++-- toolsrc/src/vcpkg.cpp | 4 +- toolsrc/src/vcpkg/build.cpp | 13 +++-- toolsrc/src/vcpkg/help.cpp | 2 + toolsrc/src/vcpkg/vcpkgcmdarguments.cpp | 30 ++++------- toolsrc/src/vcpkg/vcpkgpaths.cpp | 61 ++++++++++++++++++----- 8 files changed, 84 insertions(+), 40 deletions(-) diff --git a/scripts/ports.cmake b/scripts/ports.cmake index 118cc948134f93..860d08893fe23b 100644 --- a/scripts/ports.cmake +++ b/scripts/ports.cmake @@ -32,7 +32,7 @@ endif() if(CMD MATCHES "^BUILD$") - set(CMAKE_TRIPLET_FILE ${VCPKG_ROOT_DIR}/triplets/${TARGET_TRIPLET}.cmake) + set(CMAKE_TRIPLET_FILE ${TARGET_TRIPLET_FILE}) if(NOT EXISTS ${CMAKE_TRIPLET_FILE}) message(FATAL_ERROR "Unsupported target triplet. Triplet file does not exist: ${CMAKE_TRIPLET_FILE}") endif() diff --git a/toolsrc/include/vcpkg/vcpkgcmdarguments.h b/toolsrc/include/vcpkg/vcpkgcmdarguments.h index cad013eb88b722..ff13ae6bf61e3a 100644 --- a/toolsrc/include/vcpkg/vcpkgcmdarguments.h +++ b/toolsrc/include/vcpkg/vcpkgcmdarguments.h @@ -88,6 +88,7 @@ namespace vcpkg std::unique_ptr vcpkg_root_dir; std::unique_ptr triplet; std::unique_ptr> overlay_ports; + std::unique_ptr> overlay_triplets; Optional debug = nullopt; Optional sendmetrics = nullopt; Optional printmetrics = nullopt; diff --git a/toolsrc/include/vcpkg/vcpkgpaths.h b/toolsrc/include/vcpkg/vcpkgpaths.h index b09169b0274ba0..a30e0c65349354 100644 --- a/toolsrc/include/vcpkg/vcpkgpaths.h +++ b/toolsrc/include/vcpkg/vcpkgpaths.h @@ -47,14 +47,17 @@ namespace vcpkg struct VcpkgPaths { - static Expected create(const fs::path& vcpkg_root_dir, const std::string& default_vs_path); + static Expected create(const fs::path& vcpkg_root_dir, + const std::string& default_vs_path, + const std::vector* triplets_dirs); fs::path package_dir(const PackageSpec& spec) const; fs::path build_info_file_path(const PackageSpec& spec) const; fs::path listfile_path(const BinaryParagraph& pgh) const; - - const std::vector& get_available_triplets() const; + bool is_valid_triplet(const Triplet& t) const; + const std::vector& get_available_triplets() const; + const fs::path get_triplet_file_path(const Triplet& triplet) const; fs::path root; fs::path packages; @@ -93,7 +96,9 @@ namespace vcpkg Lazy> toolsets_vs2013; fs::path default_vs_path; + std::vector triplets_dirs; mutable std::unique_ptr m_tool_cache; + mutable vcpkg::Cache m_triplets_cache; }; } diff --git a/toolsrc/src/vcpkg.cpp b/toolsrc/src/vcpkg.cpp index e02bdc71f192e6..5da97b136d4d9f 100644 --- a/toolsrc/src/vcpkg.cpp +++ b/toolsrc/src/vcpkg.cpp @@ -118,7 +118,9 @@ static void inner(const VcpkgCmdArguments& args) auto default_vs_path = System::get_environment_variable("VCPKG_VISUAL_STUDIO_PATH").value_or(""); - const Expected expected_paths = VcpkgPaths::create(vcpkg_root_dir, default_vs_path); + const Expected expected_paths = VcpkgPaths::create(vcpkg_root_dir, + default_vs_path, + args.overlay_triplets.get()); Checks::check_exit(VCPKG_LINE_INFO, !expected_paths.error(), "Error: Invalid vcpkg root directory %s: %s", diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 059a09432c967e..f826a48652c06b 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -361,9 +361,15 @@ namespace vcpkg::Build { auto& fs = paths.get_filesystem(); const Triplet& triplet = spec.triplet(); + const auto& triplet_file_path = paths.get_triplet_file_path(spec.triplet()).u8string(); - if (!Strings::starts_with(Strings::ascii_to_lowercase(config.port_dir.u8string()), - Strings::ascii_to_lowercase(paths.ports.u8string()))) + if (!Strings::case_insensitive_ascii_starts_with(triplet_file_path, + paths.triplets.u8string())) + { + System::printf("-- Loading triplet configuration from: %s\n", triplet_file_path); + } + if (!Strings::case_insensitive_ascii_starts_with(config.port_dir.u8string(), + paths.ports.u8string())) { System::printf("-- Installing port from location: %s\n", config.port_dir.u8string()); } @@ -390,6 +396,7 @@ namespace vcpkg::Build {"PORT", config.scf.core_paragraph->name}, {"CURRENT_PORT_DIR", config.port_dir}, {"TARGET_TRIPLET", spec.triplet().canonical_name()}, + {"TARGET_TRIPLET_FILE", triplet_file_path}, {"VCPKG_PLATFORM_TOOLSET", toolset.version.c_str()}, {"VCPKG_USE_HEAD_VERSION", Util::Enum::to_bool(config.build_package_options.use_head_version) ? "1" : "0"}, {"DOWNLOADS", paths.downloads}, @@ -890,7 +897,7 @@ namespace vcpkg::Build const fs::path& cmake_exe_path = paths.get_tool_exe(Tools::CMAKE); const fs::path ports_cmake_script_path = paths.scripts / "get_triplet_environment.cmake"; - const fs::path triplet_file_path = paths.triplets / (triplet.canonical_name() + ".cmake"); + const fs::path triplet_file_path = paths.get_triplet_file_path(triplet); const auto cmd_launch_cmake = System::make_cmake_cmd(cmake_exe_path, ports_cmake_script_path, diff --git a/toolsrc/src/vcpkg/help.cpp b/toolsrc/src/vcpkg/help.cpp index 6ee573dfccdf9a..896f62661fd1f0 100644 --- a/toolsrc/src/vcpkg/help.cpp +++ b/toolsrc/src/vcpkg/help.cpp @@ -117,6 +117,8 @@ namespace vcpkg::Help "\n" " --overlay-ports= Specify directories to be used when searching for ports\n" "\n" + " --overlay-triplets= Specify directories containing triplets files\n" + "\n" " --vcpkg-root Specify the vcpkg root " "directory\n" " (default: " ENVVAR(VCPKG_ROOT) // diff --git a/toolsrc/src/vcpkg/vcpkgcmdarguments.cpp b/toolsrc/src/vcpkg/vcpkgcmdarguments.cpp index 21bf4d02852117..3c1452d475a8e9 100644 --- a/toolsrc/src/vcpkg/vcpkgcmdarguments.cpp +++ b/toolsrc/src/vcpkg/vcpkgcmdarguments.cpp @@ -45,26 +45,6 @@ namespace vcpkg option_field = new_setting; } - static void parse_multivalue(const std::string* arg_begin, - const std::string* arg_end, - const std::string& option_name, - std::unique_ptr>& option_field) - { - if (arg_begin == arg_end) - { - System::print2(System::Color::error, "Error: expected value after ", option_name, '\n'); - Metrics::g_metrics.lock()->track_property("error", "error option name"); - Help::print_usage(); - Checks::exit_fail(VCPKG_LINE_INFO); - } - - if (!option_field) - { - option_field = std::make_unique>(); - } - option_field->emplace_back(*arg_begin); - } - static void parse_cojoined_multivalue(std::string new_value, const std::string& option_name, std::unique_ptr>& option_field) @@ -163,6 +143,13 @@ namespace vcpkg args.overlay_ports); continue; } + if (Strings::starts_with(arg, "--overlay-triplets=")) + { + parse_cojoined_multivalue(arg.substr(sizeof("--overlay-triplets=") - 1), + "--overlay-triplets", + args.overlay_triplets); + continue; + } if (arg == "--debug") { parse_switch(true, "debug", args.debug); @@ -418,6 +405,9 @@ namespace vcpkg System::printf(" %-40s %s\n", "--overlay-ports=", "Specify directories to be used when searching for ports"); + System::printf(" %-40s %s\n", + "--overlay-triplets=", + "Specify directories containing triplets files"); System::printf(" %-40s %s\n", "--vcpkg-root ", "Specify the vcpkg directory to use instead of current directory or tool directory"); diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index 562a18c9bada49..909fbeb4487b5f 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -13,7 +13,9 @@ namespace vcpkg { - Expected VcpkgPaths::create(const fs::path& vcpkg_root_dir, const std::string& default_vs_path) + Expected VcpkgPaths::create(const fs::path& vcpkg_root_dir, + const std::string& default_vs_path, + const std::vector* triplets_dirs) { std::error_code ec; const fs::path canonical_vcpkg_root_dir = fs::stdfs::canonical(vcpkg_root_dir, ec); @@ -76,6 +78,20 @@ namespace vcpkg paths.ports_cmake = paths.scripts / "ports.cmake"; + if (triplets_dirs) + { + for (auto&& triplets_dir : *triplets_dirs) + { + auto path = fs::u8path(triplets_dir); + Checks::check_exit(VCPKG_LINE_INFO, + paths.get_filesystem().exists(path), + "Error: Path does not exist '%s'", + triplets_dir); + paths.triplets_dirs.emplace_back(fs::stdfs::canonical(path)); + } + } + paths.triplets_dirs.emplace_back(fs::stdfs::canonical(paths.root / "triplets")); + return paths; } @@ -91,26 +107,47 @@ namespace vcpkg return this->vcpkg_dir_info / (pgh.fullstem() + ".list"); } + bool VcpkgPaths::is_valid_triplet(const Triplet& t) const + { + const auto it = Util::find_if(this->get_available_triplets(), [&](auto&& available_triplet) { + return t.canonical_name() == available_triplet; + }); + return it != this->get_available_triplets().cend(); + } + const std::vector& VcpkgPaths::get_available_triplets() const { return this->available_triplets.get_lazy([this]() -> std::vector { std::vector output; - for (auto&& path : this->get_filesystem().get_files_non_recursive(this->triplets)) + for (auto&& triplets_dir : triplets_dirs) { - output.push_back(path.stem().filename().string()); + for (auto&& path : this->get_filesystem().get_files_non_recursive(triplets_dir)) + { + output.push_back(path.stem().filename().string()); + } } - Util::sort(output); - + Util::sort_unique_erase(output); return output; - }); + }); } - bool VcpkgPaths::is_valid_triplet(const Triplet& t) const - { - const auto it = Util::find_if(this->get_available_triplets(), [&](auto&& available_triplet) { - return t.canonical_name() == available_triplet; - }); - return it != this->get_available_triplets().cend(); + const fs::path VcpkgPaths::get_triplet_file_path(const Triplet& triplet) const + { + return m_triplets_cache.get_lazy(triplet, [&]()-> auto { + for (auto&& triplet_dir : triplets_dirs) + { + auto&& path = triplet_dir / (triplet.canonical_name() + ".cmake"); + if (this->get_filesystem().exists(path)) + { + return path; + } + } + + Checks::exit_with_message(VCPKG_LINE_INFO, + "Error: Triplet file %s.cmake not found", + triplet.canonical_name()); + }); + } const fs::path& VcpkgPaths::get_tool_exe(const std::string& tool) const From 66f1d9a747ed5f048ed23248b9163d7490da02c2 Mon Sep 17 00:00:00 2001 From: Christophe Delacourt Date: Fri, 28 Jun 2019 00:38:53 +0200 Subject: [PATCH 117/123] [shaderc] update (#6689) * update shaderc * update shaderc * fix glslang cmake targets, re enable vcpkg_fixup_cmake_targets() * [spirv-tools] comment python distutils * remove comments, change path * glslang fix cmake targets * change version --- ports/glslang/CMakeLists-targets.patch | 241 ++++++++---------- ports/glslang/CMakeLists-windows.patch | 12 + ports/glslang/CONTROL | 4 +- ports/glslang/portfile.cmake | 7 +- .../0001-Add-a-virtual-destructor.patch | 23 -- ...01-Do-not-generate-build-version.inc.patch | 30 --- ports/shaderc/CONTROL | 4 +- ports/shaderc/build-version.inc | 8 +- ports/shaderc/disable-update-version.patch | 41 +++ ports/shaderc/fix-install.patch | 26 ++ ports/shaderc/portfile.cmake | 14 +- ports/spirv-headers/CONTROL | 2 +- ports/spirv-headers/portfile.cmake | 4 +- ports/spirv-tools/CMake-targets.patch | 119 --------- ports/spirv-tools/CONTROL | 4 +- ports/spirv-tools/comment-distutils.patch | 22 ++ ports/spirv-tools/portfile.cmake | 7 +- 17 files changed, 237 insertions(+), 331 deletions(-) create mode 100644 ports/glslang/CMakeLists-windows.patch delete mode 100644 ports/shaderc/0001-Add-a-virtual-destructor.patch delete mode 100644 ports/shaderc/0001-Do-not-generate-build-version.inc.patch create mode 100644 ports/shaderc/disable-update-version.patch create mode 100644 ports/shaderc/fix-install.patch delete mode 100644 ports/spirv-tools/CMake-targets.patch create mode 100644 ports/spirv-tools/comment-distutils.patch diff --git a/ports/glslang/CMakeLists-targets.patch b/ports/glslang/CMakeLists-targets.patch index 73661fa3514ca7..36e923d9262b1f 100644 --- a/ports/glslang/CMakeLists-targets.patch +++ b/ports/glslang/CMakeLists-targets.patch @@ -1,133 +1,108 @@ -diff --git a/ChooseMSVCCRT.cmake b/ChooseMSVCCRT.cmake -index 2097881..f0cddd7 100644 ---- a/ChooseMSVCCRT.cmake -+++ b/ChooseMSVCCRT.cmake -@@ -102,4 +102,4 @@ set(MSVC_CRT - MT - MTd) - --choose_msvc_crt(MSVC_CRT) -+# choose_msvc_crt(MSVC_CRT) -diff --git a/OGLCompilersDLL/CMakeLists.txt b/OGLCompilersDLL/CMakeLists.txt -index 5bb3f0e..e7be6e6 100644 ---- a/OGLCompilersDLL/CMakeLists.txt -+++ b/OGLCompilersDLL/CMakeLists.txt -@@ -9,6 +9,12 @@ if(WIN32) - endif(WIN32) - - if(ENABLE_GLSLANG_INSTALL) -- install(TARGETS OGLCompiler -- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ install(TARGETS OGLCompiler EXPORT glslangConfig -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ) -+ export(TARGETS OGLCompiler -+ NAMESPACE glslang:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/OGLCompiler-config.cmake" -+ ) - endif(ENABLE_GLSLANG_INSTALL) -diff --git a/SPIRV/CMakeLists.txt b/SPIRV/CMakeLists.txt -index b682419..3a10f1a 100755 ---- a/SPIRV/CMakeLists.txt -+++ b/SPIRV/CMakeLists.txt -@@ -64,8 +64,14 @@ if(WIN32) - endif(WIN32) - - if(ENABLE_GLSLANG_INSTALL) -- install(TARGETS SPIRV SPVRemapper -- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ install(TARGETS SPIRV EXPORT glslangConfig -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ) -+ export(TARGETS SPIRV -+ NAMESPACE glslang:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/glslang-config.cmake" -+ ) - - install(FILES ${HEADERS} ${SPVREMAP_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/SPIRV/) - endif(ENABLE_GLSLANG_INSTALL) -diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt -index 7a50ab6..b70345e 100644 ---- a/glslang/CMakeLists.txt -+++ b/glslang/CMakeLists.txt -@@ -97,8 +97,19 @@ if(WIN32) - endif(WIN32) - - if(ENABLE_GLSLANG_INSTALL) -- install(TARGETS glslang -- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ install(TARGETS glslang EXPORT glslangConfig -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ) -+ export(TARGETS glslang -+ NAMESPACE glslang:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/glslang-config.cmake" -+ ) -+ install( -+ EXPORT glslangConfig -+ DESTINATION "${CMAKE_INSTALL_PREFIX}/share/glslang" -+ NAMESPACE glslang:: -+ ) - endif(ENABLE_GLSLANG_INSTALL) - - if(ENABLE_GLSLANG_INSTALL) -diff --git a/glslang/OSDependent/Unix/CMakeLists.txt b/glslang/OSDependent/Unix/CMakeLists.txt -index 1bf49e1..edd733c 100644 ---- a/glslang/OSDependent/Unix/CMakeLists.txt -+++ b/glslang/OSDependent/Unix/CMakeLists.txt -@@ -3,6 +3,12 @@ set_property(TARGET OSDependent PROPERTY FOLDER glslang) - set_property(TARGET OSDependent PROPERTY POSITION_INDEPENDENT_CODE ON) - - if(ENABLE_GLSLANG_INSTALL) -- install(TARGETS OSDependent -- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ install(TARGETS OSDependent EXPORT glslangConfig -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ) -+ export(TARGETS OSDependent -+ NAMESPACE glslang:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/OSDependent-config.cmake" -+ ) - endif(ENABLE_GLSLANG_INSTALL) -diff --git a/glslang/OSDependent/Windows/CMakeLists.txt b/glslang/OSDependent/Windows/CMakeLists.txt -index f257418..cadd70d 100644 ---- a/glslang/OSDependent/Windows/CMakeLists.txt -+++ b/glslang/OSDependent/Windows/CMakeLists.txt -@@ -15,6 +15,12 @@ if(WIN32) - endif(WIN32) - - if(ENABLE_GLSLANG_INSTALL) -- install(TARGETS OSDependent -- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ install(TARGETS OSDependent EXPORT glslangConfig -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ) -+ export(TARGETS OSDependent -+ NAMESPACE glslang:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/OSDependent-config.cmake" -+ ) - endif(ENABLE_GLSLANG_INSTALL) -diff --git a/hlsl/CMakeLists.txt b/hlsl/CMakeLists.txt -index 98dfad7..94d96a0 100755 ---- a/hlsl/CMakeLists.txt -+++ b/hlsl/CMakeLists.txt -@@ -26,6 +26,12 @@ if(WIN32) - endif(WIN32) - - if(ENABLE_GLSLANG_INSTALL) -- install(TARGETS HLSL -- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ install(TARGETS HLSL EXPORT glslangConfig -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ) -+ export(TARGETS HLSL -+ NAMESPACE glslang:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/HLSL-config.cmake" -+ ) - endif(ENABLE_GLSLANG_INSTALL) +diff --git a/ChooseMSVCCRT.cmake b/ChooseMSVCCRT.cmake +index 2097881..f6320a9 100644 +--- a/ChooseMSVCCRT.cmake ++++ b/ChooseMSVCCRT.cmake +@@ -102,4 +102,3 @@ set(MSVC_CRT + MT + MTd) + +-choose_msvc_crt(MSVC_CRT) +diff --git a/OGLCompilersDLL/CMakeLists.txt b/OGLCompilersDLL/CMakeLists.txt +index 5bb3f0e..90ba3be 100644 +--- a/OGLCompilersDLL/CMakeLists.txt ++++ b/OGLCompilersDLL/CMakeLists.txt +@@ -9,6 +9,7 @@ if(WIN32) + endif(WIN32) + + if(ENABLE_GLSLANG_INSTALL) +- install(TARGETS OGLCompiler +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) ++ install(TARGETS OGLCompiler EXPORT glslangConfig ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif(ENABLE_GLSLANG_INSTALL) +diff --git a/SPIRV/CMakeLists.txt b/SPIRV/CMakeLists.txt +index 1997e74..e2a0229 100644 +--- a/SPIRV/CMakeLists.txt ++++ b/SPIRV/CMakeLists.txt +@@ -46,7 +46,6 @@ endif(ENABLE_NV_EXTENSIONS) + add_library(SPIRV ${LIB_TYPE} ${SOURCES} ${HEADERS}) + set_property(TARGET SPIRV PROPERTY FOLDER glslang) + set_property(TARGET SPIRV PROPERTY POSITION_INDEPENDENT_CODE ON) +-target_include_directories(SPIRV PUBLIC ..) + + if (ENABLE_SPVREMAPPER) + add_library(SPVRemapper ${LIB_TYPE} ${SPVREMAP_SOURCES} ${SPVREMAP_HEADERS}) +@@ -78,13 +77,13 @@ if(WIN32) + endif(WIN32) + + if(ENABLE_GLSLANG_INSTALL) +- if(BUILD_SHARED_LIBS) ++ if(BUILD_SHARED_LIBS OR TRUE) + if (ENABLE_SPVREMAPPER) + install(TARGETS SPVRemapper + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif() +- install(TARGETS SPIRV ++ install(TARGETS SPIRV EXPORT glslangConfig + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) + else() +diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt +index 5f51476..7f11498 100644 +--- a/glslang/CMakeLists.txt ++++ b/glslang/CMakeLists.txt +@@ -86,7 +86,6 @@ add_library(glslang ${LIB_TYPE} ${BISON_GLSLParser_OUTPUT_SOURCE} ${SOURCES} ${H + set_property(TARGET glslang PROPERTY FOLDER glslang) + set_property(TARGET glslang PROPERTY POSITION_INDEPENDENT_CODE ON) + target_link_libraries(glslang OGLCompiler OSDependent) +-target_include_directories(glslang PUBLIC ..) + + if(WIN32 AND BUILD_SHARED_LIBS) + set_target_properties(glslang PROPERTIES PREFIX "") +@@ -105,10 +104,15 @@ if(WIN32) + endif(WIN32) + + if(ENABLE_GLSLANG_INSTALL) +- if(BUILD_SHARED_LIBS) +- install(TARGETS glslang ++ if(BUILD_SHARED_LIBS OR TRUE) ++ install(TARGETS glslang EXPORT glslangConfig + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) ++ install( ++ EXPORT glslangConfig ++ DESTINATION "${CMAKE_INSTALL_PREFIX}/share/glslang" ++ NAMESPACE glslang:: ++ ) + else() + install(TARGETS glslang + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) +diff --git a/glslang/OSDependent/Unix/CMakeLists.txt b/glslang/OSDependent/Unix/CMakeLists.txt +index e652f45..a9673fe 100644 +--- a/glslang/OSDependent/Unix/CMakeLists.txt ++++ b/glslang/OSDependent/Unix/CMakeLists.txt +@@ -20,6 +20,6 @@ else() + endif() + + if(ENABLE_GLSLANG_INSTALL) +- install(TARGETS OSDependent ++ install(TARGETS OSDependent EXPORT glslangConfig + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif(ENABLE_GLSLANG_INSTALL) +diff --git a/hlsl/CMakeLists.txt b/hlsl/CMakeLists.txt +index f918d7a..329800f 100644 +--- a/hlsl/CMakeLists.txt ++++ b/hlsl/CMakeLists.txt +@@ -32,8 +32,8 @@ if(WIN32) + endif(WIN32) + + if(ENABLE_GLSLANG_INSTALL) +- if(BUILD_SHARED_LIBS) +- install(TARGETS HLSL ++ if(BUILD_SHARED_LIBS OR TRUE) ++ install(TARGETS HLSL EXPORT glslangConfig + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) + else() diff --git a/ports/glslang/CMakeLists-windows.patch b/ports/glslang/CMakeLists-windows.patch new file mode 100644 index 00000000000000..76ccf6077c75c2 --- /dev/null +++ b/ports/glslang/CMakeLists-windows.patch @@ -0,0 +1,12 @@ +diff --git a/glslang/OSDependent/Windows/CMakeLists.txt b/glslang/OSDependent/Windows/CMakeLists.txt +index f257418..82a3f3c 100644 +--- a/glslang/OSDependent/Windows/CMakeLists.txt ++++ b/glslang/OSDependent/Windows/CMakeLists.txt +@@ -15,6 +15,6 @@ if(WIN32) + endif(WIN32) + + if(ENABLE_GLSLANG_INSTALL) +- install(TARGETS OSDependent ++ install(TARGETS OSDependent EXPORT glslangConfig + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif(ENABLE_GLSLANG_INSTALL) diff --git a/ports/glslang/CONTROL b/ports/glslang/CONTROL index f3a25620c0d1c9..2d16ad41b7303e 100644 --- a/ports/glslang/CONTROL +++ b/ports/glslang/CONTROL @@ -1,4 +1,4 @@ Source: glslang -Version: 2018-03-02-2 +Version: 2019-03-05 Homepage: https://github.com/KhronosGroup/glslang -Description: Khronos reference front-end for GLSL and ESSL, and sample SPIR-V generator +Description: Khronos reference front-end for GLSL and ESSL, and sample SPIR-V generator \ No newline at end of file diff --git a/ports/glslang/portfile.cmake b/ports/glslang/portfile.cmake index 77e15052d1ff07..003aa26aac2592 100644 --- a/ports/glslang/portfile.cmake +++ b/ports/glslang/portfile.cmake @@ -5,11 +5,12 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO KhronosGroup/glslang - REF b5b5f918c6b72d7cf2ee73641cc6c6ddb211ca70 - SHA512 ec0f7a23fa60457a481c7b3acf4c127c3bf898d23655d346aeafb304f74e798d632c83d676873f2c764d241de6dc4392cff8d6ce0ee509a4b74ee2233b01c008 + REF f88e5824d2cfca5edc58c7c2101ec9a4ec36afac + SHA512 92dc287e8930db6e00bde23b770f763dc3cf8a405a37b682bbd65e1dbde1f1f5161543fcc70b09eef07a5ce8bbe8f368ef84ac75003c122f42d1f6b9eaa8bd50 HEAD_REF master PATCHES CMakeLists-targets.patch + CMakeLists-windows.patch ) vcpkg_configure_cmake( @@ -20,8 +21,6 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets() - file(RENAME "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/tools") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin") diff --git a/ports/shaderc/0001-Add-a-virtual-destructor.patch b/ports/shaderc/0001-Add-a-virtual-destructor.patch deleted file mode 100644 index 0fa6950368cccf..00000000000000 --- a/ports/shaderc/0001-Add-a-virtual-destructor.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 563bc6e87a43c38b5495469307922c768edbd191 Mon Sep 17 00:00:00 2001 -From: neil -Date: Thu, 1 Feb 2018 06:49:44 +0000 -Subject: [PATCH] Add a virtual destructor, otherwise Clang 6.0complains about - delete being called on an abstract class. - ---- - libshaderc/include/shaderc/shaderc.hpp | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/libshaderc/include/shaderc/shaderc.hpp b/libshaderc/include/shaderc/shaderc.hpp -index 1c557431..335f0df9 100644 ---- a/libshaderc/include/shaderc/shaderc.hpp -+++ b/libshaderc/include/shaderc/shaderc.hpp -@@ -180,6 +180,8 @@ class CompileOptions { - - // Handles shaderc_include_result_release_fn callbacks. - virtual void ReleaseInclude(shaderc_include_result* data) = 0; -+ -+ virtual ~IncluderInterface() = default; - }; - - // Sets the includer instance for libshaderc to call during compilation, as diff --git a/ports/shaderc/0001-Do-not-generate-build-version.inc.patch b/ports/shaderc/0001-Do-not-generate-build-version.inc.patch deleted file mode 100644 index 41cc81220160ab..00000000000000 --- a/ports/shaderc/0001-Do-not-generate-build-version.inc.patch +++ /dev/null @@ -1,30 +0,0 @@ -From e8e12e856cbc41f9bdcc83bc87eb5013df199ee1 Mon Sep 17 00:00:00 2001 -From: vlj -Date: Fri, 2 Dec 2016 16:36:25 +0100 -Subject: [PATCH] Do not generate build-version.inc - ---- - CMakeLists.txt | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index a4c2fac..5544a2d 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -53,8 +53,8 @@ add_subdirectory(libshaderc) - add_subdirectory(glslc) - add_subdirectory(examples) - --add_custom_target(build-version -- ${PYTHON_EXE} -- ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py -- ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR} -- COMMENT "Update build-version.inc in the Shaderc build directory (if necessary).") -+#add_custom_target(build-version -+# ${PYTHON_EXE} -+# ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py -+# ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR} -+# COMMENT "Update build-version.inc in the Shaderc build directory (if necessary).") --- -2.10.2.windows.1 - diff --git a/ports/shaderc/CONTROL b/ports/shaderc/CONTROL index 36f82852a168e4..044fdd4105d77b 100644 --- a/ports/shaderc/CONTROL +++ b/ports/shaderc/CONTROL @@ -1,5 +1,5 @@ Source: shaderc -Version: 12fb656ab20ea9aa06e7084a74e5ff832b7ce2da-2 +Version: 2019-06-26 Homepage: https://github.com/google/shaderc Description: A collection of tools, libraries and tests for shader compilation. -Build-Depends: glslang, spirv-tools +Build-Depends: glslang, spirv-tools \ No newline at end of file diff --git a/ports/shaderc/build-version.inc b/ports/shaderc/build-version.inc index 853e89916ee0e8..00c140577a64f2 100644 --- a/ports/shaderc/build-version.inc +++ b/ports/shaderc/build-version.inc @@ -1,3 +1,5 @@ -"shaderc v2016.2-dev unknown hash, 2016-12-02\n" -"spirv-tools v2016.6-dev unknown hash, 2016-12-02\n" -"glslang unknown hash, 2016-12-02\n" +"shaderc v2019.0-dev unknown hash, 2019-05-08\n" +"spirv-tools v2019.3-dev unknown hash, 2019-04-03\n" +"glslang unknown hash, 2019-03-05\n" + + diff --git a/ports/shaderc/disable-update-version.patch b/ports/shaderc/disable-update-version.patch new file mode 100644 index 00000000000000..5ee016bcb13c34 --- /dev/null +++ b/ports/shaderc/disable-update-version.patch @@ -0,0 +1,41 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index a4e779b..dc5f1a9 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -81,12 +81,6 @@ add_subdirectory(libshaderc) + add_subdirectory(glslc) + add_subdirectory(examples) + +-add_custom_target(build-version +- ${PYTHON_EXECUTABLE} +- ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py +- ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR} +- COMMENT "Update build-version.inc in the Shaderc build directory (if necessary).") +- + function(define_pkg_config_file NAME LIBS) + add_custom_target(${NAME}-pkg-config ALL + COMMAND ${CMAKE_COMMAND} +diff --git a/glslc/CMakeLists.txt b/glslc/CMakeLists.txt +index acf6fb0..d0df7db 100644 +--- a/glslc/CMakeLists.txt ++++ b/glslc/CMakeLists.txt +@@ -26,7 +26,6 @@ shaderc_default_compile_options(glslc_exe) + target_include_directories(glslc_exe PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/.. ${spirv-tools_SOURCE_DIR}/include) + set_target_properties(glslc_exe PROPERTIES OUTPUT_NAME glslc) + target_link_libraries(glslc_exe PRIVATE glslc shaderc_util shaderc) +-add_dependencies(glslc_exe build-version) + + shaderc_add_tests( + TEST_PREFIX glslc +diff --git a/spvc/CMakeLists.txt b/spvc/CMakeLists.txt +index f465972..76f8c2e 100644 +--- a/spvc/CMakeLists.txt ++++ b/spvc/CMakeLists.txt +@@ -3,7 +3,6 @@ shaderc_default_compile_options(spvc_exe) + target_include_directories(spvc_exe PRIVATE ${shaderc_SOURCE_DIR}/libshaderc/include ${spirv-tools_SOURCE_DIR}/include) + set_target_properties(spvc_exe PROPERTIES OUTPUT_NAME spvc) + target_link_libraries(spvc_exe PRIVATE shaderc_spvc shaderc_util) +-add_dependencies(spvc_exe build-version) + + shaderc_add_asciidoc(spvc_doc_README README) + diff --git a/ports/shaderc/fix-install.patch b/ports/shaderc/fix-install.patch new file mode 100644 index 00000000000000..1857ed8fed5d70 --- /dev/null +++ b/ports/shaderc/fix-install.patch @@ -0,0 +1,26 @@ +diff --git a/libshaderc/CMakeLists.txt b/libshaderc/CMakeLists.txt +index 9d07136..0ffa06f 100644 +--- a/libshaderc/CMakeLists.txt ++++ b/libshaderc/CMakeLists.txt +@@ -84,7 +84,7 @@ if(SHADERC_ENABLE_INSTALL) + # around this problem by manually substitution. + string(REPLACE "$(Configuration)" "\${CMAKE_INSTALL_CONFIG_NAME}" + install_location "${generated_location}") +- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${install_location} DESTINATION ${CMAKE_INSTALL_LIBDIR}) ++ install(FILES ${install_location} DESTINATION ${CMAKE_INSTALL_LIBDIR}) + else() + install(FILES ${generated_location} DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif() +diff --git a/libshaderc_spvc/CMakeLists.txt b/libshaderc_spvc/CMakeLists.txt +index fae235e..b503e70 100644 +--- a/libshaderc_spvc/CMakeLists.txt ++++ b/libshaderc_spvc/CMakeLists.txt +@@ -84,7 +84,7 @@ if(SHADERC_ENABLE_INSTALL) + # around this problem by manually substitution. + string(REPLACE "$(Configuration)" "\${CMAKE_INSTALL_CONFIG_NAME}" + install_location "${generated_location}") +- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${install_location} DESTINATION ${CMAKE_INSTALL_LIBDIR}) ++ install(FILES ${install_location} DESTINATION ${CMAKE_INSTALL_LIBDIR}) + else() + install(FILES ${generated_location} DESTINATION ${CMAKE_INSTALL_LIBDIR}) + endif() diff --git a/ports/shaderc/portfile.cmake b/ports/shaderc/portfile.cmake index 5f1f705722c0bd..fbdc1e4dd1670a 100644 --- a/ports/shaderc/portfile.cmake +++ b/ports/shaderc/portfile.cmake @@ -3,17 +3,19 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/shaderc - REF 12fb656ab20ea9aa06e7084a74e5ff832b7ce2da - SHA512 6fb45a0b01e6709c44a11658648b9271fe06bd94023dcc5042c47b5f2a04889c2efb0ab4c166f18728594ac9b9aa9f8b354af46d88eb7f7c39c7246f52f5a933 + REF 05c766a1f4615ee37d37d09271aaabca30ffd293 + SHA512 329697e8e23d619313440d57ef740a94c49d13533e1b8734fc8ff72fd5092c2addabb306f64cb69160fa5fee373a05ba39a5ee6d92d95e5e2e9c7ec96a51aadc HEAD_REF master - PATCHES - 0001-Do-not-generate-build-version.inc.patch - 0001-Add-a-virtual-destructor.patch + PATCHES + "disable-update-version.patch" + "fix-install.patch" ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}/third_party/glslang) + file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists_spirv.txt DESTINATION ${SOURCE_PATH}/third_party/spirv-tools) file(RENAME ${SOURCE_PATH}/third_party/spirv-tools/CMakeLists_spirv.txt ${SOURCE_PATH}/third_party/spirv-tools/CMakeLists.txt) + file(COPY ${CMAKE_CURRENT_LIST_DIR}/build-version.inc DESTINATION ${SOURCE_PATH}/glslc/src) #Note: glslang and spir tools doesn't export symbol and need to be build as static lib for cmake to work @@ -30,7 +32,7 @@ vcpkg_add_to_path(PREPEND "${PYTHON3_EXE_PATH}") vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS -DSHADERC_SKIP_TESTS=true ${OPTIONS} -Dglslang_SOURCE_DIR=${CURRENT_INSTALLED_DIR}/include + OPTIONS -DSHADERC_SKIP_TESTS=true ${OPTIONS} -Dglslang_SOURCE_DIR=${CURRENT_INSTALLED_DIR}/include -Dspirv-tools_SOURCE_DIR=${CURRENT_INSTALLED_DIR}/include OPTIONS_DEBUG -DSUFFIX_D=true OPTIONS_RELEASE -DSUFFIX_D=false ) diff --git a/ports/spirv-headers/CONTROL b/ports/spirv-headers/CONTROL index f1b0f7908aca8d..be9ef43928a30e 100644 --- a/ports/spirv-headers/CONTROL +++ b/ports/spirv-headers/CONTROL @@ -1,3 +1,3 @@ Source: spirv-headers -Version: 2019-03-05 +Version: 2019-05-05 Description: Machine-readable files for the SPIR-V Registry diff --git a/ports/spirv-headers/portfile.cmake b/ports/spirv-headers/portfile.cmake index f2c55280d0e093..e5191639dec72a 100644 --- a/ports/spirv-headers/portfile.cmake +++ b/ports/spirv-headers/portfile.cmake @@ -4,8 +4,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO KhronosGroup/SPIRV-Headers - REF 03a081524afabdde274d885880c2fef213e46a59 - SHA512 27f0a4b5efbe2931c0ff5d50e5fb5bd78fe0a735ad48a08db72c8914f2de05f5d5c507134e0a090bb5a7d88e2f8c1a0bdbf51a0bc4b9fe3bf372da7000ca0b98 + REF c4f8f65792d4bf2657ca751904c511bbcf2ac77b + SHA512 750af53a70f6f890657735ab0e2db5ae3dd8d612480efc2247753993752f687e22a0bdd65296c5751daf284604fe3dc9ee0a94feae88761a0e64adc64e6d17a4 HEAD_REF master ) diff --git a/ports/spirv-tools/CMake-targets.patch b/ports/spirv-tools/CMake-targets.patch deleted file mode 100644 index 6b754e16b6c576..00000000000000 --- a/ports/spirv-tools/CMake-targets.patch +++ /dev/null @@ -1,119 +0,0 @@ -diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt -index 2d7d7ca..bf77be7 100644 ---- a/source/CMakeLists.txt -+++ b/source/CMakeLists.txt -@@ -327,31 +327,41 @@ set_source_files_properties( - add_library(${SPIRV_TOOLS} ${SPIRV_SOURCES}) - spvtools_default_compile_options(${SPIRV_TOOLS}) - target_include_directories(${SPIRV_TOOLS} -- PUBLIC ${spirv-tools_SOURCE_DIR}/include -+ PUBLIC "$" - PRIVATE ${spirv-tools_BINARY_DIR} - PRIVATE ${SPIRV_HEADER_INCLUDE_DIR} - ) - set_property(TARGET ${SPIRV_TOOLS} PROPERTY FOLDER "SPIRV-Tools libraries") - spvtools_check_symbol_exports(${SPIRV_TOOLS}) - --add_library(${SPIRV_TOOLS}-shared SHARED ${SPIRV_SOURCES}) --spvtools_default_compile_options(${SPIRV_TOOLS}-shared) --target_include_directories(${SPIRV_TOOLS}-shared -- PUBLIC ${spirv-tools_SOURCE_DIR}/include -- PRIVATE ${spirv-tools_BINARY_DIR} -- PRIVATE ${SPIRV_HEADER_INCLUDE_DIR} -- ) --set_target_properties(${SPIRV_TOOLS}-shared PROPERTIES CXX_VISIBILITY_PRESET hidden) --set_property(TARGET ${SPIRV_TOOLS}-shared PROPERTY FOLDER "SPIRV-Tools libraries") --spvtools_check_symbol_exports(${SPIRV_TOOLS}-shared) --target_compile_definitions(${SPIRV_TOOLS}-shared -- PRIVATE SPIRV_TOOLS_IMPLEMENTATION -- PUBLIC SPIRV_TOOLS_SHAREDLIB --) -+# add_library(${SPIRV_TOOLS}-shared SHARED ${SPIRV_SOURCES}) -+# spvtools_default_compile_options(${SPIRV_TOOLS}-shared) -+# target_include_directories(${SPIRV_TOOLS}-shared -+# PUBLIC ${spirv-tools_SOURCE_DIR}/include -+# PRIVATE ${spirv-tools_BINARY_DIR} -+# PRIVATE ${SPIRV_HEADER_INCLUDE_DIR} -+# ) -+# set_target_properties(${SPIRV_TOOLS}-shared PROPERTIES CXX_VISIBILITY_PRESET hidden) -+# set_property(TARGET ${SPIRV_TOOLS}-shared PROPERTY FOLDER "SPIRV-Tools libraries") -+# spvtools_check_symbol_exports(${SPIRV_TOOLS}-shared) -+# target_compile_definitions(${SPIRV_TOOLS}-shared -+# PRIVATE SPIRV_TOOLS_IMPLEMENTATION -+# PUBLIC SPIRV_TOOLS_SHAREDLIB -+# ) - - if(ENABLE_SPIRV_TOOLS_INSTALL) -- install(TARGETS ${SPIRV_TOOLS} ${SPIRV_TOOLS}-shared -+ install(TARGETS ${SPIRV_TOOLS} EXPORT spirv-tools-config - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ export( -+ TARGETS ${SPIRV_TOOLS} -+ NAMESPACE spirv-tools:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/spirv-tools-config.cmake" -+ ) -+ install( -+ EXPORT spirv-tools-config -+ DESTINATION "${CMAKE_INSTALL_PREFIX}/share/spirv-tools" -+ NAMESPACE spirv-tools:: -+ ) - endif(ENABLE_SPIRV_TOOLS_INSTALL) -diff --git a/source/link/CMakeLists.txt b/source/link/CMakeLists.txt -index 8ca4df3..ac0aa62 100644 ---- a/source/link/CMakeLists.txt -+++ b/source/link/CMakeLists.txt -@@ -17,7 +17,7 @@ add_library(SPIRV-Tools-link - - spvtools_default_compile_options(SPIRV-Tools-link) - target_include_directories(SPIRV-Tools-link -- PUBLIC ${spirv-tools_SOURCE_DIR}/include -+ PUBLIC "$" - PUBLIC ${SPIRV_HEADER_INCLUDE_DIR} - PRIVATE ${spirv-tools_BINARY_DIR} - ) -@@ -29,8 +29,13 @@ set_property(TARGET SPIRV-Tools-link PROPERTY FOLDER "SPIRV-Tools libraries") - spvtools_check_symbol_exports(SPIRV-Tools-link) - - if(ENABLE_SPIRV_TOOLS_INSTALL) -- install(TARGETS SPIRV-Tools-link -+ install(TARGETS SPIRV-Tools-link EXPORT spirv-tools-config - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ export( -+ TARGETS ${SPIRV_TOOLS}-link -+ NAMESPACE spirv-tools:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/spirv-tools-link-config.cmake" -+ ) - endif(ENABLE_SPIRV_TOOLS_INSTALL) -diff --git a/source/opt/CMakeLists.txt b/source/opt/CMakeLists.txt -index 854c950..fc91539 100644 ---- a/source/opt/CMakeLists.txt -+++ b/source/opt/CMakeLists.txt -@@ -159,7 +159,7 @@ add_library(SPIRV-Tools-opt - - spvtools_default_compile_options(SPIRV-Tools-opt) - target_include_directories(SPIRV-Tools-opt -- PUBLIC ${spirv-tools_SOURCE_DIR}/include -+ PUBLIC "$" - PUBLIC ${SPIRV_HEADER_INCLUDE_DIR} - PRIVATE ${spirv-tools_BINARY_DIR} - ) -@@ -171,9 +171,14 @@ set_property(TARGET SPIRV-Tools-opt PROPERTY FOLDER "SPIRV-Tools libraries") - spvtools_check_symbol_exports(SPIRV-Tools-opt) - - if(ENABLE_SPIRV_TOOLS_INSTALL) -- install(TARGETS SPIRV-Tools-opt -+ install(TARGETS SPIRV-Tools-opt EXPORT spirv-tools-config - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ export( -+ TARGETS ${SPIRV_TOOLS}-opt -+ NAMESPACE spirv-tools:: -+ FILE "${CMAKE_CURRENT_BINARY_DIR}/spirv-tools-opt-config.cmake" -+ ) - endif(ENABLE_SPIRV_TOOLS_INSTALL) - diff --git a/ports/spirv-tools/CONTROL b/ports/spirv-tools/CONTROL index b5f0c536a3e846..b873c54934b3af 100644 --- a/ports/spirv-tools/CONTROL +++ b/ports/spirv-tools/CONTROL @@ -1,5 +1,5 @@ Source: spirv-tools -Version: 2018.1-2 +Version: 2019.3-dev Homepage: https://github.com/KhronosGroup/SPIRV-Tools Description: API and commands for processing SPIR-V modules -Build-Depends: spirv-headers +Build-Depends: spirv-headers \ No newline at end of file diff --git a/ports/spirv-tools/comment-distutils.patch b/ports/spirv-tools/comment-distutils.patch new file mode 100644 index 00000000000000..2426f82bae841b --- /dev/null +++ b/ports/spirv-tools/comment-distutils.patch @@ -0,0 +1,22 @@ +diff --git a/utils/generate_registry_tables.py b/utils/generate_registry_tables.py +index 8b1c3572..6ab28fe6 100644 +--- a/utils/generate_registry_tables.py ++++ b/utils/generate_registry_tables.py +@@ -16,7 +16,7 @@ + + from __future__ import print_function + +-import distutils.dir_util ++#import distutils.dir_util + import os.path + import xml.etree.ElementTree + +@@ -64,7 +64,7 @@ def main(): + with open(args.xml) as xml_in: + registry = xml.etree.ElementTree.fromstring(xml_in.read()) + +- distutils.dir_util.mkpath(os.path.dirname(args.generator_output)) ++ #distutils.dir_util.mkpath(os.path.dirname(args.generator_output)) + print(generate_vendor_table(registry), file=open(args.generator_output, 'w')) + + diff --git a/ports/spirv-tools/portfile.cmake b/ports/spirv-tools/portfile.cmake index 3011aa39602cb3..0cc6f79ddd84e4 100644 --- a/ports/spirv-tools/portfile.cmake +++ b/ports/spirv-tools/portfile.cmake @@ -5,11 +5,10 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO KhronosGroup/SPIRV-Tools - REF v2018.1 - SHA512 0637c413dafd931e8222f9bf70a024f8b64116f0300c7732b86bcaff321188a0e746f79c1385ae23a7692e83194586b57692960d5be607fb2d7960731b6cd63f - HEAD_REF master + REF d0a1f5a05a2b0f8315e5b3f17b8e34c730861b31 + SHA512 7179751b0216368b4a4bf8c9b0c1c1e3b17d6aa4788b4aeaa7fbb2b6d9d50b34cf209082f3531a2e0994b5fc02416373666d4d12cee282cec2c3d02c13a640a8 PATCHES - CMake-targets.patch + comment-distutils.patch ) vcpkg_find_acquire_program(PYTHON3) From 4bb67553f00315a58b99e85f1550c2be34d2ca07 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Thu, 27 Jun 2019 15:55:07 -0700 Subject: [PATCH 118/123] [flann] fix flaky config (#7073) --- ports/flann/CONTROL | 2 +- ports/flann/portfile.cmake | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/flann/CONTROL b/ports/flann/CONTROL index c2aba2e18a3d4f..fdcbb8eccf3ff3 100644 --- a/ports/flann/CONTROL +++ b/ports/flann/CONTROL @@ -1,5 +1,5 @@ Source: flann -Version: 1.9.1 +Version: 1.9.1-1 Homepage: https://github.com/mariusmuja/flann Build-Depends: lz4 Description: Fast Library for Approximate Nearest Neighbors diff --git a/ports/flann/portfile.cmake b/ports/flann/portfile.cmake index baf79035a324ea..ec9637212fdcd4 100644 --- a/ports/flann/portfile.cmake +++ b/ports/flann/portfile.cmake @@ -16,6 +16,7 @@ vcpkg_from_github( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + DISABLE_PARALLEL_CONFIGURE OPTIONS -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF From 53a02456a0f457e78d4b2d98a6b43cdd090b9c69 Mon Sep 17 00:00:00 2001 From: Victor Romero Date: Thu, 27 Jun 2019 16:32:38 -0700 Subject: [PATCH 119/123] Update ports-overlay.md --- docs/specifications/ports-overlay.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/specifications/ports-overlay.md b/docs/specifications/ports-overlay.md index e877f50109b022..d486cfe193bff1 100644 --- a/docs/specifications/ports-overlay.md +++ b/docs/specifications/ports-overlay.md @@ -45,6 +45,8 @@ From a user experience perspective, a user expresses interest in adding addition * `vcpkg install sqlite3 --overlay-ports=\\share\org\custom-ports` * a file listing paths to the former two. + > NOTE: Reading paths from a text file is not available in the current implementation, some revisions to this part of the specification are being made and will be implemented in a future date. + * `vcpkg install sqlite3 --overlay-ports=..\port-repos.txt` _port-repos.txt_ @@ -129,6 +131,8 @@ Given the following directory structure: * #### Example #3: + > NOTE: Reading paths from a text file is not available in the current implementation, some revisions to this part of the specification are being made and will be implemented in a future date. + Given the content of `preferred-ports.txt` as: ``` From 5b6b66512b84267c1b93ef577dea3a811a255c82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6nke=20Schau?= Date: Fri, 28 Jun 2019 01:41:01 +0200 Subject: [PATCH 120/123] [libu2f-server] New Port (#6781) * update to 2.8.84 * [libu2f-server] Initial Port of Version 1.1.0 * Missing exported functions * Add support for static linkage * Added missing 'arm64' Target, and corrected case for 'arm' for vcpkg_install_msbuild * Add support for arm64 * Support for arm target * [libu2f-server] add cmakelists and patch * string copy fix * revert msbuild changes * add compile definitions * add patch file * remove line * change version --- ports/libu2f-server/CMakeLists.txt | 30 ++++++++ ports/libu2f-server/CONTROL | 4 + ports/libu2f-server/portfile.cmake | 31 ++++++++ ports/libu2f-server/strndup-fix.patch | 31 ++++++++ ports/libu2f-server/u2f-server-version.h | 94 ++++++++++++++++++++++++ ports/libu2f-server/windows.patch | 41 +++++++++++ 6 files changed, 231 insertions(+) create mode 100644 ports/libu2f-server/CMakeLists.txt create mode 100644 ports/libu2f-server/CONTROL create mode 100644 ports/libu2f-server/portfile.cmake create mode 100644 ports/libu2f-server/strndup-fix.patch create mode 100644 ports/libu2f-server/u2f-server-version.h create mode 100644 ports/libu2f-server/windows.patch diff --git a/ports/libu2f-server/CMakeLists.txt b/ports/libu2f-server/CMakeLists.txt new file mode 100644 index 00000000000000..5e1f50e521ee46 --- /dev/null +++ b/ports/libu2f-server/CMakeLists.txt @@ -0,0 +1,30 @@ +cmake_minimum_required(VERSION 3.5) + +project(libu2f-server C) + +file(GLOB_RECURSE LIBU2F_SERVER_HEADERS u2f-server/*.h) +file(GLOB_RECURSE LIBU2F_SERVER_SOURCE u2f-server/*.c) + +add_library(libu2f-server ${LIBU2F_SERVER_SOURCE}) + +target_include_directories(libu2f-server PUBLIC $ $) +target_compile_definitions(libu2f-server PRIVATE _CRT_SECURE_NO_WARNINGS _CRT_NONSTDC_NO_DEPRECATE) + +find_package(json-c CONFIG REQUIRED) +find_package(OpenSSL REQUIRED) +target_link_libraries(libu2f-server PRIVATE OpenSSL::SSL OpenSSL::Crypto json-c::json-c) + +install(TARGETS libu2f-server + EXPORT libu2f-serverConfig + RUNTIME DESTINATION "bin" + ARCHIVE DESTINATION "lib" + LIBRARY DESTINATION "lib" +) + +INSTALL(FILES ${LIBU2F_SERVER_HEADERS} DESTINATION "include/libu2f-server") + +install(EXPORT libu2f-serverConfig + FILE libu2f-serverConfig.cmake + NAMESPACE libu2f-server:: + DESTINATION "share/libu2f-server" +) \ No newline at end of file diff --git a/ports/libu2f-server/CONTROL b/ports/libu2f-server/CONTROL new file mode 100644 index 00000000000000..26803fbb7ecd09 --- /dev/null +++ b/ports/libu2f-server/CONTROL @@ -0,0 +1,4 @@ +Source: libu2f-server +Version: 1.1.0 +Build-Depends: openssl, json-c +Description: Yubico Universal 2nd Factor (U2F) Server C Library diff --git a/ports/libu2f-server/portfile.cmake b/ports/libu2f-server/portfile.cmake new file mode 100644 index 00000000000000..86e5d9bbebf2b8 --- /dev/null +++ b/ports/libu2f-server/portfile.cmake @@ -0,0 +1,31 @@ +include(vcpkg_common_functions) + +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Yubico/libu2f-server + REF libu2f-server-1.1.0 + SHA512 085f8e7d74c1efb347747b8930386f18ba870f668f82e9bd479c9f8431585c5dc7f95b2f6b82bdd3a6de0c06f8cb2fbf51c363ced54255a936ab96536158ee59 + HEAD_REF master + PATCHES + windows.patch + strndup-fix.patch +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/u2f-server-version.h DESTINATION ${SOURCE_PATH}/u2f-server) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + ) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +vcpkg_copy_pdbs() + +# Handle copyright +configure_file(${SOURCE_PATH}/COPYING ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) diff --git a/ports/libu2f-server/strndup-fix.patch b/ports/libu2f-server/strndup-fix.patch new file mode 100644 index 00000000000000..f5b7ffd8a7e510 --- /dev/null +++ b/ports/libu2f-server/strndup-fix.patch @@ -0,0 +1,31 @@ +diff --git a/u2f-server/core.c b/u2f-server/core.c +index 294c94b..746932b 100644 +--- a/u2f-server/core.c ++++ b/u2f-server/core.c +@@ -211,7 +211,7 @@ u2fs_rc u2fs_set_keyHandle(u2fs_ctx_t * ctx, const char *keyHandle) + ctx->keyHandle = NULL; + } + +- ctx->keyHandle = strndup(keyHandle, strlen(keyHandle)); ++ ctx->keyHandle = strdup(keyHandle); + + if (ctx->keyHandle == NULL) + return U2FS_MEMORY_ERROR; +@@ -726,7 +726,7 @@ static u2fs_rc decode_clientData(const char *clientData, char **output) + fprintf(stderr, "clientData: %s\n", data); + } + +- *output = strndup(data, strlen(data)); ++ *output = strdup(data); + + free(data); + data = NULL; +@@ -870,7 +870,7 @@ u2fs_rc u2fs_registration_verify(u2fs_ctx_t * ctx, const char *response, + goto failure; + + u2fs_EC_KEY_t *key_ptr; +- (*output)->keyHandle = strndup(buf, strlen(buf)); ++ (*output)->keyHandle = strdup(buf); + + rc = decode_user_key(user_public_key, &key_ptr); + if (rc != U2FS_OK) diff --git a/ports/libu2f-server/u2f-server-version.h b/ports/libu2f-server/u2f-server-version.h new file mode 100644 index 00000000000000..b38ccac814a0ea --- /dev/null +++ b/ports/libu2f-server/u2f-server-version.h @@ -0,0 +1,94 @@ +/* +* Copyright (c) 2014 Yubico AB +* All rights reserved. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are +* met: +* +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* +* * Redistributions in binary form must reproduce the above +* copyright notice, this list of conditions and the following +* disclaimer in the documentation and/or other materials provided +* with the distribution. +* +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef U2F_SERVER_VERSION_H +#define U2F_SERVER_VERSION_H + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * U2FS_VERSION_STRING + * + * Pre-processor symbol with a string that describe the header file + * version number. Used together with u2fs_check_version() to verify + * header file and run-time library consistency. + */ +#define U2FS_VERSION_STRING "1.1.0" + +/** + * U2FS_VERSION_NUMBER + * + * Pre-processor symbol with a hexadecimal value describing the header + * file version number. For example, when the header version is 1.2.3 + * this symbol will have the value 0x01020300. The last two digits + * are only used between public releases, and will otherwise be 00. + */ +#define U2FS_VERSION_NUMBER 0x01010000 + +/** + * U2FS_VERSION_MAJOR + * + * Pre-processor symbol with a decimal value that describe the major + * level of the header file version number. For example, when the + * header version is 1.2.3 this symbol will be 1. + */ +#define U2FS_VERSION_MAJOR 1 + +/** + * U2FS_VERSION_MINOR + * + * Pre-processor symbol with a decimal value that describe the minor + * level of the header file version number. For example, when the + * header version is 1.2.3 this symbol will be 2. + */ +#define U2FS_VERSION_MINOR 1 + +/** + * U2FS_VERSION_PATCH + * + * Pre-processor symbol with a decimal value that describe the patch + * level of the header file version number. For example, when the + * header version is 1.2.3 this symbol will be 3. + */ +#define U2FS_VERSION_PATCH 0 + +#ifndef TRUE +#define TRUE 1 +#endif + +#ifndef FALSE +#define FALSE 0 +#endif + +#ifdef __cplusplus +} +#endif +#endif diff --git a/ports/libu2f-server/windows.patch b/ports/libu2f-server/windows.patch new file mode 100644 index 00000000000000..2cc68ec9bf5de6 --- /dev/null +++ b/ports/libu2f-server/windows.patch @@ -0,0 +1,41 @@ +diff --git a/u2f-server/cdecode.c b/u2f-server/cdecode.c +index 6fff114..dc05ca5 100644 +--- a/u2f-server/cdecode.c ++++ b/u2f-server/cdecode.c +@@ -5,7 +5,7 @@ This is part of the libb64 project, and has been placed in the public domain. + For details, see http://sourceforge.net/projects/libb64 + */ + +-#include ++#include "b64/cdecode.h" + + int base64_decode_value(char value_in) + { +diff --git a/u2f-server/cencode.c b/u2f-server/cencode.c +index eebb24a..f3b7fa4 100644 +--- a/u2f-server/cencode.c ++++ b/u2f-server/cencode.c +@@ -5,7 +5,7 @@ This is part of the libb64 project, and has been placed in the public domain. + For details, see http://sourceforge.net/projects/libb64 + */ + +-#include ++#include "b64/cencode.h" + + const int CHARS_PER_LINE = 72; + +diff --git a/u2f-server/core.c b/u2f-server/core.c +index da440ec..294c94b 100644 +--- a/u2f-server/core.c ++++ b/u2f-server/core.c +@@ -30,8 +30,7 @@ + #include "internal.h" + + #include +-#include +-#include ++#include + #include "crypto.h" + #include "b64/cencode.h" + #include "b64/cdecode.h" + \ No newline at end of file From b4675fd65a5baebe93d0e60e082ae43013ed246f Mon Sep 17 00:00:00 2001 From: myd7349 Date: Sat, 29 Jun 2019 01:17:39 +0800 Subject: [PATCH 121/123] [vcpkg] Add vcpkg_check_features (#6958) * [vcpkg] Add vcpkg_check_feature, vcpkg_check_features * [vcpkg] Remove vcpkg_check_feature * [oniguruma,xtensor] Use vcpkg_check_features --- docs/maintainers/portfile-functions.md | 1 + docs/maintainers/vcpkg_check_features.md | 41 +++++++++++ ports/oniguruma/CONTROL | 3 +- ports/oniguruma/portfile.cmake | 6 +- ports/xtensor/CONTROL | 3 +- ports/xtensor/portfile.cmake | 20 ++---- scripts/cmake/vcpkg_check_features.cmake | 82 ++++++++++++++++++++++ scripts/cmake/vcpkg_common_functions.cmake | 1 + 8 files changed, 136 insertions(+), 21 deletions(-) create mode 100644 docs/maintainers/vcpkg_check_features.md create mode 100644 scripts/cmake/vcpkg_check_features.cmake diff --git a/docs/maintainers/portfile-functions.md b/docs/maintainers/portfile-functions.md index c4b810dc045c2d..b98d89192dc717 100644 --- a/docs/maintainers/portfile-functions.md +++ b/docs/maintainers/portfile-functions.md @@ -6,6 +6,7 @@ - [vcpkg\_apply\_patches](vcpkg_apply_patches.md) - [vcpkg\_build\_cmake](vcpkg_build_cmake.md) - [vcpkg\_build\_msbuild](vcpkg_build_msbuild.md) +- [vcpkg\_check\_features](vcpkg_check_features.md) - [vcpkg\_check\_linkage](vcpkg_check_linkage.md) - [vcpkg\_clean\_msbuild](vcpkg_clean_msbuild.md) - [vcpkg\_configure\_cmake](vcpkg_configure_cmake.md) diff --git a/docs/maintainers/vcpkg_check_features.md b/docs/maintainers/vcpkg_check_features.md new file mode 100644 index 00000000000000..ca2debf858625b --- /dev/null +++ b/docs/maintainers/vcpkg_check_features.md @@ -0,0 +1,41 @@ +# vcpkg_check_features + +Check if one or more features are part of the package installation. + +## Usage +```cmake +vcpkg_check_features( + + [ ] + ... +) +``` + +`vcpkg_check_features` accepts a list of (feature, output_variable) pairs. +The syntax is similar to the `PROPERTIES` argument of `set_target_properties`. + +`vcpkg_check_features` will create a variable `FEATURE_OPTIONS` in the +parent scope, which you can pass as a part of `OPTIONS` argument when +calling functions like `vcpkg_config_cmake`: +```cmake +vcpkg_config_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DBUILD_TESTING=ON + ${FEATURE_OPTIONS} +) +``` + +## Notes +`vcpkg_check_features` is supposed to be called only once. Otherwise, the +`FEATURE_OPTIONS` variable set by a previous call will be overwritten. + +## Examples + +* [czmq](https://github.com/microsoft/vcpkg/blob/master/ports/czmq/portfile.cmake) +* [oniguruma](https://github.com/microsoft/vcpkg/blob/master/ports/oniguruma/portfile.cmake) +* [xtensor](https://github.com/microsoft/vcpkg/blob/master/ports/xtensor/portfile.cmake) + +## Source +[scripts/cmake/vcpkg_check_features.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_check_features.cmake) diff --git a/ports/oniguruma/CONTROL b/ports/oniguruma/CONTROL index 1780b45051990d..7eb4e617376849 100644 --- a/ports/oniguruma/CONTROL +++ b/ports/oniguruma/CONTROL @@ -1,6 +1,7 @@ Source: oniguruma -Version: 6.9.2 +Version: 6.9.2-1 Description: Modern and flexible regular expressions library +Homepage: https://github.com/kkos/oniguruma Feature: non-posix Description: Disable POSIX API diff --git a/ports/oniguruma/portfile.cmake b/ports/oniguruma/portfile.cmake index 586bfbe07553ec..28f489926aada3 100644 --- a/ports/oniguruma/portfile.cmake +++ b/ports/oniguruma/portfile.cmake @@ -8,11 +8,7 @@ vcpkg_from_github( HEAD_REF master ) -if("non-posix" IN_LIST FEATURES) - set(ENABLE_POSIX_API OFF) -else() - set(ENABLE_POSIX_API ON) -endif() +vcpkg_check_features(non-posix ENABLE_POSIX_API) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} diff --git a/ports/xtensor/CONTROL b/ports/xtensor/CONTROL index 3e5e330138e210..138d9e1fe72672 100644 --- a/ports/xtensor/CONTROL +++ b/ports/xtensor/CONTROL @@ -1,6 +1,7 @@ Source: xtensor -Version: 0.20.7 +Version: 0.20.7-1 Description: C++ tensors with broadcasting and lazy computing +Homepage: https://quantstack.net/xtensor Build-Depends: nlohmann-json, xtl Feature: xsimd diff --git a/ports/xtensor/portfile.cmake b/ports/xtensor/portfile.cmake index 51e24c6e95bb45..9c8b3b63e7e7bc 100644 --- a/ports/xtensor/portfile.cmake +++ b/ports/xtensor/portfile.cmake @@ -5,29 +5,20 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO QuantStack/xtensor - REF 0.20.7 + REF 0.20.7 SHA512 de09900d0934f9b10453f16e43d1c3af28503f365224f9c6789b88a0cf00db820ca31e12099df1a2e3aafa73d7d83223df82f01b7611c1addb48367f936e5122 HEAD_REF master ) -if("xsimd" IN_LIST FEATURES) - set(XTENSOR_USE_XSIMD ON) -else() - set(XTENSOR_USE_XSIMD OFF) -endif() - -if("tbb" IN_LIST FEATURES) - set(XTENSOR_USE_TBB ON) -else() - set(XTENSOR_USE_TBB OFF) -endif() +vcpkg_check_features( + xsimd XTENSOR_USE_XSIMD + tbb XTENSOR_USE_TBB +) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - -DXTENSOR_USE_XSIMD=${XTENSOR_USE_XSIMD} - -DXTENSOR_USE_TBB=${XTENSOR_USE_TBB} -DXTENSOR_ENABLE_ASSERT=OFF -DXTENSOR_CHECK_DIMENSION=OFF -DBUILD_TESTS=OFF @@ -36,6 +27,7 @@ vcpkg_configure_cmake( -DDOWNLOAD_GBENCHMARK=OFF -DDEFAULT_COLUMN_MAJOR=OFF -DDISABLE_VS2017=OFF + ${FEATURE_OPTIONS} ) vcpkg_install_cmake() diff --git a/scripts/cmake/vcpkg_check_features.cmake b/scripts/cmake/vcpkg_check_features.cmake new file mode 100644 index 00000000000000..c8848e98763073 --- /dev/null +++ b/scripts/cmake/vcpkg_check_features.cmake @@ -0,0 +1,82 @@ +## # vcpkg_check_features +## +## Check if one or more features are part of the package installation. +## +## ## Usage +## ```cmake +## vcpkg_check_features( +## +## [ ] +## ... +## ) +## ``` +## +## `vcpkg_check_features` accepts a list of (feature, output_variable) pairs. +## The syntax is similar to the `PROPERTIES` argument of `set_target_properties`. +## +## `vcpkg_check_features` will create a variable `FEATURE_OPTIONS` in the +## parent scope, which you can pass as a part of `OPTIONS` argument when +## calling functions like `vcpkg_config_cmake`: +## ```cmake +## vcpkg_config_cmake( +## SOURCE_PATH ${SOURCE_PATH} +## PREFER_NINJA +## OPTIONS +## -DBUILD_TESTING=ON +## ${FEATURE_OPTIONS} +## ) +## ``` +## +## ## Notes +## `vcpkg_check_features` is supposed to be called only once. Otherwise, the +## `FEATURE_OPTIONS` variable set by a previous call will be overwritten. +## +## ## Examples +## +## * [czmq](https://github.com/microsoft/vcpkg/blob/master/ports/czmq/portfile.cmake) +## * [oniguruma](https://github.com/microsoft/vcpkg/blob/master/ports/oniguruma/portfile.cmake) +## * [xtensor](https://github.com/microsoft/vcpkg/blob/master/ports/xtensor/portfile.cmake) +function(vcpkg_check_features) + cmake_parse_arguments(_vcf "" "" "" ${ARGN}) + + list(LENGTH ARGN _vcf_ARGC) + math(EXPR _vcf_INCORRECT_ARGN "${_vcf_ARGC} % 2") + + if(_vcf_INCORRECT_ARGN) + message(FATAL_ERROR "Called with incorrect number of arguments.") + endif() + + set(_vcf_IS_FEATURE_ARG ON) + set(_vcf_FEATURE_OPTIONS) + + # Process (feature, output_var) pairs + foreach(_vcf_ARG ${ARGN}) + if(_vcf_IS_FEATURE_ARG) + set(_vcf_FEATURE ${_vcf_ARG}) + + if(NOT ${_vcf_FEATURE} IN_LIST ALL_FEATURES) + message(FATAL_ERROR "Unknown feature: ${_vcf_FEATURE}") + endif() + + set(_vcf_IS_FEATURE_ARG OFF) + else() + set(_vcf_FEATURE_VAR ${_vcf_ARG}) + + if(${_vcf_FEATURE} IN_LIST FEATURES) + set(${_vcf_FEATURE_VAR} ON PARENT_SCOPE) + else() + set(${_vcf_FEATURE_VAR} OFF PARENT_SCOPE) + endif() + + list(APPEND _vcf_FEATURE_OPTIONS "-D${_vcf_FEATURE_VAR}=${${_vcf_FEATURE_VAR}}") + + set(_vcf_IS_FEATURE_ARG ON) + endif() + endforeach() + + if(DEFINED FEATURE_OPTIONS) + message(WARNING "FEATURE_OPTIONS is already defined and will be overwritten.") + endif() + + set(FEATURE_OPTIONS ${_vcf_FEATURE_OPTIONS} PARENT_SCOPE) +endfunction() diff --git a/scripts/cmake/vcpkg_common_functions.cmake b/scripts/cmake/vcpkg_common_functions.cmake index b99f8bee8d2989..827d43abeee675 100644 --- a/scripts/cmake/vcpkg_common_functions.cmake +++ b/scripts/cmake/vcpkg_common_functions.cmake @@ -1,5 +1,6 @@ include(vcpkg_acquire_msys) include(vcpkg_add_to_path) +include(vcpkg_check_features) include(vcpkg_check_linkage) include(vcpkg_clean_msbuild) include(vcpkg_download_distfile) From 79175994c22effa9b3d945077837cdca5d370681 Mon Sep 17 00:00:00 2001 From: Stefano Sinigardi Date: Fri, 28 Jun 2019 22:48:42 +0200 Subject: [PATCH 122/123] [darknet] enable ninja (#7064) * [darknet] enable ninja * Bump CONTROL version --- ports/darknet/CONTROL | 2 +- ports/darknet/portfile.cmake | 22 ++++++++++++---------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/ports/darknet/CONTROL b/ports/darknet/CONTROL index 39350348591105..d31d4ef1d180ca 100644 --- a/ports/darknet/CONTROL +++ b/ports/darknet/CONTROL @@ -1,5 +1,5 @@ Source: darknet -Version: 0.2.5-3 +Version: 0.2.5-4 Description: Darknet is an open source neural network framework written in C and CUDA. You only look once (YOLO) is a state-of-the-art, real-time object detection system, best example of darknet functionalities. Build-Depends: pthreads (windows), stb Default-Features: weights diff --git a/ports/darknet/portfile.cmake b/ports/darknet/portfile.cmake index 3733420adfab58..3fb49e68749274 100644 --- a/ports/darknet/portfile.cmake +++ b/ports/darknet/portfile.cmake @@ -16,21 +16,23 @@ vcpkg_from_github( HEAD_REF master ) -set(ENABLE_CUDA OFF) -if("cuda" IN_LIST FEATURES) - set(ENABLE_CUDA ON) -endif() - -set(ENABLE_OPENCV OFF) -if("opencv" IN_LIST FEATURES) - set(ENABLE_OPENCV ON) -endif() +vcpkg_check_features( + "cuda" ENABLE_CUDA + "opencv" ENABLE_OPENCV +) if("opencv-cuda" IN_LIST FEATURES) set(ENABLE_OPENCV ON) set(ENABLE_CUDA ON) endif() +if (ENABLE_CUDA) + if (NOT VCPKG_CMAKE_SYSTEM_NAME AND NOT ENV{CUDACXX}) + #CMake looks for nvcc only in PATH and CUDACXX env vars for the Ninja generator. Since we filter path on vcpkg and CUDACXX env var is not set by CUDA installer on Windows, CMake cannot find CUDA when using Ninja generator, so we need to manually enlight it if necessary (https://gitlab.kitware.com/cmake/cmake/issues/19173). Otherwise we could just disable Ninja and use MSBuild, but unfortunately CUDA installer does not integrate with some distributions of MSBuild (like the ones inside Build Tools), making CUDA unavailable otherwise in those cases, which we want to avoid + set(ENV{CUDACXX} "$ENV{CUDA_PATH}/bin/nvcc.exe") + endif() +endif() + if("weights" IN_LIST FEATURES) vcpkg_download_distfile(YOLOV3_WEIGHTS URLS "https://pjreddie.com/media/files/yolov3.weights" @@ -60,7 +62,7 @@ file(REMOVE_RECURSE ${SOURCE_PATH}/3rdparty) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} DISABLE_PARALLEL_CONFIGURE #since darknet configures a file inside source tree, it is better to disable parallel configure - #PREFER_NINJA #it does not work with cuda on windows https://gitlab.kitware.com/cmake/cmake/issues/19173 + PREFER_NINJA OPTIONS -DINSTALL_BIN_DIR:STRING=bin -DINSTALL_LIB_DIR:STRING=lib From 62ed7c17318b4f46109c2de73b7584fb04e85720 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Fri, 28 Jun 2019 13:50:32 -0700 Subject: [PATCH 123/123] [asio] fix flaky build (#7083) --- ports/asio/CMakeLists.txt | 5 ----- ports/asio/CONTROL | 2 +- ports/asio/portfile.cmake | 5 +++++ 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ports/asio/CMakeLists.txt b/ports/asio/CMakeLists.txt index aa7354e7637698..4241b1ffc74361 100644 --- a/ports/asio/CMakeLists.txt +++ b/ports/asio/CMakeLists.txt @@ -3,11 +3,6 @@ project(asio) add_library(asio INTERFACE) -# Always use "ASIO_STANDALONE" to avoid boost dependency -file(READ "asio/include/asio/detail/config.hpp" _contents) -string(REPLACE "defined(ASIO_STANDALONE)" "!defined(VCPKG_DISABLE_ASIO_STANDALONE)" _contents "${_contents}") -file(WRITE "asio/include/asio/detail/config.hpp" "${_contents}") - # Export target install(TARGETS asio EXPORT asio diff --git a/ports/asio/CONTROL b/ports/asio/CONTROL index 49a2be94c96f30..c0da68a9bc1cb8 100644 --- a/ports/asio/CONTROL +++ b/ports/asio/CONTROL @@ -1,4 +1,4 @@ Source: asio -Version: 1.12.2-1 +Version: 1.12.2-2 Homepage: https://github.com/chriskohlhoff/asio Description: Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. diff --git a/ports/asio/portfile.cmake b/ports/asio/portfile.cmake index f9b3b739d5f053..6c6d438a1e7e0d 100644 --- a/ports/asio/portfile.cmake +++ b/ports/asio/portfile.cmake @@ -9,6 +9,11 @@ vcpkg_from_github( HEAD_REF master ) +# Always use "ASIO_STANDALONE" to avoid boost dependency +file(READ "${SOURCE_PATH}/asio/include/asio/detail/config.hpp" _contents) +string(REPLACE "defined(ASIO_STANDALONE)" "!defined(VCPKG_DISABLE_ASIO_STANDALONE)" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/asio/include/asio/detail/config.hpp" "${_contents}") + # CMake install file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) vcpkg_configure_cmake(