diff --git a/README.md b/README.md index 2ece9836272a12..421f22cb5e8e5e 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ check out our [Getting Started](#getting-started) section for how to start using For short description of available commands, once you've installed vcpkg, you can run `vcpkg help`, or `vcpkg help [command]` for command-specific help. -* Github: [https://github.com/microsoft/vcpkg](https://github.com/microsoft/vcpkg) +* Github: ports at [https://github.com/microsoft/vcpkg](https://github.com/microsoft/vcpkg), program at [https://github.com/microsoft/vcpkg-tool](https://github.com/microsoft/vcpkg-tool) * Slack: [https://cppalliance.org/slack/](https://cppalliance.org/slack/), the #vcpkg channel * Discord: [\#include \](https://www.includecpp.org), the #🌏vcpkg channel * Docs: [Documentation](docs/README.md) diff --git a/docs/README.md b/docs/README.md index 71769a8506531f..598cb7eaf169b1 100644 --- a/docs/README.md +++ b/docs/README.md @@ -17,6 +17,7 @@ Vcpkg helps you manage C and C++ libraries on Windows, Linux and MacOS. This too - [Buildsystem Integration](users/integration.md) - [Triplet files](users/triplets.md) - [Configuration and Environment](users/config-environment.md) +- [Authentication](users/authentication.md) - [Manifest Mode](users/manifests.md) - [Binary Caching](users/binarycaching.md) - [Asset Caching](users/assetcaching.md) diff --git a/docs/maintainers/manifest-files.md b/docs/maintainers/manifest-files.md index 590edb24558ab7..a10f5464e72373 100644 --- a/docs/maintainers/manifest-files.md +++ b/docs/maintainers/manifest-files.md @@ -354,6 +354,7 @@ whitespace-character = | ? U+000D "CARRIAGE RETURN" ? | ? U+0020 "SPACE" ? ; optional-whitespace = { whitespace-character } ; +required-whitespace = whitespace-character, { optional-whitespace } ; lowercase-alpha = | "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" @@ -365,6 +366,9 @@ identifier-character = | lowercase-alpha | digit ; +platform-expression-list = +| platform-expression { ",", optional-whitespace, platform-expression } ; + platform-expression = | platform-expression-not | platform-expression-and @@ -373,21 +377,39 @@ platform-expression = platform-expression-identifier = | identifier-character, { identifier-character }, optional-whitespace ; +platform-expression-grouped = +| "(", optional-whitespace, platform-expression, ")", optional-whitespace ; + platform-expression-simple = | platform-expression-identifier -| "(", optional-whitespace, platform-expression, ")", optional-whitespace ; +| platform-expression-grouped ; + +platform-expression-unary-keyword-operand = +| required-whitespace, platform-expression-simple +| optional-whitespace, platform-expression-grouped ; platform-expression-not = | platform-expression-simple -| "!", optional-whitespace, platform-expression-simple ; +| "!", optional-whitespace, platform-expression-simple +| "not", platform-expression-unary-keyword-operand ; + +platform-expression-binary-keyword-first-operand = +| platform-expression-not, required-whitespace +| platform-expression-grouped ; + +platform-expression-binary-keyword-second-operand = +| required-whitespace, platform-expression-not +| platform-expression-grouped ; platform-expression-and = -| platform-expression-not, { "&", optional-whitespace, platform-expression-not } ; +| platform-expression-not, { "&", optional-whitespace, platform-expression-not } +| platform-expression-binary-keyword-first-operand, { "and", platform-expression-binary-keyword-second-operand } ; platform-expression-or = -| platform-expression-not, { "|", optional-whitespace, platform-expression-not } ; +| platform-expression-not, { "|", optional-whitespace, platform-expression-not } +| platform-expression-binary-keyword-first-operand, { "or", platform-expression-binary-keyword-second-operand } (* to allow for future extension *) ; -top-level-platform-expression = optional-whitespace, platform-expression ; +top-level-platform-expression = optional-whitespace, platform-expression-list ; ``` Basically, there are four kinds of expressions -- identifiers, negations, ands, and ors. diff --git a/docs/users/authentication.md b/docs/users/authentication.md new file mode 100644 index 00000000000000..727b996178e445 --- /dev/null +++ b/docs/users/authentication.md @@ -0,0 +1,79 @@ +# Authentication for Source Code + +**The latest version of this documentation is available on [GitHub](https://github.com/Microsoft/vcpkg/tree/master/docs/users/authentication.md).** + +Registries and `vcpkg_from_git()` directly use the git command line tools to fetch remote resources. Some of these resources may be protected from anonymous access and need authentication or credentials. + +The strategies below all seek to achieve the same fundamental goal: `git clone https://....` should succeed without interaction. This enables vcpkg to be separated from the specifics of your authentication scheme, ensuring forwards compatibility with any additional security improvements in the future. + +## Pre-seed git credentials + +You can pre-seed git credentials via `git credential approve`: + +Powershell: +```powershell +"url=https://github.com`npath=Microsoft/vcpkg`nusername=unused`npassword=$MY_PAT`n" | git credential approve +``` +Bash: +```sh +echo "url=https://github.com"$'\n'"path=Microsoft/vcpkg"$'\n'"username=unused"$'\n'"password=$MY_PAT"$'\n' | git credential approve +``` + +## Bearer auth + +For systems which need bearer auth, you can use `git config`: + +**Note: you must make these config changes with `--global`** +``` +git config --global --unset-all http..extraheader +git config --global http..extraheader "AUTHORIZATION: bearer " +``` +The `` can be filled in with a variety of options, documented in https://git-scm.com/docs/git-config#Documentation/git-config.txt-httplturlgt. For example, `https://dev.azure.com/MYORG/`. + +(Original Source: https://github.com/Microsoft/azure-pipelines-agent/issues/1601#issuecomment-394511048). + +**Note for Azure DevOps users:** You may need to enable access via Job authorization scope https://docs.microsoft.com/en-us/azure/devops/pipelines/process/access-tokens?view=azure-devops&tabs=yaml#job-authorization-scope. You may also need to "reference" the repo in your yaml via: + +```yaml +resources: + repositories: + - repository: + type: git + name: / + tag: tags/ + +... + +jobs: + - job: Build + uses: + repositories: [] +``` + +## Pass credentials in an environment variable (not recommended) + +Using `VCPKG_KEEP_ENV_VARS` or `VCPKG_ENV_PASSTHROUGH_UNTRACKED`, we can smuggle credential info via another var like `MY_TOKEN_VAR`. +```sh +export VCPKG_KEEP_ENV_VARS=MY_TOKEN_VAR +export MY_TOKEN_VAR=abc123 +``` +This can then be used in your private ports: +```cmake +# some/private/portfile.cmake +set(MY_TOKEN_VAR "") +if(DEFINED ENV{MY_TOKEN_VAR}) + set(MY_TOKEN_VAR "$ENV{MY_TOKEN_VAR}@") +endif() +vcpkg_from_git( + URLS "https://${MY_TOKEN_VAR}host.com/normal/url/path" + ... +) +``` +```cmake +# some/other/private/portfile.cmake +vcpkg_from_github( + AUTHORIZATION_TOKEN "$ENV{MY_TOKEN_VAR}" +) +``` + +For private ports, we recommend using `vcpkg_from_git()` instead of `vcpkg_from_github()` and the pre-seeding method above. diff --git a/docs/users/config-environment.md b/docs/users/config-environment.md index 73dd64a2120e71..1ba428a031a778 100644 --- a/docs/users/config-environment.md +++ b/docs/users/config-environment.md @@ -66,6 +66,9 @@ This environment variable, if set, suppresses the downloading of CMake and Ninja This environment variable can be set to a list of environment variables, separated by `;`, which will be propagated to the build environment. +The values of the kept variables will not be tracked in package ABIs and will not cause rebuilds when they change. To +pass in environment variables that should cause rebuilds on change, see [`VCPKG_ENV_PASSTHROUGH`](triplets.md#VCPKG_ENV_PASSTHROUGH). + Example: `FOO_SDK_DIR;BAR_SDK_DIR` #### VCPKG_MAX_CONCURRENCY diff --git a/docs/users/triplets.md b/docs/users/triplets.md index efc55ac2c0aaea..8aba906f369b32 100644 --- a/docs/users/triplets.md +++ b/docs/users/triplets.md @@ -43,6 +43,9 @@ Specifies the preferred library linkage. Valid options are `dynamic` and `static`. Note that libraries can ignore this setting if they do not support the preferred linkage type. +### VCPKG_BUILD_TYPE +You can set this value to `release` to only build release versions of the ports. By default this value is empty and release and debug versions of a port are built. + ### VCPKG_CMAKE_SYSTEM_NAME Specifies the target platform. @@ -124,6 +127,7 @@ When this option is set to (true|1|on), the compiler is ignored in the abi track ## Windows Variables + ### VCPKG_ENV_PASSTHROUGH Instructs vcpkg to allow additional environment variables into the build process. diff --git a/overlay/ports/qtkeychain-qt5/portfile.cmake b/overlay/ports/qtkeychain-qt5/portfile.cmake deleted file mode 100644 index 75c462236be0bf..00000000000000 --- a/overlay/ports/qtkeychain-qt5/portfile.cmake +++ /dev/null @@ -1,38 +0,0 @@ -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO frankosterfeld/qtkeychain - REF v0.12.0 - SHA512 ad8f7b3e8f59894a09892aeb78118f5ed93aa4593eece782c1879a4f3c37d9d63e8d40ad4b2e6a2e286e0da39f45cd4ed46181a1a05c078a59134114b2456a03 - HEAD_REF master -) - -list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TEST_APPLICATION:BOOL=OFF) -if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - list(APPEND QTKEYCHAIN_OPTIONS -DQTKEYCHAIN_STATIC:BOOL=ON) -else() - list(APPEND QTKEYCHAIN_OPTIONS -DQTKEYCHAIN_STATIC:BOOL=OFF) -endif() - -if (CMAKE_HOST_WIN32) - list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TRANSLATIONS:BOOL=OFF) -else() - list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TRANSLATIONS:BOOL=ON) -endif() - -vcpkg_cmake_configure( - SOURCE_PATH ${SOURCE_PATH} - OPTIONS -DBUILD_WITH_QT6=OFF ${QTKEYCHAIN_OPTIONS} -) -vcpkg_cmake_install() - -vcpkg_copy_pdbs() -vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Qt5Keychain PACKAGE_NAME Qt5Keychain) - -# Remove unneeded dirs -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/share -) - -# Handle copyright -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/overlay/ports/qtkeychain-qt5/vcpkg.json b/overlay/ports/qtkeychain-qt5/vcpkg.json deleted file mode 100644 index b79c03eeb60a25..00000000000000 --- a/overlay/ports/qtkeychain-qt5/vcpkg.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "qtkeychain-qt5", - "version-string": "0.12.0", - "description": "qtkeychain - Platform-independent Qt API for storing passwords securely, built with Qt5", - "homepage": "https://github.com/frankosterfeld/qtkeychain", - "dependencies": [ - "qt5-tools", - { - "name": "vcpkg-cmake", - "host": true - }, - { - "name": "vcpkg-cmake-config", - "host": true - } - ] -} diff --git a/overlay/ports/qtkeychain/cmakeconfig.patch b/overlay/ports/qtkeychain/cmakeconfig.patch deleted file mode 100644 index 1bbd9673b7a263..00000000000000 --- a/overlay/ports/qtkeychain/cmakeconfig.patch +++ /dev/null @@ -1,33 +0,0 @@ -commit ae1f9a479001d519d209d19da1b9319bf4d05a28 -Author: Nicolas Fella -Date: Fri Feb 5 15:19:16 2021 +0100 - - Fix QtKeyChainConfig when building against Qt6 - - 6 isn't 5 and thus the resulting QtKeyChainConfig would look for Qt4. - - Since Qt4 was dropped we can simplify the code. - -diff --git a/QtKeychainConfig.cmake.in b/QtKeychainConfig.cmake.in -index 26a8ca6..0c7779d 100644 ---- a/QtKeychainConfig.cmake.in -+++ b/QtKeychainConfig.cmake.in -@@ -9,14 +9,10 @@ include("${CMAKE_CURRENT_LIST_DIR}/Qt@QTKEYCHAIN_VERSION_INFIX@KeychainLibraryDe - - include(CMakeFindDependencyMacro) - --if("@QTKEYCHAIN_VERSION_INFIX@" STREQUAL "5") -- find_dependency(Qt5Core) -- -- if(UNIX AND NOT APPLE) -- find_dependency(Qt5DBus) -- endif() --else() -- find_dependency(Qt4 COMPONENTS QtCore) -+find_dependency(Qt@QTKEYCHAIN_VERSION_INFIX@Core) -+ -+if(UNIX AND NOT APPLE) -+ find_dependency(Qt@QTKEYCHAIN_VERSION_INFIX@DBus) - endif() - - set(QTKEYCHAIN_LIBRARIES "@QTKEYCHAIN_TARGET_NAME@") diff --git a/overlay/ports/qtkeychain/vcpkg.json b/overlay/ports/qtkeychain/vcpkg.json deleted file mode 100644 index effde8083568e5..00000000000000 --- a/overlay/ports/qtkeychain/vcpkg.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "qtkeychain", - "version-string": "0.12.0", - "description": "qtkeychain - Platform-independent Qt API for storing passwords securely", - "homepage": "https://github.com/frankosterfeld/qtkeychain", - "dependencies": [ - "qttools", - { - "name": "vcpkg-cmake", - "host": true - }, - { - "name": "vcpkg-cmake-config", - "host": true - } - ] -} diff --git a/ports/ace/portfile.cmake b/ports/ace/portfile.cmake index b478d120b36664..5c49c9284aba69 100644 --- a/ports/ace/portfile.cmake +++ b/ports/ace/portfile.cmake @@ -1,7 +1,7 @@ # Using zip archive under Linux would cause sh/perl to report "No such file or directory" or "bad interpreter" # when invoking `prj_install.pl`. # So far this issue haven't yet be triggered under WSL 1 distributions. Not sure the root cause of it. -set(ACE_VERSION 7.0.3) +set(ACE_VERSION 7.0.5) string(REPLACE "." "_" ACE_VERSION_DIRECTORY ${ACE_VERSION}) if("tao" IN_LIST FEATURES) @@ -10,14 +10,14 @@ if("tao" IN_LIST FEATURES) vcpkg_download_distfile(ARCHIVE URLS "https://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-${ACE_VERSION_DIRECTORY}/ACE%2BTAO-src-${ACE_VERSION}.zip" FILENAME ACE-TAO-${ACE_VERSION}.zip - SHA512 714d2c25bd4be44a03d350b2457b613b5d2d079fc294f287d10968ed02af5c9c82a2a0c10937acf46a4babfd4582cdc5fa23d6080dadd5cbc4f7f694037033f9 + SHA512 3ea0cc7b35433d7c41f51137caacd394a976cf4d5c2972a35015901b3ba172bacff0216a3146bf632b929a63853b7123019382c22d14c6d64e43a71a61b88023 ) else() # VCPKG_TARGET_IS_LINUX vcpkg_download_distfile(ARCHIVE URLS "https://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-${ACE_VERSION_DIRECTORY}/ACE%2BTAO-src-${ACE_VERSION}.tar.gz" FILENAME ACE-TAO-${ACE_VERSION}.tar.gz - SHA512 e48df1c63bfd02f3a14d049efbcb9a2f476597deaa2b9259d4d852ddfea2319af14e6a1071139b091bff856619e11c650771bfe92c3220d198ec6e931cdd35de + SHA512 65c6557f72a57dc137882bbf6cbb009ae2e403c9848e3e4c3165f1ed55865c5e08fc0226dcf715b33bfa501b13b3863f5c40403791b0dcd29b7c88fec20a9660 ) endif() else() @@ -26,14 +26,14 @@ else() vcpkg_download_distfile(ARCHIVE URLS "https://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-${ACE_VERSION_DIRECTORY}/ACE-src-${ACE_VERSION}.zip" FILENAME ACE-src-${ACE_VERSION}.zip - SHA512 3232ea5437b5fa4a36f4b9d5586c1435a5e2f2dcb34770919a1d1dfe6ebe12e33b316f3c0a1275cdc40c12135800f8cb000ac12b4775f9c31d3ddc48b41bd375 + SHA512 73707c92a0533ab60f090cfb620d508755b8267e2b83fb52d9903c4d780d2e2b504545433fdbe34801d4895cf938ecc5a5f26c34528851080bcce07f5a501ac1 ) else(VCPKG_TARGET_IS_WINDOWS) # VCPKG_TARGET_IS_LINUX vcpkg_download_distfile(ARCHIVE URLS "https://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-${ACE_VERSION_DIRECTORY}/ACE-src-${ACE_VERSION}.tar.gz" FILENAME ACE-src-${ACE_VERSION}.tar.gz - SHA512 019ec5c9f23c103d659ec57f6c7bfda3d6d12fc4ca77373353d6232c5fa24c03ffba222af45bd4afe997f02a81f834546cfbcb0e667000857b6e12f2ca3effaa + SHA512 6e5e43e600763e612c292cb88443e4dce1be94d049e2a784c5a4d4720314b484cccec4f7f05534c6ef824d86bef8bfe4ff5bce5f7998896cdaa599302b5b2562 ) endif() endif() @@ -89,12 +89,14 @@ endif() # Add ace/config.h file # see https://htmlpreview.github.io/?https://github.com/DOCGroup/ACE_TAO/blob/master/ACE/ACE-INSTALL.html if(VCPKG_TARGET_IS_WINDOWS) - if(VCPKG_PLATFORM_TOOLSET MATCHES "v142") - set(SOLUTION_TYPE vs2019) + if(VCPKG_PLATFORM_TOOLSET MATCHES "v140") + set(SOLUTION_TYPE vc14) elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v141") set(SOLUTION_TYPE vs2017) + elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v142") + set(SOLUTION_TYPE vs2019) else() - set(SOLUTION_TYPE vc14) + set(SOLUTION_TYPE vs2022) endif() file(WRITE ${ACE_SOURCE_PATH}/config.h "#include \"ace/config-windows.h\"") elseif(VCPKG_TARGET_IS_LINUX) @@ -310,22 +312,6 @@ if(VCPKG_TARGET_IS_WINDOWS) endif() endif() - # remove (erroneous) duplicate libs - if("tao" IN_LIST FEATURES) - if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(REMOVE - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_cosconcurrency.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_cosevent.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_coslifecycle.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_cosnaming.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_cosnotification.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_costrading.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_imr_activator.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_imr_locator.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/tao_rtevent.lib) - endif() - endif() - vcpkg_clean_msbuild() elseif(VCPKG_TARGET_IS_LINUX OR VCPKG_TARGET_IS_OSX) FIND_PROGRAM(MAKE make) @@ -431,6 +417,9 @@ elseif(VCPKG_TARGET_IS_LINUX OR VCPKG_TARGET_IS_OSX) # Handle copyright file(INSTALL ${ACE_ROOT}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) + + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/ace/bin/MakeProjectCreator") + file(REMOVE "${CURRENT_PACKAGES_DIR}/share/ace/ace-devel.sh") endif() vcpkg_fixup_pkgconfig() diff --git a/ports/ace/vcpkg.json b/ports/ace/vcpkg.json index 77463fd0714856..1c6cc5e7284238 100644 --- a/ports/ace/vcpkg.json +++ b/ports/ace/vcpkg.json @@ -1,7 +1,7 @@ { "name": "ace", - "version": "7.0.3", - "port-version": 2, + "version": "7.0.5", + "maintainers": "Johnny Willemsen ", "description": "The ADAPTIVE Communication Environment", "homepage": "https://www.dre.vanderbilt.edu/~schmidt/ACE.html", "features": { diff --git a/ports/apr-util/portfile.cmake b/ports/apr-util/portfile.cmake index 1065bdb7234c0c..befefb4fca2ea2 100644 --- a/ports/apr-util/portfile.cmake +++ b/ports/apr-util/portfile.cmake @@ -8,7 +8,7 @@ vcpkg_download_distfile(ARCHIVE if(VCPKG_TARGET_IS_WINDOWS) vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH - ARCHIVE ${ARCHIVE} + ARCHIVE "${ARCHIVE}" PATCHES use-vcpkg-expat.patch apr.patch @@ -22,9 +22,8 @@ if(VCPKG_TARGET_IS_WINDOWS) set(APU_DECLARE_STATIC ON) endif() - vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA + vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DAPU_DECLARE_EXPORT=${APU_DECLARE_EXPORT} -DAPU_DECLARE_STATIC=${APU_DECLARE_STATIC} @@ -32,7 +31,7 @@ if(VCPKG_TARGET_IS_WINDOWS) -DDISABLE_INSTALL_HEADERS=ON ) - vcpkg_install_cmake() + vcpkg_cmake_install() vcpkg_copy_pdbs() file(READ ${CURRENT_PACKAGES_DIR}/include/apu.h APU_H) @@ -43,7 +42,7 @@ if(VCPKG_TARGET_IS_WINDOWS) endif() file(WRITE ${CURRENT_PACKAGES_DIR}/include/apu.h "${APU_H}") -else(VCPKG_TARGET_IS_WINDOWS) +else() vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} @@ -77,7 +76,15 @@ else(VCPKG_TARGET_IS_WINDOWS) vcpkg_install_make() + vcpkg_fixup_pkgconfig() + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/apr-util/bin/apu-1-config" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../../..") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/apr-util/bin/apu-1-config" "${CURRENT_BUILDTREES_DIR}" "not/existing") + if(NOT VCPKG_BUILD_TYPE) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/apr-util/debug/bin/apu-1-config" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../../../..") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/apr-util/debug/bin/apu-1-config" "${CURRENT_BUILDTREES_DIR}" "not/existing") + endif() + endif() # Handle copyright -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/apr-util/vcpkg.json b/ports/apr-util/vcpkg.json index aa7937210aa20c..7398beb9caa9e1 100644 --- a/ports/apr-util/vcpkg.json +++ b/ports/apr-util/vcpkg.json @@ -1,12 +1,17 @@ { "name": "apr-util", "version-string": "1.6.1", - "port-version": 4, + "port-version": 5, "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", "homepage": "https://apr.apache.org/", "dependencies": [ "apr", "expat", - "openssl" + "openssl", + { + "name": "vcpkg-cmake", + "host": true, + "platform": "windows" + } ] } diff --git a/ports/apsi/portfile.cmake b/ports/apsi/portfile.cmake index 95f63b17bd0323..5002c99a028370 100644 --- a/ports/apsi/portfile.cmake +++ b/ports/apsi/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO microsoft/APSI - REF 7fbeefbd42f4884da95073d40de22ba46fc0f1f5 - SHA512 dfa4b7571b355646004d5b8823f250b56cda6e84d348a6a013f45fbf5c119e49bda28ac8a75f8ec06738814c50e34e66805994c7bc780ddfd57cc2067ffa745a + REF 6365cb774b81a2a731334c656db21e5fdfb92870 + SHA512 f21d710a345663aeb35035565c55fd900076589d087a03a1ad7df8b8004ae0e059196f3c94ee63b5ad815a858e5404eea34ae203f7778d4190fd323fd08b7084 HEAD_REF main ) @@ -29,7 +29,7 @@ vcpkg_cmake_configure( vcpkg_cmake_install() -vcpkg_cmake_config_fixup(PACKAGE_NAME "APSI" CONFIG_PATH "lib/cmake/APSI-0.3") +vcpkg_cmake_config_fixup(PACKAGE_NAME "APSI" CONFIG_PATH "lib/cmake/APSI-0.7") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") diff --git a/ports/apsi/vcpkg.json b/ports/apsi/vcpkg.json index e3416047304d22..97792cc04d4bff 100644 --- a/ports/apsi/vcpkg.json +++ b/ports/apsi/vcpkg.json @@ -1,6 +1,6 @@ { "name": "apsi", - "version-semver": "0.3.1", + "version-semver": "0.7.0", "description": "APSI is a research library for asymmetric private set intersection.", "homepage": "https://github.com/microsoft/APSI", "supports": "static", diff --git a/ports/arrow/portfile.cmake b/ports/arrow/portfile.cmake index e5a1dcc6c6245f..225dd7426c4f67 100644 --- a/ports/arrow/portfile.cmake +++ b/ports/arrow/portfile.cmake @@ -1,5 +1,3 @@ -vcpkg_fail_port_install(ON_ARCH "x86" "arm" "arm64") - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/arrow @@ -61,12 +59,13 @@ else() set(THRIFT_USE_SHARED ${ARROW_DEPENDENCY_USE_SHARED}) endif() -vcpkg_configure_cmake( +vcpkg_cmake_configure( SOURCE_PATH ${SOURCE_PATH}/cpp PREFER_NINJA OPTIONS ${FEATURE_OPTIONS} ${MALLOC_OPTIONS} + -DCMAKE_SYSTEM_PROCESSOR=${VCPKG_TARGET_ARCHITECTURE} -DARROW_BUILD_SHARED=${ARROW_BUILD_SHARED} -DARROW_BUILD_STATIC=${ARROW_BUILD_STATIC} -DARROW_BUILD_TESTS=OFF @@ -83,7 +82,7 @@ vcpkg_configure_cmake( -DZSTD_MSVC_LIB_PREFIX= ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() @@ -91,7 +90,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) +vcpkg_cmake_config_fixup(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/arrow/vcpkg.json b/ports/arrow/vcpkg.json index cdddf011af6dc6..2f73bca2088ece 100644 --- a/ports/arrow/vcpkg.json +++ b/ports/arrow/vcpkg.json @@ -1,10 +1,10 @@ { "name": "arrow", "version": "5.0.0", - "port-version": 1, + "port-version": 2, "description": "Cross-language development platform for in-memory analytics", "homepage": "https://arrow.apache.org", - "supports": "x64", + "supports": "x64 | (arm64 & !windows)", "dependencies": [ "boost-filesystem", "boost-multiprecision", @@ -19,6 +19,14 @@ "snappy", "thrift", "utf8proc", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "zlib", "zstd" ], diff --git a/ports/asio-grpc/portfile.cmake b/ports/asio-grpc/portfile.cmake index 7dd32692bd46ed..ee8bb3c8e2b20f 100644 --- a/ports/asio-grpc/portfile.cmake +++ b/ports/asio-grpc/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Tradias/asio-grpc - REF v1.1.2 - SHA512 f55b219b9805f193b5673e91e58c3c5fc98957110fadf523c1729c92a06c8befe4ad58052c6e9aaabcf8327f2df31780d7e072a0923d77598974fa0145bf9e7f + REF v1.3.1 + SHA512 c7a9f9c85e0611fd73a827270edf27deefe59b424e6d572efc8b532d305bf41e8fccb24a6507819dca0712f40e1d6abd56a4e6b099dbee729b125b0b610cd4fb HEAD_REF master ) @@ -23,4 +23,5 @@ vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/asio-grpc) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib") +file(INSTALL "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/asio-grpc/usage b/ports/asio-grpc/usage new file mode 100644 index 00000000000000..bb11c4a9396e5e --- /dev/null +++ b/ports/asio-grpc/usage @@ -0,0 +1,15 @@ +The package asio-grpc can be used with different backends. + + find_package(asio-grpc CONFIG REQUIRED) + +The Boost.Asio backend. Install "boost-asio" and link with: + + target_link_libraries(main PRIVATE asio-grpc::asio-grpc) + +The standalone Asio backend. Install "asio" and link with: + + target_link_libraries(main PRIVATE asio-grpc::asio-grpc-standalone-asio) + +The libunifex backend. Install "libunifex" and link with: + + target_link_libraries(main PRIVATE asio-grpc::asio-grpc-unifex) diff --git a/ports/asio-grpc/vcpkg.json b/ports/asio-grpc/vcpkg.json index 2b33b17ff72e89..fc67a0f0efa9c8 100644 --- a/ports/asio-grpc/vcpkg.json +++ b/ports/asio-grpc/vcpkg.json @@ -1,13 +1,9 @@ { "name": "asio-grpc", - "version": "1.1.2", - "description": "Asynchronous gRPC with Boost.Asio executors", + "version": "1.3.1", + "description": "Asynchronous gRPC with Asio/unified executors", "homepage": "https://github.com/Tradias/asio-grpc", "dependencies": [ - "boost-asio", - "boost-core", - "boost-intrusive", - "boost-lockfree", "grpc", { "name": "vcpkg-cmake", diff --git a/ports/autodock-vina/01-windows.patch b/ports/autodock-vina/01-windows.patch deleted file mode 100644 index 89c3bfd3ad408b..00000000000000 --- a/ports/autodock-vina/01-windows.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/lib/forcefield.h b/src/lib/forcefield.h -index 81bd4c1..44761e2 100644 ---- a/src/lib/forcefield.h -+++ b/src/lib/forcefield.h -@@ -24,6 +24,7 @@ - #define VINA_FORCEFIELD_H - - -+#include - #include - #include - #include diff --git a/ports/autodock-vina/CMakeLists.txt b/ports/autodock-vina/CMakeLists.txt index 2390d9753d318e..5099bc23edb193 100644 --- a/ports/autodock-vina/CMakeLists.txt +++ b/ports/autodock-vina/CMakeLists.txt @@ -3,10 +3,10 @@ cmake_policy(VERSION 3.11) project(autodock-vina) -set(GIT_VERSION v1.2.2) +set(GIT_VERSION v1.2.3) set(CMAKE_CXX_STANDARD 11) -find_package(Boost REQUIRED COMPONENTS +find_package(Boost REQUIRED COMPONENTS filesystem log math_tr1 @@ -32,34 +32,34 @@ file(GLOB HEADERS add_library(vina ${SRC_AUTODOCK_VINA_LIBS}) add_library(vina_split ${SRC_AUTODOCK_VINA_SPLIT}) -target_include_directories(vina - PUBLIC - $ +target_include_directories(vina + PUBLIC + $ $ - PRIVATE + PRIVATE $ ) -target_include_directories(vina_split - PUBLIC - $ +target_include_directories(vina_split + PUBLIC + $ $ - PRIVATE - $ + PRIVATE + $ ) -target_compile_definitions(vina - PUBLIC +target_compile_definitions(vina + PUBLIC -DVERSION=\"${GIT_VERSION}\" ) -target_compile_definitions(vina_split - PUBLIC +target_compile_definitions(vina_split + PUBLIC -DVERSION=\"${GIT_VERSION}\" ) -target_link_libraries(vina - PRIVATE +target_link_libraries(vina + PRIVATE Boost::boost Boost::filesystem Boost::log @@ -71,8 +71,8 @@ target_link_libraries(vina Boost::timer ) -target_link_libraries(vina_split - PRIVATE +target_link_libraries(vina_split + PRIVATE Boost::boost Boost::filesystem Boost::log diff --git a/ports/autodock-vina/portfile.cmake b/ports/autodock-vina/portfile.cmake index 7ba0823884ca91..b910a40e64b4f3 100644 --- a/ports/autodock-vina/portfile.cmake +++ b/ports/autodock-vina/portfile.cmake @@ -3,11 +3,9 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ccsb-scripps/AutoDock-Vina - REF v1.2.2 - SHA512 a6117137292b9b77afd3dff4a5ca31c65c9e85edd0b2351795fb2cccc06eca5b865b7dc054bb2859d0cf32abb6f6a72aaf62647e6d53709be879cc12a0336ba8 + REF v1.2.3 + SHA512 ea3d3008553665af5fbafa3b4dfe379df257d9c5b957d81a91ec8b92f06a8d0f4c2dfc30b515a64c0bc6dcc70acedfdd498c3bb9a21cac58e43d4da37d2ff606 HEAD_REF develop - PATCHES - 01-windows.patch ) file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}") diff --git a/ports/autodock-vina/vcpkg.json b/ports/autodock-vina/vcpkg.json index b3384a570262b6..c8d9df0fa65bd8 100644 --- a/ports/autodock-vina/vcpkg.json +++ b/ports/autodock-vina/vcpkg.json @@ -1,6 +1,6 @@ { "name": "autodock-vina", - "version-semver": "1.2.2", + "version-semver": "1.2.3", "description": "AutoDock Vina is one of the fastest and most widely used open-source docking engines.", "homepage": "http://vina.scripps.edu/", "dependencies": [ diff --git a/ports/bcg729/disable-alt-packaging.patch b/ports/bcg729/disable-alt-packaging.patch new file mode 100644 index 00000000000000..b53c77d245bb41 --- /dev/null +++ b/ports/bcg729/disable-alt-packaging.patch @@ -0,0 +1,10 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 69dbaef..695f4d0 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -125,5 +125,4 @@ install(FILES + DESTINATION ${CONFIG_PACKAGE_LOCATION} + ) + +-add_subdirectory(build) + diff --git a/ports/bcg729/portfile.cmake b/ports/bcg729/portfile.cmake index 2dccea634ca35e..02b510a5bf9876 100644 --- a/ports/bcg729/portfile.cmake +++ b/ports/bcg729/portfile.cmake @@ -4,6 +4,8 @@ vcpkg_from_github( REF 1.1.1 SHA512 e8cc4b7486a9a29fb729ab9fd9e3c4a2155573f38cec16f5a53db3b416fc1119ea5f5a61243a8d37cb0b64580c5df1b632ff165dc7ff47421fa567dafffaacd8 HEAD_REF master + PATCHES + disable-alt-packaging.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" ENABLE_STATIC) @@ -19,10 +21,26 @@ vcpkg_cmake_configure( vcpkg_cmake_install() vcpkg_cmake_config_fixup(PACKAGE_NAME Bcg729) - -file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +file(GLOB cmake_files "${CURRENT_PACKAGES_DIR}/share/Bcg729/cmake/*.cmake") +file(COPY ${cmake_files} DESTINATION "${CURRENT_PACKAGES_DIR}/share/bcg729") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/Bcg729/cmake") +file(GLOB_RECURSE remaining_files "${CURRENT_PACKAGES_DIR}/share/Bcg729/*") +if(NOT remaining_files) + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/Bcg729") +endif() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") vcpkg_fixup_pkgconfig() + +file(READ "${SOURCE_PATH}/LICENSE.txt" GPL3) +file(WRITE "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" [[ +bcg729 is dual licensed, and is available either: + - under a GNU/GPLv3 license, for free (open source). See below. + - under a proprietary license, for a fee, to be used in closed source applications. + Contact Belledonne Communications (https://www.linphone.org/contact) + for any question about costs and services. + + +]] ${GPL3}) diff --git a/ports/bcg729/vcpkg.json b/ports/bcg729/vcpkg.json index 3f47ddac1b7696..4a08dcd9cc7355 100644 --- a/ports/bcg729/vcpkg.json +++ b/ports/bcg729/vcpkg.json @@ -1,7 +1,7 @@ { "name": "bcg729", "version": "1.1.1", - "port-version": 2, + "port-version": 3, "description": "Bcg729 is an open source implementation of the ITU G.729 Annex A and B codec.", "homepage": "https://github.com/BelledonneCommunications/bcg729", "dependencies": [ diff --git a/ports/bdwgc/portfile.cmake b/ports/bdwgc/portfile.cmake index 468154cd0b3af4..5e6f34dca0d640 100644 --- a/ports/bdwgc/portfile.cmake +++ b/ports/bdwgc/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ivmai/bdwgc - REF 59f15da55961928b05972d386054fb980bdc8cf0 # v8.2.0-20211013 - SHA512 f6b91f0ad9691d02b04d609d06b9d9aaf30a6e0bb93a5985f9e178128bc3a0b180a3366ecddafab43697fb28c6d0d5e814f99a7bbacad8da4550d3b6ea92bef6 + REF 5fab1a01931a1a6934ccf1d5eaa1e51f0a8dac4d # v8.2.0-20211115 + SHA512 b1a97aad10df33bb242985eb48f1bb2d3082d88f26c34014efce3d0f233bcd18a0f43f1bd960600ad9e22bcb19ebf04e573c74dfc1abfb771aa6b8525053c14b HEAD_REF master ) @@ -10,8 +10,8 @@ vcpkg_configure_cmake( SOURCE_PATH "${SOURCE_PATH}" PREFER_NINJA OPTIONS - -Dbuild_cord=OFF - -Denable_threads=OFF # TODO: add libatomic_ops package and turn on threads + -Denable_cplusplus=ON + -DCFLAGS_EXTRA=-I${CURRENT_INSTALLED_DIR}/include # for libatomic_ops OPTIONS_DEBUG -Dinstall_headers=OFF ) diff --git a/ports/bdwgc/vcpkg.json b/ports/bdwgc/vcpkg.json index 8923c52721762f..35e3cd85b097c5 100644 --- a/ports/bdwgc/vcpkg.json +++ b/ports/bdwgc/vcpkg.json @@ -1,6 +1,9 @@ { "name": "bdwgc", "version": "8.2.0", - "port-version": 1, - "description": "The Boehm-Demers-Weiser conservative C/C++ Garbage Collector (libgc, bdwgc, boehm-gc)" + "port-version": 2, + "description": "The Boehm-Demers-Weiser conservative C/C++ Garbage Collector (libgc, bdwgc, boehm-gc)", + "dependencies": [ + "libatomic-ops" + ] } diff --git a/ports/bfgroup-lyra/portfile.cmake b/ports/bfgroup-lyra/portfile.cmake index c7c27bb14cf41a..fb9848a4fdca56 100644 --- a/ports/bfgroup-lyra/portfile.cmake +++ b/ports/bfgroup-lyra/portfile.cmake @@ -1,22 +1,21 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO bfgroup/Lyra - REF 1.5 - SHA512 1f8e505a487a9421a59afed0ee0c68894fb479117ac20c0bbb8d77ccf50ab938a68c93068f26871b9ddff0a21732d8bb1c6cc997b295a2a39c9363d32e320b3b + REF 1.5.1 + SHA512 e349c57614fe18cfee49b6a3977f133de3e567aa6b1c148abf9510432f7db34b75488739850e48c7943a15151fe2eedb129179d8d73eb61fb4f9a11c54b61086 HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() -vcpkg_fixup_cmake_targets( +vcpkg_cmake_install() +vcpkg_cmake_config_fixup( + PACKAGE_NAME lyra CONFIG_PATH share/lyra/cmake - TARGET_PATH share/lyra ) # Library is header-only, so no debug content. file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug") -file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/bfgroup-lyra/vcpkg.json b/ports/bfgroup-lyra/vcpkg.json index a7515048b8f30d..88b0d01efb8581 100644 --- a/ports/bfgroup-lyra/vcpkg.json +++ b/ports/bfgroup-lyra/vcpkg.json @@ -1,7 +1,16 @@ { "name": "bfgroup-lyra", - "version-string": "1.5", - "port-version": 1, + "version": "1.5.1", "description": "A simple to use, composable, command line parser for C++ 11 and beyond", - "homepage": "https://bfgroup.github.io/Lyra/" + "homepage": "https://bfgroup.github.io/Lyra/", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/botan/portfile.cmake b/ports/botan/portfile.cmake index bfc7db36e49f90..ab66cf27532109 100644 --- a/ports/botan/portfile.cmake +++ b/ports/botan/portfile.cmake @@ -162,4 +162,8 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") endif() +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/botan/build.h" "#define BOTAN_INSTALL_PREFIX R\"(${CURRENT_PACKAGES_DIR})\"" "") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/botan/build.h" "#define BOTAN_INSTALL_LIB_DIR R\"(${CURRENT_PACKAGES_DIR}/lib)\"" "") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/botan/build.h" "--prefix=${CURRENT_PACKAGES_DIR}" "") + file(INSTALL "${SOURCE_PATH}/license.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/botan/vcpkg.json b/ports/botan/vcpkg.json index 01891cc6a8ba08..1c2d7e1a30ebb2 100644 --- a/ports/botan/vcpkg.json +++ b/ports/botan/vcpkg.json @@ -1,7 +1,7 @@ { "name": "botan", "version": "2.18.1", - "port-version": 3, + "port-version": 4, "description": "A cryptography library written in C++11", "homepage": "https://botan.randombit.net", "supports": "!(windows & arm)", diff --git a/ports/buck-yeh-bux/portfile.cmake b/ports/buck-yeh-bux/portfile.cmake index 0e9c75cf5fb9df..f1a754fddc0604 100644 --- a/ports/buck-yeh-bux/portfile.cmake +++ b/ports/buck-yeh-bux/portfile.cmake @@ -2,8 +2,8 @@ vcpkg_fail_port_install(ON_ARCH "arm" "arm64" ON_TARGET "linux" "uwp" "osx") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO buck-yeh/bux - REF 9e971731ec8c50425754af030fbe16ec603c3d22 # v1.6.0 - SHA512 2e689b4e1ffc2f5e472e0ee8c87857336b4e049969600c82c8f576e2c82939d65658bb6ef62fbe751c03b92f6f14d1b9bcf7a085d2848c0556e3039a5906261d + REF 4e64bc28c482df45a2e15afd8fea928d82897783 # v1.6.2 + SHA512 b409cddc15116e4c1f6142f5d07449bfc44e4c7386bde6884ca232e30a7057a04144cd5564c4c9fb86e74160b9c52d097185f63ebbd751cfe8e7520e8181f404 HEAD_REF main ) diff --git a/ports/buck-yeh-bux/vcpkg.json b/ports/buck-yeh-bux/vcpkg.json index 9e8492a0e7a911..7c5365932591a7 100644 --- a/ports/buck-yeh-bux/vcpkg.json +++ b/ports/buck-yeh-bux/vcpkg.json @@ -1,6 +1,6 @@ { "name": "buck-yeh-bux", - "version": "1.6.0", + "version": "1.6.2", "description": "A supplemental C++ library with functionalities not directly supported from Modern C++ standard.", "homepage": "https://github.com/buck-yeh/bux", "supports": "!(arm | uwp | osx | linux)", diff --git a/ports/casclib/CMakeLists.txt b/ports/casclib/CMakeLists.txt deleted file mode 100644 index ad05df424cd4a6..00000000000000 --- a/ports/casclib/CMakeLists.txt +++ /dev/null @@ -1,83 +0,0 @@ -cmake_minimum_required(VERSION 3.9) - -project(casclib) -set(PROJECT_VERSION_MAJOR 1) -set(PROJECT_VERSION_MINOR 50) - -option(INSTALL_HEADERS "Install header files" ON) - -set(SRC_FILES - src/CascLib.def - 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 -) - -add_library(casclib ${SRC_FILES} ${ZLIB_FILES} ${MD5_FILES}) -target_include_directories(casclib - PUBLIC - $ - $) -if(WIN32) - target_compile_definitions(casclib PRIVATE UNICODE _UNICODE) -endif() - -install(TARGETS casclib - EXPORT casclibTargets - RUNTIME DESTINATION bin - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib -) - -include(CMakePackageConfigHelpers) - -set(VERSION_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/temp/casclibConfigVersion.cmake") -set(PROJECT_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/temp/casclibConfig.cmake") -set(INSTALL_DIR "share/casclib") - -write_basic_package_version_file("${VERSION_CONFIG}" VERSION 1.50 COMPATIBILITY SameMajorVersion) -configure_package_config_file("Config.cmake.in" - "${PROJECT_CONFIG}" - INSTALL_DESTINATION "${INSTALL_DIR}") - -install(FILES "${PROJECT_CONFIG}" "${VERSION_CONFIG}" DESTINATION "${INSTALL_DIR}") -install(EXPORT casclibTargets DESTINATION "${INSTALL_DIR}") - -if(INSTALL_HEADERS) - install(FILES "src/CascLib.h" "src/CascPort.h" DESTINATION include/casclib) -endif() diff --git a/ports/casclib/Config.cmake.in b/ports/casclib/Config.cmake.in deleted file mode 100644 index 96f5154279dfc1..00000000000000 --- a/ports/casclib/Config.cmake.in +++ /dev/null @@ -1,7 +0,0 @@ -@PACKAGE_INIT@ - -include(CMakeFindDependencyMacro) -find_dependency(ZLIB REQUIRED) - -include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake") -check_required_components("@PROJECT_NAME@") diff --git a/ports/casclib/ctype_for_mac.patch b/ports/casclib/ctype_for_mac.patch deleted file mode 100644 index dc1a67dff70734..00000000000000 --- a/ports/casclib/ctype_for_mac.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/src/CascPort.h b/src/CascPort.h -index 3bd08d4..201f7dd 100644 ---- a/src/CascPort.h -+++ b/src/CascPort.h -@@ -85,10 +85,17 @@ - #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/fix-shared-windows-builds.patch b/ports/casclib/fix-shared-windows-builds.patch new file mode 100644 index 00000000000000..d12ef301f9beae --- /dev/null +++ b/ports/casclib/fix-shared-windows-builds.patch @@ -0,0 +1,20 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -51,8 +51,15 @@ set(SRC_FILES + src/CascRootFile_WoW.cpp + ) + ++if(WIN32) ++ set(SRC_FILES ${SRC_FILES} ++ src/DllMain.c ++ src/DllMain.def ++ ) ++endif() ++ + set(LINK_LIBS) +-find_package(ZLIB) ++find_package(ZLIB REQUIRED) + if (ZLIB_FOUND) + set(LINK_LIBS ${LINK_LIBS} ZLIB::ZLIB) + add_definitions(-DCASC_USE_SYSTEM_ZLIB) diff --git a/ports/casclib/portfile.cmake b/ports/casclib/portfile.cmake index a93b6f8573c5e6..d53cc8124aea40 100644 --- a/ports/casclib/portfile.cmake +++ b/ports/casclib/portfile.cmake @@ -1,31 +1,28 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ladislav-zezula/CascLib - REF 1.50b - SHA512 f32cc592f454db4815c0dfd18a9c0076d85b1582e6974d241d1d4094269c42a978fa42186504988ced2c8f4a0b598f41e3ec8a95ddc3c0551af997e37708b1f5 + REF 07bfe85fd0804cba49f072819af716274d82b855 + SHA512 b333fe6318aa95629aa67613287ac71b1931c6443985e7e52412066d769f7996bffca1c19e890851eba976f572c7a11f14a8ff5fb95433577e1c9af8de0f34af HEAD_REF master PATCHES - ctype_for_mac.patch + fix-shared-windows-builds.patch ) -file(COPY - ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt - ${CMAKE_CURRENT_LIST_DIR}/Config.cmake.in - DESTINATION - ${SOURCE_PATH} -) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" CASC_BUILD_SHARED_LIB) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" CASC_BUILD_STATIC_LIB) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS_DEBUG - -DINSTALL_HEADERS=OFF +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DCASC_BUILD_SHARED_LIB=${CASC_BUILD_SHARED_LIB} + -DCASC_BUILD_STATIC_LIB=${CASC_BUILD_STATIC_LIB} ) -vcpkg_install_cmake() +vcpkg_cmake_install() +vcpkg_copy_pdbs() + +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/CascLib) -vcpkg_fixup_cmake_targets() +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -file(INSTALL ${SOURCE_PATH}/LICENSE - DESTINATION ${CURRENT_PACKAGES_DIR}/share/casclib - RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/casclib/vcpkg.json b/ports/casclib/vcpkg.json index a97d0344496a2f..99aa90327ce6b8 100644 --- a/ports/casclib/vcpkg.json +++ b/ports/casclib/vcpkg.json @@ -1,9 +1,17 @@ { "name": "casclib", - "version-string": "1.50b", - "port-version": 2, + "version-date": "2021-11-16", "description": "An open-source implementation of library for reading CASC storage from Blizzard games since 2014", + "homepage": "http://www.zezula.net/en/casc/casclib.html", "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "zlib" ] } diff --git a/ports/cgltf/portfile.cmake b/ports/cgltf/portfile.cmake index 54b8dade60c78a..181e95d98bd93f 100644 --- a/ports/cgltf/portfile.cmake +++ b/ports/cgltf/portfile.cmake @@ -3,8 +3,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO jkuhlmann/cgltf - REF 1bdc84d3bb81fa69bcf71ed5cafe63e58df1448a #v1.10 - SHA512 d7f06912a2654633e6d596805e09dbb315453837d066189091c78f7eb837a2caff1768d79f15e8b0536105ffeb67a46e7093e2d6b61091301754f4722c494ada + REF v1.11 + SHA512 b3350d34670dac6756ea010bd030c4709f3a6c86d43b5099d10b505437422951e5db7f8e521ec9590a7aada535146614936ff990533d07084b1e50c216572943 HEAD_REF master ) diff --git a/ports/cgltf/vcpkg.json b/ports/cgltf/vcpkg.json index aa9ebec52890df..e787feea1ed13c 100644 --- a/ports/cgltf/vcpkg.json +++ b/ports/cgltf/vcpkg.json @@ -1,6 +1,6 @@ { "name": "cgltf", - "version": "1.10", + "version": "1.11", "description": "Single-file glTF 2.0 loader and writer written in C99", "homepage": "https://github.com/jkuhlmann/cgltf" } diff --git a/ports/cpp-ipc/portfile.cmake b/ports/cpp-ipc/portfile.cmake index 0f3d3981cbfd5b..4842897fb51201 100644 --- a/ports/cpp-ipc/portfile.cmake +++ b/ports/cpp-ipc/portfile.cmake @@ -3,8 +3,8 @@ vcpkg_fail_port_install(ON_TARGET "OSX") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mutouyun/cpp-ipc - REF df3cf1b4c42143e6675c6fb0f33f85a48b7c7701 #v1.0.0 - SHA512 de319d48ac396f567b2f5faae87a264b9ebfbaf0559a3e00de61facd6a3f2de1739e064c6e037ad694111ed211c0fb9ea6ec2db0259c100e2bafe553c15ed2f6 + REF a5722957b25a2a429e4e893c427ecd278f2eb0fe #v1.0.1 + SHA512 e5eb7dbec8a3932db78f658422dfe32d377edf50ec594810765718896b32f61b4e6c02e29225cb103279e3313650e31e2b4241ac1adb538172af50fc75a6b0bb HEAD_REF master ) diff --git a/ports/cpp-ipc/vcpkg.json b/ports/cpp-ipc/vcpkg.json index 5e42a0a659da50..b0d59447b46208 100644 --- a/ports/cpp-ipc/vcpkg.json +++ b/ports/cpp-ipc/vcpkg.json @@ -1,6 +1,6 @@ { "name": "cpp-ipc", - "version": "1.0.0", + "version": "1.0.1", "description": "C++ IPC Library: A high-performance inter-process communication using shared memory on Linux/Windows.", "homepage": "https://github.com/mutouyun/cpp-ipc", "supports": "!osx", diff --git a/ports/ctp/portfile.cmake b/ports/ctp/portfile.cmake index 65c61802cdf71e..2c291b8ab6d3e3 100644 --- a/ports/ctp/portfile.cmake +++ b/ports/ctp/portfile.cmake @@ -1,6 +1,5 @@ message(STATUS "Note: the downloading server may only be avilable from 8:00AM-5:00PM (UTC+8), Mon-Fri (except public holidays in China)") -vcpkg_fail_port_install(ON_TARGET "OSX" "UWP" ON_ARCH "arm") vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) vcpkg_download_distfile(TRADEAPI_ARCHIVE diff --git a/ports/ctp/vcpkg.json b/ports/ctp/vcpkg.json index 640df906dcf762..e568df5f701fd2 100644 --- a/ports/ctp/vcpkg.json +++ b/ports/ctp/vcpkg.json @@ -1,9 +1,10 @@ { "name": "ctp", "version-string": "6.6.1_P1_20210406_se", - "port-version": 1, + "port-version": 2, "description": "The Comprehensive Transaction Platform (CTP) is a future brokerage management system developed specially for futures companies. CTP API client library allows users to connect to CTP gateway for algorithmic trading.", "homepage": "http://www.sfit.com.cn/index.htm", + "supports": "!osx & !uwp & !arm", "features": { "datacollect": { "description": "Data collect support of CTP" diff --git a/ports/cwalk/portfile.cmake b/ports/cwalk/portfile.cmake index 419b81efb98f77..a795d1a4019ae1 100644 --- a/ports/cwalk/portfile.cmake +++ b/ports/cwalk/portfile.cmake @@ -1,22 +1,21 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO likle/cwalk - REF v1.2.5 - SHA512 904e095e375d0c98dedbb17ddf805397387f8f473a708b310ba3086bbd4445bde7d0a037fbe9caed97c9cc793219a3d976cef010d76a32812c4fe2b3b7cde575 + REF v1.2.6 + SHA512 d43f339178367facd2f80944f5491631edab24fa4a92e30fd8f4d9c533ec3a2edbc04105066148be8458b64d0fac9e7d86408ca9601db291b93df222dc875fd4 HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DENABLE_TESTS=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/cwalk) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/cwalk) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -file(INSTALL ${SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/cwalk/vcpkg.json b/ports/cwalk/vcpkg.json index c7d9b713e43018..d3e1cf9c10d869 100644 --- a/ports/cwalk/vcpkg.json +++ b/ports/cwalk/vcpkg.json @@ -1,6 +1,16 @@ { "name": "cwalk", - "version-string": "1.2.5", + "version": "1.2.6", "description": "Path library for C/C++. Cross-Platform for Windows, MacOS and Linux. Supports UNIX and Windows path styles on those platforms.", - "homepage": "https://likle.github.io/cwalk/" + "homepage": "https://likle.github.io/cwalk/", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/dcmtk/portfile.cmake b/ports/dcmtk/portfile.cmake index a9b60e95a92de0..7e792dfed6126b 100644 --- a/ports/dcmtk/portfile.cmake +++ b/ports/dcmtk/portfile.cmake @@ -9,9 +9,8 @@ vcpkg_from_github( PATCHES ${CMAKE_CURRENT_LIST_DIR}/dcmtk.patch ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DDCMTK_WITH_DOXYGEN=OFF -DDCMTK_WITH_ZLIB=OFF @@ -34,13 +33,18 @@ vcpkg_configure_cmake( -DINSTALL_OTHER=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets() +vcpkg_cmake_config_fixup() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/dcmtk/config/osconfig.h" "#define DCMTK_PREFIX \"${CURRENT_PACKAGES_DIR}\"" "") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/dcmtk/config/osconfig.h" "#define DCM_DICT_DEFAULT_PATH \"${CURRENT_PACKAGES_DIR}/share/dcmtk/dicom.dic:${CURRENT_PACKAGES_DIR}/share/dcmtk/private.dic\"" "") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/dcmtk/config/osconfig.h" "#define DEFAULT_CONFIGURATION_DIR \"${CURRENT_PACKAGES_DIR}/etc/dcmtk/\"" "") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/dcmtk/config/osconfig.h" "#define DEFAULT_SUPPORT_DATA_DIR \"${CURRENT_PACKAGES_DIR}/share/dcmtk/\"" "") # Handle copyright -file(INSTALL ${SOURCE_PATH}/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/dcmtk RENAME copyright) +file(INSTALL "${SOURCE_PATH}/COPYRIGHT" DESTINATION "${CURRENT_PACKAGES_DIR}/share/dcmtk" RENAME copyright) diff --git a/ports/dcmtk/usage b/ports/dcmtk/usage new file mode 100644 index 00000000000000..7702d1c408198f --- /dev/null +++ b/ports/dcmtk/usage @@ -0,0 +1,18 @@ +The package dcmtk provides CMake targets: + + find_package(DCMTK CONFIG REQUIRED) + # Note: 23 target(s) were omitted. + target_link_libraries(main PRIVATE cmr i2d ijg8 dcmfg) + +Add the following cmake code to your CMakeLists.txt to create definitions for DCMTK + if ("${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" STREQUAL "/") + message(WARNING "No vcpkg install dir found, DCMTK definitions are not set") + else() + target_compile_definitions(main + PUBLIC + "DCMTK_PREFIX=${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" + "DCM_DICT_DEFAULT_PATH=${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/dcmtk/dicom.dic:${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/dcmtk/private.dic" + "DEFAULT_CONFIGURATION_DIR=${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/etc/dcmtk/" + "DEFAULT_SUPPORT_DATA_DIR=${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/dcmtk/" + ) + endif() diff --git a/ports/dcmtk/vcpkg.json b/ports/dcmtk/vcpkg.json index a75b5a7bd4bf44..10616156b799d6 100644 --- a/ports/dcmtk/vcpkg.json +++ b/ports/dcmtk/vcpkg.json @@ -1,6 +1,16 @@ { "name": "dcmtk", "version-string": "3.6.6", - "port-version": 1, - "description": "This DICOM ToolKit (DCMTK) package consists of source code, documentation and installation instructions for a set of software libraries and applications implementing part of the DICOM/MEDICOM Standard." + "port-version": 2, + "description": "This DICOM ToolKit (DCMTK) package consists of source code, documentation and installation instructions for a set of software libraries and applications implementing part of the DICOM/MEDICOM Standard.", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/directxmesh/portfile.cmake b/ports/directxmesh/portfile.cmake index 650cf50f1bf3e9..51f921fa4c248b 100644 --- a/ports/directxmesh/portfile.cmake +++ b/ports/directxmesh/portfile.cmake @@ -5,8 +5,8 @@ vcpkg_fail_port_install(ON_TARGET "OSX") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/DirectXMesh - REF sept2021 - SHA512 e07f944080dc7e0ffe154061057a81d7caee3c4612b9261ba5a4812b3cb45571dee0a1c9b01824ccfbe9566132eadef30b80164fefe6a3ead60a3762566e2604 + REF nov2021 + SHA512 d33ae04b5fc7dae715a0b9ceadcde02bb10807a8d26362b074caa31a631fba173f773ee49a143c44a1bdfdad19893bcca69a3bc806fbb26f74ca39194821a953 HEAD_REF master ) @@ -37,9 +37,9 @@ vcpkg_cmake_config_fixup(CONFIG_PATH cmake) if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64)) vcpkg_download_distfile( MESHCONVERT_EXE - URLS "https://github.com/Microsoft/DirectXMesh/releases/download/sept2021/meshconvert.exe" - FILENAME "meshconvert-sept2021.exe" - SHA512 9d527b95d3a37604ac3a4c05f8ef44e81cfd8044dd44eddc531116ee5110443679787e4719b0504dc60e406e28396e1f553388cf261b3df81103bd03391c32af + URLS "https://github.com/Microsoft/DirectXMesh/releases/download/nov2021/meshconvert.exe" + FILENAME "meshconvert-nov2021.exe" + SHA512 0f97ac49ce292b1cb90372884f1d6a4fc10eb3e92125a854ee9b7030fd9d0564536cdd88199aa4838832ae2a1e9c2df2c9e32c106705b6b06f156994b9476360 ) file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/directxmesh/") @@ -48,7 +48,7 @@ if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64)) ${MESHCONVERT_EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/directxmesh/) - file(RENAME ${CURRENT_PACKAGES_DIR}/tools/directxmesh/meshconvert-sept2021.exe ${CURRENT_PACKAGES_DIR}/tools/directxmesh/meshconvert.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/tools/directxmesh/meshconvert-nov2021.exe ${CURRENT_PACKAGES_DIR}/tools/directxmesh/meshconvert.exe) elseif((VCPKG_TARGET_IS_WINDOWS) AND (NOT VCPKG_TARGET_IS_UWP)) diff --git a/ports/directxmesh/vcpkg.json b/ports/directxmesh/vcpkg.json index 834581b20972e8..f5b41215197332 100644 --- a/ports/directxmesh/vcpkg.json +++ b/ports/directxmesh/vcpkg.json @@ -1,6 +1,6 @@ { "name": "directxmesh", - "version-string": "sept2021", + "version-string": "nov2021", "description": "DirectXMesh geometry processing library", "homepage": "https://github.com/Microsoft/DirectXMesh", "documentation": "https://github.com/microsoft/DirectXMesh/wiki", diff --git a/ports/directxtex/portfile.cmake b/ports/directxtex/portfile.cmake index 9c7419241533e0..3df7c99fa0d62f 100644 --- a/ports/directxtex/portfile.cmake +++ b/ports/directxtex/portfile.cmake @@ -5,8 +5,8 @@ vcpkg_fail_port_install(ON_TARGET "OSX") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/DirectXTex - REF oct2021 - SHA512 3fc1f8267a4708babe91e94f2062cd9d475b3682273e5c4f704cdb6093a5aae269cf573ad75fdd3dce59a6a79e6892a4cf5630a3160257e542edde9eb9dbb51a + REF nov2021 + SHA512 c96a35c6959caaa3ea6a033404889460363a71f8035a43c91db19d7b608c38adcebe59c428b480b6c6f2e1519a3cd72ce1a828a3771a2c301d831e5b7a4212b9 HEAD_REF master ) @@ -64,23 +64,23 @@ vcpkg_cmake_config_fixup(CONFIG_PATH cmake) if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64) AND (NOT ("openexr" IN_LIST FEATURES))) vcpkg_download_distfile( TEXASSEMBLE_EXE - URLS "https://github.com/Microsoft/DirectXTex/releases/download/sept2021/texassemble.exe" - FILENAME "texassemble-sept2021.exe" - SHA512 05539bae0f77bba1e6fa349ac483367d3f34f808857fd3c3bdecd2a956465101dbaec95cb4e61c15d5d65fd12cdc14fab17cede3a2719dc32bda8748b7a1c59a + URLS "https://github.com/Microsoft/DirectXTex/releases/download/nov2021/texassemble.exe" + FILENAME "texassemble-nov2021.exe" + SHA512 a31151d368d41f50b58b417e8d27987fe0e3caa2c4e0d0abe7bef472db51429526277b0c554df2825c6892bb2021111f59d3d8f321ad68c71c0a153852d2c81f ) vcpkg_download_distfile( TEXCONV_EXE - URLS "https://github.com/Microsoft/DirectXTex/releases/download/sept2021/texconv.exe" - FILENAME "texconv-sept2021.exe" - SHA512 9ec2415d2d1b665a0a67c01c916afb5946dedede3518e3a029b83e4a8bb86d8f22b2dc0afdc7dbe0824f8f9843a86e555f3e4705570703d4447a47f2719f5b5a + URLS "https://github.com/Microsoft/DirectXTex/releases/download/nov2021/texconv.exe" + FILENAME "texconv-nov2021.exe" + SHA512 7cb70b3cbf46c78b99aa18c28b043fc5930b6b254729efd447868fcf8cb8b77987d41b570082bdfb3bab01452e67d17e81b966bf2534036a3415fa918ddc2956 ) vcpkg_download_distfile( TEXDIAG_EXE - URLS "https://github.com/Microsoft/DirectXTex/releases/download/sept2021/texdiag.exe" - FILENAME "texdiag-sept2021.exe" - SHA512 380660fa46438368a0f30684e0b9d9f4c267d76145bacbf4e5643889e00f869b0925250c1911397ce6a3890752de87f6105ef0e60d0e0334eb36fbc7f53deea7 + URLS "https://github.com/Microsoft/DirectXTex/releases/download/nov2021/texdiag.exe" + FILENAME "texdiag-nov2021.exe" + SHA512 7826c594fa42978da8a15bd771fafe4d4f5b97d611ce62a806ddff77204cabf63eea6ac24e3409c2720631681260b7e3fa6ad5f33b2162d2266457462e6b13c9 ) file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/directxtex/") @@ -91,9 +91,9 @@ if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64) AND (NOT ${TEXDIAG_EXE} DESTINATION "${CURRENT_PACKAGES_DIR}/tools/directxtex/") - file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtex/texassemble-sept2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtex/texassemble.exe") - file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtex/texconv-sept2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtex/texconv.exe") - file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtex/texdiag-sept2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtex/texadiag.exe") + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtex/texassemble-nov2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtex/texassemble.exe") + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtex/texconv-nov2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtex/texconv.exe") + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtex/texdiag-nov2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtex/texadiag.exe") elseif((VCPKG_TARGET_IS_WINDOWS) AND (NOT VCPKG_TARGET_IS_UWP)) diff --git a/ports/directxtex/vcpkg.json b/ports/directxtex/vcpkg.json index 688da8e0502457..0cea8803d72ad2 100644 --- a/ports/directxtex/vcpkg.json +++ b/ports/directxtex/vcpkg.json @@ -1,6 +1,6 @@ { "name": "directxtex", - "version-string": "oct2021", + "version-string": "nov2021", "description": "DirectXTex texture processing library", "homepage": "https://github.com/Microsoft/DirectXTex", "documentation": "https://github.com/microsoft/DirectXTex/wiki", diff --git a/ports/directxtk/portfile.cmake b/ports/directxtk/portfile.cmake index 4d4e5a5b900eb3..73aa3c430741ab 100644 --- a/ports/directxtk/portfile.cmake +++ b/ports/directxtk/portfile.cmake @@ -5,8 +5,8 @@ vcpkg_fail_port_install(ON_TARGET "OSX" "Linux") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/DirectXTK - REF oct2021b - SHA512 203e930a9d7fb8dbf3a9e9266f00ee847ceaecb462a3c0450fac54fa2e36fda206d35ab7a1eac59eb83dd433f64e4c353a38dfa40691cd7326ba76b052931bf2 + REF nov2021 + SHA512 bf9297c88b4c80e70562593d0f2a7d8cf438b0bbc731f4725287ff1155e8879e538d339e72dfb4eceb2c94a8f410ff24421a12560013ea65c4e43fe57756109c HEAD_REF master ) @@ -35,16 +35,16 @@ vcpkg_cmake_config_fixup(CONFIG_PATH cmake) if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64)) vcpkg_download_distfile( MAKESPRITEFONT_EXE - URLS "https://github.com/Microsoft/DirectXTK/releases/download/oct2021/MakeSpriteFont.exe" - FILENAME "makespritefont-oct2021.exe" - SHA512 abff446bfd4cbddbca45816ec3a2230e52d9afb81c100966e4bce7e52a6e02620fd8cdcb416943090564885f63d33c4a246f43ff585c8f5686c2c9877ec50698 + URLS "https://github.com/Microsoft/DirectXTK/releases/download/nov2021/MakeSpriteFont.exe" + FILENAME "makespritefont-nov2021.exe" + SHA512 0aab40aced022588d9c1089c5b2f297b0521497d0ae559ead98f99e1e73f2daf9f38ebecadb413095abd2a6c207183fbca582d47528c6f21258df3ac391134e5 ) vcpkg_download_distfile( XWBTOOL_EXE - URLS "https://github.com/Microsoft/DirectXTK/releases/download/oct2021/XWBTool.exe" - FILENAME "xwbtool-oct2021.exe" - SHA512 fda62e06fb9998c41795c6be42f00a1048dcae302b20437f2a39350215789f77acfc77c0f1ebbc5bedeb986229c94f35bd1a03be37cdf4fcf4c007110f7efaa4 + URLS "https://github.com/Microsoft/DirectXTK/releases/download/nov2021/XWBTool.exe" + FILENAME "xwbtool-nov2021.exe" + SHA512 f2f291c496500e593c0a4795fee9fafc685666682f23a38a25546bb67ec083533a26f2ce0562b819abea44bd8b403a2f246fbf978e366c457eb8a0f836fd5a2e ) file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/directxtk/") @@ -54,8 +54,8 @@ if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64)) ${XWBTOOL_EXE} DESTINATION "${CURRENT_PACKAGES_DIR}/tools/directxtk/") - file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtk/makespritefont-oct2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtk/makespritefont.exe") - file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtk/xwbtool-oct2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtk/xwbtool.exe") + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtk/makespritefont-nov2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtk/makespritefont.exe") + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtk/xwbtool-nov2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtk/xwbtool.exe") elseif(NOT VCPKG_TARGET_IS_UWP) diff --git a/ports/directxtk/vcpkg.json b/ports/directxtk/vcpkg.json index 22470b7ed8521c..f0379d8fa08afb 100644 --- a/ports/directxtk/vcpkg.json +++ b/ports/directxtk/vcpkg.json @@ -1,6 +1,6 @@ { "name": "directxtk", - "version-string": "oct2021b", + "version-string": "nov2021", "description": "A collection of helper classes for writing DirectX 11.x code in C++.", "homepage": "https://github.com/Microsoft/DirectXTK", "documentation": "https://github.com/microsoft/DirectXTK/wiki", diff --git a/ports/directxtk12/portfile.cmake b/ports/directxtk12/portfile.cmake index abdc7e415caad6..583eef246d8521 100644 --- a/ports/directxtk12/portfile.cmake +++ b/ports/directxtk12/portfile.cmake @@ -5,8 +5,8 @@ vcpkg_fail_port_install(ON_TARGET "OSX" "Linux") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/DirectXTK12 - REF oct2021 - SHA512 b5b6b7d42967463bf941b41c9407417068761000344506b720e038f82b3a1aa6f44893695b2391075495d6a63eeb1d80cb011ed87e8f54430de3a77baa8cb570 + REF nov2021 + SHA512 c47dbc877599ad09240d182301198e0d8074ce319abf38958372d13c06a2a1921e2aff6c3acfb0a37a44be681933d1e86542da8491a5ca3f2b9c33fdca73beef HEAD_REF master ) @@ -21,16 +21,16 @@ vcpkg_cmake_config_fixup(CONFIG_PATH cmake) if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64)) vcpkg_download_distfile( MAKESPRITEFONT_EXE - URLS "https://github.com/Microsoft/DirectXTK12/releases/download/oct2021/MakeSpriteFont.exe" - FILENAME "makespritefont-oct2021.exe" - SHA512 abff446bfd4cbddbca45816ec3a2230e52d9afb81c100966e4bce7e52a6e02620fd8cdcb416943090564885f63d33c4a246f43ff585c8f5686c2c9877ec50698 + URLS "https://github.com/Microsoft/DirectXTK12/releases/download/nov2021/MakeSpriteFont.exe" + FILENAME "makespritefont-nov2021.exe" + SHA512 0aab40aced022588d9c1089c5b2f297b0521497d0ae559ead98f99e1e73f2daf9f38ebecadb413095abd2a6c207183fbca582d47528c6f21258df3ac391134e5 ) vcpkg_download_distfile( XWBTOOL_EXE - URLS "https://github.com/Microsoft/DirectXTK12/releases/download/oct2021/XWBTool.exe" - FILENAME "xwbtool-oct2021.exe" - SHA512 fda62e06fb9998c41795c6be42f00a1048dcae302b20437f2a39350215789f77acfc77c0f1ebbc5bedeb986229c94f35bd1a03be37cdf4fcf4c007110f7efaa4 + URLS "https://github.com/Microsoft/DirectXTK12/releases/download/nov2021/XWBTool.exe" + FILENAME "xwbtool-nov2021.exe" + SHA512 f2f291c496500e593c0a4795fee9fafc685666682f23a38a25546bb67ec083533a26f2ce0562b819abea44bd8b403a2f246fbf978e366c457eb8a0f836fd5a2e ) file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/directxtk12/") @@ -40,8 +40,8 @@ if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64)) ${XWBTOOL_EXE} DESTINATION "${CURRENT_PACKAGES_DIR}/tools/directxtk12/") - file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtk12/makespritefont-oct2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtk12/makespritefont.exe") - file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtk12/xwbtool-oct2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtk12/xwbtool.exe") + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtk12/makespritefont-nov2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtk12/makespritefont.exe") + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/directxtk12/xwbtool-nov2021.exe" "${CURRENT_PACKAGES_DIR}/tools/directxtk12/xwbtool.exe") endif() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") diff --git a/ports/directxtk12/vcpkg.json b/ports/directxtk12/vcpkg.json index da564385669f1f..cd7d64b7041e64 100644 --- a/ports/directxtk12/vcpkg.json +++ b/ports/directxtk12/vcpkg.json @@ -1,6 +1,6 @@ { "name": "directxtk12", - "version-string": "oct2021", + "version-string": "nov2021", "description": "A collection of helper classes for writing DirectX 12 code in C++.", "homepage": "https://github.com/Microsoft/DirectXTK12", "documentation": "https://github.com/microsoft/DirectXTK12/wiki", diff --git a/ports/eastl/portfile.cmake b/ports/eastl/portfile.cmake index c8e198f4a095f3..d362ac0f41d1d5 100644 --- a/ports/eastl/portfile.cmake +++ b/ports/eastl/portfile.cmake @@ -3,8 +3,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO electronicarts/EASTL - REF 41bd2e4466e33b979d2afc37f9b98dacf1eab50b #v 3.17.03 - SHA512 3011a0a08701b683e22cc624167b4f65fce8b16d0f7a03675f6a1d5b02313c5b763bcc6c8091f65728ed60ceee8d585cbdb1968a35fb24954f4f66afabb23865 + REF e8bdd5531ed79c30ccef2fd71e070f5ab9f1222a #v3.18.00 + SHA512 3e5d97a77b8610a2efdb9156b47c91e8a8dd5629ff95ea6d2c65016b067ab645df5beddc8c7f93d89c3d1a6f404ff71282efc6db9885a6e6240fa444fe2be79c HEAD_REF master PATCHES fix_cmake_install.patch diff --git a/ports/eastl/vcpkg.json b/ports/eastl/vcpkg.json index 07c9d652a90327..e496d68076cd63 100644 --- a/ports/eastl/vcpkg.json +++ b/ports/eastl/vcpkg.json @@ -1,6 +1,7 @@ { "name": "eastl", "version-string": "3.18.00", + "port-version": 1, "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.", "homepage": "https://github.com/electronicarts/EASTL", "dependencies": [ diff --git a/ports/epsilon/vcpkg.json b/ports/epsilon/vcpkg.json index de99c7e705b810..d19ef5749b4126 100644 --- a/ports/epsilon/vcpkg.json +++ b/ports/epsilon/vcpkg.json @@ -1,9 +1,10 @@ { "name": "epsilon", "version-string": "0.9.2", - "port-version": 5, + "port-version": 6, "description": "EPSILON is an Open Source wavelet image compressor, that is aimed on parallel and robust image processing.", "homepage": "https://sourceforge.net/projects/epsilon-project/", + "supports": "windows", "dependencies": [ "libpopt" ] diff --git a/ports/faad2/portfile.cmake b/ports/faad2/portfile.cmake index 9daa8d49268f11..8596e1a8bae054 100644 --- a/ports/faad2/portfile.cmake +++ b/ports/faad2/portfile.cmake @@ -1,4 +1,3 @@ -vcpkg_fail_port_install(MESSAGE "${PORT} currently only supports Windows platform." ON_TARGET "Linux" "OSX") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO knik0/faad2 @@ -11,23 +10,22 @@ vcpkg_from_github( 0003-Initialize-pointers.patch # https://github.com/knik0/faad2/pull/44 ) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}") vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES build-decoder FAAD_BUILD_BINARIES ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS ${FEATURE_OPTIONS} ) -vcpkg_install_cmake() +vcpkg_cmake_install() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") vcpkg_copy_pdbs() -file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR}) -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/include" DESTINATION "${CURRENT_PACKAGES_DIR}") +file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/faad2/vcpkg.json b/ports/faad2/vcpkg.json index 856b88daf4161b..f456d0b2d3093b 100644 --- a/ports/faad2/vcpkg.json +++ b/ports/faad2/vcpkg.json @@ -1,9 +1,16 @@ { "name": "faad2", - "version-string": "2.9.1", - "port-version": 3, + "version": "2.9.1", + "port-version": 4, "description": "Freeware Advanced Audio (AAC) Decoder", "homepage": "https://sourceforge.net/projects/faac/", + "supports": "windows", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + } + ], "features": { "build-decoder": { "description": "Build the embedded decoder executable" diff --git a/ports/fast-float/portfile.cmake b/ports/fast-float/portfile.cmake index 4044e5871c0632..267abb3a28c758 100644 --- a/ports/fast-float/portfile.cmake +++ b/ports/fast-float/portfile.cmake @@ -1,19 +1,18 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO fastfloat/fast_float - REF v0.8.0 - SHA512 d3f39457859ff0132f773222db3684f9b1d4a8ed549dfceb7cfb12d8f5871f5282dfa9eb01d39646cf93ed42dd640cb6487831ec15079b4b154f5002ac74edd7 + REF v3.2.0 + SHA512 8c0819501f854688942bf2676a9592c537b14b472a942695d589a75499f43bef57a8cb98b41b285dcfc0122f804c85e477d5aee82750a69308bdbf16c98ce2a7 HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/FastFloat TARGET_PATH share/FastFloat) +vcpkg_cmake_config_fixup(PACKAGE_NAME FastFloat CONFIG_PATH share/FastFloat) -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) -file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug") \ No newline at end of file +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug") +file(INSTALL "${SOURCE_PATH}/LICENSE-MIT" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) \ No newline at end of file diff --git a/ports/fast-float/vcpkg.json b/ports/fast-float/vcpkg.json index d750f44b2981b3..b2155a266d9a73 100644 --- a/ports/fast-float/vcpkg.json +++ b/ports/fast-float/vcpkg.json @@ -1,6 +1,16 @@ { "name": "fast-float", - "version-string": "0.8.0", + "version": "3.2.0", "description": "Fast and exact implementation of the C++ from_chars functions for float and double types: 4x faster than strtod", - "homepage": "https://github.com/fastfloat/fast_float" + "homepage": "https://github.com/fastfloat/fast_float", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/ffmpeg/portfile.cmake b/ports/ffmpeg/portfile.cmake index 9cd4a2ff62f866..668f07e414874c 100644 --- a/ports/ffmpeg/portfile.cmake +++ b/ports/ffmpeg/portfile.cmake @@ -133,8 +133,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ffmpeg/ffmpeg - REF n4.4 - SHA512 ae7426ca476df9fa9dba52cab06c38e484f835653fb2da57e7c06f5589d887c0854ee17df93a2f57191d498c1264cb1c69312cf0a8214b476800382e2d260c4b + REF n4.4.1 + SHA512 a53e617937f9892c5cfddb00896be9ad8a3e398dc7cf3b6c893b52ff38aff6ff0cbc61a44cd5f93d9a28f775e71ae82996a5e2b699a769c1de8f882aab34c797 HEAD_REF master PATCHES 0001-create-lib-libraries.patch diff --git a/ports/ffmpeg/vcpkg.json b/ports/ffmpeg/vcpkg.json index 2b060b31aa1617..91e065ecf6cd1b 100644 --- a/ports/ffmpeg/vcpkg.json +++ b/ports/ffmpeg/vcpkg.json @@ -1,7 +1,6 @@ { "name": "ffmpeg", - "version": "4.4", - "port-version": 17, + "version": "4.4.1", "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." @@ -493,7 +492,18 @@ "sdl2": { "description": "Sdl2 support", "dependencies": [ - "sdl2" + { + "name": "sdl2", + "default-features": false, + "features": [ + "x11" + ], + "platform": "linux" + }, + { + "name": "sdl2", + "platform": "!linux" + } ] }, "snappy": { diff --git a/ports/font-chef/disable-warnings-as-errors.patch b/ports/font-chef/disable-warnings-as-errors.patch new file mode 100644 index 00000000000000..31b69f82a64359 --- /dev/null +++ b/ports/font-chef/disable-warnings-as-errors.patch @@ -0,0 +1,12 @@ +diff --git a/src/font-chef/CMakeLists.txt b/src/font-chef/CMakeLists.txt +--- a/src/font-chef/CMakeLists.txt ++++ b/src/font-chef/CMakeLists.txt +@@ -68,7 +68,7 @@ target_include_directories(font-chef++ INTERFACE + if (NOT CMAKE_BUILD_TYPE MATCHES "Release") + target_compile_options(font-chef PRIVATE + $<$,$>:-Wall -Wextra -pedantic -fvisibility=hidden -Werror> +- $<$:/W3 /WX /wd4820 /wd4668 /wd4204> ++ $<$:/W3 /wd4820 /wd4668 /wd4204> + ) + endif() + diff --git a/ports/font-chef/portfile.cmake b/ports/font-chef/portfile.cmake index 2ae280bdcf67f1..304d870f4988d3 100644 --- a/ports/font-chef/portfile.cmake +++ b/ports/font-chef/portfile.cmake @@ -1,23 +1,24 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mobius3/font-chef - REF v1.0.1 - SHA512 0d73d095a2f6346cde5fc58a07be7cbe2c180ab5c83a4af21f765a6be1e9dcc5a403fa1d4c64f71dad5609eb72c8b05df8606b4035fceadca74fe6a87bb8efef + REF v1.1.0 + SHA512 3df1e31e4405bcbb05ffed8fe618eb953498389adef3d83d337ac570644008bee031e08cd64382443ad123c4abf7e0acca5e3e16288caf6225672d6796a9494f HEAD_REF master + PATCHES + disable-warnings-as-errors.patch # to workaround https://github.com/mobius3/font-chef/issues/3 ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/${PORT}") +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/${PORT}") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") endif() -file(INSTALL ${SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/font-chef/vcpkg.json b/ports/font-chef/vcpkg.json index 0203b566112afa..a293eb6ba8b75b 100644 --- a/ports/font-chef/vcpkg.json +++ b/ports/font-chef/vcpkg.json @@ -1,7 +1,16 @@ { "name": "font-chef", - "version-string": "1.0.1", - "port-version": 1, + "version": "1.1.0", "description": "A font cooking library", - "homepage": "https://github.com/mobius3/font-chef" + "homepage": "https://github.com/mobius3/font-chef", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/fontconfig/vcpkg.json b/ports/fontconfig/vcpkg.json index c0e13fdb83c94a..b7f1469804f2d8 100644 --- a/ports/fontconfig/vcpkg.json +++ b/ports/fontconfig/vcpkg.json @@ -1,8 +1,9 @@ { "name": "fontconfig", "version": "2.13.94", + "port-version": 1, "description": "Library for configuring and customizing font access.", - "homepage": "https://www.freedesktop.org/software/fontconfig/front.html", + "homepage": "https://www.freedesktop.org/wiki/Software/fontconfig", "dependencies": [ "dirent", "expat", diff --git a/ports/gamedev-framework/vcpkg.json b/ports/gamedev-framework/vcpkg.json index fe42c33a4a762c..e8b63f2126d85c 100644 --- a/ports/gamedev-framework/vcpkg.json +++ b/ports/gamedev-framework/vcpkg.json @@ -1,6 +1,7 @@ { "name": "gamedev-framework", "version-semver": "0.20.0", + "port-version": 1, "maintainers": [ "Julien Bernard ", "Arthur Hugeat " @@ -16,7 +17,18 @@ "boost-heap", "freetype", "pugixml", - "sdl2", + { + "name": "sdl2", + "default-features": false, + "features": [ + "x11" + ], + "platform": "linux" + }, + { + "name": "sdl2", + "platform": "!linux" + }, "stb", "zlib" ] diff --git a/ports/gdal/0005-Fix-configure.patch b/ports/gdal/0005-Fix-configure.patch index 2669510589c94a..771f2c3d3fc588 100644 --- a/ports/gdal/0005-Fix-configure.patch +++ b/ports/gdal/0005-Fix-configure.patch @@ -1,17 +1,17 @@ diff --git a/gdal/configure.ac b/gdal/configure.ac -index 1f88370..1098b39 100644 +index 30cd613..43f1daf 100644 --- a/gdal/configure.ac +++ b/gdal/configure.ac -@@ -45,6 +45,8 @@ dnl Compute the canonical host-system (the system we are building for) +@@ -48,6 +48,8 @@ dnl Compute the canonical host-system (the system we are building for) dnl type variable $host AC_CANONICAL_HOST +PKG_PROG_PKG_CONFIG([0.21]) + dnl Enable as much warnings as possible - AX_CFLAGS_WARN_ALL(C_WFLAGS) - AX_CXXFLAGS_WARN_ALL(CXX_WFLAGS) -@@ -1343,12 +1345,15 @@ AC_MSG_CHECKING([for libtiff]) + AC_LANG_PUSH([C]) + AX_COMPILER_VENDOR +@@ -1336,12 +1338,15 @@ AC_MSG_CHECKING([for libtiff]) if test "x${with_libtiff}" = "xyes" -o "x${with_libtiff}" = "x" ; then diff --git a/ports/gdal/0007-Control-tools.patch b/ports/gdal/0007-Control-tools.patch index b4e708c6d5de8e..fd1f5c9a35ecf7 100644 --- a/ports/gdal/0007-Control-tools.patch +++ b/ports/gdal/0007-Control-tools.patch @@ -78,6 +78,6 @@ index 1098b39..e4d985e 100644 +fi +AC_SUBST(BUILD_TOOLS,$BUILD_TOOLS) + - AC_OUTPUT(GDALmake.opt) + AC_CONFIG_FILES([GDALmake.opt]) + AC_OUTPUT - dnl --------------------------------------------------------------------------- diff --git a/ports/gdal/portfile.cmake b/ports/gdal/portfile.cmake index 3221ba4c43d24a..0556278a8df83f 100644 --- a/ports/gdal/portfile.cmake +++ b/ports/gdal/portfile.cmake @@ -1,5 +1,3 @@ -vcpkg_fail_port_install(ON_ARCH "arm") - set(GDAL_PATCHES 0001-Fix-debug-crt-flags.patch 0002-Fix-build.patch @@ -15,8 +13,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO OSGeo/gdal - REF 348075f26f8e4c200a34818123beeb4abe53c876 # 3.3.2 - SHA512 84bd7c74a079c4aa8cbefbbb1c4ab782e74a85d37d4c875a203760939f4f7c9175c40abc5184d8c1c521fd3b37bb90bc7bf046021ade22e510810535e3f61bd2 + REF d699b38a744301368070ef780f797340da4a9c3c # 3.4.0 + SHA512 709523740a51a0a2a144debcfa5fbc5a5b3d93cc3632856cfbc37f7ca52f2e83f4942d9a27d4c723ee19d2397cc91a4b1ba4543547afdfefb3980a7ba6684bd7 HEAD_REF master PATCHES ${GDAL_PATCHES} ) @@ -61,7 +59,6 @@ if (VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW) "PNGDIR=${PNG_INCLUDE_DIR}" "ZLIB_INC=-I${ZLIB_INCLUDE_DIR}" ZLIB_EXTERNAL_LIB=1 - ACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1 MSVC_VER=1900 ) @@ -369,6 +366,11 @@ else() vcpkg_replace_string("${pc_file_debug}" "${exec_prefix}/include" "${prefix}/../include") endif() + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/gdal/bin/gdal-config" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../../..") + if(NOT VCPKG_BUILD_TYPE) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/gdal/debug/bin/gdal-config" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../../../..") + endif() + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/cpl_config.h" "#define GDAL_PREFIX \"${CURRENT_INSTALLED_DIR}\"" "") endif() file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") diff --git a/ports/gdal/vcpkg-cmake-wrapper.cmake b/ports/gdal/vcpkg-cmake-wrapper.cmake index 772f5b9c530b96..28a1750fedddda 100644 --- a/ports/gdal/vcpkg-cmake-wrapper.cmake +++ b/ports/gdal/vcpkg-cmake-wrapper.cmake @@ -82,7 +82,7 @@ if(GDAL_FOUND) _gdal_add_dependency(GEOS::geos_c geos CONFIG) _gdal_add_dependency(GIF::GIF GIF) _gdal_add_dependency(hdf5::hdf5 hdf5 CONFIG) - if(NOT WIN32) + if(NOT WIN32 OR MINGW) _gdal_add_dependency(json-c::json-c json-c CONFIG) endif() _gdal_add_dependency(geotiff_library GeoTIFF CONFIG) diff --git a/ports/gdal/vcpkg.json b/ports/gdal/vcpkg.json index c20d97c3f1a8b0..e17bd14689826e 100644 --- a/ports/gdal/vcpkg.json +++ b/ports/gdal/vcpkg.json @@ -1,10 +1,10 @@ { "name": "gdal", - "version-semver": "3.3.2", - "port-version": 4, + "version-semver": "3.4.0", + "port-version": 1, "description": "The Geographic Data Abstraction Library for reading and writing geospatial raster and vector data", "homepage": "https://gdal.org", - "supports": "!arm", + "supports": "!(arm & windows)", "dependencies": [ "curl", "expat", diff --git a/ports/gettext/portfile.cmake b/ports/gettext/portfile.cmake index 0c351d73505490..73e68ca1d7a7fa 100644 --- a/ports/gettext/portfile.cmake +++ b/ports/gettext/portfile.cmake @@ -157,3 +157,7 @@ endif() if("tools" IN_LIST FEATURES AND NOT VCPKG_CROSSCOMPILING) file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/gettext") endif() + +if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/gettext/user-email") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/lib/gettext/user-email" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../..") +endif() diff --git a/ports/gettext/vcpkg.json b/ports/gettext/vcpkg.json index bd1f1d4b6c9857..94af3e586034ae 100644 --- a/ports/gettext/vcpkg.json +++ b/ports/gettext/vcpkg.json @@ -1,7 +1,7 @@ { "name": "gettext", "version": "0.21", - "port-version": 6, + "port-version": 7, "description": "GNU gettext provides libintl and a set of tools to help produce multi-lingual messages.", "homepage": "https://www.gnu.org/software/gettext/", "dependencies": [ diff --git a/ports/ghc-filesystem/portfile.cmake b/ports/ghc-filesystem/portfile.cmake index 781933c2c25a5a..369cc089316cac 100644 --- a/ports/ghc-filesystem/portfile.cmake +++ b/ports/ghc-filesystem/portfile.cmake @@ -1,13 +1,13 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO gulrak/filesystem - REF v1.5.4 + REF v1.5.10 HEAD_REF master - SHA512 01fb69ce46259d25d152667943c20e013c90e005647ca1c9c64e0721882236079bac160c04b5edf310e1163bdf8cb6fc0343680de686a1329777027008c301bf + SHA512 470dd9e1c4358f9d8d9f531d8c3c6716cdd156c815315748436a1dc3caf095d320e58eae2274df8c15e293cc96170752fb00aed8ad2210d417b174c13297fbac ) vcpkg_cmake_configure( - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DGHC_FILESYSTEM_BUILD_TESTING=OFF -DGHC_FILESYSTEM_BUILD_EXAMPLES=OFF @@ -19,7 +19,6 @@ vcpkg_cmake_config_fixup( CONFIG_PATH lib/cmake/ghc_filesystem ) -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug - ${CURRENT_PACKAGES_DIR}/lib -) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib") + +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/ghc-filesystem/vcpkg.json b/ports/ghc-filesystem/vcpkg.json index 648a6fdd90e26d..03117dfae17915 100644 --- a/ports/ghc-filesystem/vcpkg.json +++ b/ports/ghc-filesystem/vcpkg.json @@ -1,8 +1,7 @@ { "name": "ghc-filesystem", - "version": "1.5.4", - "port-version": 1, - "description": "An implementation of C++17 std::filesystem for C++11 /C++14/C++17/C++20 on Windows, macOS, Linux and FreeBSD", + "version": "1.5.10", + "description": "An implementation of C++17 std::filesystem for C++11/C++14/C++17/C++20 on Windows, macOS, Linux and FreeBSD", "homepage": "https://github.com/gulrak/filesystem", "dependencies": [ { diff --git a/ports/glfw3/portfile.cmake b/ports/glfw3/portfile.cmake index 0b9d9d6314d0c2..4eb911174b16a0 100644 --- a/ports/glfw3/portfile.cmake +++ b/ports/glfw3/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO glfw/glfw - REF 814b7929c5add4b0541ccad26fb81f28b71dc4d8 #v3.3.4 - SHA512 8e34d011ab49940b405998312af4807e4c9837a44d95d873cb3723e7c141da6a10c1dfaf1652f03b31b911f0ae4515ded52cac02844435dc374b93d376921e43 + REF 3.3.5 + SHA512 cbb8ebf25d3d826eb1daeff3ad2e0e965ce9def3352955f297743d918f625d96bc05bf87c90f7b57ec53376a0f2f6ce62f80b57fac4e81e023400de275e97beb HEAD_REF master ) @@ -17,23 +17,22 @@ if(VCPKG_TARGET_IS_LINUX) These can be installed on Ubuntu systems via sudo apt install libxinerama-dev libxcursor-dev xorg-dev libglu1-mesa-dev") endif() -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF -DGLFW_BUILD_DOCS=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/glfw3) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/glfw3) vcpkg_fixup_pkgconfig() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -file(INSTALL ${SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) vcpkg_copy_pdbs() diff --git a/ports/glfw3/vcpkg.json b/ports/glfw3/vcpkg.json index f152921cc8251d..581dae957f02dc 100644 --- a/ports/glfw3/vcpkg.json +++ b/ports/glfw3/vcpkg.json @@ -1,6 +1,16 @@ { "name": "glfw3", - "version-semver": "3.3.4", + "version-semver": "3.3.5", "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.", - "homepage": "https://github.com/glfw/glfw" + "homepage": "https://github.com/glfw/glfw", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/gmmlib/portfile.cmake b/ports/gmmlib/portfile.cmake index b09ba8c84c4307..eef38b62225e2a 100644 --- a/ports/gmmlib/portfile.cmake +++ b/ports/gmmlib/portfile.cmake @@ -7,24 +7,22 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO intel/gmmlib - REF f6c91364b0911a7513e9543fd874360ec8901742 # intel-gmmlib-20.3.1 - SHA512 c46d5cba30db1d06134d2606ad9806a84b0e1248313a61c5d073fc5fe7570b864a4d5e9cf73dc6832102ace476839dbff1e3782f08a4cdcb62c04c40708a5710 + REF intel-gmmlib-21.3.2 + SHA512 155f7077f3135ff812b9fe759e56fecd595f1c5dde9a377df31a9acedcfeea9d93751badba68077c00929a21cb87e1bd69b8fe3961ac61765fabbc5d6d89e6be HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DARCH=64 ) -vcpkg_install_cmake() +vcpkg_cmake_install() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/igdgmm/GmmLib/Scripts") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/igdgmm/GmmLib/Resource") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/igdgmm/GmmLib/GlobalInfo") # Handle copyright -configure_file(${SOURCE_PATH}/LICENSE.md ${CURRENT_PACKAGES_DIR}/share/gmmlib/copyright COPYONLY) - -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/igdgmm/GmmLib/Scripts) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/igdgmm/GmmLib/Resource) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/igdgmm/GmmLib/GlobalInfo) +configure_file("${SOURCE_PATH}/LICENSE.md" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY) diff --git a/ports/gmmlib/vcpkg.json b/ports/gmmlib/vcpkg.json index 613b45e830a184..96a697a3db4877 100644 --- a/ports/gmmlib/vcpkg.json +++ b/ports/gmmlib/vcpkg.json @@ -1,7 +1,13 @@ { "name": "gmmlib", - "version-string": "20.3.1", - "port-version": 1, - "description": "intel's graphics memory management library", - "supports": "linux" + "version": "21.3.2", + "description": "Intel(R) Graphics Memory Management Library", + "homepage": "https://github.com/intel/gmmlib", + "supports": "linux", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + } + ] } diff --git a/ports/graphite2/portfile.cmake b/ports/graphite2/portfile.cmake index 428aa3a68c047c..62a71bb171c703 100644 --- a/ports/graphite2/portfile.cmake +++ b/ports/graphite2/portfile.cmake @@ -7,21 +7,21 @@ vcpkg_from_github( PATCHES disable-tests.patch ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DDISABLE_TESTS=ON ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets() +vcpkg_cmake_config_fixup() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") +file(REMOVE "${CURRENT_PACKAGES_DIR}/lib/libgraphite2.la" "${CURRENT_PACKAGES_DIR}/debug/lib/libgraphite2.la") -file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(COPY "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") +file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) vcpkg_fixup_pkgconfig() diff --git a/ports/graphite2/vcpkg.json b/ports/graphite2/vcpkg.json index 70a6b070fab94a..1dc5a3fc25380f 100644 --- a/ports/graphite2/vcpkg.json +++ b/ports/graphite2/vcpkg.json @@ -1,10 +1,20 @@ { "name": "graphite2", - "version-string": "1.3.14", - "port-version": 2, + "version": "1.3.14", + "port-version": 3, "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." ], - "homepage": "https://github.com/silnrsi/graphite" + "homepage": "https://github.com/silnrsi/graphite", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/grpc/00009-use-system-upb.patch b/ports/grpc/00009-use-system-upb.patch index 32946ceef92823..e40b27dbbfbf8f 100644 --- a/ports/grpc/00009-use-system-upb.patch +++ b/ports/grpc/00009-use-system-upb.patch @@ -1,5 +1,5 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index c87e35a..24b619f 100644 +index 1c3146b..ae06ea3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -84,6 +84,9 @@ set_property(CACHE gRPC_SSL_PROVIDER PROPERTY STRINGS "module" "package") @@ -12,32 +12,23 @@ index c87e35a..24b619f 100644 set(gRPC_PROTOBUF_PACKAGE_TYPE "" CACHE STRING "Algorithm for searching protobuf package") set_property(CACHE gRPC_PROTOBUF_PACKAGE_TYPE PROPERTY STRINGS "CONFIG" "MODULE") -@@ -2079,7 +2082,6 @@ target_link_libraries(grpc - gpr - ${_gRPC_SSL_LIBRARIES} - address_sorting +@@ -1504,7 +1507,6 @@ target_link_libraries(gpr + absl::synchronization + absl::time + absl::optional - upb ) - if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) - target_link_libraries(grpc "-framework CoreFoundation") -@@ -2624,7 +2626,6 @@ target_link_libraries(grpc_unsecure - absl::statusor - gpr - address_sorting -- upb - ) - if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) - target_link_libraries(grpc_unsecure "-framework CoreFoundation") -@@ -3805,7 +3806,7 @@ if(gRPC_INSTALL) - endif() + if(_gRPC_PLATFORM_ANDROID) + target_link_libraries(gpr +@@ -3927,6 +3929,7 @@ endif() endif() -- + +if (gRPC_UPB_PROVIDER STREQUAL "module") add_library(upb third_party/upb/upb/decode_fast.c third_party/upb/upb/decode.c -@@ -3863,7 +3864,7 @@ if(gRPC_INSTALL) +@@ -3984,7 +3987,7 @@ if(gRPC_INSTALL) ) endif() @@ -59,7 +50,7 @@ index 3623f4a..df6ced5 100644 # Targets include(${CMAKE_CURRENT_LIST_DIR}/gRPCTargets.cmake) diff --git a/cmake/upb.cmake b/cmake/upb.cmake -index f2a0e50..c1c65f5 100644 +index f2a0e50..ac6d397 100644 --- a/cmake/upb.cmake +++ b/cmake/upb.cmake @@ -12,9 +12,21 @@ @@ -84,3 +75,4 @@ index f2a0e50..c1c65f5 100644 + set(upb ${_gRPC_UPB_LIBRARIES}) + set(_gRPC_FIND_UPB "if(NOT upb_FOUND)\n find_package(upb CONFIG REQUIRED)\nendif()") +endif() +\ No newline at end of file diff --git a/ports/grpc/00010-add-feature-absl-sync.patch b/ports/grpc/00010-add-feature-absl-sync.patch index e208070a9f960f..2c7df5c876afba 100644 --- a/ports/grpc/00010-add-feature-absl-sync.patch +++ b/ports/grpc/00010-add-feature-absl-sync.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 24b619f..f7a11b9 100644 +index ae06ea3..8b64438 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -2076,6 +2076,8 @@ target_link_libraries(grpc +@@ -2180,6 +2180,8 @@ target_link_libraries(grpc ${_gRPC_UPB_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} absl::flat_hash_map @@ -11,24 +11,24 @@ index 24b619f..f7a11b9 100644 absl::inlined_vector absl::bind_front absl::statusor -@@ -2623,6 +2625,8 @@ target_link_libraries(grpc_unsecure +@@ -2733,6 +2735,8 @@ target_link_libraries(grpc_unsecure + ${_gRPC_UPB_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} absl::flat_hash_map - absl::inlined_vector + absl::time + absl::synchronization + absl::inlined_vector + absl::bind_front absl::statusor - gpr - address_sorting diff --git a/cmake/abseil-cpp.cmake b/cmake/abseil-cpp.cmake -index 078d495..b6f50bd 100644 +index c89ba26..68ae4fd 100644 --- a/cmake/abseil-cpp.cmake +++ b/cmake/abseil-cpp.cmake -@@ -37,4 +37,7 @@ elseif(gRPC_ABSL_PROVIDER STREQUAL "package") - # Use "CONFIG" as there is no built-in cmake module for absl. +@@ -35,3 +35,6 @@ elseif(gRPC_ABSL_PROVIDER STREQUAL "package") find_package(absl REQUIRED CONFIG) - set(_gRPC_FIND_ABSL "if(NOT absl_FOUND)\n find_package(absl CONFIG)\nendif()") + endif() + set(_gRPC_FIND_ABSL "if(NOT TARGET absl::strings)\n find_package(absl CONFIG)\nendif()") + if (gRPC_ABSL_SYNC_ENABLE) + add_definitions(-DGPR_ABSEIL_SYNC=1) + endif() - endif() +\ No newline at end of file diff --git a/ports/grpc/00014-pkgconfig-upbdefs.patch b/ports/grpc/00014-pkgconfig-upbdefs.patch index af4299acc43b47..2aa257b3ec3183 100644 --- a/ports/grpc/00014-pkgconfig-upbdefs.patch +++ b/ports/grpc/00014-pkgconfig-upbdefs.patch @@ -1,13 +1,13 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3808016..059a16b 100644 +index f7d677c..d527ff4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -15516,7 +15516,7 @@ generate_pkgconfig( +@@ -17705,7 +17705,7 @@ generate_pkgconfig( "high performance general RPC framework" "${gRPC_CORE_VERSION}" - "gpr openssl" -- "-lgrpc -laddress_sorting -lre2 -lupb -lcares -lz -labsl_statusor -labsl_status -labsl_raw_hash_set -labsl_hashtablez_sampler -labsl_synchronization -labsl_time -labsl_time_zone -labsl_civil_time -labsl_graphcycles_internal -labsl_symbolize -labsl_demangle_internal -labsl_malloc_internal -labsl_stacktrace -labsl_debugging_internal -labsl_exponential_biased -labsl_cord -labsl_str_format_internal -labsl_hash -labsl_bad_variant_access -labsl_bad_optional_access -labsl_strings -labsl_strings_internal -labsl_base -labsl_spinlock_wait -labsl_int128 -labsl_city -labsl_throw_delegate -labsl_raw_logging_internal -labsl_log_severity" -+ "-lgrpc -lgrpc_upbdefs -laddress_sorting -lre2 -lupb_fastdecode -lupb_json -lupb_pb -lupb_handlers -lupb_textformat -lupb_reflection -lupb -lcares -lz -labsl_statusor -labsl_status -labsl_raw_hash_set -labsl_hashtablez_sampler -labsl_synchronization -labsl_time -labsl_time_zone -labsl_civil_time -labsl_graphcycles_internal -labsl_symbolize -labsl_demangle_internal -labsl_malloc_internal -labsl_stacktrace -labsl_debugging_internal -labsl_exponential_biased -labsl_cord -labsl_str_format_internal -labsl_hash -labsl_bad_variant_access -labsl_bad_optional_access -labsl_strings -labsl_strings_internal -labsl_base -labsl_spinlock_wait -labsl_int128 -labsl_city -labsl_throw_delegate -labsl_raw_logging_internal -labsl_log_severity" + "gpr openssl absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_variant" +- "-lgrpc -laddress_sorting -lre2 -lupb -lcares -lz" ++ "-lgrpc -lgrpc_upbdefs -laddress_sorting -lre2 -lupb_fastdecode -lupb_json -lupb_pb -lupb_handlers -lupb_textformat -lupb_reflection -lupb -lcares -lz" "" "grpc.pc") diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake index 39aa2c5a95de81..a0015372524c74 100644 --- a/ports/grpc/portfile.cmake +++ b/ports/grpc/portfile.cmake @@ -5,8 +5,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO grpc/grpc - REF 44c40ac23023b7b3dd82744372c06817cc203898 # v1.37.0 - SHA512 dacd85b3a94cb759a086239aa2661f1b93728a1554ebc0f10c42aeb49c0d6309963832324773c3a153c3d2fcf807cb55b0e197b128e0a4e199c9e19a3976abd6 + REF fc662b7964384b701af5bd3ce6994d2180080eb4 # v1.41.0 + SHA512 ebb534b5d55f1a84c5ee2ea75f2ef871819d278966dec2610877c2f8ddd87bae80a63cbab0393fb37b81844f261327848821ac641b55963583288e6ec3b94e62 HEAD_REF master PATCHES 00001-fix-uwp.patch @@ -43,9 +43,8 @@ vcpkg_check_features( codegen gRPC_BUILD_CODEGEN ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS ${FEATURE_OPTIONS} -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF @@ -59,20 +58,20 @@ vcpkg_configure_cmake( -DgRPC_RE2_PROVIDER=package -DgRPC_PROTOBUF_PACKAGE_TYPE=CONFIG -DgRPC_CARES_PROVIDER=${cares_CARES_PROVIDER} - -DgRPC_GFLAGS_PROVIDER=none -DgRPC_BENCHMARK_PROVIDER=none - -DgRPC_INSTALL_CSHARP_EXT=OFF -DgRPC_INSTALL_BINDIR:STRING=bin -DgRPC_INSTALL_LIBDIR:STRING=lib -DgRPC_INSTALL_INCLUDEDIR:STRING=include -DgRPC_INSTALL_CMAKEDIR:STRING=share/grpc - -D_gRPC_PROTOBUF_PROTOC_EXECUTABLE=${CURRENT_HOST_INSTALLED_DIR}/tools/protobuf/protoc${VCPKG_HOST_EXECUTABLE_SUFFIX} - -DPROTOBUF_PROTOC_EXECUTABLE=${CURRENT_HOST_INSTALLED_DIR}/tools/protobuf/protoc${VCPKG_HOST_EXECUTABLE_SUFFIX} + -D_gRPC_PROTOBUF_PROTOC_EXECUTABLE="${CURRENT_HOST_INSTALLED_DIR}/tools/protobuf/protoc${VCPKG_HOST_EXECUTABLE_SUFFIX}" + -DPROTOBUF_PROTOC_EXECUTABLE="${CURRENT_HOST_INSTALLED_DIR}/tools/protobuf/protoc${VCPKG_HOST_EXECUTABLE_SUFFIX}" + MAYBE_UNUSED_VARIABLES + gRPC_MSVC_STATIC_RUNTIME ) -vcpkg_install_cmake(ADD_BIN_TO_PATH) +vcpkg_cmake_install(ADD_BIN_TO_PATH) -vcpkg_fixup_cmake_targets() +vcpkg_cmake_config_fixup() if (gRPC_BUILD_CODEGEN) vcpkg_copy_tools( @@ -87,14 +86,14 @@ if (gRPC_BUILD_CODEGEN) grpc_ruby_plugin ) else() - configure_file(${CMAKE_CURRENT_LIST_DIR}/gRPCTargets-vcpkg-tools.cmake ${CURRENT_PACKAGES_DIR}/share/grpc/gRPCTargets-vcpkg-tools.cmake @ONLY) + configure_file("${CMAKE_CURRENT_LIST_DIR}/gRPCTargets-vcpkg-tools.cmake" "${CURRENT_PACKAGES_DIR}/share/grpc/gRPCTargets-vcpkg-tools.cmake" @ONLY) endif() # Ignore the C# extension DLL in bin/ SET(VCPKG_POLICY_EMPTY_PACKAGE enabled) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") vcpkg_copy_pdbs() -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY) diff --git a/ports/grpc/snprintf.patch b/ports/grpc/snprintf.patch index d1fd52e48d893f..b5012ad2dba8bf 100644 --- a/ports/grpc/snprintf.patch +++ b/ports/grpc/snprintf.patch @@ -1,12 +1,12 @@ diff --git a/src/core/tsi/alts/crypt/aes_gcm.cc b/src/core/tsi/alts/crypt/aes_gcm.cc -index 02b1ac4492..191f462277 100644 +index b761224..88a3d6b 100644 --- a/src/core/tsi/alts/crypt/aes_gcm.cc +++ b/src/core/tsi/alts/crypt/aes_gcm.cc -@@ -26,6 +26,7 @@ - #include - #include +@@ -19,6 +19,7 @@ + #include + #include +#include - #include - + #include + #include diff --git a/ports/grpc/vcpkg.json b/ports/grpc/vcpkg.json index 5d85d18445cbed..e8577e6dea1b12 100644 --- a/ports/grpc/vcpkg.json +++ b/ports/grpc/vcpkg.json @@ -1,7 +1,6 @@ { "name": "grpc", - "version-semver": "1.37.0", - "port-version": 4, + "version-semver": "1.41.0", "description": "An RPC library and framework", "homepage": "https://github.com/grpc/grpc", "dependencies": [ @@ -25,6 +24,14 @@ }, "re2", "upb", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "zlib" ], "features": { diff --git a/ports/hdf5/pkgconfig-requires.patch b/ports/hdf5/pkgconfig-requires.patch index 14ef3cf6d060c1..c95f0ab43bdc80 100644 --- a/ports/hdf5/pkgconfig-requires.patch +++ b/ports/hdf5/pkgconfig-requires.patch @@ -10,17 +10,14 @@ index 141ab44..66b7efa 100644 else () if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ") EXTERNAL_ZLIB_LIBRARY (${HDF5_ALLOW_EXTERNAL_SUPPORT}) -@@ -128,8 +129,10 @@ if (HDF5_ENABLE_SZIP_SUPPORT) +@@ -134,6 +135,7 @@ if (HDF5_ENABLE_SZIP_SUPPORT) else() - get_target_property(SZIP_STATIC_LIBRARY szip-shared IMPORTED_LOCATION_${upper_build_type}) + set(SZIP_STATIC_LIBRARY szip-static) endif() + set(szip_PC_LIBS_PRIVATE "${SZIP_STATIC_LIBRARY}") - elseif (TARGET szip-static) - get_target_property(SZIP_STATIC_LIBRARY szip-static IMPORTED_LOCATION_${upper_build_type}) -+ set(szip_PC_LIBS_PRIVATE "${SZIP_STATIC_LIBRARY}") - elseif (SZIP_FOUND) - set (H5_HAVE_FILTER_SZIP 1) - set (H5_HAVE_SZLIB_H 1) + else () + if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ") + EXTERNAL_SZIP_LIBRARY (${HDF5_ALLOW_EXTERNAL_SUPPORT} ${HDF5_ENABLE_SZIP_ENCODING}) diff --git a/CMakeLists.txt b/CMakeLists.txt index b75fdd2..a2e88fd 100644 --- a/CMakeLists.txt diff --git a/ports/hdf5/szip.patch b/ports/hdf5/szip.patch index 27b9c3dde47c7b..98702bbdcfbadc 100644 --- a/ports/hdf5/szip.patch +++ b/ports/hdf5/szip.patch @@ -2,25 +2,20 @@ diff --git a/CMakeFilters.cmake b/CMakeFilters.cmake index d5f801e..141ab44 100644 --- a/CMakeFilters.cmake +++ b/CMakeFilters.cmake -@@ -117,8 +117,20 @@ if (HDF5_ENABLE_SZIP_SUPPORT) - set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${SZIP_LIBRARIES}) - endif () - endif () -+ else() +@@ -124,6 +124,16 @@ if (HDF5_ENABLE_SZIP_SUPPORT) + set (H5_HAVE_LIBSZ 1) + set (SZIP_INCLUDE_DIR_GEN ${SZIP_INCLUDE_DIR}) + set (SZIP_INCLUDE_DIRS ${SZIP_INCLUDE_DIRS} ${SZIP_INCLUDE_DIR}) ++ elseif(1) + find_package(szip CONFIG REQUIRED) - endif () -- if (SZIP_FOUND) -+ string(TOUPPER ${CMAKE_BUILD_TYPE} upper_build_type) -+ # SZIP_STATIC_LIBRARY will be used in cmake and pkgconfig, so it must be a absolute path -+ if (TARGET szip-shared) -+ if (WIN32) -+ get_target_property(SZIP_STATIC_LIBRARY szip-shared IMPORTED_IMPLIB_${upper_build_type}) ++ set(SZIP_INCLUDE_DIRS "") ++ # SZIP_STATIC_LIBRARY will be used in linking, in cmake and in pkgconfig, ++ # but the actual linkage doesn't matter. ++ if (TARGET szip-shared) ++ set(SZIP_STATIC_LIBRARY szip-shared) + else() -+ get_target_property(SZIP_STATIC_LIBRARY szip-shared IMPORTED_LOCATION_${upper_build_type}) ++ set(SZIP_STATIC_LIBRARY szip-static) + endif() -+ elseif (TARGET szip-static) -+ get_target_property(SZIP_STATIC_LIBRARY szip-static IMPORTED_LOCATION_${upper_build_type}) -+ elseif (SZIP_FOUND) - set (H5_HAVE_FILTER_SZIP 1) - set (H5_HAVE_SZLIB_H 1) - set (H5_HAVE_LIBSZ 1) + else () + if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ") + EXTERNAL_SZIP_LIBRARY (${HDF5_ALLOW_EXTERNAL_SUPPORT} ${HDF5_ENABLE_SZIP_ENCODING}) diff --git a/ports/hdf5/vcpkg.json b/ports/hdf5/vcpkg.json index 28d7104d137e97..25c2acc283d523 100644 --- a/ports/hdf5/vcpkg.json +++ b/ports/hdf5/vcpkg.json @@ -1,6 +1,7 @@ { "name": "hdf5", "version": "1.12.1", + "port-version": 1, "description": "HDF5 is a data model, library, and file format for storing and managing data", "homepage": "https://www.hdfgroup.org/downloads/hdf5/", "supports": "!uwp", diff --git a/ports/hypre/fix-dll-install-destination.patch b/ports/hypre/fix-dll-install-destination.patch new file mode 100644 index 00000000000000..68d335ccfd5f50 --- /dev/null +++ b/ports/hypre/fix-dll-install-destination.patch @@ -0,0 +1,12 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -459,7 +459,7 @@ install(TARGETS ${PROJECT_NAME} + EXPORT HYPRETargets + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" +- RUNTIME DESTINATION "${CMAKE_INSTALL_LIBDIR}" ++ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" + INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}") + install(FILES ${HYPRE_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}") + diff --git a/ports/hypre/portfile.cmake b/ports/hypre/portfile.cmake index 5d854d98522b1d..8645eaef1b8335 100644 --- a/ports/hypre/portfile.cmake +++ b/ports/hypre/portfile.cmake @@ -5,38 +5,35 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO hypre-space/hypre - REF v2.19.0 - SHA512 999979bc2e7d32aef7c084fc8508fb818e6f904db0ee3ebf6b8e8132f290201c407aaba0aa89e7bf09e7264f4e99caf04f3147458847de816fc8ffc81dbee2df + REF v2.23.0 + SHA512 bed8426d093e2290ab443f49deffad96a64e1b3844a4236bc59af19523b16ea8bf2318db21e42ab2b8a4dd529246ba1d9a4eb0cb3bd943633569d03e6311f67f HEAD_REF master + PATCHES + fix-dll-install-destination.patch ) -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - set(OPTIONS -DHYPRE_SHARED=ON) -else() - set(OPTIONS -DHYPRE_SHARED=OFF) -endif() +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" HYPRE_SHARED) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH}/src - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}/src" OPTIONS - ${OPTIONS} + -DHYPRE_SHARED=${HYPRE_SHARED} -DHYPRE_ENABLE_HYPRE_BLAS=OFF -DHYPRE_ENABLE_HYPRE_LAPACK=OFF OPTIONS_RELEASE -DHYPRE_BUILD_TYPE=Release - -DHYPRE_INSTALL_PREFIX=${CURRENT_PACKAGES_DIR} + "-DHYPRE_INSTALL_PREFIX=${CURRENT_PACKAGES_DIR}" OPTIONS_DEBUG -DHYPRE_BUILD_TYPE=Debug - -DHYPRE_INSTALL_PREFIX=${CURRENT_PACKAGES_DIR}/debug + "-DHYPRE_INSTALL_PREFIX=${CURRENT_PACKAGES_DIR}/debug" ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/HYPRE) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/HYPRE) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") # Handle copyright -file(INSTALL ${SOURCE_PATH}/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/COPYRIGHT" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/hypre/vcpkg.json b/ports/hypre/vcpkg.json index 4ca1f11b40d7b4..bcdb97323c23a8 100644 --- a/ports/hypre/vcpkg.json +++ b/ports/hypre/vcpkg.json @@ -1,12 +1,19 @@ { "name": "hypre", - "version-string": "2.19.0", - "port-version": 1, - "description": "SCALABLE LINEAR SOLVERS AND MULTIGRID METHODS", + "version": "2.23.0", + "description": "Parallel solvers for sparse linear systems featuring multigrid methods", "homepage": "https://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods", "dependencies": [ "blas", "lapack", - "mpi" + "mpi", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ] } diff --git a/ports/igraph/portfile.cmake b/ports/igraph/portfile.cmake index 2d57f74509d425..22e26a741978e0 100644 --- a/ports/igraph/portfile.cmake +++ b/ports/igraph/portfile.cmake @@ -4,9 +4,9 @@ # - The release tarball contains pre-generated parser sources, which eliminates the dependency on bison/flex. vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/igraph/igraph/releases/download/0.9.4/igraph-0.9.4.tar.gz" - FILENAME "igraph-0.9.4.tar.gz" - SHA512 1188d69b95f581d7dac5874dcdb2d1b1a322e39b275c6f092c199ed6214def814062bd46d573bdaa4bc8f4514d6840c6e93dedbe0f6c99a15de33cbc39356573 + URLS "https://github.com/igraph/igraph/releases/download/0.9.5/igraph-0.9.5.tar.gz" + FILENAME "igraph-0.9.5.tar.gz" + SHA512 2eb562bb898ff19f8e4ebb2d9f3393000b66154cb87318999bbb920793657e4e3a0b52d10bc8cbe4d2c3a5d27258fd8156df97f778065a92b969bfcb7d9fc28c ) vcpkg_extract_source_archive_ex( @@ -20,7 +20,7 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS openmp IGRAPH_OPENMP_SUPPORT ) -# Allow cross-compilation. See https://igraph.org/c/doc/igraph-Installation.html#idm207877354096 +# Allow cross-compilation. See https://igraph.org/c/html/latest/igraph-Installation.html#igraph-Installation-cross-compiling set(ARITH_H "") if (VCPKG_TARGET_IS_OSX) set(ARITH_H ${CURRENT_PORT_DIR}/arith_osx.h) @@ -32,9 +32,8 @@ elseif (VCPKG_TARGET_IS_WINDOWS OR VCPKG_TARGET_IS_UWP) endif() endif() -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DIGRAPH_ENABLE_LTO=AUTO # ARPACK not yet available in vcpkg. @@ -46,19 +45,19 @@ vcpkg_configure_cmake( -DIGRAPH_USE_INTERNAL_CXSPARSE=OFF # GLPK is not yet available in vcpkg. -DIGRAPH_USE_INTERNAL_GLPK=ON - # Currently, external GMP provides no performance of functionality benefits. + # Currently, external GMP provides no performance or functionality benefits. -DIGRAPH_USE_INTERNAL_GMP=ON -DF2C_EXTERNAL_ARITH_HEADER=${ARITH_H} ${FEATURE_OPTIONS} ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/igraph) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/igraph) file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/igraph/vcpkg.json b/ports/igraph/vcpkg.json index 33f6b1df8a74de..a339a6ac75e958 100644 --- a/ports/igraph/vcpkg.json +++ b/ports/igraph/vcpkg.json @@ -1,11 +1,18 @@ { "name": "igraph", - "version": "0.9.4", - "port-version": 1, + "version": "0.9.5", "description": "igraph is a C library for network analysis and graph theory, with an emphasis on efficiency portability and ease of use.", "homepage": "https://igraph.org/", "dependencies": [ - "suitesparse" + "suitesparse", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ], "default-features": [ "graphml" diff --git a/ports/iir1/portfile.cmake b/ports/iir1/portfile.cmake index 3babc1b2e395d2..0cd648c67ca8f8 100644 --- a/ports/iir1/portfile.cmake +++ b/ports/iir1/portfile.cmake @@ -1,25 +1,21 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO berndporr/iir1 - REF 67591c8eac591c576b9aabe9a2f288296bb263f0 #1.8.0 - SHA512 7bea56bd3a5251656834f43ea55e1a8bff48ed2b5576ea9d7bc058e371457b7a3e8fe26111ec9457d4aa9e397f3267d330c5353aea00810a5cc4d9bec2bdcc72 + REF 1.9.0 + SHA512 9dced1610fbbfd7194874e984f969880dc76df3562df575c07d022b9ac96c67334b542acea395531423dfb5b8d692b14abdaff0235f048ab6ca7221bfc57fdba HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake) vcpkg_copy_pdbs() -file(INSTALL ${SOURCE_PATH}/COPYING - DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} - RENAME copyright -) - file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/iir1/vcpkg.json b/ports/iir1/vcpkg.json index 3b79f3d6f3c5f1..db60d1efbf5294 100644 --- a/ports/iir1/vcpkg.json +++ b/ports/iir1/vcpkg.json @@ -1,9 +1,18 @@ { "name": "iir1", - "version": "1.8.0", - "port-version": 1, + "version": "1.9.0", "description": "Realtime C++ filter library", "homepage": "https://github.com/berndporr/iir1", "license": "MIT", - "supports": "!uwp" + "supports": "!uwp", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/imath/portfile.cmake b/ports/imath/portfile.cmake index a1c87da56e7ee8..ca245a1cbaa0e1 100644 --- a/ports/imath/portfile.cmake +++ b/ports/imath/portfile.cmake @@ -17,6 +17,7 @@ vcpkg_cmake_install() vcpkg_copy_pdbs() vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Imath) +vcpkg_fixup_pkgconfig() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") diff --git a/ports/imath/vcpkg.json b/ports/imath/vcpkg.json index 3383d617d3c08e..c8bc20ac6c9258 100644 --- a/ports/imath/vcpkg.json +++ b/ports/imath/vcpkg.json @@ -1,6 +1,7 @@ { "name": "imath", "version": "3.1.3", + "port-version": 1, "description": "Imath is a C++ and Python library of 2D and 3D vector, matrix, and math operations for computer graphics.", "homepage": "https://github.com/AcademySoftwareFoundation/Imath", "dependencies": [ diff --git a/ports/imgui-sfml/0002-fix_imgui_config.patch b/ports/imgui-sfml/0002-fix_imgui_config.patch deleted file mode 100644 index f5b7c7fc37d8ea..00000000000000 --- a/ports/imgui-sfml/0002-fix_imgui_config.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff --git a/imconfig-SFML.h b/imconfig-SFML.h -index ddfe05d..4e7634e 100644 ---- a/imconfig-SFML.h -+++ b/imconfig-SFML.h -@@ -23,5 +23,3 @@ - return sf::Color(static_cast(x * 255.f), static_cast(y * 255.f), \ - static_cast(z * 255.f), static_cast(w * 255.f)); \ - } -- --#define ImTextureID unsigned int diff --git a/ports/imgui-sfml/portfile.cmake b/ports/imgui-sfml/portfile.cmake index be89c847ca3d9f..290278406ca94b 100644 --- a/ports/imgui-sfml/portfile.cmake +++ b/ports/imgui-sfml/portfile.cmake @@ -3,12 +3,11 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO eliasdaler/imgui-sfml - REF 82dc2033e51b8323857c3ae1cf1f458b3a933c35 #v2.3 - SHA512 f27a0e65aa20229c73b27c4232269908dfeb5d78b1cef7299a179ecac6194d9829e148e95ed54b4500ffd36ada09fdbfadf67588c78bee87aff446ae80347bcf + REF 9cc8c57a4565551087be0d9aeb3ae55490aa1207 #v2.4 + SHA512 d44d85e44d17d05c4e21f71acbf5bf544364a9bbe4871be896edd29f9926948cd1ea7627b7d54524f7da64c494638fc126744ced57ea7997a4b712dd26eb6183 HEAD_REF master PATCHES 0001-fix_find_package.patch - 0002-fix_imgui_config.patch 004-fix-find-sfml.patch ) diff --git a/ports/imgui-sfml/vcpkg.json b/ports/imgui-sfml/vcpkg.json index 807fdd125c005d..5fb0c04043560b 100644 --- a/ports/imgui-sfml/vcpkg.json +++ b/ports/imgui-sfml/vcpkg.json @@ -1,6 +1,6 @@ { "name": "imgui-sfml", - "version": "2.3", + "version": "2.4", "description": "ImGui binding for use with SFML", "homepage": "https://github.com/eliasdaler/imgui-sfml", "dependencies": [ diff --git a/ports/influxdb-cxx/portfile.cmake b/ports/influxdb-cxx/portfile.cmake index cbdc50a5c6e69b..e666277a79363a 100644 --- a/ports/influxdb-cxx/portfile.cmake +++ b/ports/influxdb-cxx/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO offa/influxdb-cxx - REF v0.6.6 - SHA512 4c9a9bf7ccf430caaed088830dceda8cc4b4ec6b78187e5238c5e73f17583781d9d00e08db1011b86a4f418cdfbbfc8b000500461d013872a62096de456e47ea + REF v0.6.7 + SHA512 4e871c6d06c94b24b45aeedb7c74c75aed17332fbde76fc1e6c2ad06aeb41e268a95f4cab1c12c4402765c11811feb84bf48d60b138717c485327848782e402c HEAD_REF master ) @@ -11,18 +11,18 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS boost INFLUXCXX_WITH_BOOST ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DINFLUXCXX_TESTING=OFF -DINFLUXCXX_SYSTEMTEST=OFF ${FEATURE_OPTIONS} ) -vcpkg_install_cmake() +vcpkg_cmake_install() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake) -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/influxdb-cxx/vcpkg.json b/ports/influxdb-cxx/vcpkg.json index a54ce151214352..59724c89ae8c2f 100644 --- a/ports/influxdb-cxx/vcpkg.json +++ b/ports/influxdb-cxx/vcpkg.json @@ -1,10 +1,18 @@ { "name": "influxdb-cxx", - "version": "0.6.6", + "version": "0.6.7", "description": "InfluxDB C++ client library", "homepage": "https://github.com/offa/influxdb-cxx", "dependencies": [ - "curl" + "curl", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ], "features": { "boost": { diff --git a/ports/itk/portfile.cmake b/ports/itk/portfile.cmake index 8961379a5a66cc..055b0194f0b7cc 100644 --- a/ports/itk/portfile.cmake +++ b/ports/itk/portfile.cmake @@ -20,16 +20,17 @@ vcpkg_from_github( ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS - "vtk" Module_ITKVtkGlue - "cuda" Module_ITKCudaCommon # Requires RTK? - #"cuda" CUDA_HAVE_GPU # Automatically set by FindCUDA? - "cufftw" ITK_USE_CUFFTW - "opencl" ITK_USE_GPU - "tbb" Module_ITKTBB - "rtk" Module_RTK - "tools" RTK_BUILD_APPLICATIONS - # There are a lot of more (remote) modules and options in ITK - # feel free to add those as a feature + FEATURES + "vtk" Module_ITKVtkGlue + "cuda" Module_ITKCudaCommon # Requires RTK? + #"cuda" CUDA_HAVE_GPU # Automatically set by FindCUDA? + "cufftw" ITK_USE_CUFFTW + "opencl" ITK_USE_GPU + "tbb" Module_ITKTBB + "rtk" Module_RTK + "tools" RTK_BUILD_APPLICATIONS + # There are a lot of more (remote) modules and options in ITK + # feel free to add those as a feature ) if("cufftw" IN_LIST FEATURES) @@ -117,9 +118,8 @@ if (VCPKG_TARGET_ARCHITECTURE STREQUAL x64 OR VCPKG_TARGET_ARCHITECTURE STREQUAL endif() file(REMOVE_RECURSE "${SOURCE_PATH}/CMake/FindOpenCL.cmake") -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" DISABLE_PARALLEL_CONFIGURE OPTIONS -DBUILD_TESTING=OFF @@ -182,9 +182,9 @@ if(BUILD_RTK) # Remote Modules are only downloaded on configure. # TODO: In the future try to download via vcpkg_from_github and move the files. That way patching does not need this workaround vcpkg_apply_patches(SOURCE_PATH "${SOURCE_PATH}/Modules/Remote/RTK" QUIET PATCHES rtk/already_defined.patch rtk/unresolved.patch) endif() -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets() +vcpkg_cmake_config_fixup() if(TOOL_NAMES) vcpkg_copy_tools(TOOL_NAMES ${TOOL_NAMES} AUTO_CLEAN) @@ -195,4 +195,7 @@ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/cmake") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/ITK-5.1/itk_eigen.h" "include(${SOURCE_PATH}/CMake/UseITK.cmake)" "include(UseITK)") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/ITK-5.1/itk_eigen.h" "message(STATUS \"From ITK: Eigen3_DIR: ${CURRENT_INSTALLED_DIR}/share/eigen3\")" "") + +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/itk/vcpkg.json b/ports/itk/vcpkg.json index 394b45afba00f2..bf0769a766ccf0 100644 --- a/ports/itk/vcpkg.json +++ b/ports/itk/vcpkg.json @@ -1,7 +1,7 @@ { "name": "itk", - "version-string": "5.1.0", - "port-version": 5, + "version-semver": "5.1.0", + "port-version": 6, "description": "Insight Segmentation and Registration Toolkit (ITK) is used for image processing and analysis.", "homepage": "https://github.com/InsightSoftwareConsortium/ITK", "dependencies": [ @@ -30,6 +30,14 @@ "default-features": false }, "tiff", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "zlib" ], "features": { diff --git a/ports/jsoncpp/portfile.cmake b/ports/jsoncpp/portfile.cmake index e722bde64c2b81..84c1a54616361c 100644 --- a/ports/jsoncpp/portfile.cmake +++ b/ports/jsoncpp/portfile.cmake @@ -1,31 +1,32 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO open-source-parsers/jsoncpp - REF 9059f5cad030ba11d37818847443a53918c327b1 # 1.9.4 - SHA512 8062c83cad9dc453f1eb4886e63e054570e0f29dcd6594330d3b3628ba994915e26e08690cd28118805a766be200ac99ad4fbc131db3af895122a8d1bd87ef31 + REF 1.9.5 + SHA512 1d06e044759b1e1a4cc4960189dd7e001a0a4389d7239a6d59295af995a553518e4e0337b4b4b817e70da5d9731a4c98655af90791b6287870b5ff8d73ad8873 HEAD_REF master ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" JSONCPP_STATIC) +string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" STATIC_CRT) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DJSONCPP_WITH_CMAKE_PACKAGE=ON -DBUILD_STATIC_LIBS=${JSONCPP_STATIC} + -DJSONCPP_STATIC_WINDOWS_RUNTIME=${STATIC_CRT} -DJSONCPP_WITH_PKGCONFIG_SUPPORT=OFF -DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF -DJSONCPP_WITH_TESTS=OFF -DJSONCPP_WITH_EXAMPLE=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/jsoncpp) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/jsoncpp) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") vcpkg_copy_pdbs() -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/jsoncpp/vcpkg.json b/ports/jsoncpp/vcpkg.json index c334a11c112b09..f9daea0f09a9a7 100644 --- a/ports/jsoncpp/vcpkg.json +++ b/ports/jsoncpp/vcpkg.json @@ -1,7 +1,16 @@ { "name": "jsoncpp", - "version-string": "1.9.4", - "port-version": 1, + "version": "1.9.5", "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.", - "homepage": "https://github.com/open-source-parsers/jsoncpp" + "homepage": "https://github.com/open-source-parsers/jsoncpp", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/kdbindings/portfile.cmake b/ports/kdbindings/portfile.cmake new file mode 100644 index 00000000000000..736e8efbed177d --- /dev/null +++ b/ports/kdbindings/portfile.cmake @@ -0,0 +1,24 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO KDAB/KDBindings + REF bbf790fc94f3018781f32be53c6086aedc0f74ec + SHA512 4303f8e73b376e851d40cab99b848788ae2aff00e0e4ec0006655d8ef9373eebe5e04f734e78037e257d7a5101739b912da9dab15bf1985f204b31224d9c53c5 + HEAD_REF main +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DKDBindings_TESTS=OFF + -DKDBindings_EXAMPLES=OFF + -DKDBindings_DOCS=OFF +) +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/KDBindings) + +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/" + "${CURRENT_PACKAGES_DIR}/lib/" +) + +file(INSTALL "${SOURCE_PATH}/LICENSES/MIT.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/kdbindings/vcpkg.json b/ports/kdbindings/vcpkg.json new file mode 100644 index 00000000000000..0797c2cb15b0aa --- /dev/null +++ b/ports/kdbindings/vcpkg.json @@ -0,0 +1,17 @@ +{ + "name": "kdbindings", + "version": "1.0.0", + "description": "Reactive programming & data binding in C++", + "homepage": "https://github.com/KDAB/KDBindings", + "license": "MIT OR BSD-3-Clause", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/ports/kf5solid/fix-libmount.patch b/ports/kf5solid/fix-libmount.patch new file mode 100644 index 00000000000000..592f96ce98a34d --- /dev/null +++ b/ports/kf5solid/fix-libmount.patch @@ -0,0 +1,15 @@ +diff --git a/KF5SolidConfig.cmake.in b/KF5SolidConfig.cmake.in +index 0a23f44..7020804 100644 +--- a/KF5SolidConfig.cmake.in ++++ b/KF5SolidConfig.cmake.in +@@ -23,6 +23,10 @@ if (NOT @BUILD_SHARED_LIBS@) + find_dependency(Qt5Xml @REQUIRED_QT_VERSION@) + find_dependency(Qt5Gui @REQUIRED_QT_VERSION@) + ++ if (@HAVE_LIBMOUNT@) ++ find_dependency(LibMount) ++ endif() ++ + if (@Qt5DBus_FOUND@) + find_dependency(Qt5DBus @REQUIRED_QT_VERSION@) + endif() diff --git a/ports/kf5solid/portfile.cmake b/ports/kf5solid/portfile.cmake index 9474f1c001b37d..ae63332f793e29 100644 --- a/ports/kf5solid/portfile.cmake +++ b/ports/kf5solid/portfile.cmake @@ -6,6 +6,7 @@ vcpkg_from_github( HEAD_REF master PATCHES fix_config_cmake.patch # https://invent.kde.org/frameworks/solid/-/merge_requests/53 + fix-libmount.patch ) if(VCPKG_TARGET_IS_OSX) @@ -38,8 +39,9 @@ file(WRITE ${SOURCE_PATH}/.clang-format "DisableFormat: true\nSortIncludes: fals vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" - OPTIONS + OPTIONS -DBUILD_TESTING=OFF + -DCMAKE_DISABLE_FIND_PACKAGE_LibMount=ON ) vcpkg_cmake_install() diff --git a/ports/kf5solid/vcpkg.json b/ports/kf5solid/vcpkg.json index c825d05b8df875..f2924d6642acc6 100644 --- a/ports/kf5solid/vcpkg.json +++ b/ports/kf5solid/vcpkg.json @@ -1,7 +1,7 @@ { "name": "kf5solid", - "version-semver": "5.84.0", - "port-version": 2, + "version": "5.84.0", + "port-version": 3, "description": "Desktop hardware abstraction", "homepage": "https://api.kde.org/frameworks/solid/html/index.html", "dependencies": [ diff --git a/ports/kissfft/CMakeLists.txt b/ports/kissfft/CMakeLists.txt index 8d522ecb9205b0..d209dfbb04bafd 100644 --- a/ports/kissfft/CMakeLists.txt +++ b/ports/kissfft/CMakeLists.txt @@ -16,7 +16,7 @@ endif () # TODO: FIXED_POINT # TODO: -msse -set(kissfft_sources kiss_fft.c) +set(kissfft_sources kiss_fft.c kiss_fftr.c kiss_fftnd.c kiss_fftndr.c) if (WIN32 AND BUILD_SHARED_LIBS) list(APPEND kissfft_sources exports.def) @@ -49,6 +49,9 @@ if (KF_INSTALL_HEADERS) FILES _kiss_fft_guts.h kiss_fft.h + kiss_fftr.h + kiss_fftnd.h + kiss_fftndr.h kissfft.hh kissfft_i32.hh DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} diff --git a/ports/kissfft/exports.def b/ports/kissfft/exports.def index 09897b9da58dbc..53984a6fe00e7c 100644 --- a/ports/kissfft/exports.def +++ b/ports/kissfft/exports.def @@ -1,6 +1,15 @@ -EXPORTS +EXPORTS kiss_fft_alloc kiss_fft + kiss_fftr_alloc + kiss_fftr + kiss_fftri + kiss_fft + kiss_fftnd_alloc + kiss_fftnd + kiss_fftndr_alloc + kiss_fftndr + kiss_fftndri kiss_fft_stride kiss_fft_cleanup kiss_fft_next_fast_size diff --git a/ports/kissfft/portfile.cmake b/ports/kissfft/portfile.cmake index d5eea7889a5d6e..ccb77514b736b6 100644 --- a/ports/kissfft/portfile.cmake +++ b/ports/kissfft/portfile.cmake @@ -1,30 +1,28 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mborgerding/kissfft - REF 3f3fc6ab55da8610aba7fe89dcda09cf3a31f4e6 - SHA512 5d3781a82d067cebd0a20c6b35a2d806598ba66f3bbf282c49a2ac9a6d09e1307dca1f8bc5fcc4c5955dc2f66aa94ca4dcfe00e6b31ea4694aa9d507f194554e + REF 8f47a67f595a6641c566087bf5277034be64f24d + SHA512 ae39438b6d029296a440e1421f30731f371364107744fe9bad68e835e939f9a06d63016a99f5395a490ee0b1b1c33d46faafc651d91f13b8733d366e04dc861a HEAD_REF master ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) file(COPY ${CMAKE_CURRENT_LIST_DIR}/exports.def DESTINATION ${SOURCE_PATH}) -vcpkg_configure_cmake( +vcpkg_cmake_configure( SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA OPTIONS_DEBUG -DKF_INSTALL_HEADERS=OFF OPTIONS_RELEASE -DKF_INSTALL_HEADERS=ON ) -vcpkg_install_cmake() - +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets( +vcpkg_cmake_config_fixup( + PACKAGE_NAME unofficial-${PORT} CONFIG_PATH lib/cmake/unofficial-${PORT} - TARGET_PATH share/unofficial-${PORT} ) file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/kissfft/vcpkg.json b/ports/kissfft/vcpkg.json index b3e0193da6ada6..48e6b5c19c8b12 100644 --- a/ports/kissfft/vcpkg.json +++ b/ports/kissfft/vcpkg.json @@ -1,7 +1,16 @@ { "name": "kissfft", - "version-string": "2020-03-30", - "port-version": 1, + "version-date": "2021-11-14", "description": "A Fast Fourier Transform (FFT) library that tries to Keep it Simple, Stupid", - "homepage": "https://github.com/mborgerding/kissfft" + "homepage": "https://github.com/mborgerding/kissfft", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/knet/portfile.cmake b/ports/knet/portfile.cmake index 49487e6d16d3a3..73e97179b62d93 100644 --- a/ports/knet/portfile.cmake +++ b/ports/knet/portfile.cmake @@ -5,8 +5,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO kibaamor/knet - REF v1.0.3 - SHA512 8bc4fb43b456d86ecae939cfae539432bde1f7ad2261abf9a7654d7476eb6502f53cd314f21dd23f77eb8d2969d293f6cb886729c688ea25911157c7fa3c8b7c + REF v1.1.0 + SHA512 22f46c2626c60798a99d7fe3027b675d40584df141fc1131a0d737df28f3e633ec798567defd131b08c3b3ec81069648ed45c2e37eacf37dc15ead45ab24ee55 HEAD_REF master ) @@ -14,6 +14,8 @@ vcpkg_cmake_configure( SOURCE_PATH ${SOURCE_PATH} DISABLE_PARALLEL_CONFIGURE OPTIONS + -DKNET_ENABLE_LOG=OFF + -DKNET_SOCKET_STAT=OFF -DKNET_BUILD_EXAMPLE=OFF -DKNET_BUILD_TEST=OFF ) diff --git a/ports/knet/vcpkg.json b/ports/knet/vcpkg.json index 3eb8859bf4b3f2..dfad9b2c133a15 100644 --- a/ports/knet/vcpkg.json +++ b/ports/knet/vcpkg.json @@ -1,6 +1,6 @@ { "name": "knet", - "version": "1.0.3", + "version": "1.1.0", "description": "A cross platform lock-free and timer-supported C++11 network library.", "homepage": "https://github.com/kibaamor/knet", "license": "MIT", diff --git a/ports/kubernetes/portfile.cmake b/ports/kubernetes/portfile.cmake index 8e9f36c9355b20..a2f0e67e07c3ce 100644 --- a/ports/kubernetes/portfile.cmake +++ b/ports/kubernetes/portfile.cmake @@ -3,8 +3,8 @@ vcpkg_fail_port_install(ON_TARGET "UWP") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO kubernetes-client/c - REF ecc9efc23656e747e97f86fbe2810f7e8471990f - SHA512 e9bb1b6f68aacd82df2b33fcb432fdfee5fb56e0426835f8480afff1c2545f483eb0f4edeafb2e866ea74918d748aa48655b5819909c13a88f693e371047e8b7 + REF f16ac13090902373e3e3c9deef064659a3c9215e + SHA512 07857a6aae4116a51b776af7ba4ede12c1f479b535b5b8b2e373e73eac718b367e84eb87b60faeb1174be0562d35ac78f36469f2128294c028a96ecb181580eb HEAD_REF master PATCHES 001-fix-destination.patch diff --git a/ports/kubernetes/vcpkg.json b/ports/kubernetes/vcpkg.json index 351c86073acd13..549bbe296b080f 100644 --- a/ports/kubernetes/vcpkg.json +++ b/ports/kubernetes/vcpkg.json @@ -1,6 +1,6 @@ { "name": "kubernetes", - "version": "0.0.1", + "version-date": "2021-11-18", "description": "Kubernetes C client", "homepage": "https://github.com/kubernetes-client/c/", "supports": "!uwp", diff --git a/ports/lager/portfile.cmake b/ports/lager/portfile.cmake index 8df28b481385e9..737df91aaf4620 100644 --- a/ports/lager/portfile.cmake +++ b/ports/lager/portfile.cmake @@ -23,5 +23,7 @@ vcpkg_cmake_configure( vcpkg_cmake_install() vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Lager) +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/lager/resources_path.hpp" "${CURRENT_PACKAGES_DIR}" ".") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib") file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/lager/vcpkg.json b/ports/lager/vcpkg.json index af6e3d5652afc5..d59ce787cf0d6e 100644 --- a/ports/lager/vcpkg.json +++ b/ports/lager/vcpkg.json @@ -1,6 +1,7 @@ { "name": "lager", "version-date": "2021-06-17", + "port-version": 1, "description": "C++ library for value-oriented design using the unidirectional data-flow architecture", "homepage": "https://sinusoid.es/lager/", "dependencies": [ diff --git a/ports/launch-darkly-server/portfile.cmake b/ports/launch-darkly-server/portfile.cmake new file mode 100644 index 00000000000000..f16ab0424308ac --- /dev/null +++ b/ports/launch-darkly-server/portfile.cmake @@ -0,0 +1,33 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO launchdarkly/c-server-sdk + REF 0d9db81862e1b17426da9b433a19376dd6458937 # 2.4.3 + SHA512 1bbafd212b0a271909a03319954ee2c92a3dde713fe7f9e0fdd79a5f011f0775701060b66ae9b3a4efad59376241b893d4b3d6679743c41e7657c355c7e3df5c + HEAD_REF master +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + "-DBUILD_TESTING=OFF" + "-DSKIP_DATABASE_TESTS=OFF" +) + +vcpkg_cmake_install() + +if(VCPKG_TARGET_IS_WINDOWS) + if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/ldserverapi.dll" "${CURRENT_PACKAGES_DIR}/bin/ldserverapi.dll") + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/ldserverapi.dll" "${CURRENT_PACKAGES_DIR}/debug/bin/ldserverapi.dll") + endif() +endif() + +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/include" + ) + +vcpkg_copy_pdbs() + +# Handle copyright +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/launch-darkly-server/vcpkg.json b/ports/launch-darkly-server/vcpkg.json new file mode 100644 index 00000000000000..680d9ce9820a3e --- /dev/null +++ b/ports/launch-darkly-server/vcpkg.json @@ -0,0 +1,19 @@ +{ + "name": "launch-darkly-server", + "version": "2.4.3", + "description": "LaunchDarkly server-side SDK for C/C++", + "homepage": "https://github.com/launchdarkly/c-server-sdk", + "supports": "!uwp & !arm", + "dependencies": [ + "curl", + "pcre", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/ports/libalkimia/dll_names.diff b/ports/libalkimia/dll_names.diff new file mode 100644 index 00000000000000..3fb5a3a3649dae --- /dev/null +++ b/ports/libalkimia/dll_names.diff @@ -0,0 +1,21 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 643ffcf3d7b4ce59285343f92a1407927c111881..382d3c6ed244e24dec9f144c02e0c3459e8369a9 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -156,10 +156,12 @@ install( + + generate_export_header(alkimia BASE_NAME alk EXPORT_FILE_NAME alkimia/alk_export.h) + +-if(WIN32) +- set_target_properties(alkimia PROPERTIES SUFFIX "-${ALKIMIA_LIB_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}") +-else() +- set_target_properties(alkimia PROPERTIES VERSION ${ALKIMIA_LIB_VERSION} SOVERSION ${ALKIMIA_LIB_SOVERSION}) ++if(BUILD_SHARED_LIBS) ++ if(WIN32) ++ set_target_properties(alkimia PROPERTIES SUFFIX "-${ALKIMIA_LIB_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}") ++ else() ++ set_target_properties(alkimia PROPERTIES VERSION ${ALKIMIA_LIB_VERSION} SOVERSION ${ALKIMIA_LIB_SOVERSION}) ++ endif() + endif() + set_target_properties(alkimia PROPERTIES OUTPUT_NAME alkimia${ALKIMIA_LIB_SUFFIX}) + set(INCLUDE_INSTALL_DIR include/alkimia/${ALKIMIA_INCLUDE_SUFFIX}) diff --git a/ports/libalkimia/fix_explicit_shared_lib.diff b/ports/libalkimia/fix_explicit_shared_lib.diff new file mode 100644 index 00000000000000..598ee3d60fb028 --- /dev/null +++ b/ports/libalkimia/fix_explicit_shared_lib.diff @@ -0,0 +1,70 @@ +diff --git a/qml/CMakeLists.txt b/qml/CMakeLists.txt +index f74449b591bafd4ad0c41627139a08e29028ab21..a317307a438542e4cf26d50643057b5e9b649594 100644 +--- a/qml/CMakeLists.txt ++++ b/qml/CMakeLists.txt +@@ -22,7 +22,7 @@ else() + endif() + + configure_file(qmldir ${IMPORTS_DIR}/qmldir) +-add_library(qmlalkimia SHARED qmlalkimiaplugin.cpp) ++add_library(qmlalkimia qmlalkimiaplugin.cpp) + target_link_libraries(qmlalkimia ${LIBS} alkimia) + + install(TARGETS qmlalkimia +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index e57c94adf6c3785e5c646c7c95b586392737d686..b467849c7ff25d2ce424b30591cfe9a1e9357a46 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -103,7 +103,7 @@ endforeach() + add_definitions(-DKNSRC_DIR="${CMAKE_CURRENT_SOURCE_DIR}") + + ki18n_wrap_ui(alkimia_LIB_SRCS ${alkimia_UI} ) +-add_library(alkimia SHARED ${alkimia_LIB_SRCS} ${alkimia_INTERNAL_SRCS} ${alkimia_LIB_HEADERS} ${alkimia_LIB_PRIVATE_HEADERS}) ++add_library(alkimia ${alkimia_LIB_SRCS} ${alkimia_INTERNAL_SRCS} ${alkimia_LIB_HEADERS} ${alkimia_LIB_PRIVATE_HEADERS}) + + kde_target_enable_exceptions(alkimia PUBLIC) + if(BUILD_QT4) +@@ -164,7 +164,13 @@ endif() + set_target_properties(alkimia PROPERTIES OUTPUT_NAME alkimia${ALKIMIA_LIB_SUFFIX}) + set(INCLUDE_INSTALL_DIR include/alkimia/${ALKIMIA_INCLUDE_SUFFIX}) + +-install(TARGETS alkimia ++if(${BUILD_SHARED_LIBS}) ++ set(alkimia_export_targets alkimia) ++else() ++ set(alkimia_export_targets alkimia alkimia-internal) ++endif() ++ ++install(TARGETS ${alkimia_export_targets} + EXPORT alkimiaTargets + ${INSTALL_TARGETS_DEFAULT_ARGS} + ) +@@ -228,7 +234,7 @@ configure_package_config_file( + + ########### install files ############### + +-export(TARGETS alkimia ++export(TARGETS ${alkimia_export_targets} + FILE "${CMAKE_CURRENT_BINARY_DIR}/LibAlkimia${ALKIMIA_PATH_SUFFIX}Targets.cmake" + NAMESPACE Alkimia:: + ) +diff --git a/src/LibAlkimiaConfig.cmake.in b/src/LibAlkimiaConfig.cmake.in +index a8893c6fe347ce2d2fe1e0a2854a206e0e41901c..8dcfdf8c13f4306a349052d1c4194e65725a50b4 100644 +--- a/src/LibAlkimiaConfig.cmake.in ++++ b/src/LibAlkimiaConfig.cmake.in +@@ -12,6 +12,15 @@ else() + endif() + find_dependency(@MP_CMAKE_MODULE@) + ++if (NOT @BUILD_SHARED_LIBS@) ++ find_dependency(KF5Completion) ++ find_dependency(KF5I18n) ++ find_dependency(KF5NewStuff) ++ find_dependency(KF5IconThemes) ++ find_dependency(KF5TextWidgets) ++ find_dependency(KF5KIO) ++endif() ++ + include("${CMAKE_CURRENT_LIST_DIR}/LibAlkimia@ALKIMIA_PATH_SUFFIX@Targets.cmake") + + set_and_check(LIBALKIMIA_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@") diff --git a/ports/libalkimia/portfile.cmake b/ports/libalkimia/portfile.cmake new file mode 100644 index 00000000000000..4d12566d2f70a8 --- /dev/null +++ b/ports/libalkimia/portfile.cmake @@ -0,0 +1,50 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO KDE/alkimia + REF 595186bee8409f30e5db091fffa245fc53ad92e8 + SHA512 509082e22bc0a2ce0586e1167df14fd42ac85321315c1ee2914f60e695d1e2e8beae4fc93d16d0053edb520fc391a3dbe30777638285b295e761ad70512688ca + HEAD_REF master + PATCHES + fix_explicit_shared_lib.diff + dll_names.diff # https://invent.kde.org/office/alkimia/-/commit/0ff901025a747ab31ab7efba9f8899b06774f60a +) + +# Prevent KDEClangFormat from writing to source effectively blocking parallel configure +file(WRITE ${SOURCE_PATH}/.clang-format "DisableFormat: true\nSortIncludes: false\n") + +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + webengine BUILD_WITH_WEBENGINE + tools BUILD_TOOLS +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DKDE_INSTALL_QMLDIR=qml + -DBUNDLE_INSTALL_DIR=bin + -DBUILD_TESTING=OFF + -DBUILD_DOXYGEN_DOCS=OFF + -DBUILD_WITH_WEBKIT=OFF + -DBUILD_APPLETS=OFF + ${FEATURE_OPTIONS} + MAYBE_UNUSED_VARIABLES + BUNDLE_INSTALL_DIR +) + +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(PACKAGE_NAME LibAlkimia5 CONFIG_PATH lib/cmake/LibAlkimia5-8.1) +vcpkg_copy_pdbs() + +if ("tools" IN_LIST FEATURES) + vcpkg_copy_tools(TOOL_NAMES onlinequoteseditor5 AUTO_CLEAN) +endif() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") +endif() + +file(INSTALL "${SOURCE_PATH}/COPYING.LIB" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/libalkimia/vcpkg.json b/ports/libalkimia/vcpkg.json new file mode 100644 index 00000000000000..4c1e965d81a168 --- /dev/null +++ b/ports/libalkimia/vcpkg.json @@ -0,0 +1,47 @@ +{ + "name": "libalkimia", + "version": "8.1.70", + "description": "Common functionality for finance applications.", + "homepage": "https://community.kde.org/Alkimia/libalkimia", + "dependencies": [ + "ecm", + { + "name": "gettext", + "host": true, + "features": [ + "tools" + ] + }, + "gmp", + "kf5completion", + "kf5config", + "kf5coreaddons", + "kf5i18n", + "kf5iconthemes", + "kf5kio", + "kf5newstuff", + "kf5textwidgets", + "kf5xmlgui", + "qt5-base", + "qt5-tools", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], + "features": { + "tools": { + "description": "Enables tools, including Online Quotes Editor" + }, + "webengine": { + "description": "Enables JavaScript support for parsing feature-rich websites", + "dependencies": [ + "qt5-webengine" + ] + } + } +} diff --git a/ports/libarchive/usage b/ports/libarchive/usage index 57f9f2ba23248a..cf8c24304535e8 100644 --- a/ports/libarchive/usage +++ b/ports/libarchive/usage @@ -1,5 +1,5 @@ The package libarchive is compatible with built-in CMake targets: - find_package(libarchive REQUIRED) + find_package(LibArchive REQUIRED) target_include_directories(main PRIVATE ${LibArchive_INCLUDE_DIRS}) target_link_libraries(main PRIVATE ${LibArchive_LIBRARIES}) diff --git a/ports/libarchive/vcpkg.json b/ports/libarchive/vcpkg.json index c8060441126495..0eb93f942a66d5 100644 --- a/ports/libarchive/vcpkg.json +++ b/ports/libarchive/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libarchive", "version-semver": "3.5.2", - "port-version": 1, + "port-version": 2, "description": "Library for reading and writing streaming archives", "homepage": "https://github.com/libarchive/libarchive", "supports": "!uwp", diff --git a/ports/libatomic-ops/portfile.cmake b/ports/libatomic-ops/portfile.cmake new file mode 100644 index 00000000000000..357a590f2ae7e2 --- /dev/null +++ b/ports/libatomic-ops/portfile.cmake @@ -0,0 +1,24 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO ivmai/libatomic_ops + REF 7a8de3bd9c6c61c68a866b849e7b1d17d76d2d36 # v7.7.0-20211109 + SHA512 05555792a199526d8e164833f590cc57c5ee34672d81952787a09dd7008e947e4e8b6ad63fb6b8ee315294b98fdf743639622b3d9156d8a8f8363b431e875c45 + HEAD_REF master +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + PREFER_NINJA + OPTIONS_DEBUG + -Dinstall_headers=OFF +) + +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(PACKAGE_NAME atomic_ops CONFIG_PATH lib/cmake/atomic_ops) +vcpkg_copy_pdbs() + +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") + +vcpkg_fixup_pkgconfig() diff --git a/ports/libatomic-ops/vcpkg.json b/ports/libatomic-ops/vcpkg.json new file mode 100644 index 00000000000000..7bbf9dcd6b9cf2 --- /dev/null +++ b/ports/libatomic-ops/vcpkg.json @@ -0,0 +1,15 @@ +{ + "name": "libatomic-ops", + "version": "7.7.0", + "description": "The atomic_ops project (Atomic memory update operations portable implementation)", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/ports/libdivide/portfile.cmake b/ports/libdivide/portfile.cmake index 32ea56b258d205..78f42e5bd6f878 100644 --- a/ports/libdivide/portfile.cmake +++ b/ports/libdivide/portfile.cmake @@ -1,32 +1,33 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ridiculousfish/libdivide - REF v4.0.0 - SHA512 662b8f479c3f822563d4f1c85c77c204f47e992391cd5ca3376d6e19e4d2132c28ad59b8e3179edd706fceeabf0d1bc7be5e713eeb669523952155a2d7770326 + REF 5.0 + SHA512 89581efab63a0668405196d4d8188e03f3b87027e9014ef7238e1d79fe369d8abbca0e44b00cf02b00be29c272feb34c9b9290313596adbef9b46ae0715c29dd HEAD_REF master ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - test BUILD_TESTS + test BUILD_TESTS ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS ${FEATURE_OPTIONS} - -DLIBDIVIDE_SSE2=OFF - -DLIBDIVIDE_AVX2=OFF - -DLIBDIVIDE_AVX512=OFF - -DENABLE_VECTOR_EXTENSIONS=OFF +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + ${FEATURE_OPTIONS} + -DLIBDIVIDE_SSE2=OFF + -DLIBDIVIDE_AVX2=OFF + -DLIBDIVIDE_AVX512=OFF + -DLIBDIVIDE_NEON=OFF + -DENABLE_VECTOR_EXTENSIONS=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT}) +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/${PORT}") -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") # Handle copyright -file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/libdivide/vcpkg.json b/ports/libdivide/vcpkg.json index 5ae81457514ae0..ff29d9d5d3e32e 100644 --- a/ports/libdivide/vcpkg.json +++ b/ports/libdivide/vcpkg.json @@ -1,9 +1,18 @@ { "name": "libdivide", - "version-string": "4.0.0", - "port-version": 1, + "version": "5.0", "description": "libdivide.h is a header-only C/C++ library for optimizing integer division.", "homepage": "https://github.com/ridiculousfish/libdivide", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], "features": { "test": { "description": "Build test" diff --git a/ports/libepoxy/portfile.cmake b/ports/libepoxy/portfile.cmake index 83a32bb74d8767..ff72544e28cc09 100644 --- a/ports/libepoxy/portfile.cmake +++ b/ports/libepoxy/portfile.cmake @@ -9,8 +9,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO anholt/libepoxy - REF 1.5.5 - SHA512 9056840d887f06c6422f61e65ea02511ed37b866a234d49bf78dc5f2f46e8dd9f029405387da14dced639e6a5740b5c56ab6d88ca23ea3270fc6db6a570b0c45 + REF 1.5.9 + SHA512 2b7c269063dc1c156c1a2a525e27a0a323baaa7fa4ac091536e4cc5fc4c247efe9770d7979dbddb54deb14853008bb6f4d67fddd26d87cbd264eb1e6e65bc5a8 HEAD_REF master ) @@ -24,7 +24,7 @@ if(VCPKG_TARGET_IS_WINDOWS) endif() vcpkg_configure_meson( - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH "${SOURCE_PATH}" OPTIONS ${OPTIONS} -Dtests=false diff --git a/ports/libepoxy/vcpkg.json b/ports/libepoxy/vcpkg.json index d5f7b4259c3013..b786ce4e4cacf2 100644 --- a/ports/libepoxy/vcpkg.json +++ b/ports/libepoxy/vcpkg.json @@ -1,7 +1,6 @@ { "name": "libepoxy", - "version-semver": "1.5.5", - "port-version": 1, + "version-semver": "1.5.9", "description": "Epoxy is a library for handling OpenGL function pointer management for you", "homepage": "https://github.com/anholt/libepoxy", "dependencies": [ diff --git a/ports/libgpg-error/portfile.cmake b/ports/libgpg-error/portfile.cmake index 711f7e76e62442..17d26617d24996 100644 --- a/ports/libgpg-error/portfile.cmake +++ b/ports/libgpg-error/portfile.cmake @@ -40,7 +40,7 @@ if(VCPKG_TARGET_IS_WINDOWS) vcpkg_install_msbuild( USE_VCPKG_INTEGRATION - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH "${SOURCE_PATH}" PROJECT_SUBPATH SMP/libgpg-error.sln PLATFORM ${TRIPLET_SYSTEM_ARCH} LICENSE_SUBPATH COPYING.LIB @@ -81,7 +81,7 @@ else() vcpkg_configure_make( AUTOCONFIG - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH "${SOURCE_PATH}" OPTIONS --disable-tests --disable-doc @@ -91,7 +91,8 @@ else() vcpkg_install_make() vcpkg_fixup_pkgconfig() vcpkg_copy_pdbs() - + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/libgpg-error/bin/gpg-error-config" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../../..") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/libgpg-error/debug/bin/gpg-error-config" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../../../..") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/${PORT}/locale" "${CURRENT_PACKAGES_DIR}/debug/share") file(INSTALL "${SOURCE_PATH}/COPYING.LIB" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) -endif() \ No newline at end of file +endif() diff --git a/ports/libgpg-error/vcpkg.json b/ports/libgpg-error/vcpkg.json index 81024b701a43a3..515330256255c5 100644 --- a/ports/libgpg-error/vcpkg.json +++ b/ports/libgpg-error/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libgpg-error", "version": "1.42", - "port-version": 1, + "port-version": 2, "description": "A common dependency of all GnuPG components", "homepage": "https://gnupg.org/software/libgpg-error/index.html", "supports": "!(windows & (arm | arm64))" diff --git a/ports/libical/portfile.cmake b/ports/libical/portfile.cmake new file mode 100644 index 00000000000000..93c9355de0cc95 --- /dev/null +++ b/ports/libical/portfile.cmake @@ -0,0 +1,41 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO libical/libical + REF v3.0.11 + SHA512 cdee86c50edc2373ab2024d7d4ae26dd4b9a728dbc13083472c4923c67f61ff3cef7d43edca762c6a11979d2040fc1576a033eaa23a19e58af8f14a7d67fc139 +) + +vcpkg_find_acquire_program(PERL) +get_filename_component(PERL_PATH ${PERL} DIRECTORY) +vcpkg_add_to_path(${PERL_PATH}) + +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + INVERTED_FEATURES + "rscale" CMAKE_DISABLE_FIND_PACKAGE_ICU +) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + list(APPEND FEATURE_OPTIONS -DSTATIC_ONLY=ON) +else() + list(APPEND FEATURE_OPTIONS -DSHARED_ONLY=ON) +endif() + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DCMAKE_DISABLE_FIND_PACKAGE_BDB=ON + -DUSE_BUILTIN_TZDATA=ON + -DICAL_GLIB=OFF + -DICAL_BUILD_DOCS=OFF + -DLIBICAL_BUILD_TESTING=OFF + ${FEATURE_OPTIONS} +) + +vcpkg_cmake_install() +vcpkg_copy_pdbs() +vcpkg_cmake_config_fixup(PACKAGE_NAME LibIcal CONFIG_PATH CONFIG_PATH lib/cmake/LibIcal) + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") + +file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/libical/vcpkg.json b/ports/libical/vcpkg.json new file mode 100644 index 00000000000000..7ff86fb1199a06 --- /dev/null +++ b/ports/libical/vcpkg.json @@ -0,0 +1,25 @@ +{ + "name": "libical", + "version": "3.0.11", + "description": "Reference implementation of the iCalendar data type and serialization format", + "homepage": "https://github.com/libical/libical", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], + "features": { + "rscale": { + "description": "Support for RSCALE element", + "supports": "!static", + "dependencies": [ + "icu" + ] + } + } +} diff --git a/ports/libmariadb/export-cmake-targets.patch b/ports/libmariadb/export-cmake-targets.patch index c841a1fe917a0b..13c6c1a61bc29c 100644 --- a/ports/libmariadb/export-cmake-targets.patch +++ b/ports/libmariadb/export-cmake-targets.patch @@ -3,14 +3,14 @@ index c109a20..e1fa3f1 100644 --- a/libmariadb/CMakeLists.txt +++ b/libmariadb/CMakeLists.txt @@ -405,6 +405,7 @@ ELSE() - TARGET_LINK_LIBRARIES(libmariadb LINK_PRIVATE mariadbclient) + ADD_LIBRARY(libmariadb ${libmariadb_RC} ${MARIADB_OBJECTS} mariadbclient.def) SET_TARGET_PROPERTIES(libmariadb PROPERTIES LINKER_LANGUAGE C) ENDIF() +TARGET_INCLUDE_DIRECTORIES(libmariadb PUBLIC $) TARGET_LINK_LIBRARIES(libmariadb LINK_PRIVATE ${SYSTEM_LIBS}) -@@ -453,13 +454,25 @@ ENDIF() +@@ -453,13 +454,30 @@ ENDIF() INSTALL(TARGETS mariadbclient COMPONENT Development @@ -23,15 +23,20 @@ index c109a20..e1fa3f1 100644 LIBRARY DESTINATION lib ARCHIVE DESTINATION lib) -+install(EXPORT unofficial-libmariadb-targets DESTINATION share/unofficial-libmariadb) ++install(EXPORT unofficial-libmariadb-targets ++ NAMESPACE unofficial:: ++ DESTINATION share/unofficial-libmariadb ++) + -+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/unofficial-libmariadb-config.cmake" ++file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/unofficial-libmariadb-config.cmake.in" +[[include(CMakeFindDependencyMacro) +find_dependency(ZLIB) -+find_dependency(OpenSSL) ++if("@WITH_SSL@" STREQUAL "OPENSSL") ++ find_dependency(OpenSSL) ++endif() +include("${CMAKE_CURRENT_LIST_DIR}/unofficial-libmariadb-targets.cmake") +]]) -+ ++configure_file("${CMAKE_CURRENT_BINARY_DIR}/unofficial-libmariadb-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/unofficial-libmariadb-config.cmake" @ONLY) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/unofficial-libmariadb-config.cmake DESTINATION share/unofficial-libmariadb) IF(0) diff --git a/ports/libmariadb/fix-InstallPath.patch b/ports/libmariadb/fix-InstallPath.patch index bdf81788e3554a..c9794fc58fa4e3 100644 --- a/ports/libmariadb/fix-InstallPath.patch +++ b/ports/libmariadb/fix-InstallPath.patch @@ -23,11 +23,11 @@ index bcfd4de..c109a20 100644 + ADD_LIBRARY(libmariadb ${libmariadb_RC} ${MARIADB_OBJECTS} ${EMPTY_FILE}) SET_TARGET_PROPERTIES(libmariadb PROPERTIES COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS}") ELSE() -- ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} mariadbclient.def) -+ ADD_LIBRARY(libmariadb ${libmariadb_RC} mariadbclient.def) - TARGET_LINK_LIBRARIES(libmariadb LINK_PRIVATE mariadbclient) +- ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} ${MARIADB_OBJECTS} mariadbclient.def) ++ ADD_LIBRARY(libmariadb ${libmariadb_RC} ${MARIADB_OBJECTS} mariadbclient.def) SET_TARGET_PROPERTIES(libmariadb PROPERTIES LINKER_LANGUAGE C) ENDIF() + @@ -453,13 +453,15 @@ ENDIF() INSTALL(TARGETS mariadbclient diff --git a/ports/libmariadb/fix-build-error-with-cmake3.20.patch b/ports/libmariadb/fix-build-error-with-cmake3.20.patch deleted file mode 100644 index 1eed4ee4741b0d..00000000000000 --- a/ports/libmariadb/fix-build-error-with-cmake3.20.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/cmake/ConnectorName.cmake b/cmake/ConnectorName.cmake -index b7bbbad..357b8ac 100644 ---- a/cmake/ConnectorName.cmake -+++ b/cmake/ConnectorName.cmake -@@ -22,7 +22,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Windows") - SET(MACHINE_NAME "x64") - ELSE() - SET(MACHINE_NAME "32") -- END() -+ ENDIF() - ENDIF() - - SET(product_name "mysql-connector-c-${CPACK_PACKAGE_VERSION}-${PLATFORM_NAME}${CONCAT_SIGN}${MACHINE_NAME}") diff --git a/ports/libmariadb/fix-openssl.patch b/ports/libmariadb/fix-openssl.patch new file mode 100644 index 00000000000000..01b3b5e0101fcf --- /dev/null +++ b/ports/libmariadb/fix-openssl.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 33565f5..d83176d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -280,7 +280,7 @@ IF(NOT WITH_SSL STREQUAL "OFF") + IF(OPENSSL_FOUND) + ADD_DEFINITIONS(-DHAVE_OPENSSL -DHAVE_TLS) + SET(SSL_SOURCES "${CC_SOURCE_DIR}/libmariadb/secure/openssl.c") +- SET(SSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_CRYPTO_LIBRARY}) ++ SET(SSL_LIBRARIES OpenSSL::SSL) + IF(WIN32) + CHECK_INCLUDE_FILES (${OPENSSL_INCLUDE_DIR}/openssl/applink.c HAVE_OPENSSL_APPLINK_C) + ENDIF() diff --git a/ports/libmariadb/no-extra-static-lib.patch b/ports/libmariadb/no-extra-static-lib.patch new file mode 100644 index 00000000000000..333be12495de45 --- /dev/null +++ b/ports/libmariadb/no-extra-static-lib.patch @@ -0,0 +1,19 @@ +diff --git a/libmariadb/CMakeLists.txt b/libmariadb/CMakeLists.txt +index 39fa709..a726a6d 100644 +--- a/libmariadb/CMakeLists.txt ++++ b/libmariadb/CMakeLists.txt +@@ -455,10 +455,14 @@ IF(NOT WIN32) + SET_TARGET_PROPERTIES(mariadbclient PROPERTIES OUTPUT_NAME "${LIBMARIADB_STATIC_NAME}") + ENDIF() + ++if(VCPKG_MARIADBCLIENT) + INSTALL(TARGETS mariadbclient + COMPONENT Development + EXPORT unofficial-libmariadb-targets + LIBRARY DESTINATION lib) ++else() ++ set_target_properties(mariadbclient PROPERTIES EXCLUDE_FROM_ALL 1) ++endif() + INSTALL(TARGETS libmariadb + COMPONENT SharedLibraries + EXPORT unofficial-libmariadb-targets diff --git a/ports/libmariadb/pkgconfig.patch b/ports/libmariadb/pkgconfig.patch new file mode 100644 index 00000000000000..a0cc1c18d48d2e --- /dev/null +++ b/ports/libmariadb/pkgconfig.patch @@ -0,0 +1,60 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0be0fb1..33565f5 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -393,7 +393,7 @@ ENDIF() + INCLUDE(${CC_SOURCE_DIR}/plugins/CMakeLists.txt) + ADD_SUBDIRECTORY(include) + ADD_SUBDIRECTORY(libmariadb) +-IF(NOT WIN32) ++IF(1) + ADD_SUBDIRECTORY(mariadb_config) + ENDIF() + +diff --git a/mariadb_config/CMakeLists.txt b/mariadb_config/CMakeLists.txt +index 70e619b..7a22fa1 100644 +--- a/mariadb_config/CMakeLists.txt ++++ b/mariadb_config/CMakeLists.txt +@@ -30,6 +30,15 @@ IF(${rllength} GREATER 0) + LIST(REMOVE_DUPLICATES SYSTEM_LIBS) + ENDIF() + ++set(REQUIRES_PRIVATE "" CACHE STRING "") ++if(WITH_SSL STREQUAL "OPENSSL") ++ list(REMOVE_ITEM SYSTEM_LIBS ${SSL_LIBRARIES}) ++ string(APPEND REQUIRES_PRIVATE " openssl") ++endif() ++if(WITH_EXTERNAL_ZLIB) ++ string(APPEND REQUIRES_PRIVATE " zlib") ++endif() ++ + FOREACH (LIB_NAME ${SYSTEM_LIBS}) + GET_LIB_NAME(${LIB_NAME} LIB_OUT) + SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} ${LIB_OUT}") +@@ -50,6 +59,7 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mariadb_config.c.in + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/libmariadb.pc.in + ${CMAKE_CURRENT_BINARY_DIR}/libmariadb.pc @ONLY) + ++if(0) + ADD_EXECUTABLE(mariadb_config ${CMAKE_CURRENT_BINARY_DIR}/mariadb_config.c) + + IF(CMAKE_SYSTEM_NAME MATCHES AIX) +@@ -61,6 +71,7 @@ ENDIF() + INSTALL(TARGETS mariadb_config + DESTINATION "bin" + COMPONENT Development) ++endif() + + INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libmariadb.pc + DESTINATION "${INSTALL_PCDIR}" +diff --git a/mariadb_config/libmariadb.pc.in b/mariadb_config/libmariadb.pc.in +index 968181a..3f0410d 100644 +--- a/mariadb_config/libmariadb.pc.in ++++ b/mariadb_config/libmariadb.pc.in +@@ -16,5 +16,6 @@ Description: MariaDB Connector/C dynamic library + Cflags: -I${includedir} + Libs: -L${libdir} -lmariadb + Libs.private: @extra_dynamic_LDFLAGS@ ++Requires.private: @REQUIRES_PRIVATE@ + + diff --git a/ports/libmariadb/portfile.cmake b/ports/libmariadb/portfile.cmake index 6f8da25bea9370..5ec7726802d862 100644 --- a/ports/libmariadb/portfile.cmake +++ b/ports/libmariadb/portfile.cmake @@ -2,11 +2,19 @@ if (EXISTS "${CURRENT_INSTALLED_DIR}/share/libmysql") message(FATAL_ERROR "FATAL ERROR: libmysql and libmariadb are incompatible.") endif() +if("openssl" IN_LIST FEATURES AND "schannel" IN_LIST FEATURES) + message(FATAL_ERROR "Only one SSL backend must be selected.") +endif() + +if("schannel" IN_LIST FEATURES AND NOT VCPKG_TARGET_IS_WINDOWS) + message(FATAL_ERROR "Feature schannel not supported on non-Windows platforms.") +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mariadb-corporation/mariadb-connector-c - REF 7d304d26c787a3f0430624db977b615aba56e4bb # v3.1.12 - SHA512 16e74b2cbe401492ef294e2442a00ef1739089152a88d9263ca4d17b65260554b330630e9405813fd9089fa445d676e3b6aa91ac94128ad6b0a299e8b7edc1b3 + REF b2bb1b213c79169b7c994a99f21f47f11be465d4 # v3.1.15 + SHA512 51ebd2e9fd505eebc7691c60fe0b86cfc5368f8b370fba6c3ec8f5514319ef1e0de4910ad5e093cd7d5e5c7782120e22e8c85c94af9389fa4e240cedf012d755 HEAD_REF 3.1 PATCHES arm64.patch @@ -15,68 +23,55 @@ vcpkg_from_github( fix-InstallPath.patch fix-iconv.patch export-cmake-targets.patch - fix-build-error-with-cmake3.20.patch #This can be removed in next release, which has been merged to upstream. + pkgconfig.patch + no-extra-static-lib.patch + fix-openssl.patch ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - zlib WITH_EXTERNAL_ZLIB iconv WITH_ICONV + mariadbclient VCPKG_MARIADBCLIENT ) if("openssl" IN_LIST FEATURES) set(WITH_SSL OPENSSL) +elseif("schannel" IN_LIST FEATURES) + set(WITH_SSL ON) else() set(WITH_SSL OFF) endif() -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS ${FEATURE_OPTIONS} - -DINSTALL_PLUGINDIR=plugin/${PORT} + -DINSTALL_INCLUDEDIR=include/mysql # legacy port decisiong + -DINSTALL_LIBDIR=lib + -DINSTALL_PLUGINDIR=plugins/${PORT} -DWITH_UNIT_TESTS=OFF -DWITH_CURL=OFF + -DWITH_EXTERNAL_ZLIB=ON -DWITH_SSL=${WITH_SSL} + -DREMOTEIO_PLUGIN_TYPE=OFF + -DAUTH_GSSAPI_PLUGIN_TYPE=OFF + MAYBE_UNUSED_VARIABLES + AUTH_GSSAPI_PLUGIN_TYPE ) -vcpkg_install_cmake() - -vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-libmariadb TARGET_PATH share/unofficial-libmariadb) - -vcpkg_fixup_pkgconfig() - -if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - # remove debug header - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -endif() +vcpkg_cmake_install() -if(VCPKG_BUILD_TYPE STREQUAL "debug") - # move headers - file(RENAME - ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/include) -endif() +vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-libmariadb) -if (NOT VCPKG_TARGET_IS_WINDOWS) - vcpkg_copy_tools(TOOL_NAMES mariadb_config AUTO_CLEAN) +if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/lib/pkgconfig/libmariadb.pc" " -lmariadb" " -llibmariadb") + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/libmariadb.pc" " -lmariadb" " -llibmariadb") + endif() endif() +vcpkg_fixup_pkgconfig() -# remove plugin folder -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/lib/mariadb - ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb) - -# copy & remove header files -file(REMOVE - ${CURRENT_PACKAGES_DIR}/include/mariadb/my_config.h.in - ${CURRENT_PACKAGES_DIR}/include/mariadb/mysql_version.h.in - ${CURRENT_PACKAGES_DIR}/include/mariadb/CMakeLists.txt - ${CURRENT_PACKAGES_DIR}/include/mariadb/Makefile.am) -file(RENAME - ${CURRENT_PACKAGES_DIR}/include/mariadb - ${CURRENT_PACKAGES_DIR}/include/mysql) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") # copy license file -file(INSTALL ${SOURCE_PATH}/COPYING.LIB DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) \ No newline at end of file +file(INSTALL "${SOURCE_PATH}/COPYING.LIB" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/libmariadb/vcpkg.json b/ports/libmariadb/vcpkg.json index 5658ced391a47c..6d0742e7fd14f0 100644 --- a/ports/libmariadb/vcpkg.json +++ b/ports/libmariadb/vcpkg.json @@ -1,13 +1,23 @@ { "name": "libmariadb", - "version-semver": "3.1.12", - "port-version": 2, + "version-semver": "3.1.15", "description": "MariaDB Connector/C is used to connect C/C++ applications to MariaDB and MySQL databases", "homepage": "https://github.com/MariaDB/mariadb-connector-c", - "default-features": [ - "openssl", + "supports": "!uwp", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "zlib" ], + "default-features": [ + "ssl" + ], "features": { "iconv": { "description": "Enables character set conversion", @@ -15,17 +25,41 @@ "libiconv" ] }, + "mariadbclient": { + "description": "Build the static mariadbclient library" + }, "openssl": { - "description": "Enable SSL support", + "description": "SSL support (OpenSSL)", "dependencies": [ "openssl" ] }, - "zlib": { - "description": "Use internal zlib", + "schannel": { + "description": "SSL support (Secure Channel)" + }, + "ssl": { + "description": "Default SSL backend", "dependencies": [ - "zlib" + { + "name": "libmariadb", + "default-features": false, + "features": [ + "schannel" + ], + "platform": "windows | mingw" + }, + { + "name": "libmariadb", + "default-features": false, + "features": [ + "openssl" + ], + "platform": "!windows & !mingw" + } ] + }, + "zlib": { + "description": "Obsolete. zlib is always used. This feature is left for compatibility." } } } diff --git a/ports/libmodplug/005-fix-install-paths.patch b/ports/libmodplug/005-fix-install-paths.patch new file mode 100644 index 00000000000000..a41acf0b53b5f0 --- /dev/null +++ b/ports/libmodplug/005-fix-install-paths.patch @@ -0,0 +1,16 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 468f1a3..b58b11e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -119,7 +119,10 @@ add_library(modplug ${LIB_TYPE} + ) + + # install the library: +-install(TARGETS modplug DESTINATION lib) ++install(TARGETS modplug ++ RUNTIME DESTINATION bin ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) + + # incstall the headers: + install(FILES diff --git a/ports/libmodplug/portfile.cmake b/ports/libmodplug/portfile.cmake index 5df935579492b4..a7af03816114d3 100644 --- a/ports/libmodplug/portfile.cmake +++ b/ports/libmodplug/portfile.cmake @@ -14,6 +14,7 @@ vcpkg_from_github(ARCHIVE 002-detect_sinf.patch 003-use-static-cast-for-ctype.patch 004-export-pkgconfig.patch # https://github.com/Konstanty/libmodplug/pull/59 + 005-fix-install-paths.patch # https://github.com/Konstanty/libmodplug/pull/61 ) vcpkg_configure_cmake(SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA) @@ -22,18 +23,7 @@ vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic AND VCPKG_TARGET_IS_WINDOWS) - if(VCPKG_TARGET_IS_MINGW) - set(BIN_NAME libmodplug.dll) - else() - set(BIN_NAME modplug.dll) - endif() - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/${BIN_NAME} ${CURRENT_PACKAGES_DIR}/bin/${BIN_NAME}) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/${BIN_NAME} ${CURRENT_PACKAGES_DIR}/debug/bin/${BIN_NAME}) - vcpkg_copy_pdbs() -endif() +vcpkg_copy_pdbs() vcpkg_fixup_pkgconfig() diff --git a/ports/libmodplug/vcpkg.json b/ports/libmodplug/vcpkg.json index 854e034e1835ea..d5c841955434f3 100644 --- a/ports/libmodplug/vcpkg.json +++ b/ports/libmodplug/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libmodplug", "version-string": "0.8.9.0", - "port-version": 8, + "port-version": 9, "description": "The ModPlug mod file playing library.", "homepage": "https://github.com/Konstanty/libmodplug", "supports": "!uwp" diff --git a/ports/libosmium/portfile.cmake b/ports/libosmium/portfile.cmake index ebc364284db92d..f764134df63a07 100644 --- a/ports/libosmium/portfile.cmake +++ b/ports/libosmium/portfile.cmake @@ -2,8 +2,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO osmcode/libosmium - REF b263ba5e85c9ac254fa4090c855ec6f0556795e2 #v2.17.0 - SHA512 fd2955af6153ef58d76cca1e5b83cb70cd33cb616a3e221a80df94ee1256eeeaa5f15f4727cd1023f0335e55d7f3f36e3f9f5490bcd78ba9d267b2075480d1ba + REF v2.17.1 + SHA512 08d1eb272b82364118b97213310e5d62fdbb071cfad74989bdc5bb25f9e14b067d53016d19bfed3972d3385343fc74edf86407860be83c59e74902cd1f26bb33 ) set(BOOST_ROOT "${CURRENT_INSTALLED_DIR}") diff --git a/ports/libosmium/vcpkg.json b/ports/libosmium/vcpkg.json index 2bd42371b58b87..904c1e22a35bb5 100644 --- a/ports/libosmium/vcpkg.json +++ b/ports/libosmium/vcpkg.json @@ -1,6 +1,6 @@ { "name": "libosmium", - "version-semver": "2.17.0", + "version-semver": "2.17.1", "description": "A fast and flexible C++ library for working with OpenStreetMap data", "homepage": "https://osmcode.org/libosmium/", "dependencies": [ diff --git a/ports/libsecret/portfile.cmake b/ports/libsecret/portfile.cmake new file mode 100644 index 00000000000000..900762ce3d9584 --- /dev/null +++ b/ports/libsecret/portfile.cmake @@ -0,0 +1,28 @@ +vcpkg_from_gitlab( + OUT_SOURCE_PATH SOURCE_PATH + GITLAB_URL https://gitlab.gnome.org + REPO GNOME/libsecret + REF 0.20.4 + SHA512 b7357329e531ace536ac3c46ef51d022de9308181af227d2ff45c1ff6fe781a29fa93fe02e78f28c84eca8881c2cb90c92c675bcf9fd21b3d326dd84c5692ed5 + HEAD_REF master +) + +vcpkg_configure_meson( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -Dintrospection=false + -Dgtk_doc=false + -Dmanpage=false + -Dvapi=false + ADDITIONAL_NATIVE_BINARIES + gdbus-codegen='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/gdbus-codegen' + glib-mkenums='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-mkenums' +) +vcpkg_install_meson() +vcpkg_fixup_pkgconfig() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") +# There is no option to disable building secret-tool, so remove the executable. +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") + +file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/libsecret/vcpkg.json b/ports/libsecret/vcpkg.json new file mode 100644 index 00000000000000..1fbcf7b7c5989f --- /dev/null +++ b/ports/libsecret/vcpkg.json @@ -0,0 +1,16 @@ +{ + "name": "libsecret", + "version": "0.20.4", + "description": "libsecret is a GObject-based library for accessing the Secret Service API of the freedesktop.org project, a cross-desktop effort to access passwords, tokens and other types of secrets. libsecret provides a convenient wrapper for these methods so consumers do not have to call the low-level DBus methods.", + "homepage": "https://gitlab.gnome.org/GNOME/libsecret/", + "license": "LGPL-2.1-or-later", + "supports": "!(windows | uwp | osx)", + "dependencies": [ + "glib", + { + "name": "glib", + "host": true + }, + "libgcrypt" + ] +} diff --git a/ports/libsigcpp/fix-shared-windows-build.patch b/ports/libsigcpp/fix-shared-windows-build.patch new file mode 100644 index 00000000000000..f62e1eb14a197a --- /dev/null +++ b/ports/libsigcpp/fix-shared-windows-build.patch @@ -0,0 +1,17 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -53,8 +53,11 @@ set (PROJECT_SOURCE_DIR "${sigc++_SOURCE_DIR}/sigc++") + include_directories (${sigc++_SOURCE_DIR}) + include_directories (${sigc++_BINARY_DIR}) + +-if(BUILD_SHARED_LIBS) +- add_compile_options(-DBUILD_SHARED) ++if (BUILD_SHARED_LIBS) ++ add_compile_options (-DBUILD_SHARED) ++ if (MSVC) ++ add_compile_options (-D_WINDLL) ++ endif() + endif() + + configure_file (sigc++config.h.cmake sigc++config.h) diff --git a/ports/libsigcpp/portfile.cmake b/ports/libsigcpp/portfile.cmake index 2328d35626c319..278dc310a9f40f 100644 --- a/ports/libsigcpp/portfile.cmake +++ b/ports/libsigcpp/portfile.cmake @@ -1,22 +1,23 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO libsigcplusplus/libsigcplusplus - REF 7e20b36bddab74faed39aa3768d07fd372fce596 - SHA512 6220a3974ee90afb5028a5b60ffcbff353fffbbfcf1570d8db05b6d91604324a73badcb17c73c852d6c5265e2b31e1c2de1b3ea20c0e60ecdb17ce90c9ca40bd + REF 3.0.7 + SHA512 4c9251613c30cc5d455dc30a039a12b73d6369ac03583dab382307b894f93d4733cebea0a6eef82e8d80b1354c812b4ff6bfc68913f0df5a61146d56a6afde13 HEAD_REF master PATCHES disable_tests_enable_static_build.patch version.patch fix-usage-in-static-build.patch + fix-shared-windows-build.patch ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() vcpkg_fixup_pkgconfig() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/sigc++-3 TARGET_PATH share/sigc++-3) +vcpkg_cmake_config_fixup(PACKAGE_NAME sigc++-3 CONFIG_PATH lib/cmake/sigc++-3) if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/lib/sigc++-3.0/include/sigc++config.h" "ifdef BUILD_SHARED" "if 1") diff --git a/ports/libsigcpp/vcpkg.json b/ports/libsigcpp/vcpkg.json index 780711131ee00d..51286da7838e1f 100644 --- a/ports/libsigcpp/vcpkg.json +++ b/ports/libsigcpp/vcpkg.json @@ -1,7 +1,16 @@ { "name": "libsigcpp", - "version": "3.0.3", - "port-version": 1, + "version": "3.0.7", "description": "Typesafe callback framework for C++", - "homepage": "https://libsigcplusplus.github.io/libsigcplusplus/" + "homepage": "https://libsigcplusplus.github.io/libsigcplusplus/", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/libsigcpp/version.patch b/ports/libsigcpp/version.patch index dd485021edbf48..1492bed70dfe24 100644 --- a/ports/libsigcpp/version.patch +++ b/ports/libsigcpp/version.patch @@ -11,7 +11,7 @@ index b06ef121c..9b9520342 100644 -set (SIGCXX_MICRO_VERSION 1) +set (SIGCXX_MAJOR_VERSION 3) +set (SIGCXX_MINOR_VERSION 0) -+set (SIGCXX_MICRO_VERSION 3) ++set (SIGCXX_MICRO_VERSION 7) set (SIGCXX_API_VERSION 3.0) set (PACKAGE_VERSION ${SIGCXX_MAJOR_VERSION}.${SIGCXX_MINOR_VERSION}.${SIGCXX_MICRO_VERSION}) diff --git a/ports/libspatialite/fix-linux-configure.patch b/ports/libspatialite/fix-linux-configure.patch index 426ab3b3527f6f..39883193d53c31 100644 --- a/ports/libspatialite/fix-linux-configure.patch +++ b/ports/libspatialite/fix-linux-configure.patch @@ -18,7 +18,7 @@ index ead87caff..47abb90f0 100644 AC_SUBST([GEOS_LDFLAGS]) AC_SUBST([GEOS_CFLAGS]) # Ensure that we can parse geos_c.h -@@ -335,11 +337,14 @@ if test x"$enable_geos" != "xno"; then +@@ -335,11 +337,13 @@ if test x"$enable_geos" != "xno"; then AC_CHECK_HEADERS([geos_c.h],, [AC_MSG_ERROR([could not find geos_c.h - you may need to specify the directory of a geos-config file using --with-geosconfig])]) CPPFLAGS="$CPPFLAGS_SAVE" # Ensure we can link against libgeos_c @@ -29,34 +29,6 @@ index ead87caff..47abb90f0 100644 LIBS="$LIBS_SAVE" LIBS="$LIBS $GEOS_LDFLAGS -lgeos_c" + fi -+ LIBS="$LIBS $GEOS_LDFLAGS" #----------------------------------------------------------------------- # --enable-controlpoints -@@ -358,7 +363,7 @@ if test x"$enable_geos" != "xno"; then - [--enable-geosadvanced], [enables GEOS advanced features [default=yes]])], - [], [enable_geosadvanced=yes]) - if test x"$enable_geosadvanced" != "xno"; then -- AC_SEARCH_LIBS(GEOSDelaunayTriangulation,geos_c,,AC_MSG_ERROR(['libgeos_c' (>= v.3.4.0) is required but it doesn't seem to be installed on this system. You may need to try re-running configure with a --disable-geosadvanced parameter.])) -+ #AC_SEARCH_LIBS(GEOSDelaunayTriangulation,geos_c,,AC_MSG_ERROR(['libgeos_c' (>= v.3.4.0) is required but it doesn't seem to be installed on this system. You may need to try re-running configure with a --disable-geosadvanced parameter.])) - AC_DEFINE(GEOS_ADVANCED) - fi - -@@ -369,7 +374,7 @@ if test x"$enable_geos" != "xno"; then - [--enable-geosreentrant], [enables GEOS reentrant (fully thread safe) [default=yes]])], - [], [enable_geosreentrant=yes]) - if test x"$enable_geosreentrant" != "xno"; then -- AC_SEARCH_LIBS(GEOSContext_setErrorMessageHandler_r,geos_c,,AC_MSG_ERROR(['libgeos_c' (>= v.3.5.0) is required but it doesn't seem to be installed on this system. You may need to try re-running configure with a --disable-geosreentrant parameter.])) -+ #AC_SEARCH_LIBS(GEOSContext_setErrorMessageHandler_r,geos_c,,AC_MSG_ERROR(['libgeos_c' (>= v.3.5.0) is required but it doesn't seem to be installed on this system. You may need to try re-running configure with a --disable-geosreentrant parameter.])) - AC_DEFINE(GEOS_REENTRANT) - fi - -@@ -390,7 +395,7 @@ if test x"$enable_geos" != "xno"; then - [--enable-geos370], [enables GEOS 3.7.0 features [default=yes]])], - [], [enable_geos370=yes]) - if test x"$enable_geos370" != "xno"; then -- AC_SEARCH_LIBS(GEOSFrechetDistance_r,geos_c,,AC_MSG_ERROR(['libgeos_c' (>= v.3.7.0) is required but it doesn't seem to be installed on this system. You may need to try re-running configure with a --disable-geos370 parameter.])) -+ #AC_SEARCH_LIBS(GEOSFrechetDistance_r,geos_c,,AC_MSG_ERROR(['libgeos_c' (>= v.3.7.0) is required but it doesn't seem to be installed on this system. You may need to try re-running configure with a --disable-geos370 parameter.])) - AC_DEFINE(GEOS_370) - fi - diff --git a/ports/libspatialite/gaiaconfig-msvc.patch b/ports/libspatialite/gaiaconfig-msvc.patch new file mode 100644 index 00000000000000..3bf276d70d4dfe --- /dev/null +++ b/ports/libspatialite/gaiaconfig-msvc.patch @@ -0,0 +1,31 @@ +diff --git a/src/headers/spatialite/gaiaconfig-msvc.h b/src/headers/spatialite/gaiaconfig-msvc.h +index 37f0bd1..0053258 100644 +--- a/src/headers/spatialite/gaiaconfig-msvc.h ++++ b/src/headers/spatialite/gaiaconfig-msvc.h +@@ -2,7 +2,7 @@ + /* ./src/headers/spatialite/gaiaconfig-msvc.h.in - manually maintained */ + + /* Should be defined in order to enable GCP support. */ +-#define ENABLE_GCP 1 ++// #define ENABLE_GCP 1 + + /* Should be defined in order to enable GeoPackage support. */ + #define ENABLE_GEOPACKAGE 1 +@@ -11,7 +11,7 @@ + #define ENABLE_LIBXML2 1 + + /* Should be defined in order to enable RTTOPO support. */ +-#define ENABLE_RTTOPO 1 ++// #define ENABLE_RTTOPO 1 + + /* Should be defined in order to enable GEOS_370 support. */ + #define GEOS_370 1 +@@ -32,7 +32,7 @@ + /* #undef OMIT_FREEXL */ + + /* Should be defined in order to disable GEOCALLBACKS support. */ +-#define OMIT_GEOCALLBACKS 1 ++// #define OMIT_GEOCALLBACKS 1 + + /* Should be defined in order to disable GEOS support. */ + /* #undef OMIT_GEOS */ diff --git a/ports/libspatialite/portfile.cmake b/ports/libspatialite/portfile.cmake index 0865dda66de08d..20971f65681107 100644 --- a/ports/libspatialite/portfile.cmake +++ b/ports/libspatialite/portfile.cmake @@ -11,62 +11,72 @@ vcpkg_extract_source_archive_ex( PATCHES fix-makefiles.patch fix-linux-configure.patch + gaiaconfig-msvc.patch ) -if(VCPKG_TARGET_IS_WINDOWS) - if(VCPKG_CRT_LINKAGE STREQUAL "dynamic") - set(GEOS_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/geos_c.lib") - set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/geos_cd.lib") - set(LIBXML2_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libxml2.lib") - set(LIBXML2_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libxml2.lib") - set(LIBRTTOPO_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/librttopo.lib") - set(LIBRTTOPO_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/librttopo.lib") - else() - set(GEOS_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/geos_c.lib ${CURRENT_INSTALLED_DIR}/lib/geos.lib") - set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/geos_cd.lib ${CURRENT_INSTALLED_DIR}/debug/lib/geosd.lib") - set(LIBXML2_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/lib/lzma.lib ws2_32.lib") - set(LIBXML2_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/debug/lib/lzmad.lib ws2_32.lib") - set(LIBRTTOPO_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/librttopo.lib") - set(LIBRTTOPO_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/librttopo.lib") +vcpkg_check_features(OUT_FEATURE_OPTIONS unused + FEATURES + freexl ENABLE_FREEXL + gcp ENABLE_GCP + geocallbacks ENABLE_GEOCALLBACKS + rttopo ENABLE_RTTOPO +) + +set(pkg_config_modules geos libxml-2.0 proj sqlite3 zlib) +if(ENABLE_FREEXL) + list(APPEND pkg_config_modules freexl) +endif() +if(ENABLE_RTTOPO) + list(APPEND pkg_config_modules rttopo) +endif() + +if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW) + set(CL_FLAGS "") + if(NOT ENABLE_FREEXL) + string(APPEND CL_FLAGS " /DOMIT_FREEXL") + endif() + if(ENABLE_GCP) + string(APPEND CL_FLAGS " /DENABLE_GCP") + endif() + if(NOT ENABLE_GEOCALLBACKS) + string(APPEND CL_FLAGS " /DOMIT_GEOCALLBACKS") + endif() + if(ENABLE_RTTOPO) + string(APPEND CL_FLAGS " /DENABLE_RTTOPO") endif() - set(LIBS_ALL_DBG - "${CURRENT_INSTALLED_DIR}/debug/lib/iconv.lib \ - ${CURRENT_INSTALLED_DIR}/debug/lib/charset.lib \ - ${CURRENT_INSTALLED_DIR}/debug/lib/sqlite3.lib \ - ${CURRENT_INSTALLED_DIR}/debug/lib/freexl.lib \ - ${CURRENT_INSTALLED_DIR}/debug/lib/zlibd.lib \ - ${LIBXML2_LIBS_DBG} \ - ${GEOS_LIBS_DBG} \ - ${LIBRTTOPO_LIBS_DBG} \ - ${CURRENT_INSTALLED_DIR}/debug/lib/proj_d.lib ole32.lib shell32.lib" + x_vcpkg_pkgconfig_get_modules( + PREFIX PKGCONFIG + MODULES --msvc-syntax ${pkg_config_modules} + LIBS ) - set(LIBS_ALL_REL - "${CURRENT_INSTALLED_DIR}/lib/iconv.lib \ - ${CURRENT_INSTALLED_DIR}/lib/charset.lib \ - ${CURRENT_INSTALLED_DIR}/lib/sqlite3.lib \ - ${CURRENT_INSTALLED_DIR}/lib/freexl.lib \ - ${CURRENT_INSTALLED_DIR}/lib/zlib.lib \ - ${LIBXML2_LIBS_REL} \ - ${GEOS_LIBS_REL} \ - ${LIBRTTOPO_LIBS_REL} \ - ${CURRENT_INSTALLED_DIR}/lib/proj.lib ole32.lib shell32.lib" + string(JOIN " " LIBS_ALL_DEBUG + "/LIBPATH:${CURRENT_INSTALLED_DIR}/debug/lib" + "${PKGCONFIG_LIBS_DEBUG}" + iconv.lib charset.lib + ) + string(JOIN " " LIBS_ALL_RELEASE + "/LIBPATH:${CURRENT_INSTALLED_DIR}/lib" + "${PKGCONFIG_LIBS_RELEASE}" + iconv.lib charset.lib ) string(REPLACE "/" "\\\\" INST_DIR "${CURRENT_PACKAGES_DIR}") - list(APPEND OPTIONS_RELEASE - "INST_DIR=${INST_DIR}" "LIBS_ALL=${LIBS_ALL_REL}" - ) - list(APPEND OPTIONS_DEBUG - "LINK_FLAGS=/debug" "INST_DIR=${INST_DIR}\\debug" "LIBS_ALL=${LIBS_ALL_DBG}" - ) + if(ENABLE_RTTOPO) + list(APPEND pkg_config_modules rttopo) + endif() vcpkg_install_nmake( SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + "CL_FLAGS=${CL_FLAGS}" OPTIONS_RELEASE - ${OPTIONS_RELEASE} + "INST_DIR=${INST_DIR}" + "LIBS_ALL=${LIBS_ALL_RELEASE}" OPTIONS_DEBUG - ${OPTIONS_DEBUG} + "INST_DIR=${INST_DIR}\\debug" + "LIBS_ALL=${LIBS_ALL_DEBUG}" + "LINK_FLAGS=/debug" ) vcpkg_copy_pdbs() @@ -84,39 +94,84 @@ if(VCPKG_TARGET_IS_WINDOWS) file(RENAME "${CURRENT_PACKAGES_DIR}/lib/spatialite_i.lib" "${CURRENT_PACKAGES_DIR}/lib/spatialite.lib") file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/spatialite_i.lib" "${CURRENT_PACKAGES_DIR}/debug/lib/spatialite.lib") endif() -else() # Build in UNIX - if(VCPKG_TARGET_IS_LINUX) - set(STDLIB stdc++) + + set(infile "${SOURCE_PATH}/spatialite.pc.in") + set(VERSION "${LIBSPATIALITE_VERSION_STR}") + set(libdir [[${prefix}/lib]]) + set(exec_prefix [[${prefix}]]) + list(JOIN pkg_config_modules " " requires_private) + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + set(includedir [[${prefix}/include]]) + set(outfile "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/spatialite.pc") + configure_file("${infile}" "${outfile}" @ONLY) + vcpkg_replace_string("${outfile}" "Libs:" "Requires.private: ${requires_private}\nLibs.private: -liconv -lcharset\nLibs:") + vcpkg_replace_string("${outfile}" " -lm" " ") + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + set(includedir [[${prefix}/../include]]) + set(outfile "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/spatialite.pc") + configure_file("${infile}" "${outfile}" @ONLY) + vcpkg_replace_string("${outfile}" "Libs:" "Requires.private: ${requires_private}\nLibs.private: -liconv -lcharset\nLibs:") + vcpkg_replace_string("${outfile}" " -lm" " ") + endif() +else() + if(ENABLE_FREEXL) + set(FREEXL_OPTION "--enable-freexl") + else() + set(FREEXL_OPTION "--disable-freexl") + endif() + if(ENABLE_GCP) + set(GCP_OPTION "--enable-gcp") else() - set(STDLIB c++) + set(GCP_OPTION "--disable-gcp") endif() - if(VCPKG_TARGET_IS_LINUX OR VCPKG_TARGET_IS_OSX) - SET(EXTRALIBS "-lpthread") + if(ENABLE_GEOCALLBACKS) + set(GEOCALLBACKS_OPTION "--enable-geocallbacks") + else() + set(GEOCALLBACKS_OPTION "--disable-geocallbacks") endif() - list(APPEND OPTIONS_RELEASE - "LIBXML2_LIBS=-lxml2 -llzma" - "GEOS_LDFLAGS=-lgeos_c -lgeos -l${STDLIB}" - ) - list(APPEND OPTIONS_DEBUG - "LIBXML2_LIBS=-lxml2 -llzmad" - "GEOS_LDFLAGS=-lgeos_cd -lgeosd -l${STDLIB}" + if(ENABLE_RTTOPO) + set(RTTOPO_OPTION "--enable-rttopo") + else() + set(RTTOPO_OPTION "--disable-rttopo") + endif() + list(REMOVE_ITEM pkg_config_modules libxml2) # handled properly by configure + x_vcpkg_pkgconfig_get_modules( + PREFIX PKGCONFIG + MODULES ${pkg_config_modules} + LIBS ) - + if(VCPKG_TARGET_IS_MINGW) + # Avoid system libs (as detected by cmake) in exported pc files + set(SYSTEM_LIBS "") + else() + set(SYSTEM_LIBS "\$LIBS") + endif() + # libspatialite needs some targets literally + if(VCPKG_TARGET_IS_ANDROID) + set(TARGET_ALIAS "--target=android") + elseif(VCPKG_TARGET_IS_MINGW) + set(TARGET_ALIAS "--target=mingw32") + elseif(VCPKG_TARGET_IS_OSX) + set(TARGET_ALIAS "--target=macosx") + else() + set(TARGET_ALIAS "") + endif() vcpkg_configure_make( SOURCE_PATH "${SOURCE_PATH}" AUTOCONFIG OPTIONS - "LIBS=${EXTRALIBS} -ldl -lm -l${STDLIB}" - "LIBXML2_CFLAGS=-I${CURRENT_INSTALLED_DIR}/include" - "--enable-rttopo" - "--enable-gcp" - "--enable-geocallbacks" + ${TARGET_ALIAS} + ${FREEXL_OPTION} + ${GCP_OPTION} + ${GEOCALLBACKS_OPTION} + ${RTTOPO_OPTION} "--disable-examples" "--disable-minizip" OPTIONS_DEBUG - ${OPTIONS_DEBUG} + "LIBS=${PKGCONFIG_LIBS_DEBUG} ${SYSTEM_LIBS}" OPTIONS_RELEASE - ${OPTIONS_RELEASE} + "LIBS=${PKGCONFIG_LIBS_RELEASE} ${SYSTEM_LIBS}" ) # automake adds the basedir of the generated config to `DEFAULT_INCLUDES`, @@ -130,9 +185,42 @@ else() # Build in UNIX endforeach() vcpkg_install_make() - vcpkg_fixup_pkgconfig() + + if(VCPKG_TARGET_IS_MINGW AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/plugins/${PORT}") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/mod_spatialite.dll" "${CURRENT_PACKAGES_DIR}/plugins/${PORT}/mod_spatialite.dll") + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/debug/plugins/${PORT}") + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/mod_spatialite.dll" "${CURRENT_PACKAGES_DIR}/debug/plugins/${PORT}/mod_spatialite.dll") + endif() + endif() endif() +vcpkg_fixup_pkgconfig() + # Handle copyright -# With rttopo and ground control points enabled, the license is GPLv2+. -file(INSTALL "${SOURCE_PATH}/src/control_points/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +set(outfile "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright") +if(NOT ENABLE_GCP AND NOT ENABLE_RTTOPO) + file(READ "${SOURCE_PATH}/COPYING" mpl) + file(WRITE "${outfile}" + "SpatiaLite[${FEATURES}] is licensed under the MPL tri-license terms;\n" + "you are free to choose the best-fit license between:\n" + "- the MPL 1.1\n" + "- the GPL v2.0 or any subsequent version\n" + "- the LGPL v2.1 or any subsequent version.\n\n" + "# MPL 1.1 (from COPYING)\n\n" + "${mpl}\n" + ) +else() + file(WRITE "${outfile}" + "SpatiaLite[${FEATURES}] is licensed under:\n" + "the GPL v2.0 or any subsequent version.\n\n" + ) +endif() +file(READ "${SOURCE_PATH}/src/control_points/COPYING" gpl) +file(APPEND "${outfile}" + "# GPL v2.0 (from src/control_points/COPYING)\n\n" + "${gpl}\n" +) diff --git a/ports/libspatialite/vcpkg.json b/ports/libspatialite/vcpkg.json index e8fd1d30cf3d3d..fbea1b6af9d545 100644 --- a/ports/libspatialite/vcpkg.json +++ b/ports/libspatialite/vcpkg.json @@ -1,16 +1,40 @@ { "name": "libspatialite", "version": "5.0.1", + "port-version": 1, "description": "SpatiaLite is an open source library intended to extend the SQLite core to support fully fledged Spatial SQL capabilities.", "homepage": "https://www.gaia-gis.it/gaia-sins/libspatialite-sources", "dependencies": [ - "freexl", "geos", "libiconv", - "librttopo", "libxml2", "proj4", "sqlite3", + "vcpkg-pkgconfig-get-modules", "zlib" - ] + ], + "default-features": [ + "freexl", + "geocallbacks" + ], + "features": { + "freexl": { + "description": "FreeXL spreadsheet file support.", + "dependencies": [ + "freexl" + ] + }, + "gcp": { + "description": "Ground control points support. This feature reduces the license options to GPLv2+." + }, + "geocallbacks": { + "description": "Geometry callbacks support." + }, + "rttopo": { + "description": "RTTOPO support. This feature reduces the license options to GPLv2+.", + "dependencies": [ + "librttopo" + ] + } + } } diff --git a/ports/libtcod/portfile.cmake b/ports/libtcod/portfile.cmake index c836477f7326ff..e28639eef3a647 100644 --- a/ports/libtcod/portfile.cmake +++ b/ports/libtcod/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO libtcod/libtcod - REF 1.18.0 - SHA512 4191353c422e96987977ffc2a2f816381aa5c2e82cc0ccf80a902a0ff32023ec7a824e9845eb7c220d9e2a2fdb90be3aff1c3e05893f45a7326a89292aa11a4d + REF 1.19.0 + SHA512 462c3deadaeaaf3adb44427d41c4e8c1acc2c37ef90677d8d60e8194f9c190bc7e02b0cf2b285e248171354f8d73f1dd28144cfe8a98a469e1071448bce9e68b HEAD_REF develop ) diff --git a/ports/libtcod/vcpkg.json b/ports/libtcod/vcpkg.json index 418bddcdcbb3bb..2f3f2db951bd5f 100644 --- a/ports/libtcod/vcpkg.json +++ b/ports/libtcod/vcpkg.json @@ -1,6 +1,6 @@ { "name": "libtcod", - "version-semver": "1.18.0", + "version-semver": "1.19.0", "maintainers": "Kyle Benesch <4b796c65+github@gmail.com>", "description": "Common algorithms and tools for roguelikes.", "homepage": "https://github.com/libtcod/libtcod", diff --git a/ports/libudns/portfile.cmake b/ports/libudns/portfile.cmake index 826c4c6c3cddc0..a1169d438dad50 100644 --- a/ports/libudns/portfile.cmake +++ b/ports/libudns/portfile.cmake @@ -1,5 +1,3 @@ -vcpkg_fail_port_install(MESSAGE "${PORT} currently only supports Linux platform" ON_TARGET "Windows" "OSX") - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ortclib/udns diff --git a/ports/libudns/vcpkg.json b/ports/libudns/vcpkg.json index 9d328490cb36b6..f1b9679a3b223b 100644 --- a/ports/libudns/vcpkg.json +++ b/ports/libudns/vcpkg.json @@ -1,7 +1,8 @@ { "name": "libudns", "version-string": "0.4", - "port-version": 3, + "port-version": 4, "description": "The DNS library, udns, implements thread-safe stub DNS resolver functionality, which may be used both traditional, syncronous way and asyncronously, with application-supplied event loop.", - "homepage": "https://github.com/ortclib/udns" + "homepage": "https://github.com/ortclib/udns", + "supports": "!windows & !osx" } diff --git a/ports/libxlsxwriter/portfile.cmake b/ports/libxlsxwriter/portfile.cmake index f2bf4f7e04be53..b95032196f2b49 100644 --- a/ports/libxlsxwriter/portfile.cmake +++ b/ports/libxlsxwriter/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO jmcnamara/libxlsxwriter - REF 576d169463c7f9990045fd9223f5cf688150def0 #RELEASE_1.1.3 - SHA512 376db117df3ab48a6471d7004fc77fb8bd9b5d9dfaff53675f1bd99c8bc9bec7cadcefbd7116b206ef4703b9146cf097ad3b8aadff36b66302f1c82e8e1fa988 + REF RELEASE_1.1.4 + SHA512 fad36f7882fcb21b87e13cf603022cfad3f14e6f955a06e2771712facd0fe12f83f4d1655dc1a744724bda1ac83af7e7bf1393457c5507d8983f63002ab294b5 HEAD_REF master ) @@ -19,10 +19,10 @@ vcpkg_cmake_configure( ) vcpkg_cmake_install() +vcpkg_fixup_pkgconfig() +vcpkg_copy_pdbs() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -vcpkg_copy_pdbs() +file(INSTALL "${SOURCE_PATH}/License.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) -file(INSTALL "${SOURCE_PATH}/License.txt" DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) -vcpkg_fixup_pkgconfig() diff --git a/ports/libxlsxwriter/vcpkg.json b/ports/libxlsxwriter/vcpkg.json index d54a1f03618565..f72992f7879d96 100644 --- a/ports/libxlsxwriter/vcpkg.json +++ b/ports/libxlsxwriter/vcpkg.json @@ -1,7 +1,6 @@ { "name": "libxlsxwriter", - "version-semver": "1.1.3", - "port-version": 1, + "version-semver": "1.1.4", "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.", "homepage": "https://github.com/jmcnamara/libxlsxwriter", "dependencies": [ diff --git a/ports/libxslt/portfile.cmake b/ports/libxslt/portfile.cmake index 2c72cf8d025b6a..05df04a3189a3d 100644 --- a/ports/libxslt/portfile.cmake +++ b/ports/libxslt/portfile.cmake @@ -5,10 +5,13 @@ vcpkg_download_distfile( SHA512 d08a06616d732993f2131826ca06fafc2e9f561cb1edb17eaf2adaf78e276bb03cba92a773143eb939da04781f5b5e0a09b351d8e4622a941de3cb3d11da731c ) +# Get this value from configure.ac:21 +set(LIBEXSLT_VERSION 0.8.20) +set(VERSION 1.1.34) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO GNOME/libxslt - REF v1.1.34 + REF v${VERSION} SHA512 fc57affb236e5f7602ee53c8090a854c6b950d1e6526ae3488bca41d8d421ec70433d88eb227c71c2a61213bc364517bdad907125e36486da1754fe9e460601f HEAD_REF master PATCHES @@ -21,9 +24,9 @@ vcpkg_from_github( if (VCPKG_TARGET_IS_WINDOWS) # Create some directories ourselves, because the makefile doesn't - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/bin") if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/debug/bin") endif() set(CONFIGURE_COMMAND_TEMPLATE cruntime=@CRUNTIME@ @@ -37,12 +40,14 @@ if (VCPKG_TARGET_IS_WINDOWS) zlib=yes lzma=yes ) + # Common if(VCPKG_LIBRARY_LINKAGE STREQUAL static) set(BUILDSTATIC yes) else() set(BUILDSTATIC no) endif() + # Release params if(VCPKG_CRT_LINKAGE STREQUAL dynamic) set(CRUNTIME /MD) @@ -50,13 +55,14 @@ if (VCPKG_TARGET_IS_WINDOWS) set(CRUNTIME /MT) endif() set(DEBUGMODE no) - set(LIB_DIR ${CURRENT_INSTALLED_DIR}/lib) - set(INCLUDE_DIR ${CURRENT_INSTALLED_DIR}/include) - set(INSTALL_DIR ${CURRENT_PACKAGES_DIR}) + set(LIB_DIR "${CURRENT_INSTALLED_DIR}/lib") + set(INCLUDE_DIR "${CURRENT_INSTALLED_DIR}/include") + set(INSTALL_DIR "${CURRENT_PACKAGES_DIR}") file(TO_NATIVE_PATH "${LIB_DIR}" LIB_DIR) file(TO_NATIVE_PATH "${INCLUDE_DIR}" INCLUDE_DIR) file(TO_NATIVE_PATH "${INSTALL_DIR}" INSTALL_DIR) string(CONFIGURE "${CONFIGURE_COMMAND_TEMPLATE}" CONFIGURE_COMMAND_REL) + # Debug params if(VCPKG_CRT_LINKAGE STREQUAL dynamic) set(CRUNTIME /MDd) @@ -64,110 +70,116 @@ if (VCPKG_TARGET_IS_WINDOWS) set(CRUNTIME /MTd) endif() set(DEBUGMODE yes) - set(LIB_DIR ${CURRENT_INSTALLED_DIR}/debug/lib) - set(INSTALL_DIR ${CURRENT_PACKAGES_DIR}/debug) + set(LIB_DIR "${CURRENT_INSTALLED_DIR}/debug/lib") + set(INSTALL_DIR "${CURRENT_PACKAGES_DIR}/debug") file(TO_NATIVE_PATH "${LIB_DIR}" LIB_DIR) file(TO_NATIVE_PATH "${INSTALL_DIR}" INSTALL_DIR) string(CONFIGURE "${CONFIGURE_COMMAND_TEMPLATE}" CONFIGURE_COMMAND_DBG) - + vcpkg_install_nmake( - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH "${SOURCE_PATH}" PROJECT_SUBPATH win32 PROJECT_NAME Makefile.msvc PRERUN_SHELL_DEBUG cscript configure.js ${CONFIGURE_COMMAND_DBG} PRERUN_SHELL_RELEASE cscript configure.js ${CONFIGURE_COMMAND_REL} OPTIONS rebuild ) - + vcpkg_copy_tools(TOOL_NAMES xsltproc AUTO_CLEAN) - + # The makefile builds both static and dynamic libraries, so remove the ones we don't want if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libxslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX} ${CURRENT_PACKAGES_DIR}/lib/libexslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}) - file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/libxslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX} ${CURRENT_PACKAGES_DIR}/debug/lib/libexslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}) + file(REMOVE "${CURRENT_PACKAGES_DIR}/lib/libxslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}" "${CURRENT_PACKAGES_DIR}/lib/libexslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}") + file(REMOVE "${CURRENT_PACKAGES_DIR}/debug/lib/libxslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}" "${CURRENT_PACKAGES_DIR}/debug/lib/libexslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}") else() - file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libxslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX} ${CURRENT_PACKAGES_DIR}/lib/libexslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}) - file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/libxslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX} ${CURRENT_PACKAGES_DIR}/debug/lib/libexslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) + file(REMOVE "${CURRENT_PACKAGES_DIR}/lib/libxslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}" "${CURRENT_PACKAGES_DIR}/lib/libexslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}") + file(REMOVE "${CURRENT_PACKAGES_DIR}/debug/lib/libxslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}" "${CURRENT_PACKAGES_DIR}/debug/lib/libexslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") # Rename the libs to match the dynamic lib names - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libxslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX} ${CURRENT_PACKAGES_DIR}/lib/libxslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libexslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX} ${CURRENT_PACKAGES_DIR}/lib/libexslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libxslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX} ${CURRENT_PACKAGES_DIR}/debug/lib/libxslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libexslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX} ${CURRENT_PACKAGES_DIR}/debug/lib/libexslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}) + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/libxslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}" "${CURRENT_PACKAGES_DIR}/lib/libxslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/libexslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}" "${CURRENT_PACKAGES_DIR}/lib/libexslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}") + if(NOT VCPKG_BUILD_TYPE) + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/libxslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}" "${CURRENT_PACKAGES_DIR}/debug/lib/libxslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}") + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/libexslt_a${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}" "${CURRENT_PACKAGES_DIR}/debug/lib/libexslt${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX}") + endif() + endif() + + set(prefix "") + set(exec_prefix "") + set(libdir "\${prefix}/lib") + set(includedir "\${prefix}/include") + set(XSLT_INCLUDEDIR "-I\${includedir}") + set(XSLT_LIBDIR "-L\${libdir}") + set(XSLT_LIBS "-lxslt") + set(XSLT_PRIVATE_LIBS "") + set(EXSLT_INCLUDEDIR "-I\${includedir}") + set(EXSLT_LIBDIR "-L\${libdir}") + set(EXSLT_LIBS "-lexslt") + set(EXSLT_PRIVATE_LIBS "") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/lib/pkgconfig") + configure_file("${SOURCE_PATH}/libxslt.pc.in" "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/libxslt.pc" @ONLY) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/lib/pkgconfig/libxslt.pc" "\nRequires: " "\nRequires: liblzma ") + configure_file("${SOURCE_PATH}/libexslt.pc.in" "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/libexslt.pc" @ONLY) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/lib/pkgconfig/libexslt.pc" "\nRequires: " "\nRequires: libxslt ") + if(NOT VCPKG_BUILD_TYPE) + file(COPY "${CURRENT_PACKAGES_DIR}/lib/pkgconfig" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") endif() else() - vcpkg_find_acquire_program(PYTHON2) - get_filename_component(PYTHON2_DIR ${PYTHON2} DIRECTORY) - - find_library(LibXml2_DEBUG_LIBRARIES libxml2 PATHS ${CURRENT_INSTALLED_DIR}/debug/lib REQUIRED) - find_library(LibXml2_RELEASE_LIBRARIES libxml2 PATHS ${CURRENT_INSTALLED_DIR}/lib REQUIRED) - - if (VCPKG_TARGET_IS_OSX ) - set(LIBICONV "-liconv") - else() - set(LIBICONV "") - endif() - vcpkg_configure_make( - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH "${SOURCE_PATH}" AUTOCONFIG OPTIONS + --without-python + --without-plugins --with-crypto - --with-plugins - --with-libxml-include-prefix=${CURRENT_INSTALLED_DIR}/include - --with-python=${PYTHON2_DIR} OPTIONS_DEBUG --with-mem-debug --with-debug --with-debugger - --with-libxml-libs-prefix="${CURRENT_INSTALLED_DIR}/debug/lib -lxml2 -lz -llzmad ${LIBICONV}" - --with-html-dir=${CURRENT_INSTALLED_DIR}/debug/tools - --with-html-subdir=${CURRENT_INSTALLED_DIR}/debug/tools - OPTIONS_RELEASE - --with-libxml-libs-prefix="${CURRENT_INSTALLED_DIR}/lib -lxml2 -lz -llzma ${LIBICONV}" - --with-html-dir=${CURRENT_INSTALLED_DIR}/tools - --with-html-subdir=${CURRENT_INSTALLED_DIR}/tools - ) - + ) + vcpkg_install_make() - vcpkg_fixup_pkgconfig() - - if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(COPY ${CURRENT_PACKAGES_DIR}/lib/libxslt.so ${CURRENT_PACKAGES_DIR}/bin/) - else() - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/libxslt-plugins ${CURRENT_PACKAGES_DIR}/debug/lib/libxslt-plugins) + + file(REMOVE "${CURRENT_PACKAGES_DIR}/lib/xsltConf.sh" "${CURRENT_PACKAGES_DIR}/debug/lib/xsltConf.sh") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/libxslt-plugins" "${CURRENT_PACKAGES_DIR}/debug/lib/libxslt-plugins") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/libxslt/aclocal") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/libxslt/doc") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/libxslt/man1") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/libxslt/man3") + + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/libxslt/bin/xslt-config" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../../../") + if(NOT VCPKG_BUILD_TYPE) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/tools/libxslt/debug/bin/xslt-config" "${CURRENT_INSTALLED_DIR}" "`dirname $0`/../../../../") endif() - file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libxslt.so) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/libxslt/xsltconfig.h" "#define LIBXSLT_DEFAULT_PLUGINS_PATH() \"${CURRENT_INSTALLED_DIR}/lib/libxslt-plugins\"" "") endif() + +vcpkg_fixup_pkgconfig() +vcpkg_copy_pdbs() + # # Cleanup # # You have to define LIB(E)XSLT_STATIC or not, depending on how you link -file(READ ${CURRENT_PACKAGES_DIR}/include/libxslt/xsltexports.h XSLTEXPORTS_H) +file(READ "${CURRENT_PACKAGES_DIR}/include/libxslt/xsltexports.h" XSLTEXPORTS_H) if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") string(REPLACE "!defined(LIBXSLT_STATIC)" "0" XSLTEXPORTS_H "${XSLTEXPORTS_H}") else() string(REPLACE "!defined(LIBXSLT_STATIC)" "1" XSLTEXPORTS_H "${XSLTEXPORTS_H}") endif() -file(WRITE ${CURRENT_PACKAGES_DIR}/include/libxslt/xsltexports.h "${XSLTEXPORTS_H}") +file(WRITE "${CURRENT_PACKAGES_DIR}/include/libxslt/xsltexports.h" "${XSLTEXPORTS_H}") -file(READ ${CURRENT_PACKAGES_DIR}/include/libexslt/exsltexports.h EXSLTEXPORTS_H) +file(READ "${CURRENT_PACKAGES_DIR}/include/libexslt/exsltexports.h" EXSLTEXPORTS_H) if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") string(REPLACE "!defined(LIBEXSLT_STATIC)" "0" EXSLTEXPORTS_H "${EXSLTEXPORTS_H}") else() string(REPLACE "!defined(LIBEXSLT_STATIC)" "1" EXSLTEXPORTS_H "${EXSLTEXPORTS_H}") endif() -file(WRITE ${CURRENT_PACKAGES_DIR}/include/libexslt/exsltexports.h "${EXSLTEXPORTS_H}") +file(WRITE "${CURRENT_PACKAGES_DIR}/include/libexslt/exsltexports.h" "${EXSLTEXPORTS_H}") # Remove tools and debug include directories -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) - -if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - vcpkg_copy_pdbs() -endif() - -file(INSTALL ${SOURCE_PATH}/Copyright DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") +file(INSTALL "${SOURCE_PATH}/Copyright" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/libxslt/vcpkg.json b/ports/libxslt/vcpkg.json index 74f77de2ab6799..99ea78fa87d9b0 100644 --- a/ports/libxslt/vcpkg.json +++ b/ports/libxslt/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libxslt", "version": "1.1.34", - "port-version": 1, + "port-version": 3, "description": "Libxslt is a XSLT library implemented in C for XSLT 1.0 and most of EXSLT", "homepage": "https://github.com/GNOME/libxslt", "supports": "!uwp", diff --git a/ports/libzip/fix-dependency.patch b/ports/libzip/fix-dependency.patch index e04d271382a6f3..c3d0ec294abe1d 100644 --- a/ports/libzip/fix-dependency.patch +++ b/ports/libzip/fix-dependency.patch @@ -2,7 +2,7 @@ diff --git a/libzip-config.cmake.in b/libzip-config.cmake.in index 5b9aa55..0723f3c 100644 --- a/libzip-config.cmake.in +++ b/libzip-config.cmake.in -@@ -1,8 +1,17 @@ +@@ -1,8 +1,20 @@ @PACKAGE_INIT@ # only needed for static library, and doesn't work as-is @@ -15,6 +15,9 @@ index 5b9aa55..0723f3c 100644 +if(@ENABLE_LZMA@) + find_dependency(LibLZMA) +endif() ++if(@ENABLE_ZSTD@) ++ find_dependency(Zstd) ++endif() +if(@ENABLE_OPENSSL@) + find_dependency(OpenSSL) +endif() diff --git a/ports/libzip/fix-findpackage.patch b/ports/libzip/fix-findpackage.patch deleted file mode 100644 index 7080a9ea01789f..00000000000000 --- a/ports/libzip/fix-findpackage.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 017f7cf0..9770c158 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -437,10 +437,10 @@ export(TARGETS zip - if(LIBZIP_DO_INSTALL) - install(FILES ${PROJECT_BINARY_DIR}/zipconf.h DESTINATION include) - install(FILES ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-config.cmake ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-config-version.cmake -- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} -+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake - ) - install(EXPORT ${PROJECT_NAME}-targets NAMESPACE libzip:: FILE ${PROJECT_NAME}-targets.cmake -- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} -+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake - ) - endif() - diff --git a/ports/libzip/portfile.cmake b/ports/libzip/portfile.cmake index 23155a5e0a749d..9670853e738f41 100644 --- a/ports/libzip/portfile.cmake +++ b/ports/libzip/portfile.cmake @@ -1,27 +1,27 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO nih-at/libzip - REF 66e496489bdae81bfda8b0088172871d8fda0032 #v1.7.3 - SHA512 ae0cda3e9decf5a71bf1e0907a2a21b2c0d83e6e576faf4d9401d6954707ae298c1c09febbc5339f457ace3577fdd405a790c819ef24778990ca6bf1e9516d54 - HEAD_REF v1.7.3 - PATCHES - fix-findpackage.patch + REF v1.8.0 + SHA512 f7a78ff6d964a485b8fe3dfb7a61afae69984e67367e6de78c3cb10f15a0904800a1aeca9d33b63bc24ca926fff98638914343a35e7c3a4c3ec8b7594fc25fc1 + HEAD_REF master + PATCHES fix-dependency.patch ) vcpkg_check_features( OUT_FEATURE_OPTIONS FEATURE_OPTIONS - bzip2 ENABLE_BZIP2 - liblzma ENABLE_LZMA - openssl ENABLE_OPENSSL - wincrypto ENABLE_WINDOWS_CRYPTO - commoncrypto ENABLE_COMMONCRYPTO - mbedtls ENABLE_MBEDTLS + FEATURES + bzip2 ENABLE_BZIP2 + liblzma ENABLE_LZMA + zstd ENABLE_ZSTD + openssl ENABLE_OPENSSL + wincrypto ENABLE_WINDOWS_CRYPTO + commoncrypto ENABLE_COMMONCRYPTO + mbedtls ENABLE_MBEDTLS ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS ${FEATURE_OPTIONS} -DBUILD_DOC=OFF @@ -31,18 +31,18 @@ vcpkg_configure_cmake( -DENABLE_GNUTLS=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/libzip) vcpkg_fixup_pkgconfig() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") # Remove include directories from lib -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/libzip ${CURRENT_PACKAGES_DIR}/debug/lib/libzip) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/libzip" "${CURRENT_PACKAGES_DIR}/debug/lib/libzip") # Remove debug include -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") # Copy copright information -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/libzip/vcpkg.json b/ports/libzip/vcpkg.json index eb56141f86d935..4468266c72e6ae 100644 --- a/ports/libzip/vcpkg.json +++ b/ports/libzip/vcpkg.json @@ -1,10 +1,17 @@ { "name": "libzip", - "version-semver": "1.7.3", - "port-version": 2, + "version-semver": "1.8.0", "description": "A library for reading, creating, and modifying zip archives.", "homepage": "https://github.com/nih-at/libzip", "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "zlib" ], "default-features": [ @@ -19,7 +26,7 @@ ] }, "commoncrypto": { - "description": "AES( encryption) support using Apple's Common Crypto API" + "description": "AES (encryption) support using Apple's Common Crypto API" }, "default-aes": { "description": "Use default AES", @@ -70,6 +77,12 @@ }, "wincrypto": { "description": "AES (encryption) support using Windows Crypto API" + }, + "zstd": { + "description": "Support Zstandard-compressed zip archives", + "dependencies": [ + "zstd" + ] } } } diff --git a/ports/magnum-plugins/portfile.cmake b/ports/magnum-plugins/portfile.cmake index b3ed961df89687..6f784552b8bbc8 100644 --- a/ports/magnum-plugins/portfile.cmake +++ b/ports/magnum-plugins/portfile.cmake @@ -9,24 +9,31 @@ vcpkg_from_github( ) if("basisimporter" IN_LIST FEATURES OR "basisimageconverter" IN_LIST FEATURES) - # Bundle Basis Universal, a commit that's before the UASTC support (which - # is not implemented yet). The repo has big unrequired files in its + # Bundle Basis Universal. The repo has big unrequired files in its # history, so we're downloading just a snapshot instead of a git clone. - vcpkg_download_distfile( - _BASIS_UNIVERSAL_PATCHES - URLS "https://github.com/BinomialLLC/basis_universal/commit/e9c55faac7745ebf38d08cd3b4f71aaf542f8191.diff" - FILENAME "e9c55faac7745ebf38d08cd3b4f71aaf542f8191.patch" - SHA512 e5dda11de2ba8cfd39728e69c74a7656bb522e509786fe5673c94b26be9bd4bee897510096479ee6323f5276d34cba1c44c60804a515c0b35ff7b6ac9d625b88 - ) - set(_BASIS_VERSION "8565af680d1bd2ad56ab227ca7d96c56dfbe93ed") + if(VCPKG_USE_HEAD_VERSION) + # v1_15_update2 + set(_BASIS_VERSION "v1_15_update2") + set(_BASIS_SHA512 "a898a057b57ac64f6c0bf5fce0b599e23421ccdd015ea7bb668bce8b9292ef55b098f3d05854a2fb5363959932b75cd0a842664ae7d4f71f3537dc11301c1b32") + else() + # A commit that's before the UASTC support (which is not implemented yet) + vcpkg_download_distfile( + _BASIS_UNIVERSAL_PATCHES + URLS "https://github.com/BinomialLLC/basis_universal/commit/e9c55faac7745ebf38d08cd3b4f71aaf542f8191.diff" + FILENAME "e9c55faac7745ebf38d08cd3b4f71aaf542f8191.patch" + SHA512 e5dda11de2ba8cfd39728e69c74a7656bb522e509786fe5673c94b26be9bd4bee897510096479ee6323f5276d34cba1c44c60804a515c0b35ff7b6ac9d625b88 + ) + set(_BASIS_VERSION "8565af680d1bd2ad56ab227ca7d96c56dfbe93ed") + set(_BASIS_SHA512 "65062ab3ba675c46760f56475a7528189ed4097fb9bab8316e25d9e23ffec2a9560eb9a6897468baf2a6ab2bd698b5907283e96deaeaef178085a47f9d371bb2") + endif() vcpkg_download_distfile( _BASIS_UNIVERSAL_ARCHIVE URLS "https://github.com/BinomialLLC/basis_universal/archive/${_BASIS_VERSION}.tar.gz" FILENAME "basis-universal-${_BASIS_VERSION}.tar.gz" - SHA512 65062ab3ba675c46760f56475a7528189ed4097fb9bab8316e25d9e23ffec2a9560eb9a6897468baf2a6ab2bd698b5907283e96deaeaef178085a47f9d371bb2 + SHA512 ${_BASIS_SHA512} ) - vcpkg_extract_source_archive_ex( - OUT_SOURCE_PATH _BASIS_UNIVERSAL_SOURCE + vcpkg_extract_source_archive( + _BASIS_UNIVERSAL_SOURCE ARCHIVE ${_BASIS_UNIVERSAL_ARCHIVE} WORKING_DIRECTORY "${SOURCE_PATH}/src/external" PATCHES @@ -46,8 +53,10 @@ endif() # Head only features set(ALL_SUPPORTED_FEATURES ${ALL_FEATURES}) if(NOT VCPKG_USE_HEAD_VERSION) - list(REMOVE_ITEM ALL_SUPPORTED_FEATURES glslangshaderconverter spirvtoolsshaderconverter) - message(WARNING "Features glslangshaderconverter and spirvtoolsshaderconverter are not avaliable when building non-head version.") + list(REMOVE_ITEM ALL_SUPPORTED_FEATURES cgltfimporter glslangshaderconverter + ktximageconverter ktximporter openexrimageconverter openexrimporter + spirvtoolsshaderconverter stbdxtimageconverter) + message(WARNING "Features cgltfimporter, glslangshaderconverter, ktximageconverter, ktximporter, openexrimageconverter, openexrimporter, spirvtoolsshaderconverter and stbdxtimageconverter are not available when building non-head version.") endif() set(_COMPONENTS "") @@ -65,9 +74,8 @@ endforeach() vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES ${_COMPONENTS}) -vcpkg_configure_cmake( +vcpkg_cmake_configure( SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA # Disable this option if project cannot be built with Ninja OPTIONS ${FEATURE_OPTIONS} -DBUILD_STATIC=${BUILD_PLUGINS_STATIC} @@ -76,7 +84,7 @@ vcpkg_configure_cmake( -DMAGNUM_PLUGINS_RELEASE_DIR=${CURRENT_INSTALLED_DIR}/bin/magnum ) -vcpkg_install_cmake() +vcpkg_cmake_install() # Debug includes and share are the same as release file(REMOVE_RECURSE diff --git a/ports/magnum-plugins/vcpkg.json b/ports/magnum-plugins/vcpkg.json index d4280e76b889a8..d6ba4d9ae70b82 100644 --- a/ports/magnum-plugins/vcpkg.json +++ b/ports/magnum-plugins/vcpkg.json @@ -1,18 +1,25 @@ { "name": "magnum-plugins", "version-string": "2020.06", - "port-version": 7, + "port-version": 8, "description": "Plugins for magnum, C++11/C++14 graphics middleware for games and data visualization", "homepage": "https://magnum.graphics/", "dependencies": [ { "name": "magnum", "default-features": false + }, + { + "name": "vcpkg-cmake", + "host": true } ], "default-features": [ + "cgltfimporter", "ddsimporter", "icoimporter", + "ktximageconverter", + "ktximporter", "miniexrimageconverter", "opengeximporter", "stanfordimporter", @@ -51,12 +58,33 @@ "features": [ "trade" ] - } + }, + "zstd" ] }, "basisimporter": { "description": "BasisImporter plugin", "dependencies": [ + { + "name": "magnum", + "default-features": false, + "features": [ + "trade" + ] + }, + "zstd" + ] + }, + "cgltfimporter": { + "description": "CgltfImporter plugin", + "dependencies": [ + { + "name": "magnum", + "default-features": false, + "features": [ + "anyimageimporter" + ] + }, { "name": "magnum", "default-features": false, @@ -204,6 +232,30 @@ } ] }, + "ktximageconverter": { + "description": "KtxImageConverter plugin", + "dependencies": [ + { + "name": "magnum", + "default-features": false, + "features": [ + "trade" + ] + } + ] + }, + "ktximporter": { + "description": "KtxImporter plugin", + "dependencies": [ + { + "name": "magnum", + "default-features": false, + "features": [ + "trade" + ] + } + ] + }, "meshoptimizersceneconverter": { "description": "MeshOptimizerSceneConverter plugin", "dependencies": [ @@ -232,6 +284,32 @@ "openddl": { "description": "OpenDdl library" }, + "openexrimageconverter": { + "description": "OpenExrImageConverter plugin", + "dependencies": [ + { + "name": "magnum", + "default-features": false, + "features": [ + "trade" + ] + }, + "openexr" + ] + }, + "openexrimporter": { + "description": "OpenExrImporter plugin", + "dependencies": [ + { + "name": "magnum", + "default-features": false, + "features": [ + "trade" + ] + }, + "openexr" + ] + }, "opengeximporter": { "description": "OpenGexImporter plugin", "dependencies": [ @@ -321,6 +399,18 @@ } ] }, + "stbdxtimageconverter": { + "description": "StbDxtImageConverter plugin", + "dependencies": [ + { + "name": "magnum", + "default-features": false, + "features": [ + "trade" + ] + } + ] + }, "stbimageconverter": { "description": "StbImageConverter plugin", "dependencies": [ @@ -397,13 +487,6 @@ "features": [ "trade" ] - }, - { - "name": "magnum-plugins", - "default-features": false, - "features": [ - "stbimageimporter" - ] } ] } diff --git a/ports/mapbox-geojson-vt-cpp/portfile.cmake b/ports/mapbox-geojson-vt-cpp/portfile.cmake index 324fc9269ff24d..7c8567301f8cfa 100644 --- a/ports/mapbox-geojson-vt-cpp/portfile.cmake +++ b/ports/mapbox-geojson-vt-cpp/portfile.cmake @@ -3,13 +3,13 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mapbox/geojson-vt-cpp - REF v6.6.4 - SHA512 8a78159112be3e6a1a477fbb92e7bd9645b0b174ab6db7ef72557e154d53c3a9fb818d62b6f0d0a5b8b8a9839132c523fb44efa038388d4cd2b46c5bea60d2da + REF v6.6.5 + SHA512 4989522c19f35ba13096958ad1041ec09745020955fad99ee02116393885a9d0a835911a42167a76d5efb2a5dd167077bcd451c9a77444f2eaa26893a1bff062 HEAD_REF master ) # Copy header files -file(COPY ${SOURCE_PATH}/include/mapbox/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/mapbox FILES_MATCHING PATTERN "*.hpp") +file(COPY "${SOURCE_PATH}/include/mapbox/" DESTINATION "${CURRENT_PACKAGES_DIR}/include/mapbox" FILES_MATCHING PATTERN "*.hpp") # Handle copyright -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/mapbox-geojson-vt-cpp/vcpkg.json b/ports/mapbox-geojson-vt-cpp/vcpkg.json index e12741484f117f..29876c2d41d37e 100644 --- a/ports/mapbox-geojson-vt-cpp/vcpkg.json +++ b/ports/mapbox-geojson-vt-cpp/vcpkg.json @@ -1,6 +1,6 @@ { "name": "mapbox-geojson-vt-cpp", - "version-semver": "6.6.4", + "version-semver": "6.6.5", "description": "Port to C++ of JS GeoJSON-VT for slicing GeoJSON into vector tiles on the fly", "homepage": "https://github.com/mapbox/geojson-vt-cpp", "dependencies": [ diff --git a/ports/mapnik/cairo-find-fix.patch b/ports/mapnik/cairo-find-fix.patch deleted file mode 100644 index 9d151ceea3b86c..00000000000000 --- a/ports/mapnik/cairo-find-fix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 47bbaa1..43f384d 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -296,9 +296,14 @@ if(USE_WEBP) - endif() - - if(USE_CAIRO) -- mapnik_find_package(Cairo REQUIRED) -+ if(WIN32) -+ mapnik_find_package(Cairo REQUIRED) -+ list(APPEND MAPNIK_OPTIONAL_LIBS Cairo::Cairo) -+ else() -+ pkg_check_modules(Cairo REQUIRED IMPORTED_TARGET cairo) -+ list(APPEND MAPNIK_OPTIONAL_LIBS PkgConfig::Cairo) -+ endif() - list(APPEND MAPNIK_COMPILE_DEFS HAVE_CAIRO) -- list(APPEND MAPNIK_OPTIONAL_LIBS Cairo::Cairo) - endif() - - if(USE_PROJ) diff --git a/ports/mapnik/portfile.cmake b/ports/mapnik/portfile.cmake index ed83b3694c67bb..a093014a901588 100644 --- a/ports/mapnik/portfile.cmake +++ b/ports/mapnik/portfile.cmake @@ -4,11 +4,11 @@ vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mapnik/mapnik - REF 4695c42b51bc633e10b15c30ba580093ca0dda4f - SHA512 c0e6c77b6c859ac03a2169d8f71ee2d68e6b76dd0295a0656f278f31ccf531b02f2a5bc5cce7e78177872fba2e5dda95dc00685d6157043fa3a246a072ab7075 + REF 14f913d6ab3b0903dd36a1cb2d22f7d5493b8bb8 + SHA512 f90762594d46946ddc512bb19b21c4d6a2f1ce81b7500a326ad512fae3a3f77e49ef3eb727ff8f98a31596e4132528212e0fa146e2eee0a9965a16551cfd0386 HEAD_REF master PATCHES - cairo-find-fix.patch + proj-find-fix.patch # Quiet search with version range somehow fails for proj8+ ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS @@ -47,10 +47,8 @@ vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS ${FEATURE_OPTIONS} - -DCOPY_LIBRARIES_FOR_EXECUTABLES=OFF - -DCOPY_FONTS_AND_PLUGINS_FOR_EXECUTABLES=OFF -DINSTALL_DEPENDENCIES=OFF - -DBUILD_TEST=OFF + -DBUILD_TESTING=OFF -DBUILD_BENCHMARK=OFF -DBUILD_DEMO_CPP=OFF -DUSE_EXTERNAL_MAPBOX_GEOMETRY=ON diff --git a/ports/mapnik/proj-find-fix.patch b/ports/mapnik/proj-find-fix.patch new file mode 100644 index 00000000000000..4fb3537610e061 --- /dev/null +++ b/ports/mapnik/proj-find-fix.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 47bbaa1..43f384d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -304,7 +304,7 @@ if(USE_WEBP) + + if(USE_PROJ) + #https://proj.org/development/cmake.html +- mapnik_find_package(PROJ ${PROJ_MIN_VERSION} QUIET) ++ mapnik_find_package(PROJ REQUIRED) + # currently the cmake files are not installed, when installing proj via apt-get. So search via pkg-config + if(NOT PROJ_FOUND) + message(STATUS "PROJ not found via FindPROJ. Searching via pkg-config...") diff --git a/ports/mapnik/vcpkg.json b/ports/mapnik/vcpkg.json index 42d5b3680359f9..64f53ec587f94c 100644 --- a/ports/mapnik/vcpkg.json +++ b/ports/mapnik/vcpkg.json @@ -1,6 +1,7 @@ { "name": "mapnik", - "version-date": "2021-10-18", + "version-date": "2021-11-15", + "port-version": 1, "description": "Mapnik is an open source toolkit for developing mapping applications.", "homepage": "https://github.com/mapnik/mapnik", "supports": "!(static & windows)", diff --git a/ports/matroska/portfile.cmake b/ports/matroska/portfile.cmake index 2a729f0ed59f09..eac14d7b7d7d4f 100644 --- a/ports/matroska/portfile.cmake +++ b/ports/matroska/portfile.cmake @@ -5,22 +5,22 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Matroska-Org/libmatroska - REF 684560a3ce962a7abe89be93cc8ffa483f7f853f # release-1.6.2 - SHA512 d9b0e392cc99d9eec99ef90431589778976508c5ccbd8bbb166f390653c27b4cc84de189f7cd3bf5b039ecb38a96b0e341cc39195099ec415cc48d40e0b78c01 + REF release-1.6.3 + SHA512 f4b4cd5b5e76c452fb559ead28c4bcb5ec4e28d74898f13c1709a6ab75d95cf82b319118445d7a7f895708bb0d5d1f3c09040d3e3263c6a2f2a27ffc92d35c2f HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS -DDISABLE_PKGCONFIG=1 +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DDISABLE_PKGCONFIG=1 ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Matroska) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Matroska) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") # Handle copyright -file(INSTALL ${SOURCE_PATH}/LICENSE.LGPL DESTINATION ${CURRENT_PACKAGES_DIR}/share/matroska RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE.LGPL" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/matroska/vcpkg.json b/ports/matroska/vcpkg.json index 339ca0355a1a12..2987f36de745b2 100644 --- a/ports/matroska/vcpkg.json +++ b/ports/matroska/vcpkg.json @@ -1,11 +1,18 @@ { "name": "matroska", - "version-string": "1.6.2", - "port-version": 1, + "version": "1.6.3", "description": "a C++ library to parse Matroska files (.mkv and .mka)", "homepage": "https://github.com/Matroska-Org/libmatroska", "supports": "!uwp", "dependencies": [ - "ebml" + "ebml", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ] } diff --git a/ports/mdns/portfile.cmake b/ports/mdns/portfile.cmake index d465759444e0be..665b7a99a4c225 100644 --- a/ports/mdns/portfile.cmake +++ b/ports/mdns/portfile.cmake @@ -3,19 +3,18 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mjansson/mdns - REF 1.1 - SHA512 03e4682d87e9c1157bba04e04a3dfbb2ed7e25df31f00834fbc7bf4275e5c7f7406e590c8bdc386a4e6fbe6a5667f700e146d39758aa8ee0a47f735547cacd31 + REF 1.4.1 + SHA512 f1268841b5e4ba40ba62e7e08d55ac7f83b675f76c694976097a1c17dd6c662ced953230a4556b81ff5a39a969c67e01d040f1b6c83b9dd27b2cb0adc6af05b9 HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DMDNS_BUILD_EXAMPLE=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug") -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/mdns/vcpkg.json b/ports/mdns/vcpkg.json index d86276ac0667c7..2cb48af8d6c748 100644 --- a/ports/mdns/vcpkg.json +++ b/ports/mdns/vcpkg.json @@ -1,6 +1,12 @@ { "name": "mdns", - "version-string": "1.1", + "version": "1.4.1", "description": "Public domain mDNS/DNS-SD library in C", - "homepage": "https://github.com/mjansson/mdns" + "homepage": "https://github.com/mjansson/mdns", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + } + ] } diff --git a/ports/memorymodule/portfile.cmake b/ports/memorymodule/portfile.cmake index 7c772711d5860a..af5fade33a52e0 100644 --- a/ports/memorymodule/portfile.cmake +++ b/ports/memorymodule/portfile.cmake @@ -1,5 +1,3 @@ -vcpkg_fail_port_install(ON_TARGET "Linux" "OSX" "UWP") - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO fancycode/MemoryModule @@ -12,34 +10,34 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_check_features( OUT_FEATURE_OPTIONS FEATURE_OPTIONS - unicode UNICODE + FEATURES + unicode UNICODE ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" DISABLE_PARALLEL_CONFIGURE OPTIONS -DTESTSUITE=OFF ${FEATURE_OPTIONS} ) -vcpkg_build_cmake(TARGET MemoryModule) +vcpkg_cmake_build(TARGET MemoryModule) -file(INSTALL ${SOURCE_PATH}/MemoryModule.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) +file(INSTALL "${SOURCE_PATH}/MemoryModule.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include") -if(EXISTS ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/MemoryModule.lib) +if(EXISTS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/MemoryModule.lib") file(INSTALL - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/MemoryModule.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib + "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/MemoryModule.lib" + DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib" ) endif() -if(EXISTS ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/MemoryModule.lib) +if(EXISTS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/MemoryModule.lib") file(INSTALL - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/MemoryModule.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/lib + "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/MemoryModule.lib" + DESTINATION "${CURRENT_PACKAGES_DIR}/lib" ) endif() -file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/memorymodule/vcpkg.json b/ports/memorymodule/vcpkg.json index 3e5ca2f3a06e4b..49b5726ad7adaa 100644 --- a/ports/memorymodule/vcpkg.json +++ b/ports/memorymodule/vcpkg.json @@ -1,9 +1,16 @@ { "name": "memorymodule", "version-string": "2019-12-31", - "port-version": 1, + "port-version": 2, "description": "Library to load a DLL from memory", "homepage": "https://github.com/fancycode/MemoryModule", + "supports": "!linux & !osx & !uwp", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + } + ], "default-features": [ "unicode" ], diff --git a/ports/mp-units/cmake.patch b/ports/mp-units/cmake.patch index d5a57ce8b8c5c9..d2d4a1a54c4557 100644 --- a/ports/mp-units/cmake.patch +++ b/ports/mp-units/cmake.patch @@ -2,34 +2,29 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt index b18a30a96..d89248aa1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -40,14 +40,24 @@ conan_init(cmake) +@@ -66,11 +66,21 @@ conan_init(cmake) add_subdirectory(src) - - # set restrictive compilation warnings --set_warnings(mp-units) -+# set_warnings(mp-units) - - # add unit tests --enable_testing() --add_subdirectory(test) -+option(BUILD_TESTING "Build tests" OFF) -+if(BUILD_TESTING) -+ set_warnings(mp-units) -+ enable_testing() -+ add_subdirectory(test) -+endif() - + # add usage example -add_subdirectory(example) -- +option(BUILD_EXAMPLES "Build usage examples" OFF) +if(BUILD_EXAMPLES) + add_subdirectory(example) +endif() + # generate project documentation -add_subdirectory(docs) -+ +option(BUILD_DOCS "Generate docs" OFF) +if(BUILD_DOCS) + add_subdirectory(docs) +endif() + + # add unit tests +-enable_testing() +-add_subdirectory(test) ++option(BUILD_TESTING "Build tests" OFF) ++if(BUILD_TESTING) ++ set_warnings(mp-units) ++ enable_testing() ++ add_subdirectory(test) ++endif() diff --git a/ports/mp-units/config.patch b/ports/mp-units/config.patch index 5bd81c927aa088..b5f6bd6d20884b 100644 --- a/ports/mp-units/config.patch +++ b/ports/mp-units/config.patch @@ -1,9 +1,14 @@ -diff --git a/cmake/common/simple-config.cmake.in b/cmake/common/simple-config.cmake.in -index f40ebfa88..d521e0ba8 100644 ---- a/cmake/common/simple-config.cmake.in -+++ b/cmake/common/simple-config.cmake.in -@@ -1 +1,4 @@ -+include(CMakeFindDependencyMacro) +diff --git a/src/mp-unitsConfig.cmake b/src/mp-unitsConfig.cmake +--- a/src/mp-unitsConfig.cmake ++++ b/src/mp-unitsConfig.cmake +@@ -39,8 +39,8 @@ function(__check_libcxx_in_use variable) + endfunction() + + include(CMakeFindDependencyMacro) +-find_dependency(fmt) +-find_dependency(gsl-lite) +find_dependency(fmt CONFIG) -+find_dependency(Microsoft.GSL CONFIG) - include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@-targets.cmake") ++find_dependency(gsl-lite CONFIG) + + # add range-v3 dependency only for clang + libc++ + if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") diff --git a/ports/mp-units/portfile.cmake b/ports/mp-units/portfile.cmake index 1200c171976114..f608f1af1e9c6d 100644 --- a/ports/mp-units/portfile.cmake +++ b/ports/mp-units/portfile.cmake @@ -1,24 +1,24 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mpusz/units - REF 33ad51311b835efb7f7767473f971c02a3140073 - SHA512 18c9a4bb1812d7ab59e86d3eef5f62aa760c8f78eac81086bd3b25f7e2d359f2fba71b0298cf91ecb31dbe13846f2e5ce75133b0db534020102b788dd1c1a1da + REF v0.7.0 + SHA512 72175f34f358d0741650ce9c8a7b28fced90cc45ddd3f1662ae1cb9ff7d31403ff742ee07ab4c96bd2d95af714d9111a888cf6acccb91e568e12d1ef663b2f64 PATCHES cmake.patch config.patch ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() + +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/${PORT}") -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT}) # Handle copyright/readme/package files -file(INSTALL ${SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) -file(INSTALL ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) +file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +file(INSTALL "${SOURCE_PATH}/README.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib") # Header only \ No newline at end of file diff --git a/ports/mp-units/vcpkg.json b/ports/mp-units/vcpkg.json index 34ca3b8f0540c8..e4cc95da2ecd6a 100644 --- a/ports/mp-units/vcpkg.json +++ b/ports/mp-units/vcpkg.json @@ -1,11 +1,18 @@ { "name": "mp-units", - "version-string": "0.6.0", - "port-version": 1, + "version-semver": "0.7.0", "description": "mp-units - A Units Library for C++", "homepage": "https://github.com/mpusz/units", "dependencies": [ "fmt", - "ms-gsl" + "gsl-lite", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ] } diff --git a/ports/mqtt-cpp/portfile.cmake b/ports/mqtt-cpp/portfile.cmake index c29588e9185188..a41fc5c7cd34b7 100644 --- a/ports/mqtt-cpp/portfile.cmake +++ b/ports/mqtt-cpp/portfile.cmake @@ -1,24 +1,23 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO redboltz/mqtt_cpp - REF v9.0.0 - SHA512 4c9bef6abdb6bdec6ac60976f78e3e02c29d11c74cad0d3191e1d9b7befd327cd06f8a62e398d5997358b7e6974af3d6a73f68de47dd07ff099d46ba35fc84d8 + REF v12.0.0 + SHA512 60f2497633373a316724b7c8f87c090eb2bb26202bf48a55c32a13888bf3ec5e9bdc8854056735f625af5b016bcd9bca179d980077fb8752e16710992a0ea0c5 HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DMQTT_BUILD_EXAMPLES=OFF -DMQTT_BUILD_TESTS=OFF -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/mqtt_cpp_iface) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/mqtt_cpp_iface) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib) -file(INSTALL ${SOURCE_PATH}/LICENSE_1_0.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") +file(INSTALL "${SOURCE_PATH}/LICENSE_1_0.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/mqtt-cpp/vcpkg.json b/ports/mqtt-cpp/vcpkg.json index dac362846bfbff..2f20851fbf5a3d 100644 --- a/ports/mqtt-cpp/vcpkg.json +++ b/ports/mqtt-cpp/vcpkg.json @@ -1,7 +1,6 @@ { "name": "mqtt-cpp", - "version-string": "9.0.0", - "port-version": 1, + "version-semver": "12.0.0", "description": "Header-only MQTT client/server for C++14 based on Boost.Asio.", "homepage": "https://github.com/redboltz/mqtt_cpp", "dependencies": [ @@ -9,6 +8,14 @@ "boost-asio", "boost-log", "boost-multi-index", - "boost-type-erasure" + "boost-type-erasure", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ] } diff --git a/ports/nanodbc/find-unixodbc.patch b/ports/nanodbc/find-unixodbc.patch new file mode 100644 index 00000000000000..071bb62d8d5eca --- /dev/null +++ b/ports/nanodbc/find-unixodbc.patch @@ -0,0 +1,24 @@ +--- "a/CMakeLists.txt" ++++ "b/CMakeLists.txt" +@@ -110,6 +110,13 @@ message(STATUS "nanodbc feature: Enable SQL_NO_DATA bug workaround - ${NANODBC_E + ## find unixODBC or iODBC config binary + ######################################## + if(UNIX) ++ # Try to find unixodbc package first ++ find_package(unixodbc) ++ if(unixodbc_FOUND) ++ message(STATUS "nanodbc build: unixODBC package found") ++ set(ODBCLIB UNIX::odbc) ++ set(ODBC_CONFIG true) ++ else() + # Try to find unixODBC first via odbc_config program. + find_program(ODBC_CONFIG odbc_config + PATHS $ENV{ODBC_PATH}/bin /usr/bin /usr/local/bin) +@@ -158,6 +165,7 @@ if(UNIX) + endif() + endif() + endif() ++ endif() + + if(NOT ODBC_CONFIG) + message(FATAL_ERROR "can not find a suitable odbc driver manager") diff --git a/ports/nanodbc/portfile.cmake b/ports/nanodbc/portfile.cmake index 7397bc75bb1e9c..60da9c25176ee5 100644 --- a/ports/nanodbc/portfile.cmake +++ b/ports/nanodbc/portfile.cmake @@ -11,6 +11,7 @@ vcpkg_from_github( PATCHES rename-version.patch add-missing-include.patch + find-unixodbc.patch ) file(RENAME "${SOURCE_PATH}/VERSION" "${SOURCE_PATH}/VERSION.txt") diff --git a/ports/nanodbc/vcpkg.json b/ports/nanodbc/vcpkg.json index bc62f207d11846..35fd067a31f008 100644 --- a/ports/nanodbc/vcpkg.json +++ b/ports/nanodbc/vcpkg.json @@ -1,7 +1,7 @@ { "name": "nanodbc", "version": "2.13.0", - "port-version": 5, + "port-version": 6, "description": "A small C++ wrapper for the native C ODBC API.", "homepage": "https://github.com/nanodbc/nanodbc", "dependencies": [ diff --git a/ports/netcdf-c/fix-dependency-libmath.patch b/ports/netcdf-c/fix-dependency-libmath.patch index d6b4c214e92f91..7b9f6a541618c4 100644 --- a/ports/netcdf-c/fix-dependency-libmath.patch +++ b/ports/netcdf-c/fix-dependency-libmath.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index bd7c4f8..03b7ccf 100644 +index c36908b..390ac0a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -866,7 +866,7 @@ ENDIF() +@@ -944,7 +944,7 @@ OPTION(ENABLE_BYTERANGE "Enable byte-range access to remote datasets.." OFF) # Check for the math library so it can be explicitly linked. IF(NOT WIN32) diff --git a/ports/netcdf-c/fix-dependency-libzip.patch b/ports/netcdf-c/fix-dependency-libzip.patch new file mode 100644 index 00000000000000..9422198a2210bd --- /dev/null +++ b/ports/netcdf-c/fix-dependency-libzip.patch @@ -0,0 +1,34 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b93a141..c3763a7 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -957,7 +957,14 @@ OPTION(ENABLE_DAP_REMOTE_TESTS "Enable DAP remote tests." ON) + SET(REMOTETESTSERVERS "remotetest.unidata.ucar.edu" CACHE STRING "test servers to use for remote test") + + # See if we have libzip +-FIND_PACKAGE(Zip) ++if(ENABLE_NCZARR_ZIP) ++ find_package(libzip CONFIG REQUIRED) ++ set(Zip_LIBRARIES libzip::zip) ++ set(Zip_FOUND TRUE) ++else() ++ set(Zip_LIBRARIES "") ++ set(Zip_FOUND FALSE) ++endif() + + # Define a test flag for have curl library + IF(Zip_FOUND) +diff --git a/netCDFConfig.cmake.in b/netCDFConfig.cmake.in +index b3be259..72b4b25 100644 +--- a/netCDFConfig.cmake.in ++++ b/netCDFConfig.cmake.in +@@ -15,6 +15,9 @@ set(netCDF_LIBRARIES netCDF::netcdf) + include(CMakeFindDependencyMacro) + find_dependency(HDF5 CONFIG) + find_dependency(CURL CONFIG) ++if(@ENABLE_NCZARR_ZIP@) ++ find_dependency(libzip CONFIG) ++endif() + include("${CMAKE_CURRENT_LIST_DIR}/netCDFTargets.cmake") + + # Compiling Options diff --git a/ports/netcdf-c/fix-dependency-zlib.patch b/ports/netcdf-c/fix-dependency-zlib.patch index 52c5d2ecdaef94..a7ec3a91a1499d 100644 --- a/ports/netcdf-c/fix-dependency-zlib.patch +++ b/ports/netcdf-c/fix-dependency-zlib.patch @@ -1,12 +1,12 @@ diff --git a/liblib/CMakeLists.txt b/liblib/CMakeLists.txt -index 5b578f7..0731460 100644 +index be72612..5e1692f 100644 --- a/liblib/CMakeLists.txt +++ b/liblib/CMakeLists.txt -@@ -58,7 +58,7 @@ ENDIF() +@@ -67,7 +67,7 @@ ENDIF() SET(TLL_LIBS "") --SET(TLL_LIBS ${TLL_LIBS} ${HAVE_LIBM} ZLIB::ZLIB) +-SET(TLL_LIBS ${TLL_LIBS} ${HAVE_LIBM} ${ZLIB_LIBRARY}) +SET(TLL_LIBS ${TLL_LIBS} ${HAVE_LIBM}) # Add extra dependencies specified via NC_EXTRA_DEPS diff --git a/ports/netcdf-c/fix-linkage-error.patch b/ports/netcdf-c/fix-linkage-error.patch index e71c30fdef4859..df2539aba6cee1 100644 --- a/ports/netcdf-c/fix-linkage-error.patch +++ b/ports/netcdf-c/fix-linkage-error.patch @@ -1,9 +1,9 @@ diff --git a/liblib/CMakeLists.txt b/liblib/CMakeLists.txt -index 8aeeab7..5b578f7 100644 +index 9e126ec..1363d35 100644 --- a/liblib/CMakeLists.txt +++ b/liblib/CMakeLists.txt -@@ -70,8 +70,14 @@ ENDIF() - IF(USE_HDF5 OR USE_NETCDF4) +@@ -79,8 +79,14 @@ ENDIF() + IF(USE_HDF5) if(TARGET hdf5::hdf5-shared) SET(TLL_LIBS ${TLL_LIBS} hdf5::hdf5-shared hdf5::hdf5_hl-shared) + if(USE_PARALLEL) @@ -15,5 +15,5 @@ index 8aeeab7..5b578f7 100644 + list(APPEND TLL_LIBS ${MPI_C_LIBRARIES}) + endif() endif() - ENDIF() - + elseif(0) + IF(NOT MSVC) diff --git a/ports/netcdf-c/fix-manpage-msys.patch b/ports/netcdf-c/fix-manpage-msys.patch index 24374c95e62469..ec087dc4fce02c 100644 --- a/ports/netcdf-c/fix-manpage-msys.patch +++ b/ports/netcdf-c/fix-manpage-msys.patch @@ -1,8 +1,8 @@ diff --git a/libsrc/CMakeLists.txt b/libsrc/CMakeLists.txt -index 65a3f87..30a008d 100644 +index 4583733..20ce3bf 100644 --- a/libsrc/CMakeLists.txt +++ b/libsrc/CMakeLists.txt -@@ -61,7 +61,7 @@ IF(HAVE_M4) +@@ -64,7 +64,7 @@ IF(HAVE_M4) IF(NOT MSVC) ADD_CUSTOM_TARGET(manpage ALL diff --git a/ports/netcdf-c/fix-pkgconfig.patch b/ports/netcdf-c/fix-pkgconfig.patch index f7827d6cb50c10..6fff98ac2ba61b 100644 --- a/ports/netcdf-c/fix-pkgconfig.patch +++ b/ports/netcdf-c/fix-pkgconfig.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 57d2d4b..3de6f8c 100644 +index 390ac0a..4bcd909 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -1892,6 +1892,20 @@ LIST(REMOVE_DUPLICATES LINKFLAGS) +@@ -2100,6 +2100,21 @@ STRING(REPLACE ";" " " LINKFLAGS "${LINKFLAGS}") SET(LIBS ${NC_LIBS}) SET(NC_LIBS "-lnetcdf") @@ -17,6 +17,7 @@ index 57d2d4b..3de6f8c 100644 +replace_pkgconfig_module("-lhdf5_hl" "hdf5_hl") +replace_pkgconfig_module("-lhdf5" "hdf5") +replace_pkgconfig_module("-lmpi" "ompi-c") ++replace_pkgconfig_module("-lzip" "libzip") +replace_pkgconfig_module("-lCURL[^ ]*" "libcurl") +replace_pkgconfig_module("-lZLIB[^ ]*" "zlib") + diff --git a/ports/netcdf-c/no-install-deps.patch b/ports/netcdf-c/no-install-deps.patch index 535a0dc088a5bc..63feba87306351 100644 --- a/ports/netcdf-c/no-install-deps.patch +++ b/ports/netcdf-c/no-install-deps.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index bd7c4f8..95fb01c 100644 +index 6b39f0e..507eb4c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -1830,7 +1830,7 @@ ADD_SUBDIRECTORY(docs) +@@ -2028,7 +2028,7 @@ ADD_SUBDIRECTORY(docs) # install them in the binary dir. Grab all of the .libs, put them # in the libdir. ## diff --git a/ports/netcdf-c/portfile.cmake b/ports/netcdf-c/portfile.cmake index f51081d8be893b..36282b471c3d98 100644 --- a/ports/netcdf-c/portfile.cmake +++ b/ports/netcdf-c/portfile.cmake @@ -1,17 +1,18 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Unidata/netcdf-c - REF 26fba54a58fa02af92d84441ed90b417c1d08161 # v4.7.4 - SHA512 7144374b5bd3574ea422de07ffb30fecc4e5f560f9b46f62762cc0cce511dd33068b8df9244fe94ae3cc7b3a9bb9fe398c7e67c3e5ac2109768e5a9b984f24fb + REF cd6173f472b778fa0e558982c59f7183aa5b8e47 # v4.8.1 + SHA512 e965b9c865f31abcd0ae045cb709a41710e72bcf5bd237972cd62688f0f099f1b12be316a448d22315b1c73eb99fae3ea38072e9a3646a4f70ba42507d82f537 HEAD_REF master PATCHES no-install-deps.patch + fix-dependency-zlib.patch use_targets.patch fix-dependency-libmath.patch fix-linkage-error.patch fix-pkgconfig.patch - fix-dependency-zlib.patch fix-manpage-msys.patch + fix-dependency-libzip.patch ) #Remove outdated find modules @@ -19,22 +20,44 @@ file(REMOVE "${SOURCE_PATH}/cmake/modules/FindSZIP.cmake") file(REMOVE "${SOURCE_PATH}/cmake/modules/FindZLIB.cmake") file(REMOVE "${SOURCE_PATH}/cmake/modules/windows/FindHDF5.cmake") -if(VCPKG_CRT_LINKAGE STREQUAL "static") - set(NC_USE_STATIC_CRT ON) +if(NOT VCPKG_TARGET_IS_WINDOWS OR VCPKG_TARGET_IS_MINGW) + set(CRT_OPTION "") +elseif(VCPKG_CRT_LINKAGE STREQUAL "static") + set(CRT_OPTION -DNC_USE_STATIC_CRT=ON) else() - set(NC_USE_STATIC_CRT OFF) + set(CRT_OPTION -DNC_USE_STATIC_CRT=OFF) endif() vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES dap ENABLE_DAP netcdf-4 ENABLE_NETCDF_4 - netcdf-4 USE_HDF5 + hdf5 ENABLE_HDF5 + nczarr ENABLE_NCZARR + nczarr-zip ENABLE_NCZARR_ZIP tools BUILD_UTILITIES - INVERTED_FEATURES - dap CMAKE_DISABLE_FIND_PACKAGE_CURL - netcdf-4 CMAKE_DISABLE_FIND_PACKAGE_HDF5 -) + ) + +if(NOT ENABLE_DAP AND NOT ENABLE_NCZARR) + list(APPEND FEATURE_OPTIONS "-DCMAKE_DISABLE_FIND_PACKAGE_CURL=ON") +endif() + +if(ENABLE_HDF5) + # Fix hdf5 szip support detection for static linkage. + x_vcpkg_pkgconfig_get_modules( + PREFIX HDF5 + MODULES hdf5 + LIBRARIES + ) + if(HDF5_LIBRARIES_RELEASE MATCHES "szip") + list(APPEND FEATURE_OPTIONS "-DUSE_SZIP=ON") + endif() +endif() + +if(VCPKG_TARGET_IS_UWP) + set(ENV{CFLAGS} "$ENV{CFLAGS} /wd4996 /wd4703") + set(ENV{CXXFLAGS} "$ENV{CXXFLAGS} /wd4996 /wd4703") +endif() vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" @@ -46,7 +69,7 @@ vcpkg_cmake_configure( -DENABLE_FILTER_TESTING=OFF -DENABLE_DAP_REMOTE_TESTS=OFF -DDISABLE_INSTALL_DEPENDENCIES=ON - -DNC_USE_STATIC_CRT=${NC_USE_STATIC_CRT} + ${CRT_OPTION} ${FEATURE_OPTIONS} ) diff --git a/ports/netcdf-c/use_targets.patch b/ports/netcdf-c/use_targets.patch index d15ab749524294..541be65b593967 100644 --- a/ports/netcdf-c/use_targets.patch +++ b/ports/netcdf-c/use_targets.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index bd7c4f8..9e09cf3 100644 +index 507eb4c..c36908b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -430,7 +430,6 @@ IF(NC_EXTRA_DEPS) +@@ -433,7 +433,6 @@ IF(NC_EXTRA_DEPS) SET(EXTRA_DEPS ${EXTRA_DEPS} "${${_LIB}_DEP}") ENDFOREACH() MESSAGE("Extra deps: ${EXTRA_DEPS}") @@ -10,7 +10,7 @@ index bd7c4f8..9e09cf3 100644 SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${EXTRA_DEPS}) ENDIF() ### -@@ -598,15 +597,6 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4) +@@ -628,15 +627,6 @@ IF(USE_HDF5) # we will use a static library. This can be toggled # by explicitly modifying NC_FIND_SHARED_LIBS. ## @@ -26,7 +26,7 @@ index bd7c4f8..9e09cf3 100644 ##### # First, find the C and HL libraries. -@@ -619,7 +609,7 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4) +@@ -649,7 +639,7 @@ IF(USE_HDF5) SET(SEARCH_PACKAGE_NAME ${HDF5_PACKAGE_NAME}) FIND_PACKAGE(HDF5 NAMES ${SEARCH_PACKAGE_NAME} COMPONENTS C HL CONFIG REQUIRED ${NC_HDF5_LINK_TYPE}) ELSE(MSVC) @@ -35,7 +35,7 @@ index bd7c4f8..9e09cf3 100644 ENDIF(MSVC) ## -@@ -701,6 +691,19 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4) +@@ -726,6 +716,19 @@ IF(USE_HDF5) SET(HDF5_C_LIBRARY hdf5) ENDIF() ENDIF(HDF5_C_LIBRARY AND HDF5_HL_LIBRARY AND HDF5_INCLUDE_DIR) @@ -55,27 +55,17 @@ index bd7c4f8..9e09cf3 100644 FIND_PACKAGE(Threads) -@@ -728,17 +731,9 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4) - CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5Pset_all_coll_metadata_ops "" HDF5_HAS_COLL_METADATA_OPS) - - #Check to see if H5Z_SZIP exists in HDF5_Libraries. If so, we must use szip. -- CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5Z_SZIP "" USE_SZIP) -+ set(USE_SZIP ${HDF5_ENABLE_SZIP_SUPPORT}) +@@ -745,6 +748,8 @@ IF(USE_HDF5) IF(USE_SZIP) -- FIND_LIBRARY(SZIP NAMES szip sz) -- IF(SZIP) - SET(HAVE_H5Z_SZIP 1) -- SET(SZIP_LIBRARY ${SZIP}) -- SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SZIP}) -- MESSAGE(STATUS "HDF5 has szip.") -- ELSE() -- MESSAGE(FATAL_ERROR "HDF5 Requires SZIP, but cannot find libszip or libsz.") -- ENDIF() - ENDIF() - - CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5Pset_libver_bounds "" HAVE_H5PSET_LIBVER_BOUNDS) -@@ -788,8 +783,7 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4) - ENDIF(USE_HDF5 OR ENABLE_NETCDF_4) + # If user has specified the `SZIP_LIBRARY`, use it; otherwise try to find... + IF(NOT SZIP_LIBRARY) ++ set(SZIP_LIBRARY "") ++ ELSEIF(0) + FIND_LIBRARY(SZIP PATH NAMES szip sz) + SET(SZIP_LIBRARY ${SZIP}) + IF(NOT SZIP) +@@ -847,8 +852,7 @@ IF(USE_HDF5) + ENDIF(USE_HDF5) # See if we have libcurl -FIND_PACKAGE(CURL) @@ -83,63 +73,47 @@ index bd7c4f8..9e09cf3 100644 +FIND_PACKAGE(CURL CONFIG) INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIRS}) - # Check to see if CURLOPT_USERNAME is defined. -@@ -1893,7 +1887,6 @@ ENDIF() - - STRING(REPLACE ";" " " LINKFLAGS "${LINKFLAGS}") + # Define a test flag for have curl library +@@ -2089,10 +2093,9 @@ IF(NC_LIBS) + STRING(REPLACE "-lhdf5::hdf5_hl-static" "-lhdf5_hl" NC_LIBS ${NC_LIBS}) + ENDIF() +-STRING(REPLACE ";" " " LINKFLAGS "${LINKFLAGS}") +- -LIST(REMOVE_DUPLICATES NC_LIBS) ++LIST(REMOVE_ITEM LINKFLAGS "-L") LIST(REMOVE_DUPLICATES LINKFLAGS) ++STRING(REPLACE ";" " " LINKFLAGS "${LINKFLAGS}") SET(LIBS ${NC_LIBS}) + SET(NC_LIBS "-lnetcdf") diff --git a/liblib/CMakeLists.txt b/liblib/CMakeLists.txt -index ea9b029..8aeeab7 100644 +index 5e1692f..9e126ec 100644 --- a/liblib/CMakeLists.txt +++ b/liblib/CMakeLists.txt -@@ -58,7 +58,7 @@ ENDIF() - - SET(TLL_LIBS "") - --SET(TLL_LIBS ${TLL_LIBS} ${HAVE_LIBM} ${ZLIB_LIBRARY}) -+SET(TLL_LIBS ${TLL_LIBS} ${HAVE_LIBM} ZLIB::ZLIB) - - # Add extra dependencies specified via NC_EXTRA_DEPS - SET(TLL_LIBS ${TLL_LIBS} ${EXTRA_DEPS}) -@@ -68,27 +68,15 @@ IF(HAVE_LIBDL) +@@ -77,6 +77,12 @@ IF(HAVE_LIBDL) ENDIF() - IF(USE_HDF5 OR USE_NETCDF4) -- IF(NOT MSVC) -- # Some version of cmake define HDF5_hdf5_LIBRARY instead of -- # HDF5_LIBRARY. Same with HDF5_HL_LIBRARIES -- IF(HDF5_hdf5_LIBRARY AND NOT HDF5_C_LIBRARIES) -- SET(HDF5_C_LIBRARIES ${HDF5_hdf5_LIBRARY}) -- ENDIF() -- IF(HDF5_hdf5_hl_LIBRARY AND NOT HDF5_HL_LIBRARIES) -- SET(HDF5_HL_LIBRARIES ${HDF5_hdf5_hl_LIBRARY}) -- ENDIF() -- # The order of the libraries is important here for static -- # builds: -- # Make sure that HDF5_C_LIBRARY appears *after* -- # HDF5_HL_LIBRARY. -- SET(TLL_LIBS ${HDF5_HL_LIBRARIES} ${HDF5_C_LIBRARIES} ${TLL_LIBS} ${SZIP_LIBRARY}) -- ELSE() # Windows CMake defines HDF5_LIBRARIES. -- SET(TLL_LIBS ${HDF5_LIBRARIES} ${TLL_LIBS} ${SZIP_LIBRARY}) -- ENDIF() + IF(USE_HDF5) + if(TARGET hdf5::hdf5-shared) + SET(TLL_LIBS ${TLL_LIBS} hdf5::hdf5-shared hdf5::hdf5_hl-shared) + else() + SET(TLL_LIBS ${TLL_LIBS} hdf5::hdf5-static hdf5::hdf5_hl-static) + endif() ++elseif(0) + IF(NOT MSVC) + # Some version of cmake define HDF5_hdf5_LIBRARY instead of + # HDF5_LIBRARY. Same with HDF5_HL_LIBRARIES +@@ -97,7 +103,7 @@ IF(USE_HDF5) ENDIF() - IF(USE_DAP) + IF(FOUND_CURL) - SET(TLL_LIBS ${TLL_LIBS} ${CURL_LIBRARY}) + SET(TLL_LIBS ${TLL_LIBS} CURL::libcurl) ENDIF() IF(USE_HDF4) -@@ -100,7 +88,6 @@ IF(ENABLE_PNETCDF AND PNETCDF) +@@ -118,7 +124,6 @@ IF(ENABLE_S3_SDK) ENDIF() IF(TLL_LIBS) @@ -148,15 +122,14 @@ index ea9b029..8aeeab7 100644 TARGET_LINK_LIBRARIES(netcdf ${TLL_LIBS}) diff --git a/netCDFConfig.cmake.in b/netCDFConfig.cmake.in -index 9d68eec..b8f6113 100644 +index 9d68eec..b3be259 100644 --- a/netCDFConfig.cmake.in +++ b/netCDFConfig.cmake.in -@@ -12,6 +12,10 @@ set_and_check(netCDF_LIB_DIR "@PACKAGE_CMAKE_INSTALL_LIBDIR@") +@@ -12,6 +12,9 @@ set_and_check(netCDF_LIB_DIR "@PACKAGE_CMAKE_INSTALL_LIBDIR@") set(netCDF_LIBRARIES netCDF::netcdf) # include target information +include(CMakeFindDependencyMacro) -+find_dependency(ZLIB) +find_dependency(HDF5 CONFIG) +find_dependency(CURL CONFIG) include("${CMAKE_CURRENT_LIST_DIR}/netCDFTargets.cmake") diff --git a/ports/netcdf-c/vcpkg.json b/ports/netcdf-c/vcpkg.json index 256a401b46b678..e1ba70f343dfcc 100644 --- a/ports/netcdf-c/vcpkg.json +++ b/ports/netcdf-c/vcpkg.json @@ -1,7 +1,6 @@ { "name": "netcdf-c", - "version": "4.7.4", - "port-version": 4, + "version": "4.8.1", "description": "A set of self-describing, machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data.", "homepage": "https://github.com/Unidata/netcdf-c", "dependencies": [ @@ -16,23 +15,85 @@ ], "default-features": [ "dap", - "netcdf-4" + "nczarr", + "netcdf-4", + "platform-default-features" ], "features": { "dap": { "description": "Build with DAP remote access client support", "dependencies": [ - "curl" + { + "name": "curl", + "default-features": false + } ] }, - "netcdf-4": { - "description": "Build with netCDF-4/HDF5 support", + "hdf5": { + "description": "Build with HDF5 support", "dependencies": [ { "name": "hdf5", + "default-features": false, "features": [ "zlib" ] + }, + { + "name": "netcdf-c", + "default-features": false, + "features": [ + "netcdf-4" + ] + }, + { + "name": "vcpkg-pkgconfig-get-modules", + "host": true + } + ] + }, + "nczarr": { + "description": "Build with NCZarr cloud storage access support", + "dependencies": [ + { + "name": "netcdf-c", + "default-features": false, + "features": [ + "netcdf-4" + ] + } + ] + }, + "nczarr-zip": { + "description": "Build with NCZarr ZIP support", + "dependencies": [ + { + "name": "libzip", + "default-features": false + }, + { + "name": "netcdf-c", + "default-features": false, + "features": [ + "nczarr" + ] + } + ] + }, + "netcdf-4": { + "description": "Build with netCDF-4 support" + }, + "platform-default-features": { + "$comment": "Break vcpkg CI cascade.", + "description": "Enable platform-dependent default features", + "dependencies": [ + { + "name": "netcdf-c", + "default-features": false, + "features": [ + "hdf5" + ], + "platform": "!uwp & !(arm64 & windows)" } ] }, diff --git a/ports/ocilib/portfile.cmake b/ports/ocilib/portfile.cmake index 5ef74744023c98..139ccab3f4049f 100644 --- a/ports/ocilib/portfile.cmake +++ b/ports/ocilib/portfile.cmake @@ -3,8 +3,8 @@ vcpkg_fail_port_install(ON_ARCH "arm" ON_TARGET "uwp") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vrogier/ocilib - REF 8573bce60d4aa4ac421445149003424fc7a69e6d v4.7.1 - SHA512 862c2df2f8e356bfafda32bba2c4564464104afea047b6297241a5ec2da9e1d73f3cd33f55e5bcd0018fb1b3625e756c22baf6821ab51c789359266f989137c8 + REF v4.7.3 + SHA512 80cf1f76420b506789b1f7edd9af826801236499dd0757be3438e3cdf286b95ddd7dd35909622b3862244f6b535a8744f0b25989fb3740a4a0fd984410fb420b HEAD_REF master ) diff --git a/ports/ocilib/vcpkg.json b/ports/ocilib/vcpkg.json index 62cb70fa815122..6c7a56a11c9a96 100644 --- a/ports/ocilib/vcpkg.json +++ b/ports/ocilib/vcpkg.json @@ -1,7 +1,6 @@ { "name": "ocilib", - "version-string": "4.7.1", - "port-version": 2, + "version": "4.7.3", "description": "OCILIB is an open source and cross platform Oracle Driver that delivers efficient access to Oracle databases.", "homepage": "https://vrogier.github.io/ocilib/", "supports": "!(arm | uwp)" diff --git a/ports/offscale-libetcd-cpp/install-debug.patch b/ports/offscale-libetcd-cpp/install-debug.patch new file mode 100644 index 00000000000000..ee63620f0710bf --- /dev/null +++ b/ports/offscale-libetcd-cpp/install-debug.patch @@ -0,0 +1,11 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0d9aad9..7bdde1b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -77,5 +77,5 @@ install(TARGETS etcdcpp EXPORT etcdcpp DESTINATION lib) + + if (${CMAKE_BUILD_TYPE} STREQUAL "Release") + install(FILES ${proto_hs} DESTINATION include/libetcd/) +- install(EXPORT etcdcpp DESTINATION share/etcdcpp/ FILE etcdcppConfig.cmake) + endif() ++install(EXPORT etcdcpp DESTINATION share/etcdcpp/ FILE etcdcppConfig.cmake) diff --git a/ports/offscale-libetcd-cpp/portfile.cmake b/ports/offscale-libetcd-cpp/portfile.cmake index e6857aa3d437e6..a299682f54b2df 100644 --- a/ports/offscale-libetcd-cpp/portfile.cmake +++ b/ports/offscale-libetcd-cpp/portfile.cmake @@ -4,15 +4,17 @@ vcpkg_from_github( REF 8607d8d7080c6eb447bc41b799a24bfdb87cf638 SHA512 9bf4bf14fd52f4f6bbf8cf68de61e6a19eeffbdc501f05c8f614b5f13f206410884afd7fe226a077448e58e02990c65a6b27ee895ed34ba5ee701abe0500b875 HEAD_REF master - PATCHES fix-dependency-grpc.patch + PATCHES + fix-dependency-grpc.patch + install-debug.patch ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + DISABLE_PARALLEL_CONFIGURE # see https://github.com/microsoft/vcpkg/pull/21168#issuecomment-961588989 why ) -vcpkg_install_cmake() - +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(PACKAGE_NAME etcdcpp) vcpkg_copy_pdbs() -file(INSTALL ${SOURCE_PATH}/LICENSE-MIT DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE-MIT" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/offscale-libetcd-cpp/vcpkg.json b/ports/offscale-libetcd-cpp/vcpkg.json index b6c2f5164cf77f..f2f2ec16cbe140 100644 --- a/ports/offscale-libetcd-cpp/vcpkg.json +++ b/ports/offscale-libetcd-cpp/vcpkg.json @@ -1,11 +1,19 @@ { "name": "offscale-libetcd-cpp", - "version-string": "2019-07-10", - "port-version": 2, + "version-date": "2019-07-10", + "port-version": 3, "description": "A C++ client library for etcd. etcd is a distributed, reliable key-value store.", "homepage": "https://github.com/offscale/libetcd-cpp", "dependencies": [ "grpc", - "protobuf" + "protobuf", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ] } diff --git a/ports/onednn/portfile.cmake b/ports/onednn/portfile.cmake index 69d0a17e7d5799..964ed488c278e7 100644 --- a/ports/onednn/portfile.cmake +++ b/ports/onednn/portfile.cmake @@ -3,13 +3,13 @@ vcpkg_fail_port_install(ON_ARCH "x86" "arm" ON_TARGET "uwp") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO oneapi-src/oneDNN - REF v2.3.2 - SHA512 14B3E6E40F29250AAE1FC677E6723953CA3BFBC9544B32CA1AE51ABA35DAB53C8CFCC58DD57610E644EB324821F3F370A31E8D960B1E4D5AF0C066441ED7FF45 + REF v2.4.3 + SHA512 6a597be1b6b50d252e346a96d3c9b4771e9d8e8fc495a09b638ea296d53e71d51ea2e2be04cc20de1bca17215a7a7e5f22a1808628bcdf98180def2d91b2c9e3 HEAD_REF master ) if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(DNNL_OPTIONS "-DDNNL_LIBRARY_TYPE=STATIC") + set(DNNL_OPTIONS "-DDNNL_LIBRARY_TYPE=STATIC") endif() vcpkg_cmake_configure( diff --git a/ports/onednn/vcpkg.json b/ports/onednn/vcpkg.json index 7e46d72ba515ad..c34f03429ef5cd 100644 --- a/ports/onednn/vcpkg.json +++ b/ports/onednn/vcpkg.json @@ -1,6 +1,6 @@ { "name": "onednn", - "version-semver": "2.3.2", + "version-semver": "2.4.3", "description": "oneAPI Deep Neural Network Library (oneDNN)", "homepage": "https://github.com/oneapi-src/oneDNN", "supports": "x64 & !uwp", diff --git a/ports/onnx/fix-cmakelists.patch b/ports/onnx/fix-cmakelists.patch index e6c68370b27992..c5863deafe53b8 100644 --- a/ports/onnx/fix-cmakelists.patch +++ b/ports/onnx/fix-cmakelists.patch @@ -66,3 +66,21 @@ index 628dcaa..300e4ea 100644 install(DIRECTORY ${ONNX_ROOT}/onnx DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} FILES_MATCHING +@@ -639,7 +639,7 @@ endif() + + if (NOT ANDROID AND NOT IOS) + # ---[ ONNXIFI wrapper +- add_library(onnxifi_wrapper MODULE onnx/onnxifi_wrapper.c) ++ add_library(onnxifi_wrapper onnx/onnxifi_wrapper.c) + if(MSVC) + add_msvc_runtime_flag(onnxifi_wrapper) + endif() +@@ -669,7 +669,7 @@ if (NOT ANDROID AND NOT IOS) + endif() + + # ---[ ONNXIFI dummy backend +-add_library(onnxifi_dummy SHARED onnx/onnxifi_dummy.c) ++add_library(onnxifi_dummy onnx/onnxifi_dummy.c) + + if(ONNXIFI_ENABLE_EXT) + add_definitions(-DONNXIFI_ENABLE_EXT=ON) diff --git a/ports/onnx/portfile.cmake b/ports/onnx/portfile.cmake index d523a0eedc0cad..61c36b56f24c7f 100644 --- a/ports/onnx/portfile.cmake +++ b/ports/onnx/portfile.cmake @@ -1,23 +1,15 @@ -# uwp: LOAD_LIBRARY_SEARCH_DEFAULT_DIRS undefined identifier -vcpkg_fail_port_install(ON_TARGET "uwp") vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO onnx/onnx - REF v1.10.1 - SHA512 927b6d74dcf41b62c1290674cebb8e6c054acf101214352a0c5414d9b2eafa2d1e144f4d361452cd7494fb228e26c2ce2676fb1212aff1eeb3f889dc2faf5438 + REF v1.10.2 + SHA512 7519d326cd2b2b13a269ec0d01af07c32115d183dae6e1eaae55f5b23b6c92b2aadbb2b1e555557f4201bbcf921fa563d09d45d7f1d3bd2399c1a94a6ef63303 PATCHES fix-cmakelists.patch - wrap-onnxifi-targets.patch ) -if(VCPKG_TARGET_IS_WINDOWS) - string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" USE_STATIC_RUNTIME) - list(APPEND PLATFORM_OPTIONS - -DONNX_USE_MSVC_STATIC_RUNTIME=${USE_STATIC_RUNTIME} - ) -endif() +string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" USE_STATIC_RUNTIME) # ONNX_USE_PROTOBUF_SHARED_LIBS: find the library and check its file extension find_library(PROTOBUF_LIBPATH NAMES protobuf PATHS "${CURRENT_INSTALLED_DIR}/bin" "${CURRENT_INSTALLED_DIR}/lib" REQUIRED) @@ -36,7 +28,7 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS # Like protoc, python is required for codegen. vcpkg_find_acquire_program(PYTHON3) -# PATH for .bat scripts can find 'python' +# PATH for .bat scripts so it can find 'python' get_filename_component(PYTHON_DIR "${PYTHON3}" PATH) vcpkg_add_to_path(PREPEND "${PYTHON_DIR}") @@ -50,15 +42,17 @@ endif() vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS - ${FEATURE_OPTIONS} ${PLATFORM_OPTIONS} + ${FEATURE_OPTIONS} -DPython3_EXECUTABLE=${PYTHON3} -DONNX_ML=ON -DONNX_GEN_PB_TYPE_STUBS=ON -DONNX_USE_PROTOBUF_SHARED_LIBS=${USE_PROTOBUF_SHARED} -DONNX_USE_LITE_PROTO=OFF - -DONNXIFI_ENABLE_EXT=OFF + -DONNX_USE_MSVC_STATIC_RUNTIME=${USE_STATIC_RUNTIME} -DONNX_BUILD_TESTS=OFF -DONNX_BUILD_BENCHMARKS=OFF + MAYBE_UNUSED_VARIABLES + ONNX_USE_MSVC_STATIC_RUNTIME ) if("pybind11" IN_LIST FEATURES) @@ -94,4 +88,7 @@ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/onnx/onnx_cpp2py_export" "${CURRENT_PACKAGES_DIR}/include/onnx/test" "${CURRENT_PACKAGES_DIR}/include/onnx/tools" + "${CURRENT_PACKAGES_DIR}/include/onnx/onnx_ml" + "${CURRENT_PACKAGES_DIR}/include/onnx/onnx_data" + "${CURRENT_PACKAGES_DIR}/include/onnx/onnx_operators_ml" ) diff --git a/ports/onnx/vcpkg.json b/ports/onnx/vcpkg.json index 36da8b39b19124..069934dd73562a 100644 --- a/ports/onnx/vcpkg.json +++ b/ports/onnx/vcpkg.json @@ -1,9 +1,10 @@ { "name": "onnx", - "version-semver": "1.10.1", + "version-semver": "1.10.2", "description": "Open standard for machine learning interoperability", "homepage": "https://onnx.ai", - "supports": "!uwp & static", + "license": "Apache-2.0", + "supports": "!uwp", "dependencies": [ "protobuf", { diff --git a/ports/onnx/wrap-onnxifi-targets.patch b/ports/onnx/wrap-onnxifi-targets.patch deleted file mode 100644 index 598edf6030b079..00000000000000 --- a/ports/onnx/wrap-onnxifi-targets.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 300e4ea..155dd0d 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -614,6 +614,7 @@ if(APPLE) - set_target_properties(onnx PROPERTIES LINK_FLAGS "-undefined dynamic_lookup") - endif() - -+if(ONNXIFI_ENABLE_EXT) - # ---[ ONNX Interface for Framework Integratin (ONNXIFI) - add_library(onnxifi INTERFACE) - target_include_directories(onnxifi INTERFACE -@@ -688,6 +689,7 @@ if(MSVC) - # lists from 'identifier2' - ) - endif() -+endif() # ONNXIFI_ENABLE_EXT - - include(GNUInstallDirs) - -@@ -737,8 +739,14 @@ install(FILES - install(EXPORT ONNXTargets DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/ONNX") - install(TARGETS - onnx onnx_proto -- onnxifi onnxifi_dummy onnxifi_loader - EXPORT ONNXTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+if(ONNXIFI_ENABLE_EXT) -+ install(TARGETS -+ onnxifi onnxifi_dummy onnxifi_loader -+ EXPORT ONNXTargets -+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) - - if(NOT ANDROID AND NOT IOS) - install(TARGETS onnxifi_wrapper -@@ -748,6 +756,7 @@ endif() - if(ONNXIFI_DUMMY_BACKEND) - add_definitions(-DONNXIFI_DUMMY_BACKEND=1) - endif() -+endif() # ONNXIFI_ENABLE_EXT - - if(ONNX_BUILD_TESTS) - include(${ONNX_ROOT}/cmake/unittest.cmake) diff --git a/ports/openblas/install-tools.patch b/ports/openblas/install-tools.patch new file mode 100644 index 00000000000000..5d9e4061b8802c --- /dev/null +++ b/ports/openblas/install-tools.patch @@ -0,0 +1,22 @@ +diff --git a/cmake/prebuild.cmake b/cmake/prebuild.cmake +index 0c126e3..bb0124b 100644 +--- a/cmake/prebuild.cmake ++++ b/cmake/prebuild.cmake +@@ -558,6 +558,8 @@ else(NOT CMAKE_CROSSCOMPILING) + if (NOT ${GETARCH_RESULT}) + MESSAGE(FATAL_ERROR "Compiling getarch failed ${GETARCH_LOG}") + endif () ++ ++ install(FILES "${PROJECT_BINARY_DIR}/${GETARCH_BIN}" DESTINATION bin) + endif () + unset (HAVE_AVX2) + unset (HAVE_AVX) +@@ -601,6 +603,8 @@ execute_process(COMMAND "${BLASHELPER_BINARY_DIR}/${GETARCH_BIN}" 1 OUTPUT_VARIA + if (NOT ${GETARCH2_RESULT}) + MESSAGE(FATAL_ERROR "Compiling getarch_2nd failed ${GETARCH2_LOG}") + endif () ++ ++ install(FILES "${PROJECT_BINARY_DIR}/${GETARCH2_BIN}" DESTINATION bin) + endif () + + # use the cmake binary w/ the -E param to run a shell command in a cross-platform way diff --git a/ports/openblas/portfile.cmake b/ports/openblas/portfile.cmake index cec9cf2a98c99e..34e321a6864de5 100644 --- a/ports/openblas/portfile.cmake +++ b/ports/openblas/portfile.cmake @@ -10,17 +10,18 @@ vcpkg_from_github( fix-redefinition-function.patch fix-uwp-build.patch fix-marco-conflict.patch + install-tools.patch ) find_program(GIT NAMES git git.cmd) # sed and awk are installed with git but in a different directory -get_filename_component(GIT_EXE_PATH ${GIT} DIRECTORY) +get_filename_component(GIT_EXE_PATH "${GIT}" DIRECTORY) set(SED_EXE_PATH "${GIT_EXE_PATH}/../usr/bin") # openblas require perl to generate .def for exports vcpkg_find_acquire_program(PERL) -get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) +get_filename_component(PERL_EXE_PATH "${PERL}" DIRECTORY) set(PATH_BACKUP "$ENV{PATH}") vcpkg_add_to_path("${PERL_EXE_PATH}") vcpkg_add_to_path("${SED_EXE_PATH}") @@ -29,15 +30,11 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES threads USE_THREAD simplethread USE_SIMPLE_THREADED_LEVEL3 + "dynamic-arch" DYNAMIC_ARCH ) set(COMMON_OPTIONS -DBUILD_WITHOUT_LAPACK=ON) -vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS - FEATURES - "dynamic-arch" DYNAMIC_ARCH -) - if(VCPKG_TARGET_IS_OSX) if("dynamic-arch" IN_LIST FEATURES) vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) @@ -45,67 +42,41 @@ if(VCPKG_TARGET_IS_OSX) endif() endif() +set(OPENBLAS_EXTRA_OPTIONS) # for UWP version, must build non uwp first for helper # binaries. -if(VCPKG_TARGET_IS_UWP) - message(STATUS "Building Windows helper files") - set(TEMP_CMAKE_SYSTEM_NAME "${VCPKG_CMAKE_SYSTEM_NAME}") - set(TEMP_CMAKE_SYSTEM_VERSION "${VCPKG_CMAKE_SYSTEM_VERSION}") - set(TEMP_TARGET_TRIPLET "${TARGET_TRIPLET}") - unset(VCPKG_CMAKE_SYSTEM_NAME) - unset(VCPKG_CMAKE_SYSTEM_VERSION) - set(TARGET_TRIPLET "x64-windows") - - vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - OPTIONS ${FEATURE_OPTIONS} - ${COMMON_OPTIONS} - -DTARGET=NEHALEM - ) - - # add just built path to environment for gen_config_h.exe, - # getarch.exe and getarch_2nd.exe - vcpkg_add_to_path("${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") - - # restore target build information - set(VCPKG_CMAKE_SYSTEM_NAME "${TEMP_CMAKE_SYSTEM_NAME}") - set(VCPKG_CMAKE_SYSTEM_VERSION "${TEMP_CMAKE_SYSTEM_VERSION}") - set(TARGET_TRIPLET "${TEMP_TARGET_TRIPLET}") - - message(STATUS "Finished building Windows helper files") - - vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - OPTIONS - ${COMMON_OPTIONS} - -DCMAKE_SYSTEM_PROCESSOR=AMD64 - -DVS_WINRT_COMPONENT=TRUE - "-DBLASHELPER_BINARY_DIR=${CURRENT_BUILDTREES_DIR}/x64-windows-rel") - -elseif(VCPKG_TARGET_IS_WINDOWS) - vcpkg_configure_cmake( - PREFER_NINJA - SOURCE_PATH ${SOURCE_PATH} - OPTIONS - ${COMMON_OPTIONS} - ${FEATURE_OPTIONS} - ) -else() +if(VCPKG_TARGET_IS_UWP) + list(APPEND OPENBLAS_EXTRA_OPTIONS -DCMAKE_SYSTEM_PROCESSOR=AMD64 + "-DBLASHELPER_BINARY_DIR=${CURRENT_HOST_INSTALLED_DIR}/tools/${PORT}") +elseif(NOT (VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)) string(APPEND VCPKG_C_FLAGS " -DNEEDBUNDERSCORE") # Required to get common BLASFUNC to append extra _ string(APPEND VCPKG_CXX_FLAGS " -DNEEDBUNDERSCORE") - vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - OPTIONS - ${COMMON_OPTIONS} - ${FEATURE_OPTIONS} - -DNOFORTRAN=ON - -DBU=_ #required for all blas functions to append extra _ using NAME - ) + list(APPEND OPENBLAS_EXTRA_OPTIONS + -DNOFORTRAN=ON + -DBU=_ #required for all blas functions to append extra _ using NAME + ) endif() +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + ${FEATURE_OPTIONS} + ${COMMON_OPTIONS} + ${OPENBLAS_EXTRA_OPTIONS} +) + +vcpkg_cmake_install() +vcpkg_copy_pdbs() + +vcpkg_cmake_config_fixup(CONFIG_PATH share/cmake/OpenBLAS) + +if (EXISTS "${CURRENT_PACKAGES_DIR}/bin/getarch${VCPKG_HOST_EXECUTABLE_SUFFIX}") + vcpkg_copy_tools(TOOL_NAMES getarch AUTO_CLEAN) +endif() +if (EXISTS "${CURRENT_PACKAGES_DIR}/bin/getarch_2nd${VCPKG_HOST_EXECUTABLE_SUFFIX}") + vcpkg_copy_tools(TOOL_NAMES getarch_2nd AUTO_CLEAN) +endif() -vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/OpenBLAS TARGET_PATH share/openblas) set(ENV{PATH} "${PATH_BACKUP}") set(pcfile "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/openblas.pc") @@ -128,14 +99,14 @@ vcpkg_fixup_pkgconfig() # 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}") +file(COPY "${CMAKE_CURRENT_LIST_DIR}/openblas_common.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include") -vcpkg_copy_pdbs() +vcpkg_replace_string( + "${SOURCE_PATH}/cblas.h" + "#include \"common.h\"" + "#include \"openblas_common.h\"" +) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share") -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/openblas/vcpkg.json b/ports/openblas/vcpkg.json index e0206c35c26925..041c0f3e309b4a 100644 --- a/ports/openblas/vcpkg.json +++ b/ports/openblas/vcpkg.json @@ -1,12 +1,25 @@ { "name": "openblas", "version": "0.3.15", + "port-version": 1, "description": "OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.", "homepage": "https://github.com/xianyi/OpenBLAS", "dependencies": [ + { + "name": "openblas", + "host": true + }, { "name": "pthread", "platform": "!windows & !uwp" + }, + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true } ], "features": { diff --git a/ports/opencascade/fix-pdb-find.patch b/ports/opencascade/fix-pdb-find.patch index dd9b108637d03e..c74aba04f53fd3 100644 --- a/ports/opencascade/fix-pdb-find.patch +++ b/ports/opencascade/fix-pdb-find.patch @@ -1,5 +1,5 @@ diff --git a/adm/cmake/cotire.cmake b/adm/cmake/cotire.cmake -index 6cf0cb66..2a9b1793 100644 +index a63f3ce..aa77c20 100644 --- a/adm/cmake/cotire.cmake +++ b/adm/cmake/cotire.cmake @@ -3114,6 +3114,7 @@ function (cotire_setup_unity_build_target _languages _configurations _target) @@ -19,15 +19,15 @@ index 6cf0cb66..2a9b1793 100644 cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} ANDROID_API ANDROID_API_MIN ANDROID_GUI diff --git a/adm/cmake/occt_toolkit.cmake b/adm/cmake/occt_toolkit.cmake -index 79605059..630a978e 100644 +index 2f96c6f..78f15f0 100644 --- a/adm/cmake/occt_toolkit.cmake +++ b/adm/cmake/occt_toolkit.cmake -@@ -231,7 +231,7 @@ if (EXECUTABLE_PROJECT) +@@ -235,7 +235,7 @@ if (EXECUTABLE_PROJECT) else() add_library (${PROJECT_NAME} ${USED_SRCFILES} ${USED_INCFILES} ${USED_RCFILE} ${RESOURCE_FILES} ${${PROJECT_NAME}_MOC_FILES}) - if (MSVC) + if (MSVC AND BUILD_SHARED_LIBS) - install (FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/bin\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.pdb - CONFIGURATIONS Debug RelWithDebInfo - DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}") + if (BUILD_FORCE_RelWithDebInfo) + set (aReleasePdbConf "Release") + else() diff --git a/ports/opencascade/portfile.cmake b/ports/opencascade/portfile.cmake index 5188e6b0532919..a1f7e439d915b6 100644 --- a/ports/opencascade/portfile.cmake +++ b/ports/opencascade/portfile.cmake @@ -1,10 +1,8 @@ -vcpkg_fail_port_install(ON_ARCH "arm" "arm64" ON_TARGET "UWP" "OSX" "Linux") - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Open-Cascade-SAS/OCCT - REF 628c0211d53c7fe1036a85e7a7b2b067c9c50f7a #V7.5.0 - SHA512 8d946e971417642264b318353fb34ebabf214bff5c705c60818da9e56e9cd658ed15b76b73d7207edffa398c23ad9982f4e9656b218b5edada325ca05c1283bb + REF 80ffc5f84dae96de6ed093d3e5d2466a9e368b27 #V7.6.0 + SHA512 1dfee9c59eb6ea61735f0807d44ccf62019a2649f506a5a8197e04b1533592dc95d6d67ab7a3bb392785755ed60b6fc489bea049f658d4ae7d05dfe0d7d5bdcd HEAD_REF master PATCHES fix-pdb-find.patch @@ -27,13 +25,13 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS # VTK option in opencascade not currently supported because only 6.1.0 is supported but vcpkg has >= 9.0 - # We turn off BUILD_MODULE_Draw as it requires TCL 8.6 and TK 8.6 specifically which conflicts with vcpkg only having TCL 9.0 # And pre-built ActiveTCL binaries are behind a marketing wall :( # We use the Unix install layout for Windows as it matches vcpkg vcpkg_cmake_configure( - SOURCE_PATH ${SOURCE_PATH} - OPTIONS ${FEATURE_OPTIONS} + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + ${FEATURE_OPTIONS} -DBUILD_LIBRARY_TYPE=${BUILD_TYPE} -DBUILD_MODULE_Draw=OFF -DINSTALL_DIR_LAYOUT=Unix @@ -76,7 +74,6 @@ file(RENAME "${CURRENT_PACKAGES_DIR}/debug/libd" "${CURRENT_PACKAGES_DIR}/debug/ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") - if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) # debug creates libd and bind directories that need moving file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin") diff --git a/ports/opencascade/vcpkg.json b/ports/opencascade/vcpkg.json index f3ffe14611ffa5..ea7ddba2961fbf 100644 --- a/ports/opencascade/vcpkg.json +++ b/ports/opencascade/vcpkg.json @@ -1,8 +1,8 @@ { "name": "opencascade", - "version-string": "7.5.0", - "port-version": 3, + "version": "7.6.0", "description": "Open CASCADE Technology (OCCT) is an open-source software development platform for 3D CAD, CAM, CAE.", + "homepage": "https://github.com/Open-Cascade-SAS/OCCT", "supports": "!(uwp | osx | linux | arm)", "dependencies": [ "freetype", diff --git a/ports/palsigslot/portfile.cmake b/ports/palsigslot/portfile.cmake index 0ec29449202d85..4ab6d29cbff759 100644 --- a/ports/palsigslot/portfile.cmake +++ b/ports/palsigslot/portfile.cmake @@ -1,26 +1,25 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO palacaze/sigslot - REF v1.2.0 - SHA512 6a6fb862a9eeea78732f2191916c7384a4bcb65e42c948f726459ee3cb446f90c4bd18c7c94ee4f9b15c81c5aa729094013805161d532c2284d9e77cdffaa468 + REF v1.2.1 + SHA512 cd79985a09ad41562dc8e582d30bc9df0fdc9409ee3676919b56d0d70a6c1af9414587b61977d2fa2ba763ef8df65b30c7b7dc883629e016660baeb998e708f5 HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DSIGSLOT_COMPILE_EXAMPLES=OFF -DSIGSLOT_COMPILE_TESTS=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/PalSigslot TARGET_PATH share/PalSigslot) +vcpkg_cmake_config_fixup(PACKAGE_NAME PalSigslot CONFIG_PATH lib/cmake/PalSigslot) file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug - ${CURRENT_PACKAGES_DIR}/lib + "${CURRENT_PACKAGES_DIR}/debug" + "${CURRENT_PACKAGES_DIR}/lib" ) -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/palsigslot/usage b/ports/palsigslot/usage deleted file mode 100644 index 6242d2829b8f33..00000000000000 --- a/ports/palsigslot/usage +++ /dev/null @@ -1,4 +0,0 @@ -The package palsigslot is compatible with built-in CMake targets: - - find_package(PalSigslot CONFIG REQUIRED) - target_link_libraries(main PRIVATE Pal::Sigslot) diff --git a/ports/palsigslot/vcpkg.json b/ports/palsigslot/vcpkg.json index d3b7e9f898e142..29c68fa94197b0 100644 --- a/ports/palsigslot/vcpkg.json +++ b/ports/palsigslot/vcpkg.json @@ -1,6 +1,16 @@ { "name": "palsigslot", - "version-string": "1.2.0", + "version": "1.2.1", "description": "A header-only, thread safe implementation of signal-slots for C++.", - "homepage": "https://github.com/palacaze/sigslot" + "homepage": "https://github.com/palacaze/sigslot", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/pcapplusplus/portfile.cmake b/ports/pcapplusplus/portfile.cmake index 2ec3eea70d34f3..e280af3c3ffc64 100644 --- a/ports/pcapplusplus/portfile.cmake +++ b/ports/pcapplusplus/portfile.cmake @@ -3,8 +3,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO seladb/PcapPlusPlus - REF v21.05 - SHA512 35227707a48f0e41469247e0993c4aabef7f168a285354e19386b554e0e3d51dc6bf8b128658e16d50e0b6e6e0a029322dee1b4b241e84b8603e2cf73c7f3532 + REF v21.11 + SHA512 ad10034950c0c3e6a4638e8b314c8983ce42609948d7d8d40ad0ff678820a2469807bd29aff77e657a150008602475b50cea84a0766ad87ea203985519cb38ac HEAD_REF master ) diff --git a/ports/pcapplusplus/vcpkg.json b/ports/pcapplusplus/vcpkg.json index 40a35228f2593f..0d37fff7eb6f33 100644 --- a/ports/pcapplusplus/vcpkg.json +++ b/ports/pcapplusplus/vcpkg.json @@ -1,7 +1,7 @@ { "name": "pcapplusplus", - "version-string": "21.05", - "description": "PcapPlusPlus is a multiplatform C++ library for capturing, parsing and crafting of network packets", + "version-string": "21.11", + "description": "PcapPlusPlus is a multi-platform C++ library for capturing, parsing and crafting of network packets", "homepage": "https://github.com/seladb/PcapPlusPlus", "dependencies": [ { diff --git a/ports/pegtl/portfile.cmake b/ports/pegtl/portfile.cmake index f54e1d239c68fd..c6c99ee784005f 100644 --- a/ports/pegtl/portfile.cmake +++ b/ports/pegtl/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO taocpp/pegtl - REF 3.2.1 - SHA512 6297ADEA085BB3043A60C28EB3A868A7C2D203B351F907EA3FDC4EF34C63F87A5786AC7D297531F8B8C8C3414F5DDEF658A025A7BAE2515BDC750E974975F6FF + REF 3.2.2 + SHA512 7ad055e38b362d6b90a49d5deb400948febfbcc30898e05548424bc758f38ffb3f69ca0db41e4480697f8916c90bdb3e48927a4db0caa7a20c8012b1a6d1fe08 HEAD_REF master ) diff --git a/ports/pegtl/vcpkg.json b/ports/pegtl/vcpkg.json index 9db2de5a3009db..95a4f011a5e893 100644 --- a/ports/pegtl/vcpkg.json +++ b/ports/pegtl/vcpkg.json @@ -1,6 +1,6 @@ { "name": "pegtl", - "version-semver": "3.2.1", + "version-semver": "3.2.2", "description": "The Parsing Expression Grammar Template Library (PEGTL) is a zero-dependency C++ header-only parser combinator library for creating parsers according to a Parsing Expression Grammar (PEG).", "homepage": "https://github.com/taocpp/PEGTL", "dependencies": [ diff --git a/ports/pixel/vcpkg.json b/ports/pixel/vcpkg.json index a562aa8afbdf35..df2963bc99ff8c 100644 --- a/ports/pixel/vcpkg.json +++ b/ports/pixel/vcpkg.json @@ -1,13 +1,24 @@ { "name": "pixel", "version-string": "0.3", - "port-version": 2, + "port-version": 3, "description": "Simple 2D Graphics based on standard and portable OpenGL.", "homepage": "https://github.com/dascandy/pixel", "supports": "!windows", "dependencies": [ "glew", "opengl", - "sdl2" + { + "name": "sdl2", + "default-features": false, + "features": [ + "x11" + ], + "platform": "linux" + }, + { + "name": "sdl2", + "platform": "!linux" + } ] } diff --git a/ports/plplot/portfile.cmake b/ports/plplot/portfile.cmake index cc4b7a433a2fc0..da70bbe4e67665 100644 --- a/ports/plplot/portfile.cmake +++ b/ports/plplot/portfile.cmake @@ -15,14 +15,14 @@ vcpkg_from_sourceforge( fix-pkg-config.patch ) -set(BUILD_with_wxwidgets OFF) -if("wxwidgets" IN_LIST FEATURES) - set(BUILD_with_wxwidgets ON) -endif() +vcpkg_check_features( + OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + wxwidgets BUILD_with_wxwidgets +) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DENABLE_tcl=OFF -DENABLE_d=OFF @@ -31,41 +31,45 @@ vcpkg_configure_cmake( -DPL_HAVE_QHULL=OFF -DPLPLOT_USE_QT5=OFF -DPL_DOUBLE=ON - -DPLD_wxwidgets=${BUILD_with_wxwidgets} -DENABLE_DYNDRIVERS=OFF -DDATA_DIR=${CURRENT_PACKAGES_DIR}/share/plplot + ${FEATURE_OPTIONS} OPTIONS_DEBUG -DDRV_DIR=${CURRENT_PACKAGES_DIR}/debug/bin OPTIONS_RELEASE -DDRV_DIR=${CURRENT_PACKAGES_DIR}/bin ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/plplot) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/plplot) + +if(EXISTS "${CURRENT_PACKAGES_DIR}/share/plplot/examples/plplot-test-interactive.sh") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/plplot/examples/plplot-test-interactive.sh" "${CURRENT_PACKAGES_DIR}/share/plplot" "../") +endif() # Remove unnecessary tool file(REMOVE - ${CURRENT_PACKAGES_DIR}/debug/bin/pltek.exe - ${CURRENT_PACKAGES_DIR}/bin/pltek.exe - ${CURRENT_PACKAGES_DIR}/debug/bin/wxPLViewer.exe - ${CURRENT_PACKAGES_DIR}/bin/wxPLViewer.exe + "${CURRENT_PACKAGES_DIR}/debug/bin/pltek.exe" + "${CURRENT_PACKAGES_DIR}/bin/pltek.exe" + "${CURRENT_PACKAGES_DIR}/debug/bin/wxPLViewer.exe" + "${CURRENT_PACKAGES_DIR}/bin/wxPLViewer.exe" ) if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") message(STATUS "Static build: Removing the full bin directory.") file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/bin - ${CURRENT_PACKAGES_DIR}/bin + "${CURRENT_PACKAGES_DIR}/debug/bin" + "${CURRENT_PACKAGES_DIR}/bin" ) endif() # Remove unwanted and duplicate directories -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") + +file(INSTALL "${SOURCE_PATH}/Copyright" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) -file(INSTALL ${SOURCE_PATH}/Copyright DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) - -vcpkg_fixup_pkgconfig() +vcpkg_fixup_pkgconfig() diff --git a/ports/plplot/vcpkg.json b/ports/plplot/vcpkg.json index 80eed11923c7a1..6f7197318014ea 100644 --- a/ports/plplot/vcpkg.json +++ b/ports/plplot/vcpkg.json @@ -1,12 +1,20 @@ { "name": "plplot", - "version-string": "5.13.0", - "port-version": 11, + "version-semver": "5.13.0", + "port-version": 12, "description": "PLplot is a cross-platform software package for creating scientific plots whose (UTF-8) plot symbols and text are limited in practice only by what Unicode-aware system fonts are installed on a user's computer.", "dependencies": [ "bzip2", "freetype", "libpng", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "zlib" ], "features": { diff --git a/ports/poco/fix_dependency.patch b/ports/poco/fix_dependency.patch index 2fd917affa77de..4b47bfddb299eb 100644 --- a/ports/poco/fix_dependency.patch +++ b/ports/poco/fix_dependency.patch @@ -33,7 +33,7 @@ index 4e05272..44dd7cb 100644 + find_package(libmysql) + if (NOT libmysql_FOUND) + find_package(unofficial-libmariadb CONFIG REQUIRED) -+ set(MYSQL_LIBRARIES libmariadb) ++ set(MYSQL_LIBRARIES unofficial::libmariadb) + endif() endif() diff --git a/ports/poco/vcpkg.json b/ports/poco/vcpkg.json index 0f6f37ab5ac9cf..2090861431af97 100644 --- a/ports/poco/vcpkg.json +++ b/ports/poco/vcpkg.json @@ -1,6 +1,7 @@ { "name": "poco", "version-semver": "1.11.0", + "port-version": 1, "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", "supports": "!uwp", diff --git a/ports/proj4/portfile.cmake b/ports/proj4/portfile.cmake index 7933cf711939af..2a0a83e24bca53 100644 --- a/ports/proj4/portfile.cmake +++ b/ports/proj4/portfile.cmake @@ -1,9 +1,9 @@ -set(VERSION 7.2.1) # Variable used for pc file +set(VERSION 8.0.0) # Variable used for pc file vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO OSGeo/PROJ REF "${VERSION}" - SHA512 e6e77266dcd70c939c16667c916cccab8de161221d2ef600cfca43382f50da2dc8d790561556b4416adbb4ac6fba939004e0cc936c278e0e808dc3566e9a70d4 + SHA512 353f0e14ba6c11bfcec8a30b3f322842e8a3103546e0fd40871e341c859ca7ae2b9411425be5b588eb45cc5716255d2ea81d6357407bcfb9506a0edb161376f5 HEAD_REF master PATCHES fix-filemanager-uwp.patch diff --git a/ports/proj4/vcpkg.json b/ports/proj4/vcpkg.json index 9aed018aa871bd..b1c9f2034c0407 100644 --- a/ports/proj4/vcpkg.json +++ b/ports/proj4/vcpkg.json @@ -1,7 +1,6 @@ { "name": "proj4", - "version-semver": "7.2.1", - "port-version": 7, + "version-semver": "8.0.0", "description": "PROJ.4 library for cartographic projections", "homepage": "https://github.com/OSGeo/PROJ", "dependencies": [ diff --git a/ports/prometheus-cpp/portfile.cmake b/ports/prometheus-cpp/portfile.cmake index ce2c018fff765a..256f69c8ddc3cc 100644 --- a/ports/prometheus-cpp/portfile.cmake +++ b/ports/prometheus-cpp/portfile.cmake @@ -3,40 +3,35 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO jupp0r/prometheus-cpp - REF 342de5e93bd0cbafde77ec801f9dd35a03bceb3f # v0.13.0 - SHA512 2edd093dff57109f4e7050f7d870010e696642f0445a8d50f689a9a7e8f4704e74659846c1afcdfcd700ceeb64b48ea83159e87ca00ca58de4866dd39975590b + REF 4ea303fa66e4c26dc4df67045fa0edf09c2f3077 # v1.0.0 + SHA512 f97f380182cb7d8576f444e263159d5cc4572d71020b14a2d599041a6a4e5e2cb677a80c637b5a2bca55d4f0e570e87c2863d5dd48e317e9a912cca5a192e81a HEAD_REF master ) -macro(feature FEATURENAME OPTIONNAME) - if("${FEATURENAME}" IN_LIST FEATURES) - list(APPEND FEATURE_OPTIONS -D${OPTIONNAME}=TRUE) - else() - list(APPEND FEATURE_OPTIONS -D${OPTIONNAME}=FALSE) - endif() -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 +vcpkg_check_features( + OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + compression ENABLE_COMPRESSION + pull ENABLE_PULL + push ENABLE_PUSH + tests ENABLE_TESTING +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DUSE_THIRDPARTY_LIBRARIES=OFF # use vcpkg packages -DGENERATE_PKGCONFIG=OFF ${FEATURE_OPTIONS} ) -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/prometheus-cpp) +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/prometheus-cpp") -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") # Handle copyright -configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) +configure_file("${SOURCE_PATH}/LICENSE" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY) diff --git a/ports/prometheus-cpp/vcpkg.json b/ports/prometheus-cpp/vcpkg.json index 371b1e7380deb0..1f5ae41ba9c897 100644 --- a/ports/prometheus-cpp/vcpkg.json +++ b/ports/prometheus-cpp/vcpkg.json @@ -1,7 +1,17 @@ { "name": "prometheus-cpp", - "version-semver": "0.13.0", + "version-semver": "1.0.0", "description": "Prometheus Client Library for Modern C++", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], "default-features": [ "compression", "pull" diff --git a/ports/protobuf-c/fix-crt-linkage.patch b/ports/protobuf-c/fix-crt-linkage.patch new file mode 100644 index 00000000000000..974c6e6200ab9f --- /dev/null +++ b/ports/protobuf-c/fix-crt-linkage.patch @@ -0,0 +1,12 @@ +diff --git a/build-cmake/CMakeLists.txt b/build-cmake/CMakeLists.txt +--- a/build-cmake/CMakeLists.txt ++++ b/build-cmake/CMakeLists.txt +@@ -70,7 +70,7 @@ if (BUILD_PROTO3) + endif() + ENDIF() + +-if (MSVC AND NOT BUILD_SHARED_LIBS) ++if (0) + # In case we are building static libraries, link also the runtime library statically + # so that MSVCR*.DLL is not required at runtime. + # https://msdn.microsoft.com/en-us/library/2kzt1wy3.aspx diff --git a/ports/protobuf-c/fix-features.patch b/ports/protobuf-c/fix-features.patch deleted file mode 100644 index 89b2dd43201763..00000000000000 --- a/ports/protobuf-c/fix-features.patch +++ /dev/null @@ -1,62 +0,0 @@ -diff --git a/build-cmake/CMakeLists.txt b/build-cmake/CMakeLists.txt -index bc1728f..7c6a04d 100644 ---- a/build-cmake/CMakeLists.txt -+++ b/build-cmake/CMakeLists.txt -@@ -61,11 +61,15 @@ if (MSVC AND MSVC_STATIC_BUILD) - endif(${flag_var} MATCHES "/MD") - endforeach(flag_var) - endif (MSVC AND MSVC_STATIC_BUILD) -+ -+IF(WITH_TOOLS) - FILE(GLOB PROTOC_GEN_C_SRC ${MAIN_DIR}/protoc-c/*.h ${MAIN_DIR}/protoc-c/*.cc ) - ADD_EXECUTABLE(protoc-gen-c ${PROTOC_GEN_C_SRC}) - - TARGET_LINK_LIBRARIES(protoc-gen-c ${PROTOBUF_PROTOC_LIBRARY} ${PROTOBUF_LIBRARY}) -+ENDIF() - -+IF(WITH_TEST AND WITH_TOOLS) - IF(CMAKE_HOST_UNIX) - ADD_CUSTOM_COMMAND(TARGET ${PROJECT_NAME} POST_BUILD - COMMAND ln -sf protoc-gen-c protoc-c -@@ -79,8 +83,6 @@ FUNCTION(GENERATE_TEST_SOURCES PROTO_FILE SRC HDR) - DEPENDS protoc-gen-c) - ENDFUNCTION() - -- --IF(CMAKE_BUILD_TYPE MATCHES Debug) - ENABLE_TESTING() - - GENERATE_TEST_SOURCES(${TEST_DIR}/test.proto t/test.pb-c.c t/test.pb-c.h) -@@ -126,17 +128,17 @@ GENERATE_TEST_SOURCES(${TEST_DIR}/test-proto3.proto t/test-proto3.pb-c.c t/test- - ADD_EXECUTABLE(test-generated-code3 ${TEST_DIR}/generated-code/test-generated-code.c t/test-proto3.pb-c.c t/test-proto3.pb-c.h) - TARGET_COMPILE_DEFINITIONS(test-generated-code3 PUBLIC -DPROTO3) - TARGET_LINK_LIBRARIES(test-generated-code3 protobuf-c) -- - ENDIF() - --INSTALL(TARGETS protoc-gen-c protobuf-c RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib) --INSTALL(FILES ${MAIN_DIR}/protobuf-c/protobuf-c.h DESTINATION include/protobuf-c) --INSTALL(FILES ${MAIN_DIR}/protobuf-c/protobuf-c.h DESTINATION include) -+IF (WITH_TOOLS) -+INSTALL(TARGETS protoc-gen-c RUNTIME DESTINATION tools LIBRARY DESTINATION lib ARCHIVE DESTINATION lib) -+ENDIF() - - IF(CMAKE_HOST_UNIX) - INSTALL(CODE "EXECUTE_PROCESS (COMMAND ln -sf protoc-gen-c protoc-c WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}/bin)") - ENDIF() - -+IF (WITH_TEST) - INCLUDE(Dart) - - SET(DART_TESTING_TIMEOUT 5) -@@ -147,5 +149,10 @@ ADD_TEST(test-issue220 test-issue220) - ADD_TEST(test-issue251 test-issue251) - ADD_TEST(test-version test-version) - -+ENDIF() -+ -+INSTALL(TARGETS protobuf-c RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib) -+INSTALL(FILES ${MAIN_DIR}/protobuf-c/protobuf-c.h DESTINATION include/protobuf-c) -+INSTALL(FILES ${MAIN_DIR}/protobuf-c/protobuf-c.h DESTINATION include) - - INCLUDE(CPack) diff --git a/ports/protobuf-c/fix-usage-issue.patch b/ports/protobuf-c/fix-usage-issue.patch deleted file mode 100644 index ce5e4cfa212c3a..00000000000000 --- a/ports/protobuf-c/fix-usage-issue.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/build-cmake/CMakeLists.txt b/build-cmake/CMakeLists.txt -index 7c6a04d..83534cb 100644 ---- a/build-cmake/CMakeLists.txt -+++ b/build-cmake/CMakeLists.txt -@@ -14,6 +14,11 @@ option(BUILD_PROTO3 "BUILD_PROTO3" ON) - INCLUDE(TestBigEndian) - TEST_BIG_ENDIAN(WORDS_BIGENDIAN) - -+ -+IF(CMAKE_HOST_UNIX) -+ FIND_PACKAGE(Threads REQUIRED) -+ENDIF() -+ - SET(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}") - ADD_DEFINITIONS(-DPACKAGE_VERSION="${PACKAGE_VERSION}") - ADD_DEFINITIONS(-DPACKAGE_STRING="${PACKAGE_STRING}") -@@ -67,6 +72,9 @@ FILE(GLOB PROTOC_GEN_C_SRC ${MAIN_DIR}/protoc-c/*.h ${MAIN_DIR}/protoc-c/*.cc ) - ADD_EXECUTABLE(protoc-gen-c ${PROTOC_GEN_C_SRC}) - - TARGET_LINK_LIBRARIES(protoc-gen-c ${PROTOBUF_PROTOC_LIBRARY} ${PROTOBUF_LIBRARY}) -+IF(CMAKE_HOST_UNIX) -+ TARGET_LINK_LIBRARIES(protoc-gen-c ${CMAKE_THREAD_LIBS_INIT}) -+ENDIF() - ENDIF() - - IF(WITH_TEST AND WITH_TOOLS) -@@ -99,6 +107,9 @@ GENERATE_TEST_SOURCES(${TEST_DIR}/test-full.proto t/test-full.pb-c.c t/test-full - - ADD_EXECUTABLE(cxx-generate-packed-data ${TEST_DIR}/generated-code2/cxx-generate-packed-data.cc t/test-full.pb.h t/test-full.pb.cc) - TARGET_LINK_LIBRARIES(cxx-generate-packed-data ${PROTOBUF_LIBRARY}) -+IF (CMAKE_HOST_UNIX) -+ TARGET_LINK_LIBRARIES(cxx-generate-packed-data ${CMAKE_THREAD_LIBS_INIT}) -+ENDIF() - - FILE(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/t/generated-code2) - ADD_CUSTOM_COMMAND(OUTPUT t/generated-code2/test-full-cxx-output.inc diff --git a/ports/protobuf-c/portfile.cmake b/ports/protobuf-c/portfile.cmake index 98f7035f642cff..4bcce7017d18cc 100644 --- a/ports/protobuf-c/portfile.cmake +++ b/ports/protobuf-c/portfile.cmake @@ -1,32 +1,42 @@ -vcpkg_fail_port_install(MESSAGE "${PORT} currently only supports Linux platform" ON_TARGET "Windows") - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO protobuf-c/protobuf-c - REF 1390409f4ee4e26d0635310995b516eb702c3f9e #1.3.2 - SHA512 5c60883c4ef064c641875bfe7f89bf255a29dd20b5e0be5878cbaec03f2efd1f926c3e40dc0090cb172b8eef227fddafe86051f08edb3e1c26d0bd6aca673e41 + REF v1.4.0 + SHA512 cba4c6116c0f2ebb034236e8455d493bfaa2517733befcd87b6f8d6d3df0c0149b17fcbf59cd1763fa2318119c664d0dae3d2d3a46ebfe2a0fec3ef4719b033b HEAD_REF master PATCHES - fix-features.patch - fix-usage-issue.patch + fix-crt-linkage.patch ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS - tools WITH_TOOLS - test WITH_TEST + FEATURES + tools BUILD_PROTOC + test BUILD_TESTS ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH}/build-cmake - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}/build-cmake" DISABLE_PARALLEL_CONFIGURE OPTIONS ${FEATURE_OPTIONS} ) -vcpkg_install_cmake() +vcpkg_cmake_install(ADD_BIN_TO_PATH) +vcpkg_fixup_pkgconfig() +vcpkg_copy_pdbs() + +if("tools" IN_LIST FEATURES) + vcpkg_copy_tools( + TOOL_NAMES protoc-gen-c + AUTO_CLEAN + ) +endif() # Include files should not be duplicated into the /debug/include directory. -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +# Remove duplicate PDB files (vcpkg_copy_pdbs already copied them to "bin") +file(REMOVE "${CURRENT_PACKAGES_DIR}/lib/protobuf-c.pdb") +file(REMOVE "${CURRENT_PACKAGES_DIR}/debug/lib/protobuf-c.pdb") # Handle copyright -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) \ No newline at end of file +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) \ No newline at end of file diff --git a/ports/protobuf-c/vcpkg.json b/ports/protobuf-c/vcpkg.json index 548cce39b6c9a7..73fbd998299e2e 100644 --- a/ports/protobuf-c/vcpkg.json +++ b/ports/protobuf-c/vcpkg.json @@ -1,15 +1,18 @@ { "name": "protobuf-c", - "version-string": "1.3.2", - "port-version": 3, + "version-semver": "1.4.0", "description": "This is protobuf-c, a C implementation of the Google Protocol Buffers data serialization format.", "homepage": "https://github.com/protobuf-c/protobuf-c", "dependencies": [ - "protobuf" + "protobuf", + { + "name": "vcpkg-cmake", + "host": true + } ], "features": { "test": { - "description": "build test project.", + "description": "Build test project.", "dependencies": [ { "name": "protobuf-c", @@ -20,7 +23,7 @@ ] }, "tools": { - "description": "build tools." + "description": "Build tools (protoc-gen-c)." } } } diff --git a/ports/ptyqt/portfile.cmake b/ports/ptyqt/portfile.cmake new file mode 100644 index 00000000000000..055f15768171bf --- /dev/null +++ b/ports/ptyqt/portfile.cmake @@ -0,0 +1,42 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO kafeg/ptyqt + REF 0.6.3 + SHA512 7a490a6d0cca500d202b0524abf8596d70872c224eea778efd941ad2a995a8a53d295e3ac000ca8fb63e02467f1191ae6bddfd8469fe5df2aca8af972d06fcff + HEAD_REF master +) + +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(VCPKG_CXX_FLAGS "${VCPKG_CXX_FLAGS} -lrt") + set(VCPKG_C_FLAGS "${VCPKG_C_FLAGS} -lrt") + + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") + file(READ ${SOURCE_PATH}/core/CMakeLists.txt filedata) + string(REPLACE "-static-libstdc++" "-static-libstdc++ -lglib-2.0" filedata "${filedata}") + file(WRITE ${SOURCE_PATH}/core/CMakeLists.txt "${filedata}") + else() + file(READ ${SOURCE_PATH}/core/CMakeLists.txt filedata) + string(REPLACE "-static-libstdc++ -lglib-2.0" "-static-libstdc++" filedata "${filedata}") + file(WRITE ${SOURCE_PATH}/core/CMakeLists.txt "${filedata}") + endif() +endif() + +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + set(BUILD_TYPE SHARED) +else() + set(BUILD_TYPE STATIC) +endif() + +vcpkg_cmake_configure( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DNO_BUILD_TESTS=1 + -DNO_BUILD_EXAMPLES=1 + -DBUILD_TYPE=${BUILD_TYPE} +) + +vcpkg_cmake_install() +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/ptyqt/vcpkg.json b/ports/ptyqt/vcpkg.json new file mode 100644 index 00000000000000..9a47dfc35090ec --- /dev/null +++ b/ports/ptyqt/vcpkg.json @@ -0,0 +1,21 @@ +{ + "name": "ptyqt", + "version": "0.6.3", + "description": "PtyQt - C++ library for work with PseudoTerminals", + "supports": "!uwp", + "dependencies": [ + "qt5-base", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, + { + "name": "winpty", + "platform": "windows" + } + ] +} diff --git a/ports/python3/0006-restore-support-for-windows-7.patch b/ports/python3/0006-restore-support-for-windows-7.patch index 837666393cb61c..e240fefffc1f9e 100644 --- a/ports/python3/0006-restore-support-for-windows-7.patch +++ b/ports/python3/0006-restore-support-for-windows-7.patch @@ -9,11 +9,11 @@ pathcch. The same mechanism is applied to fix posixmodule.c --- +index 25ddc82..ff51042 100644 diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c -index c984e2e..6c9787a 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c -@@ -18,7 +18,7 @@ +@@ -20,7 +20,7 @@ FSCTL_GET_REPARSE_POINT is not exported with WIN32_LEAN_AND_MEAN. */ # include @@ -21,26 +21,26 @@ index c984e2e..6c9787a 100644 +# include #endif - #include "pycore_ceval.h" // _PyEval_ReInitThreads() -@@ -4371,6 +4371,10 @@ os._path_splitroot - Removes everything after the root on Win32. - [clinic start generated code]*/ + #ifdef __VXWORKS__ +@@ -4410,6 +4410,10 @@ os__getvolumepathname_impl(PyObject *module, path_t *path) + return result; + } +static int _PathCchSkipRoot_Initialized = 0; +typedef HRESULT (__stdcall *PPathCchSkipRoot) (PCWSTR pszPath, PCWSTR *ppszRootEnd); +static PPathCchSkipRoot _PathCchSkipRoot; + - static PyObject * - os__path_splitroot_impl(PyObject *module, path_t *path) - /*[clinic end generated code: output=ab7f1a88b654581c input=dc93b1d3984cffb6]*/ -@@ -4380,6 +4384,19 @@ os__path_splitroot_impl(PyObject *module, path_t *path) + + /*[clinic input] + os._path_splitroot +@@ -4428,6 +4432,19 @@ os__path_splitroot_impl(PyObject *module, path_t *path) PyObject *result = NULL; HRESULT ret; + if (_PathCchSkipRoot_Initialized == 0) { + HMODULE pathapi = LoadLibraryExW(L"api-ms-win-core-path-l1-1-0.dll", NULL, + LOAD_LIBRARY_SEARCH_SYSTEM32); -+ ++ + if (pathapi) { + _PathCchSkipRoot = (PPathCchSkipRoot)GetProcAddress(pathapi, "PathCchSkipRoot"); + } else { @@ -53,7 +53,7 @@ index c984e2e..6c9787a 100644 buffer = (wchar_t*)PyMem_Malloc(sizeof(wchar_t) * (wcslen(path->wide) + 1)); if (!buffer) { return NULL; -@@ -4390,7 +4407,14 @@ os__path_splitroot_impl(PyObject *module, path_t *path) +@@ -4438,7 +4455,14 @@ os__path_splitroot_impl(PyObject *module, path_t *path) } Py_BEGIN_ALLOW_THREADS diff --git a/ports/python3/vcpkg.json b/ports/python3/vcpkg.json index 358fcac48e2f43..b0e20b8f79d5cb 100644 --- a/ports/python3/vcpkg.json +++ b/ports/python3/vcpkg.json @@ -1,7 +1,7 @@ { "name": "python3", "version-semver": "3.10.0", - "port-version": 1, + "port-version": 2, "description": "The Python programming language", "homepage": "https://github.com/python/cpython", "supports": "!(arm | uwp)", diff --git a/overlay/ports/qtkeychain/portfile.cmake b/ports/qtkeychain-qt6/portfile.cmake similarity index 52% rename from overlay/ports/qtkeychain/portfile.cmake rename to ports/qtkeychain-qt6/portfile.cmake index ef07cf18afa707..674d0268555440 100644 --- a/overlay/ports/qtkeychain/portfile.cmake +++ b/ports/qtkeychain-qt6/portfile.cmake @@ -1,10 +1,11 @@ +message(WARNING "qtkeychain is a third-party extension to Qt and is not affiliated with The Qt Company") + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO frankosterfeld/qtkeychain - REF v0.12.0 - SHA512 ad8f7b3e8f59894a09892aeb78118f5ed93aa4593eece782c1879a4f3c37d9d63e8d40ad4b2e6a2e286e0da39f45cd4ed46181a1a05c078a59134114b2456a03 + REF v0.13.2 + SHA512 10f8b1c959a126ba14614b797ea5640404a0b95c71e452225c74856eae90e966aac581ca393508a2106033c3d5ad70427ea6f7ef3f2997eddf6d09a7b4fa26eb HEAD_REF master - PATCHES cmakeconfig.patch ) if(VCPKG_CROSSCOMPILING) @@ -17,23 +18,20 @@ if(VCPKG_CROSSCOMPILING) endif() list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TEST_APPLICATION:BOOL=OFF) -if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - list(APPEND QTKEYCHAIN_OPTIONS -DQTKEYCHAIN_STATIC:BOOL=ON) -else() - list(APPEND QTKEYCHAIN_OPTIONS -DQTKEYCHAIN_STATIC:BOOL=OFF) -endif() -if (CMAKE_HOST_WIN32) - list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TRANSLATIONS:BOOL=OFF) +# FIXME: Why does build translations fail on arm64-windows? +if (VCPKG_TARGET_IS_WINDOWS AND VCPKG_TARGET_ARCHITECTURE STREQUAL arm64) + list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TRANSLATIONS:BOOL=OFF) else() - list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TRANSLATIONS:BOOL=ON) + list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TRANSLATIONS:BOOL=ON) endif() vcpkg_cmake_configure( + DISABLE_PARALLEL_CONFIGURE SOURCE_PATH ${SOURCE_PATH} - OPTIONS -DBUILD_WITH_QT6=ON - -DBUILD_TRANSLATIONS=OFF - ${QTKEYCHAIN_OPTIONS} + OPTIONS + -DBUILD_WITH_QT6=ON + ${QTKEYCHAIN_OPTIONS} ) vcpkg_cmake_install() @@ -41,10 +39,10 @@ vcpkg_copy_pdbs() vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Qt6Keychain PACKAGE_NAME Qt6Keychain) # Remove unneeded dirs -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/share +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" ) # Handle copyright -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/qtkeychain-qt6/vcpkg.json b/ports/qtkeychain-qt6/vcpkg.json new file mode 100644 index 00000000000000..df4c0591cbaeba --- /dev/null +++ b/ports/qtkeychain-qt6/vcpkg.json @@ -0,0 +1,27 @@ +{ + "name": "qtkeychain-qt6", + "version": "0.13.2", + "description": "(Unaffiliated with Qt) Platform-independent Qt6 API for storing passwords securely", + "homepage": "https://github.com/frankosterfeld/qtkeychain", + "license": "BSD-3-Clause", + "dependencies": [ + { + "name": "libsecret", + "platform": "!(windows | uwp | osx)" + }, + { + "name": "qttools", + "features": [ + "linguist" + ] + }, + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/ports/qtkeychain/portfile.cmake b/ports/qtkeychain/portfile.cmake index 987d54fc343a65..794694648ef523 100644 --- a/ports/qtkeychain/portfile.cmake +++ b/ports/qtkeychain/portfile.cmake @@ -1,40 +1,30 @@ +message(WARNING "qtkeychain is a third-party extension to Qt and is not affiliated with The Qt Company") + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO frankosterfeld/qtkeychain - REF 6743abd98586fbabd01da9839f53f61ccfb7f83c # v0.11.1 - SHA512 0ad6b82b972ca1cc5f1f8318899637ce0a6786f912b7f9efc1b7eea132ccefbe9a5dc0eb82d0dc9a020bcd55cd538d9e962fc40eb5c828142a7f2186b19633b1 + REF v0.13.2 + SHA512 10f8b1c959a126ba14614b797ea5640404a0b95c71e452225c74856eae90e966aac581ca393508a2106033c3d5ad70427ea6f7ef3f2997eddf6d09a7b4fa26eb HEAD_REF master ) -list(APPEND QTKEYCHAIN_OPTIONS -DCMAKE_DEBUG_POSTFIX=d) -list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TEST_APPLICATION:BOOL=OFF) -if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - list(APPEND QTKEYCHAIN_OPTIONS -DQTKEYCHAIN_STATIC:BOOL=ON) -else() - list(APPEND QTKEYCHAIN_OPTIONS -DQTKEYCHAIN_STATIC:BOOL=OFF) -endif() - -if (CMAKE_HOST_WIN32) - list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TRANSLATIONS:BOOL=ON) -else() - list(APPEND QTKEYCHAIN_OPTIONS -DBUILD_TRANSLATIONS:BOOL=OFF) -endif() - -vcpkg_configure_cmake( +vcpkg_cmake_configure( + DISABLE_PARALLEL_CONFIGURE SOURCE_PATH ${SOURCE_PATH} - OPTIONS ${QTKEYCHAIN_OPTIONS} + OPTIONS + -DBUILD_WITH_QT6=OFF + -DBUILD_TEST_APPLICATION=OFF ) - -vcpkg_install_cmake() +vcpkg_cmake_install() vcpkg_copy_pdbs() +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Qt5Keychain PACKAGE_NAME Qt5Keychain) -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Qt5Keychain TARGET_PATH share/Qt5Keychain) # Remove unneeded dirs -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/share +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" ) # Handle copyright -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/qtkeychain/vcpkg.json b/ports/qtkeychain/vcpkg.json index acf0e19985053a..ca581e822b6b4f 100644 --- a/ports/qtkeychain/vcpkg.json +++ b/ports/qtkeychain/vcpkg.json @@ -1,14 +1,22 @@ { "name": "qtkeychain", - "version-string": "0.11.1", - "port-version": 1, - "description": "qtkeychain - Platform-independent Qt API for storing passwords securely", + "version": "0.13.2", + "description": "(Unaffiliated with Qt) Platform-independent Qt5 API for storing passwords securely", "homepage": "https://github.com/frankosterfeld/qtkeychain", + "license": "BSD-3-Clause", "dependencies": [ { - "name": "qt5-base", - "default-features": false + "name": "libsecret", + "platform": "!(windows | uwp | osx)" }, - "qt5-tools" + "qt5-tools", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ] } diff --git a/ports/quantlib/disable-examples-tests.patch b/ports/quantlib/disable-examples-tests.patch deleted file mode 100644 index b42e0bc255d75e..00000000000000 --- a/ports/quantlib/disable-examples-tests.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index d046251cc..d8201bf6a 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -44,8 +44,6 @@ if (Boost_FOUND) - endif (Boost_FOUND) - - add_subdirectory(ql) --add_subdirectory(Examples) --add_subdirectory(test-suite) - - # - # Copy across the ANSI config file into the build directory. Users diff --git a/ports/quantlib/fix-mac-build.patch b/ports/quantlib/fix-mac-build.patch deleted file mode 100644 index a114f96e7d56ae..00000000000000 --- a/ports/quantlib/fix-mac-build.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 62ab08a115..2b383c1dd5 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -2,6 +2,10 @@ cmake_minimum_required() - - project(QuantLib) - -+if(APPLE AND NOT CMAKE_CXX_STANDARD) -+ set(CMAKE_CXX_STANDARD 11) -+endif() -+ - include(CTest) - include(${CMAKE_CURRENT_LIST_DIR}/cmake/quantlib.cmake) - diff --git a/ports/quantlib/portfile.cmake b/ports/quantlib/portfile.cmake index f7cf9b7770da75..5f110915cfa11d 100644 --- a/ports/quantlib/portfile.cmake +++ b/ports/quantlib/portfile.cmake @@ -1,26 +1,23 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO lballabio/QuantLib - REF QuantLib-v1.22 - SHA512 279c2e9273dd0fbc03d19ac19814e8a3b5544545cc1441982232f89bd313fe76b6e252dbcae8a3d146ecc4f1d1e64632ac412096b89da882ba879a66776fdb91 + REF QuantLib-v1.24 + SHA512 1a63d90363cda69e20e40a60a2d6357f632fac997df520b949e73feb256dac8a999395d0ebe94734ac630e9104e512b0a545f6a2111b287a41e9128127aa5bb0 HEAD_REF master - PATCHES - disable-examples-tests.patch - fix-mac-build.patch # fixed in next release ) -string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" USE_BOOST_DYNAMIC_LIBRARIES) - -set(QL_MSVC_RUNTIME ${VCPKG_LIBRARY_LINKAGE}) - -vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +if (VCPKG_TARGET_IS_WINDOWS) + # This can (and should) be removed if QuantLib ever supports dynamically linking on Windows + vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - -DUSE_BOOST_DYNAMIC_LIBRARIES=${USE_BOOST_DYNAMIC_LIBRARIES} - -DMSVC_RUNTIME=${QL_MSVC_RUNTIME} + -DQL_BUILD_BENCHMARK=OFF + -DQL_BUILD_EXAMPLES=OFF + -DQL_BUILD_TEST_SUITE=OFF ) vcpkg_install_cmake() diff --git a/ports/quantlib/vcpkg.json b/ports/quantlib/vcpkg.json index ee732abc26e96f..e4d37e94445a37 100644 --- a/ports/quantlib/vcpkg.json +++ b/ports/quantlib/vcpkg.json @@ -1,8 +1,9 @@ { "name": "quantlib", - "version": "1.22", + "version": "1.24", "description": "The QuantLib C++ library", "homepage": "https://www.quantlib.org/", + "supports": "!(windows & !static)", "dependencies": [ "boost-accumulators", "boost-algorithm", @@ -30,6 +31,7 @@ "boost-serialization", "boost-signals2", "boost-smart-ptr", + "boost-test", "boost-thread", "boost-tuple", "boost-type-traits", diff --git a/ports/rang/CMakeLists.txt b/ports/rang/CMakeLists.txt deleted file mode 100644 index 6cf64a05fd2827..00000000000000 --- a/ports/rang/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -cmake_minimum_required (VERSION 2.8) -project (rang) - -include_directories(include) -install(FILES ${PROJECT_SOURCE_DIR}/include/rang.hpp DESTINATION include) \ No newline at end of file diff --git a/ports/rang/portfile.cmake b/ports/rang/portfile.cmake index f2eead8740aa9f..9fa3eecb476f55 100644 --- a/ports/rang/portfile.cmake +++ b/ports/rang/portfile.cmake @@ -1,19 +1,20 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO agauniyal/rang - REF v3.1.0 - SHA512 3419c9d8b8177320d4254a3e317790b0ca17bb08940025a16cb6a468a5f4c6e6a8bae391441fbb61b46e94cbe760aef1cb7f31fb8a1e958312e9dcb568b04470 + REF v3.2 + SHA512 f579aaf3bddbfa2325dd31bdbe7c32598af8a340fee62c3a1e7ed1cf189af2808b7838a5fb13b3765279ddd1e7481f6229da72e72218a4916455cf3ae12b5a68 HEAD_REF master ) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) - -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) -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) \ No newline at end of file +vcpkg_cmake_install() + +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/rang) +vcpkg_fixup_pkgconfig() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) \ No newline at end of file diff --git a/ports/rang/vcpkg.json b/ports/rang/vcpkg.json index c388d10d47dafd..d316d7a901de4c 100644 --- a/ports/rang/vcpkg.json +++ b/ports/rang/vcpkg.json @@ -1,6 +1,16 @@ { "name": "rang", - "version-string": "3.1.0", - "port-version": 1, - "description": "Colors for your Terminal." + "version": "3.2", + "description": "Colors for your Terminal.", + "homepage": "https://github.com/agauniyal/rang", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/re2/portfile.cmake b/ports/re2/portfile.cmake index 677e31fc85c336..3adf713fd97e3a 100644 --- a/ports/re2/portfile.cmake +++ b/ports/re2/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/re2 - REF 2021-09-01 - SHA512 d0e13ce3e345edf7a3927756269ef8670240e364e75af2386cd03870fea14d8c957db46ca6bf7000077acb1ef4244d8f3f77b654fe0d297d11c5100f3a380c5f + REF 2021-11-01 + SHA512 9ea04638b7a8667fa9a9d9894c543417c86dde21a93bd4508ae8a43fdd21384092866a3f55e93249942f36488c165e93bee18c61bab3cf138a920654563b8122 HEAD_REF master ) diff --git a/ports/re2/vcpkg.json b/ports/re2/vcpkg.json index 4ae3f218126e59..be979d97bc1de7 100644 --- a/ports/re2/vcpkg.json +++ b/ports/re2/vcpkg.json @@ -1,7 +1,6 @@ { "name": "re2", - "version-date": "2021-09-01", - "port-version": 1, + "version-date": "2021-11-01", "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.", "homepage": "https://github.com/google/re2", "dependencies": [ diff --git a/ports/refl-cpp/portfile.cmake b/ports/refl-cpp/portfile.cmake index 9f4fc7bfa41409..de642ed180e039 100644 --- a/ports/refl-cpp/portfile.cmake +++ b/ports/refl-cpp/portfile.cmake @@ -3,11 +3,11 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO veselink1/refl-cpp - REF v0.12.0 - SHA512 e9103ac491cc2d06cd5223a55094473f479eabd49c733d2d4a11e560f3063474e34785e2681a4c5fcec3f2912c3cccefca7fa1c40bd95fd01f4d40df6c322648 + REF v0.12.1 + SHA512 7f1b9473512e305181f2c46940d34aa75a9cee65c69340ddb68b7e5bb2346206ff2c5b83c5d8460bac4a738258e4f6305b6fe8bc3044a1bcb69b30d79dcd5107 HEAD_REF master ) -file(COPY ${SOURCE_PATH}/refl.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include) +file(COPY "${SOURCE_PATH}/refl.hpp" DESTINATION "${CURRENT_PACKAGES_DIR}/include") -configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) +configure_file("${SOURCE_PATH}/LICENSE" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY) diff --git a/ports/refl-cpp/vcpkg.json b/ports/refl-cpp/vcpkg.json index 4674807c923025..b8cbc487e89173 100644 --- a/ports/refl-cpp/vcpkg.json +++ b/ports/refl-cpp/vcpkg.json @@ -1,7 +1,6 @@ { "name": "refl-cpp", - "version-string": "0.12.0", - "port-version": 1, + "version": "0.12.1", "description": "A compile-time reflection library for modern C++ with support for overloads, templates, attributes and proxies", "homepage": "https://github.com/veselink1/refl-cpp" } diff --git a/ports/replxx/portfile.cmake b/ports/replxx/portfile.cmake index 9dfbbe06191be9..e9fc798467db64 100644 --- a/ports/replxx/portfile.cmake +++ b/ports/replxx/portfile.cmake @@ -3,8 +3,8 @@ vcpkg_fail_port_install(ON_TARGET "UWP") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO AmokHuginnsson/replxx - REF release-0.0.3 - SHA512 039812B65D96C44907105D409E608132A115314BEA8616F79DA928BFEECEBFF64381F063D7B1C971B61C449FA24552E001767D61C57F65AF9EBD8F0B3AC62B18 + REF release-0.0.4 + SHA512 5b87d3b53a99ead00a1ff0ee7a158b13339446682da630989643db7d47d4877d5d97c46954dc51cd282c8130c62a4fed5ce74d73d193690a1518fef974c8b497 HEAD_REF master ) diff --git a/ports/replxx/vcpkg.json b/ports/replxx/vcpkg.json index b82ef13a11f1bd..58c74968d9961a 100644 --- a/ports/replxx/vcpkg.json +++ b/ports/replxx/vcpkg.json @@ -1,6 +1,6 @@ { "name": "replxx", - "version": "0.0.3", + "version": "0.0.4", "description": "A small, portable GNU readline replacement for Linux, Windows and MacOS which is capable of handling UTF-8 characters.", "homepage": "https://github.com/AmokHuginnsson/replxx", "supports": "!uwp", diff --git a/ports/sciter-js/portfile.cmake b/ports/sciter-js/portfile.cmake new file mode 100644 index 00000000000000..b9f438d5b97211 --- /dev/null +++ b/ports/sciter-js/portfile.cmake @@ -0,0 +1,111 @@ +vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) + +if(VCPKG_TARGET_IS_UWP) + message(FATAL_ERROR "Sciter only supports Windows Desktop") +endif() + +set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled) + +set(SCITER_REVISION d5a13ff197fed3af46d4bc931c158828eb61e357) +set(SCITER_SHA 5be2db9d2e5caa19be158020a084a246acd6dad2047062f603b3af4f3cdbdd7f7750b263ad6dfaa6c3667de6c51084fc2df75cd3cb8cd60501550377dded1928) + +if(VCPKG_TARGET_ARCHITECTURE STREQUAL x64) + set(SCITER_ARCH x64) +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL x86) + set(SCITER_ARCH x32) +else() + message(FATAL_ERROR "Sciter only supports x86/x64") +endif() + +# check out the `https://github.com/c-smile/sciter-js-sdk/archive/${SCITER_REVISION}.tar.gz` +# hash checksum can be obtained with `curl -L -o tmp.tgz ${URL} && vcpkg hash tmp.tgz` +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO c-smile/sciter-js-sdk + REF ${SCITER_REVISION} + SHA512 ${SCITER_SHA} +) + +# install include directory +file(INSTALL ${SOURCE_PATH}/include/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/sciter-js + FILES_MATCHING + PATTERN "*.cpp" + PATTERN "*.mm" + PATTERN "*.h" + PATTERN "*.hpp" +) + +set(SCITER_SHARE "${CURRENT_PACKAGES_DIR}/share/sciter-js") +set(SCITER_TOOLS ${CURRENT_PACKAGES_DIR}/tools/sciter-js) +set(TOOL_PERMS FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) + +# license +file(COPY ${SOURCE_PATH}/logfile.md DESTINATION ${SCITER_SHARE}) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${SCITER_SHARE} RENAME copyright) + +# tools +if(VCPKG_TARGET_IS_LINUX AND VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(SCITER_BIN ${SOURCE_PATH}/bin/linux/x64) + + file(INSTALL ${SOURCE_PATH}/bin/linux/packfolder DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) + file(INSTALL ${SOURCE_PATH}/bin/linux/qjs DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) + file(INSTALL ${SOURCE_PATH}/bin/linux/qjsc DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) + + file(INSTALL ${SCITER_BIN}/usciter DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) + file(INSTALL ${SCITER_BIN}/inspector DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) + file(INSTALL ${SCITER_BIN}/libsciter-gtk.so DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SCITER_BIN}/sciter-sqlite.so DESTINATION ${SCITER_TOOLS}) + + if ("windowless" IN_LIST FEATURES) + set(SCITER_BIN ${SOURCE_PATH}/bin.lite/linux/x64) + endif() + + file(INSTALL ${SCITER_BIN}/libsciter-gtk.so DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(INSTALL ${SCITER_BIN}/libsciter-gtk.so DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + + file(INSTALL ${SCITER_BIN}/sciter-sqlite.so DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(INSTALL ${SCITER_BIN}/sciter-sqlite.so DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + +elseif(VCPKG_TARGET_IS_OSX) + set(SCITER_BIN ${SOURCE_PATH}/bin/macosx) + + file(INSTALL ${SCITER_BIN}/packfolder DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) + file(INSTALL ${SCITER_BIN}/qjs DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) + file(INSTALL ${SCITER_BIN}/qjsc DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) + + file(INSTALL ${SCITER_BIN}/inspector.app DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SCITER_BIN}/usciterjs.app DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SCITER_BIN}/libsciter.dylib DESTINATION ${SCITER_TOOLS}) + + execute_process(COMMAND sh -c "chmod +x usciterjs.app/Contents/MacOS/usciterjs" WORKING_DIRECTORY ${SCITER_TOOLS}) + execute_process(COMMAND sh -c "chmod +x inspector.app/Contents/MacOS/inspector" WORKING_DIRECTORY ${SCITER_TOOLS}) + + file(INSTALL ${SCITER_BIN}/libsciter.dylib DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(INSTALL ${SCITER_BIN}/libsciter.dylib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + +elseif(VCPKG_TARGET_IS_WINDOWS) + set(SCITER_BIN ${SOURCE_PATH}/bin/windows/${SCITER_ARCH}) + set(SCITER_BIN32 ${SOURCE_PATH}/bin/windows/x32) + + file(INSTALL ${SOURCE_PATH}/bin/windows/packfolder.exe DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SOURCE_PATH}/bin/windows/qjs.exe DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SOURCE_PATH}/bin/windows/qjsc.exe DESTINATION ${SCITER_TOOLS}) + + file(INSTALL ${SCITER_BIN}/scapp.exe DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SCITER_BIN}/usciter.exe DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SCITER_BIN}/inspector.exe DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SCITER_BIN}/sciter.dll DESTINATION ${SCITER_TOOLS}) + file(INSTALL ${SCITER_BIN}/sciter-sqlite.dll DESTINATION ${SCITER_TOOLS}) + + if ("windowless" IN_LIST FEATURES) + set(SCITER_BIN ${SOURCE_PATH}/bin.lite/windows/${SCITER_ARCH}) + endif() + + file(INSTALL ${SCITER_BIN}/sciter.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(INSTALL ${SCITER_BIN}/sciter.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + + file(INSTALL ${SCITER_BIN}/sciter-sqlite.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(INSTALL ${SCITER_BIN}/sciter-sqlite.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + + message(WARNING "Sciter requires manual deployment of the correct DLL files.") +endif() diff --git a/ports/sciter-js/vcpkg.json b/ports/sciter-js/vcpkg.json new file mode 100644 index 00000000000000..46e0121088d952 --- /dev/null +++ b/ports/sciter-js/vcpkg.json @@ -0,0 +1,12 @@ +{ + "name": "sciter-js", + "version-string": "4.4.8.16", + "description": "Sciter.JS - Sciter but with QuickJS on board instead of TIScript. Sciter is an embeddable HTML/CSS/scripting engine.", + "homepage": "https://github.com/c-smile/sciter-js-sdk", + "supports": "!uwp & !arm & !static", + "features": { + "windowless": { + "description": "windowless version - lite version" + } + } +} diff --git a/ports/sciter/portfile.cmake b/ports/sciter/portfile.cmake index eab17e4e65cf64..8c8fe9f83956b1 100644 --- a/ports/sciter/portfile.cmake +++ b/ports/sciter/portfile.cmake @@ -1,105 +1,12 @@ -vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) +set(VCPKG_POLICY_EMPTY_PACKAGE enabled) -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - message(FATAL_ERROR "Sciter only supports Windows Desktop") -endif() +message(FATAL_ERROR "The sciter port is deprecated by upstream and conflicts with upstream's replacement. -# header-only library -set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled) +Upstream has stopped active development of sciter and instead encourage users to move to a new library Sciter.JS that uses javascript as the internal scripting language (sciter-js in vcpkg). -set(SCITER_REVISION 29a598b6d20220b93848b5e8abab704619296857) -set(SCITER_SHA dc9ebcc59a4ca7b154efcbd96c7e0aa53dc344f6a2cfa91f8c351c1edc5a0f060129715f8eac85e00df9b6c153322a9ba36b430da5020d38769740434cbcd52c) - -if(VCPKG_TARGET_ARCHITECTURE STREQUAL x64) - set(SCITER_ARCH x64) -elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL x86) - set(SCITER_ARCH x32) -endif() - -# check out the `https://github.com/c-smile/sciter-sdk/archive/${SCITER_REVISION}.tar.gz` -# hash checksum can be obtained with `curl -L -o tmp.tgz ${URL} && vcpkg hash tmp.tgz` -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO c-smile/sciter-sdk - REF ${SCITER_REVISION} - SHA512 ${SCITER_SHA} -) - -# install include directory -file(INSTALL ${SOURCE_PATH}/include/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/sciter - FILES_MATCHING - PATTERN "*.cpp" - PATTERN "*.mm" - PATTERN "*.h" - PATTERN "*.hpp" -) - -set(SCITER_SHARE ${CURRENT_PACKAGES_DIR}/share/sciter) -set(SCITER_TOOLS ${CURRENT_PACKAGES_DIR}/tools/sciter) -set(TOOL_PERMS FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) - -# license -file(COPY ${SOURCE_PATH}/logfile.htm DESTINATION ${SCITER_SHARE}) -file(INSTALL ${SOURCE_PATH}/license.htm DESTINATION ${SCITER_SHARE} RENAME copyright) - -# samples & widgets -file(COPY ${SOURCE_PATH}/samples DESTINATION ${SCITER_SHARE}) -file(COPY ${SOURCE_PATH}/widgets DESTINATION ${SCITER_SHARE}) - -# tools -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL Linux AND VCPKG_TARGET_ARCHITECTURE STREQUAL x64) - set(SCITER_BIN ${SOURCE_PATH}/bin.lnx/x64) - - file(INSTALL ${SOURCE_PATH}/bin.lnx/packfolder DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) - file(INSTALL ${SOURCE_PATH}/bin.lnx/tiscript DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) - - file(INSTALL ${SCITER_BIN}/usciter DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) - file(INSTALL ${SCITER_BIN}/inspector DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) - file(INSTALL ${SCITER_BIN}/libsciter-gtk.so DESTINATION ${SCITER_TOOLS}) - - if ("windowless" IN_LIST FEATURES) - set(SCITER_BIN ${SOURCE_PATH}/bin.lnx/x64lite) - endif() - - file(INSTALL ${SCITER_BIN}/libsciter-gtk.so DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(INSTALL ${SCITER_BIN}/libsciter-gtk.so DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - -elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL Darwin) - set(SCITER_BIN ${SOURCE_PATH}/bin.osx) - - file(INSTALL ${SCITER_BIN}/packfolder DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) - file(INSTALL ${SCITER_BIN}/tiscript DESTINATION ${SCITER_TOOLS} ${TOOL_PERMS}) - - file(INSTALL ${SCITER_BIN}/inspector.app DESTINATION ${SCITER_TOOLS}) - file(INSTALL ${SCITER_BIN}/sciter.app DESTINATION ${SCITER_TOOLS}) - file(INSTALL ${SCITER_BIN}/libsciter.dylib DESTINATION ${SCITER_TOOLS}) - - # not sure whether there is a better way to do this, because - # `file(INSTALL sciter.app FILE_PERMISSIONS EXECUTE)` - # would mark everything as executable which is no go. - execute_process(COMMAND sh -c "chmod +x sciter.app/Contents/MacOS/sciter" WORKING_DIRECTORY ${SCITER_TOOLS}) - execute_process(COMMAND sh -c "chmod +x inspector.app/Contents/MacOS/inspector" WORKING_DIRECTORY ${SCITER_TOOLS}) - - file(INSTALL ${SCITER_BIN}/libsciter.dylib DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(INSTALL ${SCITER_BIN}/libsciter.dylib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - -else() - set(SCITER_BIN ${SOURCE_PATH}/bin.win/${SCITER_ARCH}) - set(SCITER_BIN32 ${SOURCE_PATH}/bin.win/x32) - - file(INSTALL ${SOURCE_PATH}/bin.win/packfolder.exe DESTINATION ${SCITER_TOOLS}) - file(INSTALL ${SOURCE_PATH}/bin.win/tiscript.exe DESTINATION ${SCITER_TOOLS}) - - file(INSTALL ${SCITER_BIN32}/wsciter.exe DESTINATION ${SCITER_TOOLS}) - file(INSTALL ${SCITER_BIN32}/inspector.exe DESTINATION ${SCITER_TOOLS}) - file(INSTALL ${SCITER_BIN32}/sciter.dll DESTINATION ${SCITER_TOOLS}) - - if ("windowless" IN_LIST FEATURES) - set(SCITER_BIN ${SOURCE_PATH}/bin.win/${SCITER_ARCH}lite) - endif() - - file(INSTALL ${SCITER_BIN}/sciter.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(INSTALL ${SCITER_BIN}/sciter.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) -endif() - -message(STATUS "Warning: Sciter requires manual deployment of the correct DLL files.") +Options for existing users are: +1. Depend upon `sciter-js` and change your code to work with the new library +2. Use `"overrides"` in manifest mode to pin to `"version-string": "4.4.8.3#1"` +3. Copy the last available `sciter` version into an overlay port (commit 756f1845537a916ba706f6af544b2f490c30fbb1 at subpath `ports/sciter`) +4. Use the community registry `https://github.com/VuYeK/vcpkg-registry` which may have newer versions of `sciter` available (not affiliated with Microsoft) +") diff --git a/ports/sciter/vcpkg.json b/ports/sciter/vcpkg.json index de007100f69427..f0af85560ce818 100644 --- a/ports/sciter/vcpkg.json +++ b/ports/sciter/vcpkg.json @@ -1,13 +1,6 @@ { "name": "sciter", - "version-string": "4.4.8.3", - "port-version": 1, + "version-string": "deprecated", "description": "Sciter is an embeddable HTML/CSS/scripting engine.", - "homepage": "https://github.com/c-smile/sciter-sdk", - "supports": "!uwp", - "features": { - "windowless": { - "description": "Uses Sciter.Lite builds" - } - } + "homepage": "https://github.com/c-smile/sciter-sdk" } diff --git a/ports/sdformat6/portfile.cmake b/ports/sdformat6/portfile.cmake index 6e32429e37285a..8818b2be88088e 100644 --- a/ports/sdformat6/portfile.cmake +++ b/ports/sdformat6/portfile.cmake @@ -16,41 +16,43 @@ get_filename_component(RUBY_PATH ${RUBY} DIRECTORY) set(_path $ENV{PATH}) vcpkg_add_to_path(${RUBY_PATH}) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DBUILD_TESTING=OFF -DUSE_EXTERNAL_URDF=ON -DUSE_EXTERNAL_TINYXML=ON ) -vcpkg_install_cmake() +vcpkg_cmake_install() # Restore original path set(ENV{PATH} ${_path}) # Move location of sdformat.dll from lib to bin -if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/sdformat.dll) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/sdformat.dll - ${CURRENT_PACKAGES_DIR}/bin/sdformat.dll) +if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/sdformat.dll") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/bin") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/sdformat.dll" + "${CURRENT_PACKAGES_DIR}/bin/sdformat.dll") endif() -if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/sdformat.dll) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/sdformat.dll - ${CURRENT_PACKAGES_DIR}/debug/bin/sdformat.dll) +if(EXISTS "${CURRENT_PACKAGES_DIR}/debug/lib/sdformat.dll") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/debug/bin") + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/sdformat.dll" + "${CURRENT_PACKAGES_DIR}/debug/bin/sdformat.dll") endif() # Fix cmake targets location -vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/sdformat") +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/sdformat") # Remove debug files -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/lib/cmake - ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/lib/cmake" + "${CURRENT_PACKAGES_DIR}/debug/share") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/ignition/sdformat6.yaml" "${CURRENT_PACKAGES_DIR}" "../..") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/sdformat-6.2/sdf/sdf_config.h" "#define SDF_SHARE_PATH \"${CURRENT_PACKAGES_DIR}/share/\"" "") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/sdformat-6.2/sdf/sdf_config.h" "#define SDF_VERSION_PATH \"${CURRENT_PACKAGES_DIR}/share/sdformat/\"" "") # Handle copyright -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) vcpkg_fixup_pkgconfig() diff --git a/ports/sdformat6/vcpkg.json b/ports/sdformat6/vcpkg.json index 935b1be224ea16..f1ee8fccbabffe 100644 --- a/ports/sdformat6/vcpkg.json +++ b/ports/sdformat6/vcpkg.json @@ -1,7 +1,7 @@ { "name": "sdformat6", "version": "6.2.0", - "port-version": 3, + "port-version": 4, "description": "Simulation Description Format (SDF) parser and description files.", "homepage": "http://sdformat.org/", "supports": "!(arm | uwp)", @@ -10,6 +10,14 @@ "boost-variant", "ignition-math4", "tinyxml", - "urdfdom" + "urdfdom", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ] } diff --git a/ports/sdl2/portfile.cmake b/ports/sdl2/portfile.cmake index 391ea4f762624c..56e82dafa1be76 100644 --- a/ports/sdl2/portfile.cmake +++ b/ports/sdl2/portfile.cmake @@ -18,12 +18,19 @@ string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" FORCE_STATIC_VCRT) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - vulkan VIDEO_VULKAN + vulkan VIDEO_VULKAN + x11 X11_SHARED ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +if ("x11" IN_LIST FEATURES) + if (VCPKG_TARGET_IS_WINDOWS) + message(FATAL_ERROR "Feature x11 only support UNIX.") + endif() + message(WARNING "You will need to install Xorg dependencies to use feature x11:\nsudo apt install libx11-dev libxft-dev libxext-dev\n") +endif() + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS ${FEATURE_OPTIONS} -DSDL_STATIC=${SDL_STATIC} -DSDL_SHARED=${SDL_SHARED} @@ -31,50 +38,50 @@ vcpkg_configure_cmake( -DLIBC=ON ) -vcpkg_install_cmake() +vcpkg_cmake_install() if(EXISTS "${CURRENT_PACKAGES_DIR}/cmake") - vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) + vcpkg_cmake_config_fixup(CONFIG_PATH cmake) elseif(EXISTS "${CURRENT_PACKAGES_DIR}/lib/cmake/SDL2") - vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/SDL2) + vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/SDL2) elseif(EXISTS "${CURRENT_PACKAGES_DIR}/SDL2.framework/Resources") - vcpkg_fixup_cmake_targets(CONFIG_PATH SDL2.framework/Resources) + vcpkg_cmake_config_fixup(CONFIG_PATH SDL2.framework/Resources) endif() file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/share - ${CURRENT_PACKAGES_DIR}/bin/sdl2-config - ${CURRENT_PACKAGES_DIR}/debug/bin/sdl2-config - ${CURRENT_PACKAGES_DIR}/SDL2.framework - ${CURRENT_PACKAGES_DIR}/debug/SDL2.framework + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" + "${CURRENT_PACKAGES_DIR}/bin/sdl2-config" + "${CURRENT_PACKAGES_DIR}/debug/bin/sdl2-config" + "${CURRENT_PACKAGES_DIR}/SDL2.framework" + "${CURRENT_PACKAGES_DIR}/debug/SDL2.framework" ) -file(GLOB BINS ${CURRENT_PACKAGES_DIR}/debug/bin/* ${CURRENT_PACKAGES_DIR}/bin/*) +file(GLOB BINS "${CURRENT_PACKAGES_DIR}/debug/bin/*" "${CURRENT_PACKAGES_DIR}/bin/*") if(NOT BINS) file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/bin - ${CURRENT_PACKAGES_DIR}/debug/bin + "${CURRENT_PACKAGES_DIR}/bin" + "${CURRENT_PACKAGES_DIR}/debug/bin" ) endif() -if(NOT VCPKG_CMAKE_SYSTEM_NAME) +if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_UWP) if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/SDL2main.lib ${CURRENT_PACKAGES_DIR}/lib/manual-link/SDL2main.lib) + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/lib/manual-link") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/SDL2main.lib" "${CURRENT_PACKAGES_DIR}/lib/manual-link/SDL2main.lib") endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/SDL2maind.lib ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link/SDL2maind.lib) + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/debug/lib/manual-link") + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/SDL2maind.lib" "${CURRENT_PACKAGES_DIR}/debug/lib/manual-link/SDL2maind.lib") endif() - file(GLOB SHARE_FILES ${CURRENT_PACKAGES_DIR}/share/sdl2/*.cmake) + file(GLOB SHARE_FILES "${CURRENT_PACKAGES_DIR}/share/sdl2/*.cmake") foreach(SHARE_FILE ${SHARE_FILES}) vcpkg_replace_string("${SHARE_FILE}" "lib/SDL2main" "lib/manual-link/SDL2main") endforeach() endif() -configure_file(${SOURCE_PATH}/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) +configure_file("${SOURCE_PATH}/LICENSE.txt" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY) vcpkg_copy_pdbs() set(DYLIB_COMPATIBILITY_VERSION_REGEX "set\\(DYLIB_COMPATIBILITY_VERSION (.+)\\)") @@ -89,4 +96,4 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/sdl2.pc" "-lSDL2 " "-lSDL2d ") endif() -vcpkg_fixup_pkgconfig() +vcpkg_fixup_pkgconfig() \ No newline at end of file diff --git a/ports/sdl2/vcpkg.json b/ports/sdl2/vcpkg.json index 6c0ce100ab8ae1..dc5ab84190aae3 100644 --- a/ports/sdl2/vcpkg.json +++ b/ports/sdl2/vcpkg.json @@ -1,12 +1,25 @@ { "name": "sdl2", "version": "2.0.16", - "port-version": 1, + "port-version": 2, "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.", "homepage": "https://www.libsdl.org/download-2.0.php", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], "features": { "vulkan": { "description": "Vulkan functionality for SDL" + }, + "x11": { + "description": "Dynamically load X11 support" } } } diff --git a/ports/seal/portfile.cmake b/ports/seal/portfile.cmake index 29535cc2618539..0806056029f4f8 100644 --- a/ports/seal/portfile.cmake +++ b/ports/seal/portfile.cmake @@ -3,8 +3,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO microsoft/SEAL - REF 608fb1b9717ec6effe707758a636e0a0df76fc26 - SHA512 4d73e44955dcf7424318d1f46dd2b38b08592fd649a208953dbb9da30e7befdb6bf9f50ab364732d0ded7c9d977fd9bbad9fd1e2d2ff6ea2931d418a87be6d27 + REF 79234726053c45eede688400aa219fdec0810bd8 + SHA512 634ad75d70f04cce220bfa9f6d13e8ddb293e8403ebd195e2c8b522b751a1a268021feea7843038037ed6d1b354b2e470ad565966a117613cf5371073afda9a4 HEAD_REF main ) diff --git a/ports/seal/vcpkg.json b/ports/seal/vcpkg.json index 20ca7bec42cf12..7ff225449d0a9a 100644 --- a/ports/seal/vcpkg.json +++ b/ports/seal/vcpkg.json @@ -1,6 +1,6 @@ { "name": "seal", - "version-semver": "3.7.1", + "version-semver": "3.7.2", "description": "Microsoft SEAL is an easy-to-use and powerful homomorphic encryption library.", "homepage": "https://github.com/microsoft/SEAL", "supports": "!windows | (windows & static)", diff --git a/ports/sentencepiece/portfile.cmake b/ports/sentencepiece/portfile.cmake index e05fe13f3b3005..3f862e90b89a28 100644 --- a/ports/sentencepiece/portfile.cmake +++ b/ports/sentencepiece/portfile.cmake @@ -5,30 +5,29 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/sentencepiece - REF v0.1.95 - SHA512 22484cf0311315e25a3184561f4e18b45286ad068bfb722c860e1b44fb16913c96d34723b486fab5e4e1e69f4b620a0e3cff410f56cb6561a67193ebaf565a31 + REF v0.1.96 + SHA512 c3f23b483ebe148a37a01908f5624f06536efcba5609192957239d844244ab445d39e59b1b44b6df1f182166d58a6df38c046506ce45160a272f1e7f46c25010 HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DSPM_ENABLE_SHARED=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin") if(NOT VCPKG_CMAKE_SYSTEM_NAME) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/sentencepiece.lib ${CURRENT_PACKAGES_DIR}/debug/lib/sentencepieced.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/sentencepiece_train.lib ${CURRENT_PACKAGES_DIR}/debug/lib/sentencepiece_traind.lib) + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/sentencepiece.lib" "${CURRENT_PACKAGES_DIR}/debug/lib/sentencepieced.lib") + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/sentencepiece_train.lib" "${CURRENT_PACKAGES_DIR}/debug/lib/sentencepiece_traind.lib") endif() -configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) +configure_file("${SOURCE_PATH}/LICENSE" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY) vcpkg_copy_pdbs() - -vcpkg_fixup_pkgconfig() + +vcpkg_fixup_pkgconfig() diff --git a/ports/sentencepiece/vcpkg.json b/ports/sentencepiece/vcpkg.json index e13c6f989e94de..ed0f04c456d0af 100644 --- a/ports/sentencepiece/vcpkg.json +++ b/ports/sentencepiece/vcpkg.json @@ -1,6 +1,11 @@ { "name": "sentencepiece", - "version": "0.1.95", - "port-version": 1, - "description": "SentencePiece is an unsupervised text tokenizer and detokenizer mainly for Neural Network-based text generation systems where the vocabulary size is predetermined prior to the neural model training" + "version": "0.1.96", + "description": "SentencePiece is an unsupervised text tokenizer and detokenizer mainly for Neural Network-based text generation systems where the vocabulary size is predetermined prior to the neural model training", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + } + ] } diff --git a/ports/shogun/fix-cblas-path.patch b/ports/shogun/fix-cblas-path.patch new file mode 100644 index 00000000000000..e21a3723c48a40 --- /dev/null +++ b/ports/shogun/fix-cblas-path.patch @@ -0,0 +1,13 @@ +diff --git a/src/shogun/mathematics/lapack.h b/src/shogun/mathematics/lapack.h +index 6ba466f..f5de479 100644 +--- a/src/shogun/mathematics/lapack.h ++++ b/src/shogun/mathematics/lapack.h +@@ -38,7 +38,7 @@ extern "C" { + #include + #endif + #else +-#include ++#include + #endif + + #ifdef HAVE_ACML diff --git a/ports/shogun/portfile.cmake b/ports/shogun/portfile.cmake index 05ca61af0811c7..454245027a3654 100644 --- a/ports/shogun/portfile.cmake +++ b/ports/shogun/portfile.cmake @@ -11,6 +11,7 @@ vcpkg_from_github( cmake-config.in.patch fix-dirent.patch fix-ASSERT-not-found.patch + fix-cblas-path.patch ) vcpkg_find_acquire_program(PYTHON3) diff --git a/ports/shogun/vcpkg.json b/ports/shogun/vcpkg.json index 6711f2bfbf11cd..5ef5cf9444d662 100644 --- a/ports/shogun/vcpkg.json +++ b/ports/shogun/vcpkg.json @@ -1,7 +1,7 @@ { "name": "shogun", "version-string": "6.1.4", - "port-version": 5, + "port-version": 6, "description": "Unified and efficient Machine Learning", "homepage": "https://github.com/shogun-toolbox/shogun", "dependencies": [ diff --git a/ports/spatialite-tools/vcpkg.json b/ports/spatialite-tools/vcpkg.json index a1a5bc3bb28984..3637c2807140c7 100644 --- a/ports/spatialite-tools/vcpkg.json +++ b/ports/spatialite-tools/vcpkg.json @@ -1,7 +1,7 @@ { "name": "spatialite-tools", "version-string": "5.0.0", - "port-version": 3, + "port-version": 4, "description": "Contains spatialite.exe and other command line tools to work with SpatiaLite databases (import, export, SQL queries)", "homepage": "https://www.gaia-gis.it/fossil/spatialite-tools/index", "dependencies": [ @@ -9,7 +9,13 @@ "geos", "libiconv", "librttopo", - "libspatialite", + { + "name": "libspatialite", + "features": [ + "gcp", + "rttopo" + ] + }, "proj4", "readosm", "sqlite3", diff --git a/ports/spectra/portfile.cmake b/ports/spectra/portfile.cmake index 6fefd4abb156f8..9a2394490bcee4 100644 --- a/ports/spectra/portfile.cmake +++ b/ports/spectra/portfile.cmake @@ -1,19 +1,18 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO yixuan/spectra - REF ec27cfd2210a9b2322825c4cb8e5d47f014e1ac3 # v0.9.0 - SHA512 c383405faab851ab302ee1ccb78741c60ab250c05321eee65078f72769ced396b2c8b4a49442cb5836f659e27adbbc3b538198ee877495e49a980a185d49d420 + REF v1.0.0 + SHA512 45540b12d370a28029f507f503618a0be9c19ec3a41813e23e036211dbc98237ac502c7f60cd42ccaa262f9dc0ebc02aabdefcd314f0c98c1e3dc925df02d783 HEAD_REF master ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(CONFIG_PATH share/spectra/cmake) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug") -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/spectra/vcpkg.json b/ports/spectra/vcpkg.json index 96bdfd299d85d9..83d1c1fc46d168 100644 --- a/ports/spectra/vcpkg.json +++ b/ports/spectra/vcpkg.json @@ -1,12 +1,19 @@ { "name": "spectra", - "version": "0.9.0", - "port-version": 1, + "version": "1.0.0", "description": "A header-only C++ library for large scale eigenvalue problems", "homepage": "https://spectralib.org", "documentation": "https://spectralib.org/quick-start.html", "license": "MPL-2.0", "dependencies": [ - "eigen3" + "eigen3", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } ] } diff --git a/ports/teemo/portfile.cmake b/ports/teemo/portfile.cmake index 94118a36d95c36..d8b045a79228da 100644 --- a/ports/teemo/portfile.cmake +++ b/ports/teemo/portfile.cmake @@ -10,32 +10,25 @@ vcpkg_from_github( string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" TEEMO_STATIC) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DTEEMO_STATIC:BOOL=${TEEMO_STATIC} -DBUILD_TESTS:BOOL=OFF ) -vcpkg_install_cmake() +vcpkg_cmake_install() -if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/teemo) - vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/teemo) -elseif(EXISTS ${CURRENT_PACKAGES_DIR}/share/teemo) - vcpkg_fixup_cmake_targets(CONFIG_PATH share/teemo) +if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/cmake/teemo") + vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/teemo) +elseif(EXISTS "${CURRENT_PACKAGES_DIR}/share/teemo") + vcpkg_cmake_config_fixup(CONFIG_PATH share/teemo) endif() -file(READ ${CURRENT_PACKAGES_DIR}/include/teemo/teemo.h TEEMO_H) -if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - string(REPLACE "#ifdef TEEMO_STATIC" "#if 1" TEEMO_H "${TEEMO_H}") -else() - string(REPLACE "#ifdef TEEMO_STATIC" "#if 0" TEEMO_H "${TEEMO_H}") -endif() -file(WRITE ${CURRENT_PACKAGES_DIR}/include/teemo/teemo.h "${TEEMO_H}") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/teemo/teemo.h" "#ifdef TEEMO_STATIC" "#if $") -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() diff --git a/ports/teemo/vcpkg.json b/ports/teemo/vcpkg.json index 4905c32f965dec..c03bd600c59d19 100644 --- a/ports/teemo/vcpkg.json +++ b/ports/teemo/vcpkg.json @@ -1,13 +1,22 @@ { "name": "teemo", "version-string": "2.2", - "port-version": 1, + "port-version": 2, "description": "C++ File Download Library, support Multithreading, Breakpoint Transmission, Speed Limit, Real-time Speed.", "homepage": "https://github.com/winsoft666/teemo", + "supports": "!osx & !uwp & !arm", "dependencies": [ { "name": "curl", "default-features": false + }, + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true } ] } diff --git a/ports/tmx/portfile.cmake b/ports/tmx/portfile.cmake index 4a3801b8a0f798..1ddf5a4f2020c5 100644 --- a/ports/tmx/portfile.cmake +++ b/ports/tmx/portfile.cmake @@ -1,27 +1,26 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO baylej/tmx - REF tmx_1.1.0 + REF tmx_1.2.0 HEAD_REF master - SHA512 4f57cea30cf01518812cb7279e4d09fd3524e02a29950c2a40aed07ed0f5bd44601517d8a6216a3ca878e1d6bfa15651e92b9e8024e0325baae1dadc7a79acd1 + SHA512 cb29c67af560a1844e798d3fe2677a6b71866943b233c0700212b91de35f252a0a465c33911a2c432aa54be309e3ac10770bc95c6450227e39abe049c1fbbdd1 ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() 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) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/tmx/tmxTargets.cmake ${CURRENT_PACKAGES_DIR}/share/tmx/tmxExports.cmake) +file(RENAME "${CURRENT_PACKAGES_DIR}/lib/cmake/tmx/tmxExports.cmake" "${CURRENT_PACKAGES_DIR}/lib/cmake/tmx/tmxTargets.cmake") +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/tmx) +file(RENAME "${CURRENT_PACKAGES_DIR}/share/tmx/tmxTargets.cmake" "${CURRENT_PACKAGES_DIR}/share/tmx/tmxExports.cmake") file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/share + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" ) # Handle copyright -configure_file(${SOURCE_PATH}/COPYING ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) +configure_file("${SOURCE_PATH}/COPYING" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY) diff --git a/ports/tmx/vcpkg.json b/ports/tmx/vcpkg.json index bad3ca97e2ea1d..f21eba4edd8abf 100644 --- a/ports/tmx/vcpkg.json +++ b/ports/tmx/vcpkg.json @@ -1,10 +1,17 @@ { "name": "tmx", - "version-string": "1.1.0", - "port-version": 1, + "version": "1.2.0", "description": "A portable C library to load tiled maps in your games.", "dependencies": [ "libxml2", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, "zlib" ] } diff --git a/ports/trompeloeil/portfile.cmake b/ports/trompeloeil/portfile.cmake index 130faddfa35e56..1390637eb199e0 100644 --- a/ports/trompeloeil/portfile.cmake +++ b/ports/trompeloeil/portfile.cmake @@ -1,27 +1,24 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO rollbear/trompeloeil - REF 08cba57ed7207c8ad5c94fd2a20dc0bfecabe878 # v38 - SHA512 b51626eb263f971f1ed6e29d86256adde19f9f60487e00a6098933de37d0a1cb64b6d797447fcde6f5121a1b29f39bd7b6aed8f5889450d72ef6a76d46eb921f + REF v41 + SHA512 f68a3f1c5f2cd1b49fb8c90612383d68ca1a0bcd1ca6b0a0fbe6e3cef23af011b5503d788023519f182a1221d55774796115f9248caf33175f919fd18e5e43f9 HEAD_REF master PATCHES disable_master_project.patch ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS - -DBUILD_TESTING=OFF +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/trompeloeil) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/trompeloeil) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib") -if(NOT EXISTS ${CURRENT_PACKAGES_DIR}/include/trompeloeil.hpp) +if(NOT EXISTS "${CURRENT_PACKAGES_DIR}/include/trompeloeil.hpp") message(FATAL_ERROR "Main includes have moved. Please update the forwarder.") endif() -configure_file(${SOURCE_PATH}/LICENSE_1_0.txt ${CURRENT_PACKAGES_DIR}/share/trompeloeil/copyright COPYONLY) +configure_file("${SOURCE_PATH}/LICENSE_1_0.txt" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY) diff --git a/ports/trompeloeil/vcpkg.json b/ports/trompeloeil/vcpkg.json index 8084fce18c190d..6c70e20d341aee 100644 --- a/ports/trompeloeil/vcpkg.json +++ b/ports/trompeloeil/vcpkg.json @@ -1,7 +1,16 @@ { "name": "trompeloeil", - "version-string": "38", - "port-version": 1, + "version": "41", "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" + "homepage": "https://github.com/rollbear/trompeloeil", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/unixodbc/portfile.cmake b/ports/unixodbc/portfile.cmake index 6f87f034f147ec..cc92b8c84fad05 100644 --- a/ports/unixodbc/portfile.cmake +++ b/ports/unixodbc/portfile.cmake @@ -1,18 +1,23 @@ -vcpkg_fail_port_install(ON_TARGET "UWP" "Windows") vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO lurcher/unixODBC - REF 2.3.7 - SHA512 94e95730304990fc5ed4f76ebfb283d8327a59a3329badaba752a502a2d705549013fd95f0c92704828c301eae54081c8704acffb412fd1e1a71f4722314cec0 - HEAD_REF master + OUT_SOURCE_PATH SOURCE_PATH + REPO lurcher/unixODBC + REF v2.3.9 + SHA512 473f8d39f5976b4c34394d880d6e511b73e33a1fbd6b828a0929787983cd9b5fe7e16776ed51776ce44b54aa61c62be689c0731489b3989acb99c135fb492ec5 + HEAD_REF master ) set(ENV{CFLAGS} "$ENV{CFLAGS} -Wno-error=implicit-function-declaration") + +if(VCPKG_TARGET_IS_OSX OR VCPKG_TARGET_IS_LINUX) + list(APPEND OPTIONS --with-included-ltdl) +endif() + vcpkg_configure_make( - SOURCE_PATH "${SOURCE_PATH}" - AUTOCONFIG - COPY_SOURCE + SOURCE_PATH "${SOURCE_PATH}" + AUTOCONFIG + COPY_SOURCE + OPTIONS ${OPTIONS} ) vcpkg_install_make() diff --git a/ports/unixodbc/unixodbcConfig.cmake b/ports/unixodbc/unixodbcConfig.cmake index c0bd25993eaf15..e8565517a227d2 100644 --- a/ports/unixodbc/unixodbcConfig.cmake +++ b/ports/unixodbc/unixodbcConfig.cmake @@ -1,11 +1,26 @@ -function(set_library_target NAMESPACE LIB_NAME DEBUG_LIB_FILE_NAME RELEASE_LIB_FILE_NAME INCLUDE_DIR) +function(set_library_target NAMESPACE LIB_NAME DEBUG_DIR RELEASE_DIR INCLUDE_DIR) add_library(${NAMESPACE}::${LIB_NAME} STATIC IMPORTED) + + find_library (RELEASE_LIB_FILE_NAME NAMES "lib${LIB_NAME}.a" PATHS ${RELEASE_DIR} NO_DEFAULT_PATH) + if (RELEASE_LIB_FILE_NAME) + set(LIBODBC_USE_STATIC_LIB true) + endif() + find_library (RELEASE_LIB_FILE_NAME NAMES ${LIB_NAME} PATHS ${RELEASE_DIR} NO_DEFAULT_PATH) + find_library (DEBUG_LIB_FILE_NAME NAMES "lib${LIB_NAME}.a" PATHS ${DEBUG_DIR} NO_DEFAULT_PATH) + if (DEBUG_LIB_FILE_NAME) + set(LIBODBC_USE_STATIC_LIB true) + endif() + find_library (DEBUG_LIB_FILE_NAME NAMES ${LIB_NAME} PATHS ${DEBUG_DIR} NO_DEFAULT_PATH) set_target_properties(${NAMESPACE}::${LIB_NAME} PROPERTIES IMPORTED_CONFIGURATIONS "RELEASE;DEBUG" IMPORTED_LOCATION_RELEASE "${RELEASE_LIB_FILE_NAME}" IMPORTED_LOCATION_DEBUG "${DEBUG_LIB_FILE_NAME}" INTERFACE_INCLUDE_DIRECTORIES "${INCLUDE_DIR}" ) + if(LIBODBC_USE_STATIC_LIB) + find_package(Iconv MODULE) + set_property(TARGET ${NAMESPACE}::${LIB_NAME} PROPERTY INTERFACE_LINK_LIBRARIES ${CMAKE_DL_LIBS} Iconv::Iconv) + endif() set(${NAMESPACE}_${LIB_NAME}_FOUND 1) endfunction() @@ -13,4 +28,4 @@ get_filename_component(ROOT "${CMAKE_CURRENT_LIST_FILE}" PATH) get_filename_component(ROOT "${ROOT}" PATH) get_filename_component(ROOT "${ROOT}" PATH) -set_library_target("UNIX" "odbc" "${ROOT}/debug/lib/libodbc.so" "${ROOT}/lib/libodbc.so" "${ROOT}/include/") \ No newline at end of file +set_library_target("UNIX" "odbc" "${ROOT}/debug/lib/" "${ROOT}/lib/" "${ROOT}/include/") \ No newline at end of file diff --git a/ports/unixodbc/vcpkg.json b/ports/unixodbc/vcpkg.json index 01162834c45ee9..eace4508be5779 100644 --- a/ports/unixodbc/vcpkg.json +++ b/ports/unixodbc/vcpkg.json @@ -1,7 +1,6 @@ { "name": "unixodbc", - "version-string": "2.3.7", - "port-version": 4, + "version": "2.3.9", "description": "unixODBC is an Open Source ODBC sub-system and an ODBC SDK for Linux, Mac OSX, and UNIX", "homepage": "https://github.com/lurcher/unixODBC", "supports": "osx | linux" diff --git a/ports/upb/add-all-libs-target.patch b/ports/upb/add-all-libs-target.patch index 701004b175579f..9a6a6d24272ccf 100644 --- a/ports/upb/add-all-libs-target.patch +++ b/ports/upb/add-all-libs-target.patch @@ -1,52 +1,25 @@ diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt -index 0155a7b..7850b2d 100644 +index b4f43f9..c90968f 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt -@@ -66,7 +66,7 @@ endif() - enable_testing() - - add_library(port INTERFACE) --add_library(descriptor_upbproto INTERFACE) -+add_library(descriptor_upb_proto INTERFACE) - add_library(upb - ../upb/decode.c - ../upb/decode.int.h -@@ -167,6 +167,25 @@ target_link_libraries(upb_json - upb_pb) - add_library(wyhash INTERFACE) +@@ -137,4 +137,20 @@ add_library(table INTERFACE) + target_link_libraries(table INTERFACE + port) +add_library(all_libs INTERFACE) +target_link_libraries(all_libs + INTERFACE + upb + fastdecode -+ upb_json -+ upb_pb ++ utf8_range ++ json + port + table + descriptor_upb_proto -+ handlers + reflection + textformat +) +set_target_properties(reflection PROPERTIES OUTPUT_NAME upb_reflection) -+set_target_properties(handlers PROPERTIES OUTPUT_NAME upb_handlers) +set_target_properties(fastdecode PROPERTIES OUTPUT_NAME upb_fastdecode) +set_target_properties(textformat PROPERTIES OUTPUT_NAME upb_textformat) -+ - install( - DIRECTORY ../upb - DESTINATION include -@@ -184,9 +203,11 @@ install(TARGETS - upb_pb - port - table -- descriptor_upbproto -+ descriptor_upb_proto - handlers - reflection -+ textformat -+ all_libs - EXPORT upb-config - ) - install(EXPORT upb-config NAMESPACE upb:: DESTINATION share/upb) + diff --git a/ports/upb/add-cmake-install.patch b/ports/upb/add-cmake-install.patch index 0cc9aba3e87a8a..51e740d0350ea7 100644 --- a/ports/upb/add-cmake-install.patch +++ b/ports/upb/add-cmake-install.patch @@ -1,5 +1,5 @@ diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt -index d4cbcc9..a6b432f 100644 +index c90968f..50637ec 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -8,7 +8,7 @@ else() @@ -11,17 +11,9 @@ index d4cbcc9..a6b432f 100644 cmake_policy(SET CMP0048 NEW) project(upb) -@@ -62,6 +62,7 @@ endif() - enable_testing() - - add_library(port INTERFACE) -+add_library(descriptor_upbproto INTERFACE) - add_library(upb - ../upb/decode.c - ../upb/decode.int.h -@@ -162,4 +163,27 @@ target_link_libraries(upb_json - upb_pb) - add_library(wyhash INTERFACE) +@@ -154,3 +154,27 @@ set_target_properties(reflection PROPERTIES OUTPUT_NAME upb_reflection) + set_target_properties(fastdecode PROPERTIES OUTPUT_NAME upb_fastdecode) + set_target_properties(textformat PROPERTIES OUTPUT_NAME upb_textformat) +install( + DIRECTORY ../upb @@ -35,15 +27,15 @@ index d4cbcc9..a6b432f 100644 +target_include_directories(upb PUBLIC $) +install(TARGETS + upb ++ utf8_range + fastdecode -+ upb_json -+ upb_pb ++ json + port + table -+ descriptor_upbproto -+ handlers ++ descriptor_upb_proto + reflection ++ textformat ++ all_libs + EXPORT upb-config +) +install(EXPORT upb-config NAMESPACE upb:: DESTINATION share/upb) - diff --git a/ports/upb/fix-cmakelists.patch b/ports/upb/fix-cmakelists.patch new file mode 100644 index 00000000000000..2a01d62cc52d50 --- /dev/null +++ b/ports/upb/fix-cmakelists.patch @@ -0,0 +1,33 @@ +diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt +index 6b4c50d..b4f43f9 100644 +--- a/cmake/CMakeLists.txt ++++ b/cmake/CMakeLists.txt +@@ -66,6 +66,10 @@ endif() + enable_testing() + + add_library(port INTERFACE) ++add_library(descriptor_upb_proto INTERFACE) ++add_library(utf8_range ++ ../third_party/utf8_range/utf8_range.c ++ ../third_party/utf8_range/utf8_range.h) + add_library(upb + ../upb/decode.c + ../upb/decode_internal.h +@@ -84,7 +88,7 @@ add_library(upb + target_link_libraries(upb + fastdecode + port +- /third_party/utf8_range) ++ utf8_range) + add_library(fastdecode + ../upb/decode.h + ../upb/decode_internal.h +@@ -96,7 +100,7 @@ add_library(fastdecode + target_link_libraries(fastdecode + port + table +- /third_party/utf8_range) ++ utf8_range) + add_library(generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me INTERFACE) + target_link_libraries(generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me INTERFACE + table diff --git a/ports/upb/no-wyhash.patch b/ports/upb/no-wyhash.patch deleted file mode 100644 index e9754eedb72430..00000000000000 --- a/ports/upb/no-wyhash.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt -index ed494d9..0155a7b 100644 ---- a/cmake/CMakeLists.txt -+++ b/cmake/CMakeLists.txt -@@ -84,7 +84,7 @@ add_library(upb - target_link_libraries(upb - fastdecode - port -- /third_party/wyhash) -+ ) - add_library(fastdecode - ../upb/decode.int.h - ../upb/decode_fast.c diff --git a/ports/upb/portfile.cmake b/ports/upb/portfile.cmake index 13fdc729050bb4..d7cdef2451cc50 100644 --- a/ports/upb/portfile.cmake +++ b/ports/upb/portfile.cmake @@ -3,25 +3,24 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO protocolbuffers/upb - REF 60607da72e89ba0c84c84054d2e562d8b6b61177 # 2020-12-19 - SHA512 d7de03f4a4024136ecccbcd3381058f26ace480f1817cbc1874a8ed4abbbad58dcf61cc77220400004927ab8e8c95ab5a2e1f27172ee3ed3bbd3f1dda2dda07c + REF 160625a9728b4031a21ad1e1c0146ea2c3a851eb # 2021-10-19 + SHA512 13b205dd4278600e6ec05c829dc6c7e449747cccb118a3b83abc0ab5ef0ab180feb364ac84da8075471697fbba798ed3d9d763934d7fe9a64ac0560f5f9d3e83 HEAD_REF master PATCHES - add-cmake-install.patch fix-uwp.patch - no-wyhash.patch + fix-cmakelists.patch add-all-libs-target.patch + add-cmake-install.patch ) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH}/cmake - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}/cmake" ) -vcpkg_install_cmake() -vcpkg_fixup_cmake_targets() +vcpkg_cmake_install() +vcpkg_cmake_config_fixup() vcpkg_copy_pdbs() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share" "${CURRENT_PACKAGES_DIR}/debug/include") file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/upb/vcpkg.json b/ports/upb/vcpkg.json index 058833064dd99f..2f9c034125e43b 100644 --- a/ports/upb/vcpkg.json +++ b/ports/upb/vcpkg.json @@ -1,7 +1,16 @@ { "name": "upb", - "version-date": "2020-12-19", - "port-version": 1, + "version-date": "2021-10-19", "description": "μpb (often written 'upb') is a small protobuf implementation written in C.", - "homepage": "https://github.com/protocolbuffers/upb/" + "homepage": "https://github.com/protocolbuffers/upb/", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/ports/uvatlas/portfile.cmake b/ports/uvatlas/portfile.cmake index ba71fd0997aa51..bca523b3129afd 100644 --- a/ports/uvatlas/portfile.cmake +++ b/ports/uvatlas/portfile.cmake @@ -5,8 +5,8 @@ vcpkg_fail_port_install(ON_TARGET "OSX") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/UVAtlas - REF sept2021 - SHA512 bb2659e83aa04ad6a43b953f40535531f4f5766d3390b9ce8ea0d83b3146cb92fe27a44c7b744da91cc20f529aabf87794b3b19272c2bd27817e65b091ffe3f5 + REF nov2021 + SHA512 06fe3eb50abd95f35741b8b7d27abbf1eb4f77e13e5c88aa199e29e0ddb979b7913d7eb766afe52382dc0bf94552b20f089681aa1cd52bb88469961d9029d5b0 HEAD_REF master ) @@ -37,9 +37,9 @@ vcpkg_cmake_config_fixup(CONFIG_PATH cmake) if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64) AND (NOT ("eigen" IN_LIST FEATURES))) vcpkg_download_distfile( UVATLASTOOL_EXE - URLS "https://github.com/Microsoft/UVAtlas/releases/download/sept2021/uvatlastool.exe" - FILENAME "uvatlastool-sept2021.exe" - SHA512 56e5ca39f5e1d4fd5fc0f23dee0b2c4b814a53848614d3a470a68821177662e068e0d4e3db93446d32e734af4a6bad0f729d0691b2a3bb127e0395c14aa5a1e7 + URLS "https://github.com/Microsoft/UVAtlas/releases/download/nov2021/uvatlastool.exe" + FILENAME "uvatlastool-nov2021.exe" + SHA512 84de6bc74901f3ab888b90126cc1ac64de564eb33c605fffe37b2199ad132a53b01271f1f551fcc067c144c599380764b9e50884ce5df32f43b2c58777da0722 ) file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/uvatlas/") @@ -48,7 +48,7 @@ if((VCPKG_HOST_IS_WINDOWS) AND (VCPKG_TARGET_ARCHITECTURE MATCHES x64) AND (NOT ${UVATLASTOOL_EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/uvatlas/) - file(RENAME ${CURRENT_PACKAGES_DIR}/tools/uvatlas/uvatlastool-sept2021.exe ${CURRENT_PACKAGES_DIR}/tools/uvatlas/uvatlastool.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/tools/uvatlas/uvatlastool-nov2021.exe ${CURRENT_PACKAGES_DIR}/tools/uvatlas/uvatlastool.exe) elseif((VCPKG_TARGET_IS_WINDOWS) AND (NOT VCPKG_TARGET_IS_UWP)) diff --git a/ports/uvatlas/vcpkg.json b/ports/uvatlas/vcpkg.json index 7996d056b3436f..06fff2ef51fbae 100644 --- a/ports/uvatlas/vcpkg.json +++ b/ports/uvatlas/vcpkg.json @@ -1,6 +1,6 @@ { "name": "uvatlas", - "version-string": "sept2021", + "version-string": "nov2021", "description": "UVAtlas isochart texture atlas", "homepage": "https://github.com/Microsoft/UVAtlas", "documentation": "https://github.com/Microsoft/UVAtlas/wiki", diff --git a/ports/uwebsockets/portfile.cmake b/ports/uwebsockets/portfile.cmake index c23249d0af9e71..6b8e659e1b6f07 100644 --- a/ports/uwebsockets/portfile.cmake +++ b/ports/uwebsockets/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO uNetworking/uWebSockets - REF v20.6.0 - SHA512 cd20e72511c1365a65be55dfdfa40b2476de2e31b90a287b69c0772fedc9b92956924f6fd3261b131ef47494a0b9710fa4ecb71eb5fbca400b67645f63568de9 + REF v20.8.0 + SHA512 2ebb75ce2cd0194b9846a16ea69eb7d9aa25e3673cca0afbb61946989380256ebc27cf24c98bee0bf1264c7b60d84ebb01511454973e5ce165fafc7f75b52902 HEAD_REF master ) diff --git a/ports/uwebsockets/vcpkg.json b/ports/uwebsockets/vcpkg.json index 794979b49bed7e..36969286415f42 100644 --- a/ports/uwebsockets/vcpkg.json +++ b/ports/uwebsockets/vcpkg.json @@ -1,6 +1,6 @@ { "name": "uwebsockets", - "version-semver": "20.6.0", + "version-semver": "20.8.0", "description": "Simple, secure & standards compliant web I/O for the most demanding of applications", "homepage": "https://github.com/uWebSockets/uWebSockets", "dependencies": [ diff --git a/ports/vtk/UseProj5Api.patch b/ports/vtk/UseProj5Api.patch new file mode 100644 index 00000000000000..7ee7adae3a9673 --- /dev/null +++ b/ports/vtk/UseProj5Api.patch @@ -0,0 +1,149 @@ +From 0325638832e35c8c8c6fc96e2c1d887aeea3dd43 Mon Sep 17 00:00:00 2001 +From: Julien Schueller +Date: Mon, 8 Mar 2021 10:57:46 +0100 +Subject: [PATCH] Geovis: Use proj>=5 api + +Closes #18130 +--- + Geovis/Core/vtkGeoProjection.cxx | 17 ++++++++++++++++- + Geovis/Core/vtkGeoTransform.cxx | 28 ++++++++++++++-------------- + ThirdParty/libproj/vtk_libproj.h.in | 7 +------ + 3 files changed, 31 insertions(+), 21 deletions(-) + +diff --git a/Geovis/Core/vtkGeoProjection.cxx b/Geovis/Core/vtkGeoProjection.cxx +index 7ff6526a5d..0a0d06eba1 100644 +--- a/Geovis/Core/vtkGeoProjection.cxx ++++ b/Geovis/Core/vtkGeoProjection.cxx +@@ -121,7 +121,11 @@ vtkGeoProjection::~vtkGeoProjection() + this->SetPROJ4String(nullptr); + if (this->Projection) + { ++#if PROJ_VERSION_MAJOR >= 5 ++ proj_destroy(this->Projection); ++#else + pj_free(this->Projection); ++#endif + } + delete this->Internals; + this->Internals = nullptr; +@@ -185,13 +189,21 @@ int vtkGeoProjection::UpdateProjection() + + if (this->Projection) + { ++#if PROJ_VERSION_MAJOR >= 5 ++ proj_destroy(this->Projection); ++#else + pj_free(this->Projection); ++#endif + this->Projection = nullptr; + } + + if (this->PROJ4String && strlen(this->PROJ4String)) + { ++#if PROJ_VERSION_MAJOR >= 5 ++ this->Projection = proj_create(PJ_DEFAULT_CTX, this->PROJ4String); ++#else + this->Projection = pj_init_plus(this->PROJ4String); ++#endif + if (!this->Projection) + { + vtkErrorMacro("Cannot set projection with string " << this->PROJ4String); +@@ -234,8 +246,11 @@ int vtkGeoProjection::UpdateProjection() + stringHolder[i] = param.str(); + pjArgs[3 + i] = stringHolder[i].c_str(); + } +- ++#if PROJ_VERSION_MAJOR >= 5 ++ this->Projection = proj_create_argv(PJ_DEFAULT_CTX, argSize, const_cast(pjArgs)); ++#else + this->Projection = pj_init(argSize, const_cast(pjArgs)); ++#endif + delete[] pjArgs; + } + this->ProjectionMTime = this->GetMTime(); +diff --git a/Geovis/Core/vtkGeoTransform.cxx b/Geovis/Core/vtkGeoTransform.cxx +index 5c2c74279d..1c99b6b11b 100644 +--- a/Geovis/Core/vtkGeoTransform.cxx ++++ b/Geovis/Core/vtkGeoTransform.cxx +@@ -163,8 +163,12 @@ void vtkGeoTransform::InternalTransformPoints(double* x, vtkIdType numPts, int s + projPJ src = this->SourceProjection ? this->SourceProjection->GetProjection() : nullptr; + projPJ dst = this->DestinationProjection ? this->DestinationProjection->GetProjection() : nullptr; + int delta = stride - 2; ++#if PROJ_VERSION_MAJOR >= 5 ++ PJ_COORD c, c_out; ++#else + projLP lp; + projXY xy; ++#endif + if (src) + { + // Convert from src system to lat/long using inverse of src transform +@@ -172,17 +176,15 @@ void vtkGeoTransform::InternalTransformPoints(double* x, vtkIdType numPts, int s + for (vtkIdType i = 0; i < numPts; ++i) + { + #if PROJ_VERSION_MAJOR >= 5 +- xy.x = coord[0]; +- xy.y = coord[1]; ++ c.xy.x = coord[0]; ++ c.xy.y = coord[1]; ++ c_out = proj_trans(src, PJ_INV, c); ++ coord[0] = c_out.lp.lam; ++ coord[1] = c_out.lp.phi; + #else + xy.u = coord[0]; + xy.v = coord[1]; +-#endif + lp = pj_inv(xy, src); +-#if PROJ_VERSION_MAJOR >= 5 +- coord[0] = lp.lam; +- coord[1] = lp.phi; +-#else + coord[0] = lp.u; + coord[1] = lp.v; + #endif +@@ -208,17 +210,15 @@ void vtkGeoTransform::InternalTransformPoints(double* x, vtkIdType numPts, int s + for (vtkIdType i = 0; i < numPts; ++i) + { + #if PROJ_VERSION_MAJOR >= 5 +- lp.lam = coord[0]; +- lp.phi = coord[1]; ++ c.lp.lam = coord[0]; ++ c.lp.phi = coord[1]; ++ c_out = proj_trans(src, PJ_FWD, c); ++ coord[0] = c_out.xy.x; ++ coord[1] = c_out.xy.y; + #else + lp.u = coord[0]; + lp.v = coord[1]; +-#endif + xy = pj_fwd(lp, dst); +-#if PROJ_VERSION_MAJOR >= 5 +- coord[0] = xy.x; +- coord[1] = xy.y; +-#else + coord[0] = xy.u; + coord[1] = xy.v; + #endif +diff --git a/ThirdParty/libproj/vtk_libproj.h.in b/ThirdParty/libproj/vtk_libproj.h.in +index 4d8ffc3c5d..c4182c4db2 100644 +--- a/ThirdParty/libproj/vtk_libproj.h.in ++++ b/ThirdParty/libproj/vtk_libproj.h.in +@@ -28,14 +28,9 @@ + #if VTK_MODULE_USE_EXTERNAL_vtklibproj + # if VTK_LibPROJ_MAJOR_VERSION >= 5 + # include +-# endif +-# if VTK_LibPROJ_MAJOR_VERSION < 6 ++# else + # include + # endif +-# if VTK_LibPROJ_MAJOR_VERSION >= 6 +-# define ACCEPT_USE_OF_DEPRECATED_PROJ_API_H 1 +-# endif +-# include + # include + #else + # include +-- +2.32.0.windows.1 + diff --git a/ports/vtk/missing-limits.patch b/ports/vtk/missing-limits.patch new file mode 100644 index 00000000000000..2450e480cfcf44 --- /dev/null +++ b/ports/vtk/missing-limits.patch @@ -0,0 +1,48 @@ +diff --git a/Common/Core/vtkGenericDataArrayLookupHelper.h b/Common/Core/vtkGenericDataArrayLookupHelper.h +index ab9d572..202aaa2 100644 +--- a/Common/Core/vtkGenericDataArrayLookupHelper.h ++++ b/Common/Core/vtkGenericDataArrayLookupHelper.h +@@ -25,6 +25,7 @@ + #include "vtkIdList.h" + #include + #include ++#include + #include + #include + +diff --git a/Common/DataModel/vtkPiecewiseFunction.cxx b/Common/DataModel/vtkPiecewiseFunction.cxx +index 22eca0b..11086f1 100644 +--- a/Common/DataModel/vtkPiecewiseFunction.cxx ++++ b/Common/DataModel/vtkPiecewiseFunction.cxx +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/Filters/HyperTree/vtkHyperTreeGridThreshold.cxx b/Filters/HyperTree/vtkHyperTreeGridThreshold.cxx +index a16bb27..1052192 100644 +--- a/Filters/HyperTree/vtkHyperTreeGridThreshold.cxx ++++ b/Filters/HyperTree/vtkHyperTreeGridThreshold.cxx +@@ -27,6 +27,7 @@ + #include "vtkHyperTreeGridNonOrientedCursor.h" + + #include ++#include + + vtkStandardNewMacro(vtkHyperTreeGridThreshold); + +diff --git a/Rendering/Core/vtkColorTransferFunction.cxx b/Rendering/Core/vtkColorTransferFunction.cxx +index 55c046b..1be0291 100644 +--- a/Rendering/Core/vtkColorTransferFunction.cxx ++++ b/Rendering/Core/vtkColorTransferFunction.cxx +@@ -21,6 +21,7 @@ + #include + #include + #include ++#include + #include + #include + diff --git a/ports/vtk/portfile.cmake b/ports/vtk/portfile.cmake index 89a55a25d9be2a..cff5332c1fe36c 100644 --- a/ports/vtk/portfile.cmake +++ b/ports/vtk/portfile.cmake @@ -28,6 +28,8 @@ vcpkg_from_github( 156fb524.patch d107698a.patch fix-gdal.patch + missing-limits.patch # This patch can be removed in next version. Since it has been merged to upstream via https://gitlab.kitware.com/vtk/vtk/-/merge_requests/7611 + UseProj5Api.patch # Allow Proj 8.0+ (commit b66e4a7, backported). Should be in soon after 9.0.3 ) # ============================================================================= @@ -146,7 +148,7 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS # We set all libraries to "system" and explicitly list the ones that should use embedded copies vcpkg_cmake_configure( - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH "${SOURCE_PATH}" OPTIONS ${FEATURE_OPTIONS} ${VTK_FEATURE_OPTIONS} @@ -268,9 +270,9 @@ if("paraview" IN_LIST FEATURES) endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - if(EXISTS ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/CMakeFiles/vtkpythonmodules/static_python) #python headers + if(EXISTS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/CMakeFiles/vtkpythonmodules/static_python") #python headers file(GLOB_RECURSE STATIC_PYTHON_FILES "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/CMakeFiles/*/static_python/*.h") - file(INSTALL ${STATIC_PYTHON_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}) + file(INSTALL ${STATIC_PYTHON_FILES} DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}") endif() endif() diff --git a/ports/vtk/vcpkg.json b/ports/vtk/vcpkg.json index ca0058ec87c2ca..2ce6162f33feba 100644 --- a/ports/vtk/vcpkg.json +++ b/ports/vtk/vcpkg.json @@ -1,7 +1,7 @@ { "name": "vtk", "version-semver": "9.0.3-pv5.9.1", - "port-version": 3, + "port-version": 5, "description": "Software system for 3D computer graphics, image processing, and visualization", "homepage": "https://github.com/Kitware/VTK", "dependencies": [ diff --git a/ports/winpcap/portfile.cmake b/ports/winpcap/portfile.cmake index 8549c543d26c8a..196ad02b8f8623 100644 --- a/ports/winpcap/portfile.cmake +++ b/ports/winpcap/portfile.cmake @@ -13,7 +13,7 @@ vcpkg_download_distfile(ARCHIVE vcpkg_download_distfile(COPYRIGHT URLS "https://www.winpcap.org/misc/copyright.htm" FILENAME "Wpcap_license.htm" - SHA512 661e848f229612a4354e8243cdb0cb7ef387abc8933412b8c09ccfcaa3335143a958ea9ec9da558f89afe71afea29f0548872e3544ea51144c297a1aa1276718 + SHA512 bb2519e8f3d02c408fa3f2ef339adda1cc31338d05d2fa4ce25d5369427243fd3e2abc4b21aa654b2be5791f53c2281847a4a15778ffcb90576fd166140c7d2e ) # MSBuild performs in-source builds, so to ensure reliability we must clear them each time @@ -45,7 +45,7 @@ vcpkg_extract_source_archive_ex( "${CMAKE_CURRENT_LIST_DIR}/fix-create-lib-batch.patch" ) -file(COPY "${CURRENT_PORT_DIR}/create_bin.bat" DESTINATION ${SOURCE_PATH}) +file(COPY "${CURRENT_PORT_DIR}/create_bin.bat" DESTINATION "${SOURCE_PATH}") if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") set(PLATFORM Win32) @@ -57,12 +57,12 @@ vcpkg_execute_required_process( COMMAND "devenv.exe" "Packet.sln" /Upgrade - WORKING_DIRECTORY ${SOURCE_PATH}/packetNtx/Dll/Project + WORKING_DIRECTORY "${SOURCE_PATH}/packetNtx/Dll/Project" LOGNAME upgrade-Packet-${TARGET_TRIPLET} ) if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" AND VCPKG_LIBRARY_LINKAGE STREQUAL "static") - file(COPY ${CURRENT_PORT_DIR}/Packet.vcxproj DESTINATION ${SOURCE_PATH}/packetNtx/Dll/Project/) + file(COPY "${CURRENT_PORT_DIR}/Packet.vcxproj" DESTINATION "${SOURCE_PATH}/packetNtx/Dll/Project/") endif() vcpkg_build_msbuild( @@ -90,7 +90,7 @@ vcpkg_execute_required_process( ) if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" AND VCPKG_LIBRARY_LINKAGE STREQUAL "static") - file(COPY ${CURRENT_PORT_DIR}/wpcap.vcxproj DESTINATION ${SOURCE_PATH}/wpcap/PRJ/) + file(COPY "${CURRENT_PORT_DIR}/wpcap.vcxproj" DESTINATION "${SOURCE_PATH}/wpcap/PRJ/") endif() vcpkg_build_msbuild( @@ -116,7 +116,7 @@ file(INSTALL "${SOURCE_PATH}/WpdPack/Include/pcap-stdinc.h" "${SOURCE_PATH}/WpdPack/Include/remote-ext.h" "${SOURCE_PATH}/WpdPack/Include/Win32-Extensions.h" - DESTINATION ${CURRENT_PACKAGES_DIR}/include) + DESTINATION "${CURRENT_PACKAGES_DIR}/include") file(INSTALL "${SOURCE_PATH}/WpdPack/Include/pcap/bluetooth.h" @@ -126,7 +126,7 @@ file(INSTALL "${SOURCE_PATH}/WpdPack/Include/pcap/sll.h" "${SOURCE_PATH}/WpdPack/Include/pcap/usb.h" "${SOURCE_PATH}/WpdPack/Include/pcap/vlan.h" - DESTINATION ${CURRENT_PACKAGES_DIR}/include/pcap) + DESTINATION "${CURRENT_PACKAGES_DIR}/include/pcap") vcpkg_execute_required_process( COMMAND ${SOURCE_PATH}/create_lib.bat @@ -142,17 +142,17 @@ endif() file(INSTALL "${PCAP_LIBRARY_PATH}/Packet.lib" "${PCAP_LIBRARY_PATH}/wpcap.lib" - DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + DESTINATION "${CURRENT_PACKAGES_DIR}/lib") file(INSTALL "${PCAP_LIBRARY_PATH}/debug/Packet.lib" "${PCAP_LIBRARY_PATH}/debug/wpcap.lib" - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") vcpkg_execute_required_process( - COMMAND ${SOURCE_PATH}/create_bin.bat - WORKING_DIRECTORY ${SOURCE_PATH} + COMMAND "${SOURCE_PATH}/create_bin.bat" + WORKING_DIRECTORY "${SOURCE_PATH}" LOGNAME create_bin-${TARGET_TRIPLET} ) @@ -164,14 +164,14 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") file(INSTALL "${PCAP_BINARY_PATH}/Packet.dll" "${PCAP_BINARY_PATH}/wpcap.dll" - DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + DESTINATION "${CURRENT_PACKAGES_DIR}/bin") file(INSTALL "${PCAP_BINARY_PATH}/Packet.dll" "${PCAP_BINARY_PATH}/wpcap.dll" - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") endif() -vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/include/pcap-stdinc.h "#define inline __inline" "#ifndef __cplusplus\n#define inline __inline\n#endif") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/pcap-stdinc.h" "#define inline __inline" "#ifndef __cplusplus\n#define inline __inline\n#endif") -configure_file(${COPYRIGHT} ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) +configure_file(${COPYRIGHT} "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY) diff --git a/ports/winpcap/vcpkg.json b/ports/winpcap/vcpkg.json index b584c0f6bd6bd1..aa4d923477fb3c 100644 --- a/ports/winpcap/vcpkg.json +++ b/ports/winpcap/vcpkg.json @@ -1,7 +1,7 @@ { "name": "winpcap", - "version-string": "4.1.3", - "port-version": 5, + "version": "4.1.3", + "port-version": 6, "description": "WinPcap is the industry-standard tool for link-layer network access in Windows environments.", "homepage": "https://www.winpcap.org" } diff --git a/ports/winpty/CMakeLists.txt b/ports/winpty/CMakeLists.txt new file mode 100644 index 00000000000000..ce3eb00212baec --- /dev/null +++ b/ports/winpty/CMakeLists.txt @@ -0,0 +1,172 @@ +cmake_minimum_required(VERSION 3.12.0) + +set(PROJECT_VERSION "0.4.3") +project(winpty VERSION ${PROJECT_VERSION} LANGUAGES CXX) + +add_definitions(-DPROJECT_VERSION="${PROJECT_VERSION}") +add_definitions(-D_WIN32_WINNT=0x0600) +add_definitions(-DUNICODE) +add_definitions(-D_UNICODE) +add_definitions(-DNOMINMAX) + +if("${BUILD_TYPE}" STREQUAL "STATIC") + add_definitions(-DBUILD_STATIC) +else() + add_definitions(-DCOMPILING_WINPTY_DLL) +endif() + +set(CMAKE_CXX_STANDARD 11) +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(WINPTY_INSTALL_INCLUDE_DIR ${CMAKE_INSTALL_PREFIX}/include) +set(WINPTY_INSTALL_BIN_DIR ${CMAKE_INSTALL_PREFIX}/bin) +set(WINPTY_INSTALL_LIB_DIR ${CMAKE_INSTALL_PREFIX}/lib) + +include_directories(${WINPTY_INSTALL_INCLUDE_DIR}) + +#winpty library +set(WINPTYLIB_SOURCE_FILES + src/include/winpty.h + src/libwinpty/AgentLocation.cc + src/libwinpty/AgentLocation.h + src/libwinpty/winpty.cc + src/shared/AgentMsg.h + src/shared/BackgroundDesktop.h + src/shared/BackgroundDesktop.cc + src/shared/Buffer.h + src/shared/Buffer.cc + src/shared/DebugClient.h + src/shared/DebugClient.cc + src/shared/GenRandom.h + src/shared/GenRandom.cc + src/shared/OsModule.h + src/shared/OwnedHandle.h + src/shared/OwnedHandle.cc + src/shared/StringBuilder.h + src/shared/StringUtil.cc + src/shared/StringUtil.h + src/shared/WindowsSecurity.cc + src/shared/WindowsSecurity.h + src/shared/WindowsVersion.h + src/shared/WindowsVersion.cc + src/shared/WinptyAssert.h + src/shared/WinptyAssert.cc + src/shared/WinptyException.h + src/shared/WinptyException.cc + src/shared/WinptyVersion.h + src/shared/WinptyVersion.cc + src/shared/winpty_snprintf.h +) + +add_library( winpty ${BUILD_TYPE} ${WINPTYLIB_SOURCE_FILES} ) + +#winpty agent executable +set(WINPTYAGENT_SOURCE_FILES + src/agent/Agent.h + src/agent/Agent.cc + src/agent/AgentCreateDesktop.h + src/agent/AgentCreateDesktop.cc + src/agent/ConsoleFont.cc + src/agent/ConsoleFont.h + src/agent/ConsoleInput.cc + src/agent/ConsoleInput.h + src/agent/ConsoleInputReencoding.cc + src/agent/ConsoleInputReencoding.h + src/agent/ConsoleLine.cc + src/agent/ConsoleLine.h + src/agent/Coord.h + src/agent/DebugShowInput.h + src/agent/DebugShowInput.cc + src/agent/DefaultInputMap.h + src/agent/DefaultInputMap.cc + src/agent/DsrSender.h + src/agent/EventLoop.h + src/agent/EventLoop.cc + src/agent/InputMap.h + src/agent/InputMap.cc + src/agent/LargeConsoleRead.h + src/agent/LargeConsoleRead.cc + src/agent/NamedPipe.h + src/agent/NamedPipe.cc + src/agent/Scraper.h + src/agent/Scraper.cc + src/agent/SimplePool.h + src/agent/SmallRect.h + src/agent/Terminal.h + src/agent/Terminal.cc + src/agent/UnicodeEncoding.h + src/agent/Win32Console.cc + src/agent/Win32Console.h + src/agent/Win32ConsoleBuffer.cc + src/agent/Win32ConsoleBuffer.h + src/agent/main.cc + src/shared/AgentMsg.h + src/shared/BackgroundDesktop.h + src/shared/BackgroundDesktop.cc + src/shared/Buffer.h + src/shared/Buffer.cc + src/shared/DebugClient.h + src/shared/DebugClient.cc + src/shared/GenRandom.h + src/shared/GenRandom.cc + src/shared/OsModule.h + src/shared/OwnedHandle.h + src/shared/OwnedHandle.cc + src/shared/StringBuilder.h + src/shared/StringUtil.cc + src/shared/StringUtil.h + src/shared/UnixCtrlChars.h + src/shared/WindowsSecurity.cc + src/shared/WindowsSecurity.h + src/shared/WindowsVersion.h + src/shared/WindowsVersion.cc + src/shared/WinptyAssert.h + src/shared/WinptyAssert.cc + src/shared/WinptyException.h + src/shared/WinptyException.cc + src/shared/WinptyVersion.h + src/shared/WinptyVersion.cc + src/shared/winpty_snprintf.h +) + +add_executable(winpty-agent ${WINPTYAGENT_SOURCE_FILES}) +target_compile_definitions(winpty-agent PRIVATE -DWINPTY_AGENT_ASSERT) + + +#winpty debugserver executable +set(WINPTYAGENT_SOURCE_FILES + src/debugserver/DebugServer.cc + src/shared/DebugClient.h + src/shared/DebugClient.cc + src/shared/OwnedHandle.h + src/shared/OwnedHandle.cc + src/shared/OsModule.h + src/shared/StringBuilder.h + src/shared/StringUtil.cc + src/shared/StringUtil.h + src/shared/WindowsSecurity.h + src/shared/WindowsSecurity.cc + src/shared/WindowsVersion.h + src/shared/WindowsVersion.cc + src/shared/WinptyAssert.h + src/shared/WinptyAssert.cc + src/shared/WinptyException.h + src/shared/WinptyException.cc + src/shared/winpty_snprintf.h +) + +add_executable(winpty-debugserver ${WINPTYAGENT_SOURCE_FILES}) + + +if("${BUILD_TYPE}" STREQUAL "STATIC") + install(TARGETS winpty DESTINATION ${WINPTY_INSTALL_LIB_DIR}) +else() + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/winpty.dll DESTINATION ${WINPTY_INSTALL_BIN_DIR}) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/winpty.lib DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) +endif() +install(TARGETS winpty-agent DESTINATION ${WINPTY_INSTALL_BIN_DIR}) +install(TARGETS winpty-debugserver DESTINATION ${WINPTY_INSTALL_BIN_DIR}) +install(FILES src/include/winpty.h src/include/winpty_constants.h DESTINATION ${WINPTY_INSTALL_INCLUDE_DIR}) + + + diff --git a/ports/winpty/allow-build-static.patch b/ports/winpty/allow-build-static.patch new file mode 100644 index 00000000000000..14447dfbd22b5e --- /dev/null +++ b/ports/winpty/allow-build-static.patch @@ -0,0 +1,45 @@ +diff --git a/src/include/winpty.h b/src/include/winpty.h +index fdfe4bc..7864d96 100644 +--- a/src/include/winpty.h ++++ b/src/include/winpty.h +@@ -32,11 +32,15 @@ + * When compiled with __declspec(dllexport), with either MinGW or MSVC, the + * winpty functions are unadorned--no underscore prefix or '@nn' suffix--so + * GetProcAddress can be used easily. */ ++#ifndef BUILD_STATIC + #ifdef COMPILING_WINPTY_DLL + #define WINPTY_API __declspec(dllexport) + #else + #define WINPTY_API __declspec(dllimport) + #endif ++#else ++#define WINPTY_API ++#endif + + #ifdef __cplusplus + extern "C" { +diff --git a/src/shared/WinptyVersion.cc b/src/shared/WinptyVersion.cc +index 76bb8a5..33a2c23 100644 +--- a/src/shared/WinptyVersion.cc ++++ b/src/shared/WinptyVersion.cc +@@ -28,15 +28,15 @@ + // This header is auto-generated by either the Makefile (Unix) or + // UpdateGenVersion.bat (gyp). It is placed in a 'gen' directory, which is + // added to the search path. +-#include "GenVersion.h" ++//#include "GenVersion.h" + + void dumpVersionToStdout() { +- printf("winpty version %s\n", GenVersion_Version); +- printf("commit %s\n", GenVersion_Commit); ++ printf("winpty version %s\n", PROJECT_VERSION); ++ printf("commit %s\n", "empty"); + } + + void dumpVersionToTrace() { + trace("winpty version %s (commit %s)", +- GenVersion_Version, +- GenVersion_Commit); ++ PROJECT_VERSION, ++ "empty"); + } diff --git a/ports/winpty/portfile.cmake b/ports/winpty/portfile.cmake new file mode 100644 index 00000000000000..87cecef41f0ebc --- /dev/null +++ b/ports/winpty/portfile.cmake @@ -0,0 +1,32 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO rprichard/winpty + REF antivirus + SHA512 8f5539c1af2a1127219278446c1d028079867cecdeb03c4f208c7d8176e8802e8075ce1b6992e0ef73db34c69e58f73d3828698d865deb35cb883821ee245e4d + HEAD_REF master + PATCHES + allow-build-static.patch +) + +file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}") + +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + set(BUILD_TYPE SHARED) +else() + set(BUILD_TYPE STATIC) +endif() + +vcpkg_cmake_configure( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DBUILD_TYPE=${BUILD_TYPE} +) + +vcpkg_cmake_install() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +vcpkg_copy_tools(TOOL_NAMES winpty-agent winpty-debugserver AUTO_CLEAN) + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/winpty/vcpkg.json b/ports/winpty/vcpkg.json new file mode 100644 index 00000000000000..dc2288546b1cab --- /dev/null +++ b/ports/winpty/vcpkg.json @@ -0,0 +1,16 @@ +{ + "name": "winpty", + "version": "0.4.3", + "description": "winpty is a Windows software package providing an interface similar to a Unix pty-master for communicating with Windows console programs", + "supports": "windows & !uwp", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/ports/zlib-ng/portfile.cmake b/ports/zlib-ng/portfile.cmake index 778e08c9d1e392..f1f4e3cafbf6b6 100644 --- a/ports/zlib-ng/portfile.cmake +++ b/ports/zlib-ng/portfile.cmake @@ -1,13 +1,13 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zlib-ng/zlib-ng - REF 2.0.3 - SHA512 e1afe91e1a8b4c54a004b672f539ae68f7dc1f1b08ba93514c0de674230354c944d496753f00ad272f16ef322705f275b5b72dac6c2a757ec741ef3f1ea1d59a + REF 2.0.5 + SHA512 a643089a8189bf8bd24d679b84f07ae14932b4d88b88e94c44cca23350d6a9bbdaa411822d3651c2b0bf79f30c9f99514cc252cf9e9ab0b3a840540206466654 HEAD_REF master ) vcpkg_cmake_configure( - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DZLIB_FULL_VERSION=2.0.3 -DZLIB_ENABLE_TESTS=OFF @@ -19,9 +19,9 @@ vcpkg_cmake_install() vcpkg_copy_pdbs() vcpkg_fixup_pkgconfig() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share - ${CURRENT_PACKAGES_DIR}/debug/include +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share" + "${CURRENT_PACKAGES_DIR}/debug/include" ) -file(INSTALL ${SOURCE_PATH}/LICENSE.md - DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright +file(INSTALL "${SOURCE_PATH}/LICENSE.md" + DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright ) \ No newline at end of file diff --git a/ports/zlib-ng/vcpkg.json b/ports/zlib-ng/vcpkg.json index b7b2ae46305939..2822189a6dd2dd 100644 --- a/ports/zlib-ng/vcpkg.json +++ b/ports/zlib-ng/vcpkg.json @@ -1,6 +1,6 @@ { "name": "zlib-ng", - "version": "2.0.3", + "version": "2.0.5", "description": "zlib replacement with optimizations for 'next generation' systems", "homepage": "https://github.com/zlib-ng/zlib-ng", "license": "Zlib", diff --git a/ports/zydis/portfile.cmake b/ports/zydis/portfile.cmake index eea63d5a7771b0..cd9b5c43a9f106 100644 --- a/ports/zydis/portfile.cmake +++ b/ports/zydis/portfile.cmake @@ -1,52 +1,46 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zyantific/zydis - REF bfee99f49274a0eec3ffea16ede3a5bda9cda88f - SHA512 de47c4a22d22e753b3d06cb6210a9df2f944b0828e49d573cadb9b0c37d590a44db74542e07eced4b0188a97b825f4990943bab1b14edfd58d80368de4299759 + REF 4022f22f9280650082a9480519c86a6e2afde2f3 #v3.2.1 + SHA512 da3ff582d3c4cbb5e4053cd468f181550f02d0a1713a39944266e6d1b0e3249e24461f87171ef99e249e6d5b2fc39fcca402518c569399ae5d4a64e0d3dc4b3b HEAD_REF master ) vcpkg_from_github( OUT_SOURCE_PATH ZYCORE_SOURCE_PATH REPO zyantific/zycore-c - REF 3435866ecaa837376807ce934d2088ae46aa3fa3 - SHA512 7e25254a0c17158789a3eca417cea8abe6a938cdc91cb395bd0ce1d791c8bd6b4ee0c994ca6c8372e17c03abfb3653c9053c5d56e0a4641d765c8474fae771d2 + REF 8983325bf0007f0d6d2ea28a49040a77f47bd611 #2021-11-17 + SHA512 e41dc70413d2a5bb5ac549ab602c54bfaba3ea61dcd0817bfdf20e4e12d6b3e1cc587fa58ba653bd7513aa735311d3b7b4bc408d8092a98ab6cf1b44012e4e22 HEAD_REF master ) -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(ZYDIS_BUILD_SHARED_LIB OFF) -else() - set(ZYDIS_BUILD_SHARED_LIB ON) -endif() +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" ZYDIS_BUILD_SHARED_LIB) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" OPTIONS - "-DZYDIS_BUILD_SHARED_LIB=${ZYDIS_BUILD_SHARED_LIB}" - "-DZYDIS_ZYCORE_PATH=${ZYCORE_SOURCE_PATH}" + "-DZYDIS_BUILD_SHARED_LIB=${ZYDIS_BUILD_SHARED_LIB}" + "-DZYDIS_ZYCORE_PATH=${ZYCORE_SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() -vcpkg_configure_cmake( - SOURCE_PATH ${ZYCORE_SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${ZYCORE_SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() -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() +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake) + +vcpkg_copy_tools(TOOL_NAMES ZydisDisasm ZydisInfo AUTO_CLEAN) if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") endif() +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") vcpkg_copy_pdbs() -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/zydis/vcpkg.json b/ports/zydis/vcpkg.json index 1a04f16a8731ee..46ce46fb27aeb2 100644 --- a/ports/zydis/vcpkg.json +++ b/ports/zydis/vcpkg.json @@ -1,7 +1,16 @@ { "name": "zydis", - "version-string": "3.1.0", - "port-version": 2, + "version-semver": "3.2.1", "description": "Fast and lightweight x86/x86-64 disassembler library.", - "homepage": "https://zydis.re" + "homepage": "https://zydis.re", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/scripts/bootstrap.ps1 b/scripts/bootstrap.ps1 index af62fde1b6290e..a78ace278ea7ec 100644 --- a/scripts/bootstrap.ps1 +++ b/scripts/bootstrap.ps1 @@ -45,7 +45,7 @@ while (!($vcpkgRootDir -eq "") -and !(Test-Path "$vcpkgRootDir\.vcpkg-root")) Write-Verbose "Examining $vcpkgRootDir for .vcpkg-root - Found" -$versionDate = '2021-11-02' +$versionDate = '2021-11-15' if ($env:PROCESSOR_ARCHITECTURE -eq 'ARM64') { & "$scriptsDir/tls12-download-arm64.exe" github.com "/microsoft/vcpkg-tool/releases/download/$versionDate/vcpkg-arm64.exe" "$vcpkgRootDir\vcpkg.exe" } else { diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh index 0da88be2a3d79c..d36f7ef1f07daf 100644 --- a/scripts/bootstrap.sh +++ b/scripts/bootstrap.sh @@ -124,23 +124,23 @@ fi # Choose the vcpkg binary to download vcpkgDownloadTool="ON" -vcpkgToolReleaseTag="2021-11-02" +vcpkgToolReleaseTag="2021-11-15" if [ "$UNAME" = "Darwin" ]; then echo "Downloading vcpkg-macos..." - vcpkgToolReleaseSha="f60e19bb3c457731b9321580b7b29bde18c103fe6b78bfbeceabdf35ca573f498cf72e09500d9a1805c9f5f8983bd06bc8a1f511d01ece8b38b0b2ae529c8365" + vcpkgToolReleaseSha="2dc3b9fc8dde1eebdc76e1d40c4e9078d7a892487552349ac75df8e9c33d601830ab06b2283a7ba163de0d70f441574501de6cc1198930a346a3a642e677f93f" vcpkgToolName="vcpkg-macos" elif [ "$vcpkgUseMuslC" = "ON" ]; then echo "Downloading vcpkg-muslc..." - vcpkgToolReleaseSha="cbef5be0430d58179882d921d8647b374d377e66b73abe84e6ea6b4333d231e7ef6bd1b2619544548c53cf98af0465e0a5b0ede954305e4f0b17380b79f520b6" + vcpkgToolReleaseSha="4e5e349c608f7263cbed38f800051ea0165966d472f697a47225183e00f7e09791f5663f8f6ec87f9b00803f91ddbd8c716e45e718fc2987ba03070671deaf21" vcpkgToolName="vcpkg-muslc" elif [ "$ARCH" = "x86_64" ]; then echo "Downloading vcpkg-glibc..." - vcpkgToolReleaseSha="9b6836d9d28a7f5e4ed33ea9c22458a6c9ce9cc253c7bb16c3f78ffd9b812b87a53f74f19e575a2005f4c163b0e242809f678f54c5c6871d9c55068391563b63" + vcpkgToolReleaseSha="c574ca0978a7a5a1b7ea636c4c9b201fb7446a5b413820e0d08e7934818a2041e53b8caefa32317d4c6f81d872c90f09463f0952861593e3f1e0c47239cf766b" vcpkgToolName="vcpkg-glibc" else echo "Unable to determine a binary release of vcpkg; attempting to build from source." vcpkgDownloadTool="OFF" - vcpkgToolReleaseSha="2c50a5a360ca34eeaf00def29c9092c38225d9c70f1b3ad4b8f81e5a4bab027e215e8a65d28d38422229129959bb7d1c1d709e1f2d8b7c3efed024d67d8c3307" + vcpkgToolReleaseSha="d94b00fd8d0b3abb0379390fc12c9103f209621e899df11c1ccfd9d15558908dbe0cd3e61cf7fe89a28a6a2b42eeb311d74cf1ebcb0f8e8debc671e9be123ec7" fi # Do the download or build. diff --git a/scripts/buildsystems/msbuild/applocal.ps1 b/scripts/buildsystems/msbuild/applocal.ps1 index abd102ab06a2ed..28ff1ff3c5c36c 100644 --- a/scripts/buildsystems/msbuild/applocal.ps1 +++ b/scripts/buildsystems/msbuild/applocal.ps1 @@ -4,7 +4,7 @@ param([string]$targetBinary, [string]$installedDir, [string]$tlogFile, [string]$ $g_searched = @{} # Note: installedDir is actually the bin\ directory. $g_install_root = Split-Path $installedDir -parent -$g_is_debug = $g_install_root -match '(.*\\)?debug(\\)?$' +$g_is_debug = (Split-Path $g_install_root -leaf) -eq 'debug' # Ensure we create the copied files log, even if we don't end up copying any files if ($copiedFilesLog) @@ -19,14 +19,19 @@ function computeHash([System.Security.Cryptography.HashAlgorithm]$alg, [string]$ } function getMutex([string]$targetDir) { - $sha512Hash = [System.Security.Cryptography.SHA512]::Create() - if ($sha512Hash) { - $hash = computeHash $sha512Hash $targetDir - $mtxName = "VcpkgAppLocalDeployBinary-" + $hash - return New-Object System.Threading.Mutex($false, $mtxName) - } + try { + $sha512Hash = [System.Security.Cryptography.SHA512]::Create() + if ($sha512Hash) { + $hash = (computeHash $sha512Hash $targetDir) -replace ('/' ,'-') + $mtxName = "VcpkgAppLocalDeployBinary-" + $hash + return New-Object System.Threading.Mutex($false, $mtxName) + } - return New-Object System.Threading.Mutex($false, "VcpkgAppLocalDeployBinary") + return New-Object System.Threading.Mutex($false, "VcpkgAppLocalDeployBinary") + } + catch { + Write-Error -Message $_ -ErrorAction Stop + } } # Note: this function signature is depended upon by the qtdeploy.ps1 script introduced in 5.7.1-7 @@ -37,22 +42,24 @@ function deployBinary([string]$targetBinaryDir, [string]$SourceDir, [string]$tar $mtx.WaitOne() | Out-Null } - if (Test-Path "$targetBinaryDir\$targetBinaryName") { - $sourceModTime = (Get-Item $SourceDir\$targetBinaryName).LastWriteTime - $destModTime = (Get-Item $targetBinaryDir\$targetBinaryName).LastWriteTime + $sourceBinaryFilePath = Join-Path $SourceDir $targetBinaryName + $targetBinaryFilePath = Join-Path $targetBinaryDir $targetBinaryName + if (Test-Path $targetBinaryFilePath) { + $sourceModTime = (Get-Item $sourceBinaryFilePath).LastWriteTime + $destModTime = (Get-Item $targetBinaryFilePath).LastWriteTime if ($destModTime -lt $sourceModTime) { - Write-Verbose " ${targetBinaryName}: Updating $SourceDir\$targetBinaryName" - Copy-Item "$SourceDir\$targetBinaryName" $targetBinaryDir + Write-Verbose " ${targetBinaryName}: Updating from $sourceBinaryFilePath" + Copy-Item $sourceBinaryFilePath $targetBinaryDir } else { Write-Verbose " ${targetBinaryName}: already present" } } else { - Write-Verbose " ${targetBinaryName}: Copying $SourceDir\$targetBinaryName" - Copy-Item "$SourceDir\$targetBinaryName" $targetBinaryDir + Write-Verbose " ${targetBinaryName}: Copying $sourceBinaryFilePath" + Copy-Item $sourceBinaryFilePath $targetBinaryDir } - if ($copiedFilesLog) { Add-Content $copiedFilesLog "$targetBinaryDir\$targetBinaryName" -Encoding UTF8 } - if ($tlogFile) { Add-Content $tlogFile "$targetBinaryDir\$targetBinaryName" -Encoding Unicode } + if ($copiedFilesLog) { Add-Content $copiedFilesLog $targetBinaryFilePath -Encoding UTF8 } + if ($tlogFile) { Add-Content $tlogFile $targetBinaryFilePath -Encoding Unicode } } finally { if ($mtx) { $mtx.ReleaseMutex() | Out-Null @@ -104,24 +111,26 @@ function resolve([string]$targetBinary) { return } $g_searched.Set_Item($_, $true) - if (Test-Path "$installedDir\$_") { + $installedItemFilePath = Join-Path $installedDir $_ + $targetItemFilePath = Join-Path $targetBinaryDir $_ + if (Test-Path $installedItemFilePath) { deployBinary $baseTargetBinaryDir $installedDir "$_" - if (Test-Path function:\deployPluginsIfQt) { deployPluginsIfQt $baseTargetBinaryDir "$g_install_root\plugins" "$_" } + if (Test-Path function:\deployPluginsIfQt) { deployPluginsIfQt $baseTargetBinaryDir (Join-Path $g_install_root 'plugins') "$_" } if (Test-Path function:\deployOpenNI2) { deployOpenNI2 $targetBinaryDir "$g_install_root" "$_" } if (Test-Path function:\deployPluginsIfMagnum) { if ($g_is_debug) { - deployPluginsIfMagnum $targetBinaryDir "$g_install_root\bin\magnum-d" "$_" + deployPluginsIfMagnum $targetBinaryDir (Join-Path "$g_install_root" 'bin' 'magnum-d') "$_" } else { - deployPluginsIfMagnum $targetBinaryDir "$g_install_root\bin\magnum" "$_" + deployPluginsIfMagnum $targetBinaryDir (Join-Path "$g_install_root" 'bin' 'magnum') "$_" } } if (Test-Path function:\deployAzureKinectSensorSDK) { deployAzureKinectSensorSDK $targetBinaryDir "$g_install_root" "$_" } - resolve "$baseTargetBinaryDir\$_" - } elseif (Test-Path "$targetBinaryDir\$_") { - Write-Verbose " ${_}: $_ not found in vcpkg; locally deployed" - resolve "$targetBinaryDir\$_" + resolve (Join-Path $baseTargetBinaryDir "$_") + } elseif (Test-Path $targetItemFilePath) { + Write-Verbose " ${_}: $_ not found in $g_install_root; locally deployed" + resolve "$targetItemFilePath" } else { - Write-Verbose " ${_}: $installedDir\$_ not found" + Write-Verbose " ${_}: $installedItemFilePath not found" } } Write-Verbose "Done Resolving $targetBinary." diff --git a/scripts/buildsystems/msbuild/vcpkg.targets b/scripts/buildsystems/msbuild/vcpkg.targets index 7a5bb3c9824934..03f71e6ae8a429 100644 --- a/scripts/buildsystems/msbuild/vcpkg.targets +++ b/scripts/buildsystems/msbuild/vcpkg.targets @@ -44,6 +44,8 @@ VcpkgTriplet=$(VcpkgTriplet):$(ProjectStateLine) + + %(ExternalIncludePath);$(_ZVcpkgCurrentInstalledDir)include