diff --git a/ports/aws-sdk-cpp/fix-openssl3.patch b/ports/aws-sdk-cpp/fix-openssl3.patch new file mode 100644 index 00000000000000..bd79678924cfa8 --- /dev/null +++ b/ports/aws-sdk-cpp/fix-openssl3.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/compiler_settings.cmake b/cmake/compiler_settings.cmake +index cae5b92248..1aa728b01c 100644 +--- a/cmake/compiler_settings.cmake ++++ b/cmake/compiler_settings.cmake +@@ -53,7 +53,7 @@ macro(set_gcc_flags) + endmacro() + + macro(set_gcc_warnings) +- list(APPEND AWS_COMPILER_WARNINGS "-Wall" "-Werror" "-pedantic" "-Wextra") ++ list(APPEND AWS_COMPILER_WARNINGS "-Wno-deprecated-declarations" "-Wall" "-Werror" "-pedantic" "-Wextra") + if(COMPILER_CLANG) + if(PLATFORM_ANDROID) + # when using clang with libc and API lower than 21 we need to include Android support headers and ignore the gnu-include-next warning. diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index b520a17ae3a474..35873a4c925749 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -8,6 +8,7 @@ vcpkg_from_github( PATCHES patch-relocatable-rpath.patch fix-aws-root.patch + fix-openssl3.patch ) string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "dynamic" FORCE_SHARED_CRT) diff --git a/ports/aws-sdk-cpp/vcpkg.json b/ports/aws-sdk-cpp/vcpkg.json index 5f1abf964fabd9..7931c10a5f8734 100644 --- a/ports/aws-sdk-cpp/vcpkg.json +++ b/ports/aws-sdk-cpp/vcpkg.json @@ -2,6 +2,7 @@ "$note": "Automatically generated by generateFeatures.ps1", "name": "aws-sdk-cpp", "version": "1.9.220", + "port-version": 1, "description": "AWS SDK for C++", "homepage": "https://github.com/aws/aws-sdk-cpp", "supports": "!(windows & arm) & !uwp", diff --git a/ports/azure-c-shared-utility/openssl.patch b/ports/azure-c-shared-utility/openssl.patch new file mode 100644 index 00000000000000..bdf46dd1d981e7 --- /dev/null +++ b/ports/azure-c-shared-utility/openssl.patch @@ -0,0 +1,13 @@ +diff --git a/adapters/x509_openssl.c b/adapters/x509_openssl.c +index 5a9e5ac2..bb946c2d 100644 +--- a/adapters/x509_openssl.c ++++ b/adapters/x509_openssl.c +@@ -75,7 +75,7 @@ static int load_certificate_chain(SSL_CTX* ssl_ctx, const char* certificate) + // certificates. + + /* Codes_SRS_X509_OPENSSL_07_006: [ If successful x509_openssl_add_ecc_credentials shall to import each certificate in the cert chain. ] */ +-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && (OPENSSL_VERSION_NUMBER < 0x20000000L) ++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) + SSL_CTX_clear_extra_chain_certs(ssl_ctx); + #else + if (ssl_ctx->extra_certs != NULL) diff --git a/ports/azure-c-shared-utility/portfile.cmake b/ports/azure-c-shared-utility/portfile.cmake index 674f6156faa709..5b9a85d1a9606e 100644 --- a/ports/azure-c-shared-utility/portfile.cmake +++ b/ports/azure-c-shared-utility/portfile.cmake @@ -21,6 +21,7 @@ else() SHA512 c30cba73692691fe1310b6180e3aeaf4d86b6276981c680cac31d605634e5dedbce3f823142dfebba4ae2f76ccead965a527d95df0e52af638a30ddec9818fbd HEAD_REF master PATCHES + openssl.patch fix-install-location.patch fix-utilityFunctions-conditions.patch disable-error.patch diff --git a/ports/azure-c-shared-utility/vcpkg.json b/ports/azure-c-shared-utility/vcpkg.json index 547d08ee976b41..f5f3c1abd2998b 100644 --- a/ports/azure-c-shared-utility/vcpkg.json +++ b/ports/azure-c-shared-utility/vcpkg.json @@ -1,7 +1,7 @@ { "name": "azure-c-shared-utility", "version-date": "2022-01-21", - "port-version": 2, + "port-version": 3, "description": "Azure C SDKs common code", "homepage": "https://github.com/Azure/azure-c-shared-utility", "license": "MIT", diff --git a/ports/idevicerestore/libcurl_d.patch b/ports/idevicerestore/fix-vcxproj.patch similarity index 58% rename from ports/idevicerestore/libcurl_d.patch rename to ports/idevicerestore/fix-vcxproj.patch index 1d9d3f3d7eb573..79ff322b30ad64 100644 --- a/ports/idevicerestore/libcurl_d.patch +++ b/ports/idevicerestore/fix-vcxproj.patch @@ -1,9 +1,12 @@ diff --git a/idevicerestore.vcxproj b/idevicerestore.vcxproj -index fa209fae..cf89306b 100644 +index fa209fa..6afa088 100644 --- a/idevicerestore.vcxproj -+++ b/idevicerestore.vcxproj -@@ -94,7 +94,7 @@ ++++ b/idevicerestore.vcxproj +@@ -92,9 +92,10 @@ + Disabled + true _MBCS;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_WINSOCK_DEPRECATED_NO_WARNINGS ++ 4996 - kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl.lib;%(AdditionalDependencies) @@ -11,8 +14,11 @@ index fa209fae..cf89306b 100644 -@@ -105,7 +105,7 @@ +@@ -103,9 +104,10 @@ + Disabled + true _MBCS;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_WINSOCK_DEPRECATED_NO_WARNINGS ++ 4996 - kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Ws2_32.lib;libcurl.lib;%(AdditionalDependencies) @@ -20,4 +26,19 @@ index fa209fae..cf89306b 100644 - +@@ -116,6 +118,7 @@ + true + true + _MBCS;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_WINSOCK_DEPRECATED_NO_WARNINGS ++ 4996 + + + true +@@ -131,6 +134,7 @@ + true + true + _MBCS;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_WINSOCK_DEPRECATED_NO_WARNINGS ++ 4996 + + + true diff --git a/ports/idevicerestore/portfile.cmake b/ports/idevicerestore/portfile.cmake index 23202a2a4c5eb0..0bc503cea4629a 100644 --- a/ports/idevicerestore/portfile.cmake +++ b/ports/idevicerestore/portfile.cmake @@ -5,7 +5,7 @@ vcpkg_from_github( SHA512 ba623be56c2f37853516d7d4c32e16f1ec72f33d512f18aa812ce6830af4b9e389f7af5321888dd0ddd168e282b652e379b60f90970680e213eabf489f406915 HEAD_REF msvc-master PATCHES - libcurl_d.patch + fix-vcxproj.patch fix-libgen.h-cannot-be-found.patch ) diff --git a/ports/idevicerestore/vcpkg.json b/ports/idevicerestore/vcpkg.json index 1ca1202bc2ead4..056ccaf123a48a 100644 --- a/ports/idevicerestore/vcpkg.json +++ b/ports/idevicerestore/vcpkg.json @@ -1,7 +1,7 @@ { "name": "idevicerestore", - "version-string": "1.0.12", - "port-version": 6, + "version": "1.0.12", + "port-version": 7, "description": "Restore/upgrade firmware of iOS devices", "supports": "windows", "dependencies": [ diff --git a/ports/libdatachannel/portfile.cmake b/ports/libdatachannel/portfile.cmake index 4f6c398e2df201..b41e17cc50d0f9 100644 --- a/ports/libdatachannel/portfile.cmake +++ b/ports/libdatachannel/portfile.cmake @@ -1,3 +1,9 @@ +set(PATCHES 0001-fix-for-vcpkg.patch) + +if(VCPKG_TARGET_IS_UWP) + list(APPEND PATCHES uwp-warnings.patch) +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO paullouisageneau/libdatachannel @@ -5,7 +11,7 @@ vcpkg_from_github( SHA512 ef7d1f652af031c13260a4c436c949eb566d40d15dcde5b56ab782e9e9d7b5e287f4a6a61bc4eb3fcdbb835c102637b0368f3c43af6f9fa9c87cd99d15bde454 HEAD_REF master PATCHES - 0001-fix-for-vcpkg.patch + ${PATCHES} ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS @@ -40,4 +46,4 @@ ${DATACHANNEL_CONFIG}") 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) \ No newline at end of file +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/libdatachannel/uwp-warnings.patch b/ports/libdatachannel/uwp-warnings.patch new file mode 100644 index 00000000000000..023bf888e1bd07 --- /dev/null +++ b/ports/libdatachannel/uwp-warnings.patch @@ -0,0 +1,14 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b79b458..790bf95 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -385,6 +385,9 @@ if(WARNINGS_AS_ERRORS) + endif() + endif() + ++target_compile_options(datachannel PRIVATE /wd4996) ++target_compile_options(datachannel-static PRIVATE /wd4996) ++ + install(TARGETS datachannel EXPORT LibDataChannelTargets + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib diff --git a/ports/libdatachannel/vcpkg.json b/ports/libdatachannel/vcpkg.json index 464798d98405ac..3f67b93a43188b 100644 --- a/ports/libdatachannel/vcpkg.json +++ b/ports/libdatachannel/vcpkg.json @@ -1,6 +1,7 @@ { "name": "libdatachannel", "version-semver": "0.16.4", + "port-version": 1, "description": "libdatachannel is a standalone implementation of WebRTC Data Channels, WebRTC Media Transport, and WebSockets in C++17 with C bindings for POSIX platforms (including GNU/Linux, Android, and Apple macOS) and Microsoft Windows.", "homepage": "https://github.com/paullouisageneau/libdatachannel", "dependencies": [ diff --git a/ports/libmysql/openssl.patch b/ports/libmysql/openssl.patch new file mode 100644 index 00000000000000..3abbcf98f17e8a --- /dev/null +++ b/ports/libmysql/openssl.patch @@ -0,0 +1,125 @@ +diff --git a/mysys/my_md5.cc b/mysys/my_md5.cc +index dea997b252c..81484f0652b 100644 +--- a/mysys/my_md5.cc ++++ b/mysys/my_md5.cc +@@ -35,6 +35,10 @@ + #include + #include + ++#if OPENSSL_VERSION_NUMBER >= 0x30000000L ++#include ++#endif ++ + static void my_md5_hash(unsigned char *digest, unsigned const char *buf, + int len) { + MD5_CTX ctx; +@@ -56,7 +60,11 @@ static void my_md5_hash(unsigned char *digest, unsigned const char *buf, + int compute_md5_hash(char *digest, const char *buf, int len) { + int retval = 0; + int fips_mode = 0; ++ #if OPENSSL_VERSION_NUMBER < 0x30000000L + fips_mode = FIPS_mode(); ++ #else ++ fips_mode = EVP_default_properties_is_fips_enabled(NULL); ++ #endif + /* If fips mode is ON/STRICT restricted method calls will result into abort, + * skipping call. */ + if (fips_mode == 0) { +diff --git a/plugin/x/client/xconnection_impl.cc b/plugin/x/client/xconnection_impl.cc +index 13bc6794ea5..8752bcea9bf 100644 +--- a/plugin/x/client/xconnection_impl.cc ++++ b/plugin/x/client/xconnection_impl.cc +@@ -51,6 +51,10 @@ + #include "plugin/x/src/config/config.h" + #include "sql-common/net_ns.h" + ++#if OPENSSL_VERSION_NUMBER >= 0x30000000L ++#include ++#endif ++ + #ifndef WIN32 + #include + #include +@@ -524,12 +528,20 @@ int set_fips_mode(const uint32_t fips_mode, + if (fips_mode > 2) { + goto EXIT; + } ++ #if OPENSSL_VERSION_NUMBER < 0x30000000L + fips_mode_old = FIPS_mode(); ++ #else ++ fips_mode_old = EVP_default_properties_is_fips_enabled(NULL); ++ #endif + if (fips_mode_old == fips_mode) { + rc = 1; + goto EXIT; + } ++ #if OPENSSL_VERSION_NUMBER < 0x30000000L + if (!(rc = FIPS_mode_set(fips_mode))) { ++ #else ++ if (!(rc = EVP_default_properties_enable_fips(fips_mode))) { ++ #endif + err_library = ERR_get_error(); + ERR_error_string_n(err_library, err_string, OPENSSL_ERROR_LENGTH - 1); + err_string[OPENSSL_ERROR_LENGTH - 1] = '\0'; +diff --git a/vio/viosslfactories.cc b/vio/viosslfactories.cc +index 6c04029ccb0..164b727e3dc 100644 +--- a/vio/viosslfactories.cc ++++ b/vio/viosslfactories.cc +@@ -40,6 +40,10 @@ + + #include + ++#if OPENSSL_VERSION_NUMBER >= 0x30000000L ++#include ++#endif ++ + #if OPENSSL_VERSION_NUMBER < 0x10002000L + #include + #endif /* OPENSSL_VERSION_NUMBER < 0x10002000L */ +@@ -498,12 +502,20 @@ int set_fips_mode(const uint fips_mode, char err_string[OPENSSL_ERROR_LENGTH]) { + if (fips_mode > 2) { + goto EXIT; + } ++ #if OPENSSL_VERSION_NUMBER < 0x30000000L + fips_mode_old = FIPS_mode(); ++ #else ++ fips_mode_old = EVP_default_properties_is_fips_enabled(NULL); ++ #endif + if (fips_mode_old == fips_mode) { + rc = 1; + goto EXIT; + } ++ #if OPENSSL_VERSION_NUMBER < 0x30000000L + if (!(rc = FIPS_mode_set(fips_mode))) { ++ #else ++ if (!(rc = EVP_default_properties_enable_fips(NULL, fips_mode))) { ++ #endif + /* + If OS doesn't have FIPS enabled openssl library and user sets FIPS mode + ON, It fails with proper error. But in the same time it doesn't allow to +@@ -511,7 +523,11 @@ int set_fips_mode(const uint fips_mode, char err_string[OPENSSL_ERROR_LENGTH]) { + error, setting old working FIPS mode value in the OpenSSL library. It will + allow successful cryptographic operation and will not abort the server. + */ ++ #if OPENSSL_VERSION_NUMBER < 0x30000000L + FIPS_mode_set(fips_mode_old); ++ #else ++ EVP_default_properties_enable_fips(NULL, fips_mode_old); ++ #endif + err_library = ERR_get_error(); + ERR_error_string_n(err_library, err_string, OPENSSL_ERROR_LENGTH - 1); + err_string[OPENSSL_ERROR_LENGTH - 1] = '\0'; +@@ -525,7 +541,13 @@ EXIT: + + @returns openssl current fips mode + */ ++#if OPENSSL_VERSION_NUMBER < 0x30000000L + uint get_fips_mode() { return FIPS_mode(); } ++#else ++uint get_fips_mode() { ++ return EVP_default_properties_is_fips_enabled(NULL); ++} ++#endif + + long process_tls_version(const char *tls_version) { + const char *separator = ","; diff --git a/ports/libmysql/portfile.cmake b/ports/libmysql/portfile.cmake index 525a995ee80232..5e331113133827 100644 --- a/ports/libmysql/portfile.cmake +++ b/ports/libmysql/portfile.cmake @@ -18,6 +18,7 @@ vcpkg_from_github( rename-version.patch export-cmake-targets.patch 004-added-limits-include.patch + openssl.patch ) file(REMOVE_RECURSE "${SOURCE_PATH}/include/boost_1_70_0") diff --git a/ports/libmysql/vcpkg.json b/ports/libmysql/vcpkg.json index 91fc043d171c1d..56880427eabe88 100644 --- a/ports/libmysql/vcpkg.json +++ b/ports/libmysql/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libmysql", "version": "8.0.20", - "port-version": 5, + "port-version": 6, "description": "A MySQL client library for C development", "homepage": "https://github.com/mysql/mysql-server", "supports": "!(windows & x86) & !uwp", diff --git a/ports/librabbitmq/fix-uwpwarning.patch b/ports/librabbitmq/fix-uwpwarning.patch index 89614597000aa0..97b1a3de45f153 100644 --- a/ports/librabbitmq/fix-uwpwarning.patch +++ b/ports/librabbitmq/fix-uwpwarning.patch @@ -1,8 +1,23 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b353be6..419e983 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -150,6 +150,10 @@ else() + endif() + endif() + ++if(MSVC) ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4996") ++endif() ++ + option(REGENERATE_AMQP_FRAMING "Regenerate amqp_framing.h/amqp_framing.c sources (for developer use)" OFF) + mark_as_advanced(REGENERATE_AMQP_FRAMING) + diff --git a/librabbitmq/CMakeLists.txt b/librabbitmq/CMakeLists.txt -index bd5369a..f6d703f 100644 +index d8dcd26..671840b 100644 --- a/librabbitmq/CMakeLists.txt +++ b/librabbitmq/CMakeLists.txt -@@ -113,7 +113,7 @@ set(RABBITMQ_SOURCES +@@ -108,7 +108,7 @@ set(RABBITMQ_SOURCES ${AMQP_SSL_SRCS} ) diff --git a/ports/librabbitmq/vcpkg.json b/ports/librabbitmq/vcpkg.json index 5204424d5d99de..9e8a333212428f 100644 --- a/ports/librabbitmq/vcpkg.json +++ b/ports/librabbitmq/vcpkg.json @@ -1,6 +1,7 @@ { "name": "librabbitmq", "version": "0.11.0", + "port-version": 1, "description": "A C-language AMQP client library for use with v2.0+ of the RabbitMQ broker.", "homepage": "https://github.com/alanxz/rabbitmq-c", "dependencies": [ diff --git a/ports/librtmp/CMakeLists.txt b/ports/librtmp/CMakeLists.txt index 9751f3d735212b..c9f77f16bbf63d 100644 --- a/ports/librtmp/CMakeLists.txt +++ b/ports/librtmp/CMakeLists.txt @@ -40,6 +40,7 @@ set(SRCS librtmp/amf.c if(MSVC) set(SRCS_MSVC "librtmp/librtmp.def") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4996") endif() add_library(librtmp ${SRCS} ${HEADERS} ${SRCS_MSVC}) diff --git a/ports/librtmp/vcpkg.json b/ports/librtmp/vcpkg.json index f917042067e214..90a297315348f6 100644 --- a/ports/librtmp/vcpkg.json +++ b/ports/librtmp/vcpkg.json @@ -1,7 +1,7 @@ { "name": "librtmp", "version-date": "2019-11-11", - "port-version": 2, + "port-version": 3, "description": "RTMPDump Real-Time Messaging Protocol API", "homepage": "https://rtmpdump.mplayerhq.hu", "dependencies": [ diff --git a/ports/libssh2/0003-fix-openssl3.patch b/ports/libssh2/0003-fix-openssl3.patch new file mode 100644 index 00000000000000..71aa61827c5fa4 --- /dev/null +++ b/ports/libssh2/0003-fix-openssl3.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/max_warnings.cmake b/cmake/max_warnings.cmake +index b176d30..e986461 100644 +--- a/cmake/max_warnings.cmake ++++ b/cmake/max_warnings.cmake +@@ -13,6 +13,8 @@ if(MSVC) + + # Disable broken warnings + add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE) ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4996") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4996") + elseif(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX) + if(NOT CMAKE_CXX_FLAGS MATCHES "-Wall") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") diff --git a/ports/libssh2/portfile.cmake b/ports/libssh2/portfile.cmake index 71722356e5296b..d81f25812987fe 100644 --- a/ports/libssh2/portfile.cmake +++ b/ports/libssh2/portfile.cmake @@ -7,6 +7,7 @@ vcpkg_from_github( PATCHES 0001-Fix-UWP.patch 0002-fix-macros.patch + 0003-fix-openssl3.patch ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS diff --git a/ports/libssh2/vcpkg.json b/ports/libssh2/vcpkg.json index 9c3d2806601c33..157bf7243c553e 100644 --- a/ports/libssh2/vcpkg.json +++ b/ports/libssh2/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libssh2", "version": "1.10.0", - "port-version": 3, + "port-version": 4, "description": "libssh2 is a client-side C library implementing the SSH2 protocol.", "homepage": "https://www.libssh2.org", "license": "BSD-3-Clause", diff --git a/ports/libu2f-server/CMakeLists.txt b/ports/libu2f-server/CMakeLists.txt index 5e1f50e521ee46..8bff872434f4d3 100644 --- a/ports/libu2f-server/CMakeLists.txt +++ b/ports/libu2f-server/CMakeLists.txt @@ -9,6 +9,7 @@ add_library(libu2f-server ${LIBU2F_SERVER_SOURCE}) target_include_directories(libu2f-server PUBLIC $ $) target_compile_definitions(libu2f-server PRIVATE _CRT_SECURE_NO_WARNINGS _CRT_NONSTDC_NO_DEPRECATE) +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4996") find_package(json-c CONFIG REQUIRED) find_package(OpenSSL REQUIRED) diff --git a/ports/libu2f-server/vcpkg.json b/ports/libu2f-server/vcpkg.json index b66f13cee88369..aade166cbf8043 100644 --- a/ports/libu2f-server/vcpkg.json +++ b/ports/libu2f-server/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libu2f-server", - "version-string": "1.1.0", - "port-version": 3, + "version": "1.1.0", + "port-version": 4, "description": "Yubico Universal 2nd Factor (U2F) Server C Library", "homepage": "https://developers.yubico.com/libu2f-server/", "supports": "(x86 | x64) & windows", diff --git a/ports/libwebsockets/fix-build-error.patch b/ports/libwebsockets/fix-build-error.patch index 0bab319af44428..b8590d21237e1a 100644 --- a/ports/libwebsockets/fix-build-error.patch +++ b/ports/libwebsockets/fix-build-error.patch @@ -19,7 +19,7 @@ index 1e737e5..75534c1 100644 add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE) # Fail the build if any warnings - add_compile_options(/W3 /WX) -+ add_compile_options(/W3 /WX /wd4142 /wd4267) ++ add_compile_options(/W3 /WX /wd4142 /wd4267 /wd4996) endif(MSVC) if (MINGW) diff --git a/ports/libwebsockets/vcpkg.json b/ports/libwebsockets/vcpkg.json index f86174727d501c..2e4b9582505e8f 100644 --- a/ports/libwebsockets/vcpkg.json +++ b/ports/libwebsockets/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libwebsockets", "version-semver": "4.3.0", - "port-version": 2, + "port-version": 3, "description": "Libwebsockets is a lightweight pure C library built to use minimal CPU and memory resources, and provide fast throughput in both directions as client or server.", "homepage": "https://github.com/warmcat/libwebsockets", "supports": "!uwp", diff --git a/ports/luasec/vcpkg.json b/ports/luasec/vcpkg.json index 4880e8bfa2a5c1..76d24caaa4455c 100644 --- a/ports/luasec/vcpkg.json +++ b/ports/luasec/vcpkg.json @@ -1,9 +1,11 @@ { "name": "luasec", "version": "1.0.1", + "port-version": 1, "maintainers": "Stephen Baker ", "description": "LuaSec depends on OpenSSL, and integrates with LuaSocket to make it easy to add secure connections to any Lua applications or scripts.", "homepage": "https://github.com/brunoos/luasec", + "supports": "!(windows & static)", "dependencies": [ "lua", "luasocket", diff --git a/ports/open62541/openssl.patch b/ports/open62541/openssl.patch new file mode 100644 index 00000000000000..cc68eb570c38ac --- /dev/null +++ b/ports/open62541/openssl.patch @@ -0,0 +1,22 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9184b943..bd9203f7 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -526,7 +526,7 @@ if(NOT UA_FORCE_CPP AND (CMAKE_COMPILER_IS_GNUCC OR "x${CMAKE_C_COMPILER_ID}" ST + check_add_cc_flag("-Wall") # Warnings + check_add_cc_flag("-Wextra") # More warnings + check_add_cc_flag("-Wpedantic") # Standard compliance +- check_add_cc_flag("-Werror") # All warnings are errors ++ #check_add_cc_flag("-Werror") # All warnings are errors + + check_add_cc_flag("-Wno-static-in-inline") # Clang doesn't like the use of static inline methods inside static inline methods + check_add_cc_flag("-Wno-overlength-strings") # May happen in the nodeset compiler when complex values are directly encoded +@@ -659,7 +659,7 @@ if(APPLE) + endif() + + if(MSVC) +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W3 /WX /w44996") # Compiler warnings, error on warning ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W3 /WX /w44996 /wd4090") # Compiler warnings, error on warning + + if(UA_MSVC_FORCE_STATIC_CRT AND NOT BUILD_SHARED_LIBS) + set(CompilerFlags CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE CMAKE_C_FLAGS diff --git a/ports/open62541/portfile.cmake b/ports/open62541/portfile.cmake index b035be3f521cbc..a7536e7586492c 100644 --- a/ports/open62541/portfile.cmake +++ b/ports/open62541/portfile.cmake @@ -6,6 +6,8 @@ vcpkg_from_github( REF "${VERSION}" SHA512 ffcc697901ec978fb9d1f8996f8a4c5114c98a0ec19206cac95d1a84f8d0fcbe38bf73e88f1df59d53bc6be481102aa2f2a6a0efa29797e7ce11123bd23131c2 HEAD_REF master + PATCHES + openssl.patch ) vcpkg_check_features( diff --git a/ports/open62541/vcpkg.json b/ports/open62541/vcpkg.json index a4f545428391a6..59c666d5f570bc 100644 --- a/ports/open62541/vcpkg.json +++ b/ports/open62541/vcpkg.json @@ -1,6 +1,7 @@ { "name": "open62541", "version": "1.2.3", + "port-version": 1, "description": "open62541 is an open source C (C99) implementation of OPC UA licensed under the Mozilla Public License v2.0.", "homepage": "https://open62541.org", "license": "MPL-2.0", diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index e94e7a83f02d38..ff65db49b1460f 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -1,13 +1,14 @@ -if(EXISTS "${CURRENT_INSTALLED_DIR}/include/openssl/ssl.h") +if(EXISTS "${CURRENT_INSTALLED_DIR}/share/libressl/copyright" + OR EXISTS "${CURRENT_INSTALLED_DIR}/share/boringssl/copyright") message(FATAL_ERROR "Can't build openssl if libressl/boringssl is installed. Please remove libressl/boringssl, and try install openssl again if you need it.") endif() -set(OPENSSL_VERSION 1.1.1n) +set(OPENSSL_VERSION 3.0.2) vcpkg_download_distfile( ARCHIVE - URLS "https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz" "https://www.openssl.org/source/old/1.1.1/openssl-${OPENSSL_VERSION}.tar.gz" + URLS "https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz" FILENAME "openssl-${OPENSSL_VERSION}.tar.gz" - SHA512 1937796736613dcf4105a54e42ecb61f95a1cea74677156f9459aea0f2c95159359e766089632bf364ee6b0d28d661eb9957bce8fecc9d2436378d8d79e8d0a4 + SHA512 f986850d5be908b4d6b5fd7091bc4652d7378c9bccebfbc5becd7753843c04c1eb61a1749c432139d263dfac33df0b1f6c773664b485cad47542266823a4eb03 ) vcpkg_find_acquire_program(PERL) diff --git a/ports/openssl/unix/portfile.cmake b/ports/openssl/unix/portfile.cmake index 7a04ae7c9dc3d1..c1c2b0ecbd940f 100644 --- a/ports/openssl/unix/portfile.cmake +++ b/ports/openssl/unix/portfile.cmake @@ -6,8 +6,8 @@ vcpkg_extract_source_archive_ex( if(CMAKE_HOST_WIN32) vcpkg_acquire_msys(MSYS_ROOT PACKAGES make perl) - set(MAKE ${MSYS_ROOT}/usr/bin/make.exe) - set(PERL ${MSYS_ROOT}/usr/bin/perl.exe) + set(MAKE "${MSYS_ROOT}/usr/bin/make.exe") + set(PERL "${MSYS_ROOT}/usr/bin/perl.exe") else() find_program(MAKE make) if(NOT MAKE) @@ -16,7 +16,7 @@ else() endif() vcpkg_cmake_configure( - SOURCE_PATH ${CMAKE_CURRENT_LIST_DIR} + SOURCE_PATH "${CMAKE_CURRENT_LIST_DIR}" OPTIONS -DSOURCE_PATH=${MASTER_COPY_SOURCE_PATH} -DPERL=${PERL} @@ -27,12 +27,12 @@ vcpkg_cmake_configure( vcpkg_cmake_install() vcpkg_fixup_pkgconfig() -file(GLOB HEADERS ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*/include/openssl/*.h) +file(GLOB HEADERS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*/include/openssl/*.h") set(RESOLVED_HEADERS) foreach(HEADER ${HEADERS}) get_filename_component(X "${HEADER}" REALPATH) list(APPEND RESOLVED_HEADERS "${X}") endforeach() -file(INSTALL ${RESOLVED_HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include/openssl) -file(INSTALL ${MASTER_COPY_SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL ${RESOLVED_HEADERS} DESTINATION "${CURRENT_PACKAGES_DIR}/include/openssl") +file(INSTALL "${MASTER_COPY_SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/openssl/uwp/EnableUWPSupport.patch b/ports/openssl/uwp/EnableUWPSupport.patch deleted file mode 100644 index fe7837445985cf..00000000000000 --- a/ports/openssl/uwp/EnableUWPSupport.patch +++ /dev/null @@ -1,170 +0,0 @@ -diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf -index 3c4299d264..99fcb1f713 100644 ---- a/Configurations/10-main.conf -+++ b/Configurations/10-main.conf -@@ -1287,7 +1287,7 @@ my %targets = ( - }, - "VC-WIN64I" => { - inherit_from => [ "VC-WIN64-common", asm("ia64_asm"), -- sub { $disabled{shared} ? () : "ia64_uplink" } ], -+ sub { $disabled{uplink} ? () : "ia64_uplink" } ], - AS => "ias", - ASFLAGS => "-d debug", - asoutflag => "-o ", -@@ -1299,7 +1299,7 @@ my %targets = ( - }, - "VC-WIN64A" => { - inherit_from => [ "VC-WIN64-common", asm("x86_64_asm"), -- sub { $disabled{shared} ? () : "x86_64_uplink" } ], -+ sub { $disabled{uplink} ? () : "x86_64_uplink" } ], - AS => sub { vc_win64a_info()->{AS} }, - ASFLAGS => sub { vc_win64a_info()->{ASFLAGS} }, - asoutflag => sub { vc_win64a_info()->{asoutflag} }, -@@ -1312,7 +1312,7 @@ my %targets = ( - }, - "VC-WIN32" => { - inherit_from => [ "VC-noCE-common", asm("x86_asm"), -- sub { $disabled{shared} ? () : "uplink_common" } ], -+ sub { $disabled{uplink} ? () : "uplink_common" } ], - AS => sub { vc_win32_info()->{AS} }, - ASFLAGS => sub { vc_win32_info()->{ASFLAGS} }, - asoutflag => sub { vc_win32_info()->{asoutflag} }, -@@ -1374,7 +1374,7 @@ my %targets = ( - #### MinGW - "mingw" => { - inherit_from => [ "BASE_unix", asm("x86_asm"), -- sub { $disabled{shared} ? () : "x86_uplink" } ], -+ sub { $disabled{uplink} ? () : "x86_uplink" } ], - CC => "gcc", - CFLAGS => picker(default => "-Wall", - debug => "-g -O0", -diff --git a/Configurations/50-win-onecore.conf b/Configurations/50-win-onecore.conf -index d478f42b0f..e0fb70daca 100644 ---- a/Configurations/50-win-onecore.conf -+++ b/Configurations/50-win-onecore.conf -@@ -1,3 +1,4 @@ -+## -*- mode: perl; -*- - # Windows OneCore targets. - # - # OneCore is new API stability "contract" that transcends Desktop, IoT and -@@ -10,6 +11,25 @@ - # TODO: extend error handling to use ETW based eventing - # (Or rework whole error messaging) - -+my $UWP_info = {}; -+sub UWP_info { -+ unless (%$UWP_info) { -+ my $SDKver = `pwsh.exe -Command \"& {\$(Get-Item \\\"hklm:\\SOFTWARE\\WOW6432Node\\Microsoft\\Microsoft SDKs\\Windows\\\").GetValue(\\\"CurrentVersion\\\")}\"`; -+ $SDKver =~ s|\R$||; -+ my @SDKver_split = split(/\./, $SDKver); -+ # SDK version older than 10.0.17763 don't support our ASM builds -+ if ($SDKver_split[0] < 10 -+ || ($SDKver_split[0] == 10 -+ && $SDKver_split[1] == 0 -+ && $SDKver_split[2] < 17763)) { -+ $UWP_info->{disable} = [ 'asm' ]; -+ } else { -+ $UWP_info->{disable} = [ ]; -+ } -+ } -+ return $UWP_info; -+} -+ - my %targets = ( - "VC-WIN32-ONECORE" => { - inherit_from => [ "VC-WIN32" ], -@@ -61,4 +81,57 @@ my %targets = ( - ex_libs => "onecore.lib", - multilib => "-arm64", - }, -+ -+ # Universal Windows Platform (UWP) App Support -+ -+ # TODO -+ # -+ # The 'disable' attribute should have 'uplink'. -+ # however, these are checked in some 'inherit_from', which is processed -+ # very early, before the 'disable' attributes are seen. -+ # This is a problem that needs to be resolved in Configure first. -+ # -+ # But if you want to build library with Windows 10 Version 1809 SDK or -+ # earlier, the 'disable' attribute should also have 'asm'. -+ -+ "VC-WIN32-UWP" => { -+ inherit_from => [ "VC-WIN32-ONECORE" ], -+ lflags => add("/APPCONTAINER"), -+ defines => add("WINAPI_FAMILY=WINAPI_FAMILY_APP", -+ "_WIN32_WINNT=0x0A00"), -+ dso_scheme => "", -+ disable => sub { [ 'ui-console', 'stdio', 'async', 'uplink', -+ @{ UWP_info()->{disable} } ] }, -+ ex_libs => "WindowsApp.lib", -+ }, -+ "VC-WIN64A-UWP" => { -+ inherit_from => [ "VC-WIN64A-ONECORE" ], -+ lflags => add("/APPCONTAINER"), -+ defines => add("WINAPI_FAMILY=WINAPI_FAMILY_APP", -+ "_WIN32_WINNT=0x0A00"), -+ dso_scheme => "", -+ disable => sub { [ 'ui-console', 'stdio', 'async', 'uplink', -+ @{ UWP_info()->{disable} } ] }, -+ ex_libs => "WindowsApp.lib", -+ }, -+ "VC-WIN32-ARM-UWP" => { -+ inherit_from => [ "VC-WIN32-ARM" ], -+ lflags => add("/APPCONTAINER"), -+ defines => add("WINAPI_FAMILY=WINAPI_FAMILY_APP", -+ "_WIN32_WINNT=0x0A00"), -+ dso_scheme => "", -+ disable => sub { [ 'ui-console', 'stdio', 'async', 'uplink', -+ @{ UWP_info()->{disable} } ] }, -+ ex_libs => "WindowsApp.lib", -+ }, -+ "VC-WIN64-ARM-UWP" => { -+ inherit_from => [ "VC-WIN64-ARM" ], -+ lflags => add("/APPCONTAINER"), -+ defines => add("WINAPI_FAMILY=WINAPI_FAMILY_APP", -+ "_WIN32_WINNT=0x0A00"), -+ dso_scheme => "", -+ disable => sub { [ 'ui-console', 'stdio', 'async', 'uplink', -+ @{ UWP_info()->{disable} } ] }, -+ ex_libs => "WindowsApp.lib", -+ }, - ); -diff --git a/Configure b/Configure -index 5a699836f3..de45f1e299 100755 ---- a/Configure -+++ b/Configure -@@ -407,6 +408,7 @@ my @disablables = ( - "ubsan", - "ui-console", - "unit-test", -+ "uplink", - "whirlpool", - "weak-ssl-ciphers", - "zlib", -@@ -491,8 +493,8 @@ my @disable_cascades = ( - - # Without position independent code, there can be no shared libraries or DSOs - "pic" => [ "shared" ], -- "shared" => [ "dynamic-engine" ], -+ "shared" => [ "dynamic-engine", "uplink" ], - "dso" => [ "dynamic-engine" ], - "engine" => [ "afalgeng", "devcryptoeng" ], - - # no-autoalginit is only useful when building non-shared -diff --git a/INSTALL b/INSTALL -index 2119cbae9e..ee54e8c215 100644 ---- a/INSTALL -+++ b/INSTALL -@@ -560,6 +560,10 @@ - likely to complement configuration command line with - suitable compiler-specific option. - -+ no-uplink -+ Don't build support for UPLINK interface. -+ -+ - no- - Don't build support for negotiating the specified SSL/TLS - protocol (one of ssl, ssl3, tls, tls1, tls1_1, tls1_2, diff --git a/ports/openssl/uwp/portfile.cmake b/ports/openssl/uwp/portfile.cmake index 9414634fe2057d..6283806314f368 100644 --- a/ports/openssl/uwp/portfile.cmake +++ b/ports/openssl/uwp/portfile.cmake @@ -10,8 +10,6 @@ endif() vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} - PATCHES - uwp/EnableUWPSupport.patch ) vcpkg_find_acquire_program(NASM) @@ -44,8 +42,7 @@ endif() set(OPENSSL_MAKEFILE "makefile") -file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) - +file(REMOVE_RECURSE "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel" "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") @@ -71,7 +68,7 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") message(STATUS "Build ${TARGET_TRIPLET}-rel") # Openssl's buildsystem has a race condition which will cause JOM to fail at some point. # This is ok; we just do as much work as we can in parallel first, then follow up with a single-threaded build. - make_directory(${SOURCE_PATH_RELEASE}/inc32/openssl) + make_directory("${SOURCE_PATH_RELEASE}/inc32/openssl") execute_process( COMMAND "${JOM}" -k -j ${VCPKG_CONCURRENCY} -f "${OPENSSL_MAKEFILE}" build_libs WORKING_DIRECTORY "${SOURCE_PATH_RELEASE}" @@ -160,4 +157,4 @@ file(WRITE "${CURRENT_PACKAGES_DIR}/include/openssl/rand.h" "${_contents}") vcpkg_copy_pdbs() -file(INSTALL "${SOURCE_PATH}/LICENSE" 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/openssl/vcpkg-cmake-wrapper.cmake.in b/ports/openssl/vcpkg-cmake-wrapper.cmake.in index 4a5ee893a2fe28..ee16a896b74eef 100644 --- a/ports/openssl/vcpkg-cmake-wrapper.cmake.in +++ b/ports/openssl/vcpkg-cmake-wrapper.cmake.in @@ -3,6 +3,10 @@ cmake_policy(SET CMP0012 NEW) cmake_policy(SET CMP0054 NEW) cmake_policy(SET CMP0057 NEW) +set(OPENSSL_VERSION_MAJOR 3) +set(OPENSSL_VERSION_MINOR 0) +set(OPENSSL_VERSION_FIX 2) + if(OPENSSL_USE_STATIC_LIBS) if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "dynamic") message(WARNING "OPENSSL_USE_STATIC_LIBS is set, but vcpkg port openssl was built with dynamic linkage") diff --git a/ports/openssl/vcpkg.json b/ports/openssl/vcpkg.json index beb5807743e1ae..8f6c3067f897ba 100644 --- a/ports/openssl/vcpkg.json +++ b/ports/openssl/vcpkg.json @@ -1,7 +1,6 @@ { "name": "openssl", - "version-string": "1.1.1n", - "port-version": 1, + "version": "3.0.2", "description": "OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library.", "homepage": "https://www.openssl.org", "license": "OpenSSL", diff --git a/ports/openssl/windows/portfile.cmake b/ports/openssl/windows/portfile.cmake index 5a0dec0b730ac0..e5356959afe52c 100644 --- a/ports/openssl/windows/portfile.cmake +++ b/ports/openssl/windows/portfile.cmake @@ -78,8 +78,8 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") execute_process( COMMAND "${JOM}" -k -j "${VCPKG_CONCURRENCY}" -f "${OPENSSL_MAKEFILE}" WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} - OUTPUT_FILE ${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-out.log - ERROR_FILE ${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-err.log + OUTPUT_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-out.log" + ERROR_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-err.log" ) vcpkg_execute_required_process( COMMAND "${JOM}" -j 1 -f "${OPENSSL_MAKEFILE}" install_sw install_ssldirs @@ -111,29 +111,39 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") message(STATUS "Configure ${TARGET_TRIPLET}-dbg done") message(STATUS "Build ${TARGET_TRIPLET}-dbg") - make_directory(${SOURCE_PATH_DEBUG}/inc32/openssl) + make_directory("${SOURCE_PATH_DEBUG}/inc32/openssl") execute_process( COMMAND "${JOM}" -k -j "${VCPKG_CONCURRENCY}" -f "${OPENSSL_MAKEFILE}" WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} - OUTPUT_FILE ${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-out.log - ERROR_FILE ${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-err.log + OUTPUT_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-out.log" + ERROR_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-err.log" ) vcpkg_execute_required_process( COMMAND "${JOM}" -j 1 -f "${OPENSSL_MAKEFILE}" install_sw install_ssldirs WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} LOGNAME build-${TARGET_TRIPLET}-dbg-1) - - message(STATUS "Build ${TARGET_TRIPLET}-dbg done") + + message(STATUS "Build ${TARGET_TRIPLET}-dbg done") + + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/ossl-modules/legacy.pdb" "${CURRENT_PACKAGES_DIR}/debug/bin/legacy.pdb") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/ossl-modules/legacy.pdb" "${CURRENT_PACKAGES_DIR}/bin/legacy.pdb") endif() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/certs") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/private") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/engines-1_1") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/engines-3") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/certs") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/engines-1_1") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/engines-3") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/private") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/ossl-modules/legacy.dll" "${CURRENT_PACKAGES_DIR}/debug/bin/legacy.dll") +file(RENAME "${CURRENT_PACKAGES_DIR}/lib/ossl-modules/legacy.dll" "${CURRENT_PACKAGES_DIR}/bin/legacy.dll") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/ossl-modules") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/ossl-modules") + file(REMOVE "${CURRENT_PACKAGES_DIR}/ct_log_list.cnf" "${CURRENT_PACKAGES_DIR}/ct_log_list.cnf.dist" @@ -169,4 +179,6 @@ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/openssl/rand.h" vcpkg_copy_pdbs() -file(INSTALL "${SOURCE_PATH}/LICENSE" 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/qpid-proton/fix-openssl3.patch b/ports/qpid-proton/fix-openssl3.patch new file mode 100644 index 00000000000000..bf33ee53d99c04 --- /dev/null +++ b/ports/qpid-proton/fix-openssl3.patch @@ -0,0 +1,22 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index d75dfdb6..7089c406 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -177,7 +177,7 @@ if (CMAKE_COMPILER_IS_GNUCC) + endif (ENABLE_WARNING_ERROR) + set (COMPILE_WARNING_FLAGS "${WERROR} -Wall -pedantic-errors") + set (CXX_WARNING_FLAGS "${COMPILE_WARNING_FLAGS}") +- set (COMPILE_WARNING_FLAGS "${COMPILE_WARNING_FLAGS} -Wstrict-prototypes -Wvla -Wsign-compare -Wwrite-strings") ++ set (COMPILE_WARNING_FLAGS "${COMPILE_WARNING_FLAGS} -Wno-deprecated-declarations -Wstrict-prototypes -Wvla -Wsign-compare -Wwrite-strings") + + if (ENABLE_UNDEFINED_ERROR) + set (CATCH_UNDEFINED "-Wl,--no-undefined") +@@ -202,7 +202,7 @@ if (CMAKE_C_COMPILER_ID MATCHES "Clang") + endif (ENABLE_WARNING_ERROR) + # TODO aconway 2016-01-06: we should be able to clean up the code and turn on + # some of these warnings. +- set (CXX_WARNING_FLAGS "${COMPILE_WARNING_FLAGS} -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-float-equal -Wno-padded -Wno-sign-conversion -Wno-switch-enum -Wno-weak-vtables -Wno-exit-time-destructors -Wno-global-constructors -Wno-shorten-64-to-32 -Wno-documentation -Wno-documentation-unknown-command -Wno-old-style-cast -Wno-missing-noreturn") ++ set (CXX_WARNING_FLAGS "${COMPILE_WARNING_FLAGS} -Wno-deprecated-declarations -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-float-equal -Wno-padded -Wno-sign-conversion -Wno-switch-enum -Wno-weak-vtables -Wno-exit-time-destructors -Wno-global-constructors -Wno-shorten-64-to-32 -Wno-documentation -Wno-documentation-unknown-command -Wno-old-style-cast -Wno-missing-noreturn") + endif() + + if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") diff --git a/ports/qpid-proton/portfile.cmake b/ports/qpid-proton/portfile.cmake index f82649d132ac94..4df813a93a5e5a 100644 --- a/ports/qpid-proton/portfile.cmake +++ b/ports/qpid-proton/portfile.cmake @@ -8,6 +8,8 @@ vcpkg_from_github( REF dc244b1f7e886883a2bb416407f42ba55d0f5f42 # 0.32.0 SHA512 19f191dd206fd43a8f5b8db95f6ada57bd60b93eb907cf32f463c23cfe8c5f4914c6f4750ebde50c970387fb62baf4451279803eeb000bc8bb5c200692e5d1d7 HEAD_REF next + PATCHES + fix-openssl3.patch ) vcpkg_cmake_configure( diff --git a/ports/qpid-proton/vcpkg.json b/ports/qpid-proton/vcpkg.json index 30219802bdcea2..3dd0dcff0496f9 100644 --- a/ports/qpid-proton/vcpkg.json +++ b/ports/qpid-proton/vcpkg.json @@ -1,7 +1,7 @@ { "name": "qpid-proton", "version": "0.32.0", - "port-version": 3, + "port-version": 4, "description": "Qpid Proton is a high-performance, lightweight messaging library.", "homepage": "https://github.com/apache/qpid-proton", "dependencies": [ diff --git a/ports/uthenticode/openssl.patch b/ports/uthenticode/openssl.patch new file mode 100644 index 00000000000000..e447c1fade98af --- /dev/null +++ b/ports/uthenticode/openssl.patch @@ -0,0 +1,72 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 75b82ee..47bed29 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -3,11 +3,7 @@ cmake_minimum_required(VERSION 3.10 FATAL_ERROR) + project(uthenticode) + + find_package(pe-parse REQUIRED) +-find_package( +- OpenSSL 1.1 +- COMPONENTS Crypto +- REQUIRED +-) ++find_package(OpenSSL REQUIRED) + + add_library("${PROJECT_NAME}" uthenticode.cpp) + +@@ -38,7 +34,7 @@ else () + target_link_libraries("${PROJECT_NAME}" PUBLIC pe-parse::pe-parser-library) + endif () + +-target_link_libraries("${PROJECT_NAME}" PUBLIC OpenSSL::Crypto) ++target_link_libraries("${PROJECT_NAME}" PUBLIC OpenSSL::SSL OpenSSL::Crypto) + + install( + TARGETS "${PROJECT_NAME}" +diff --git a/src/include/uthenticode.h b/src/include/uthenticode.h +index 8422cc3..938d8b8 100644 +--- a/src/include/uthenticode.h ++++ b/src/include/uthenticode.h +@@ -48,6 +48,7 @@ DECLARE_ASN1_FUNCTIONS(Authenticode_SpcIndirectDataContent) + * So we wrap it here for use with unique_ptr. + */ + void OpenSSL_free(void *ptr); ++void SK_X509_free(stack_st_X509 *ptr); + + /* Convenient self-releasing aliases for libcrypto and custom ASN.1 types. + */ +@@ -56,7 +57,7 @@ using ASN1_OBJECT_ptr = std::unique_ptr; + using OpenSSL_ptr = std::unique_ptr; + using BN_ptr = std::unique_ptr; +-using STACK_OF_X509_ptr = std::unique_ptr; ++using STACK_OF_X509_ptr = std::unique_ptr; + + using SectionList = std::vector; + +diff --git a/src/uthenticode.cpp b/src/uthenticode.cpp +index b1be0bc..7043589 100644 +--- a/src/uthenticode.cpp ++++ b/src/uthenticode.cpp +@@ -39,6 +39,11 @@ IMPLEMENT_ASN1_FUNCTIONS(Authenticode_SpcIndirectDataContent) + void OpenSSL_free(void *ptr) { + OPENSSL_free(ptr); + } ++ ++void SK_X509_free(stack_st_X509 *ptr) { ++ sk_X509_free(ptr); ++} ++ + // clang-format on + } // namespace impl + +@@ -252,7 +257,7 @@ std::vector SignedData::get_signers() const { + if (signers_stack_ptr == nullptr) { + return {}; + } +- auto signers_stack = impl::STACK_OF_X509_ptr(signers_stack_ptr, sk_X509_free); ++ auto signers_stack = impl::STACK_OF_X509_ptr(signers_stack_ptr, impl::SK_X509_free); + + std::vector signers; + for (auto i = 0; i < sk_X509_num(signers_stack.get()); ++i) { diff --git a/ports/uthenticode/portfile.cmake b/ports/uthenticode/portfile.cmake index e97f058c53dfa4..74a6a295753585 100644 --- a/ports/uthenticode/portfile.cmake +++ b/ports/uthenticode/portfile.cmake @@ -4,6 +4,8 @@ vcpkg_from_github( REF v1.0.6 SHA512 6C9C4DD9E1FE7C329E10BC39E41927C8B82DD004275A88385C691AD85EF4079EBE2922083D5252019B8B25CC540F48E544B42B8178F256AE987D6B677713B063 HEAD_REF master + PATCHES + openssl.patch ) # compatibility fix for newer versions of pe-parse diff --git a/ports/uthenticode/vcpkg.json b/ports/uthenticode/vcpkg.json index 0fb35e592e493b..13ece8b48f0f7c 100644 --- a/ports/uthenticode/vcpkg.json +++ b/ports/uthenticode/vcpkg.json @@ -1,7 +1,7 @@ { "name": "uthenticode", "version": "1.0.6", - "port-version": 1, + "port-version": 2, "description": "A cross-platform library for verifying Authenticode signatures", "homepage": "https://github.com/trailofbits/uthenticode", "supports": "!uwp", diff --git a/versions/a-/aws-sdk-cpp.json b/versions/a-/aws-sdk-cpp.json index 6edd85b84f1108..e25338628442fe 100644 --- a/versions/a-/aws-sdk-cpp.json +++ b/versions/a-/aws-sdk-cpp.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "c7d142ac1a2667f6ba9650cab2505a71ffaddbd3", + "version": "1.9.220", + "port-version": 1 + }, { "git-tree": "7fc21526c4465a7e399683055a6df0096cad218e", "version": "1.9.220", diff --git a/versions/a-/azure-c-shared-utility.json b/versions/a-/azure-c-shared-utility.json index aab35215bede94..ea11d2ee568e72 100644 --- a/versions/a-/azure-c-shared-utility.json +++ b/versions/a-/azure-c-shared-utility.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "ec45ec6a9a5b28ecab27857508355956d151a814", + "version-date": "2022-01-21", + "port-version": 3 + }, { "git-tree": "42be8335b113cba6ca88b9f9789b29fc7be280b4", "version-date": "2022-01-21", diff --git a/versions/baseline.json b/versions/baseline.json index b512beb0c5cc34..4ad7e21acc5fe3 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -306,7 +306,7 @@ }, "aws-sdk-cpp": { "baseline": "1.9.220", - "port-version": 0 + "port-version": 1 }, "azmq": { "baseline": "2020-03-03", @@ -314,7 +314,7 @@ }, "azure-c-shared-utility": { "baseline": "2022-01-21", - "port-version": 2 + "port-version": 3 }, "azure-core-cpp": { "baseline": "1.5.0", @@ -2798,7 +2798,7 @@ }, "idevicerestore": { "baseline": "1.0.12", - "port-version": 6 + "port-version": 7 }, "if97": { "baseline": "2.1.2", @@ -3458,7 +3458,7 @@ }, "libdatachannel": { "baseline": "0.16.4", - "port-version": 0 + "port-version": 1 }, "libdatrie": { "baseline": "0.2.13", @@ -3778,7 +3778,7 @@ }, "libmysql": { "baseline": "8.0.20", - "port-version": 5 + "port-version": 6 }, "libnice": { "baseline": "0.1.18", @@ -3902,7 +3902,7 @@ }, "librabbitmq": { "baseline": "0.11.0", - "port-version": 0 + "port-version": 1 }, "libraqm": { "baseline": "0.9.0", @@ -3930,7 +3930,7 @@ }, "librtmp": { "baseline": "2019-11-11", - "port-version": 2 + "port-version": 3 }, "librttopo": { "baseline": "1.1.0", @@ -4022,7 +4022,7 @@ }, "libssh2": { "baseline": "1.10.0", - "port-version": 3 + "port-version": 4 }, "libstemmer": { "baseline": "2017-9", @@ -4070,7 +4070,7 @@ }, "libu2f-server": { "baseline": "1.1.0", - "port-version": 3 + "port-version": 4 }, "libudis86": { "baseline": "2018-01-28-56ff6c87", @@ -4150,7 +4150,7 @@ }, "libwebsockets": { "baseline": "4.3.0", - "port-version": 2 + "port-version": 3 }, "libxdiff": { "baseline": "0.23", @@ -4286,7 +4286,7 @@ }, "luasec": { "baseline": "1.0.1", - "port-version": 0 + "port-version": 1 }, "luasocket": { "baseline": "2020-09-14", @@ -5022,7 +5022,7 @@ }, "open62541": { "baseline": "1.2.3", - "port-version": 0 + "port-version": 1 }, "openal-soft": { "baseline": "1.21.1", @@ -5137,8 +5137,8 @@ "port-version": 1 }, "openssl": { - "baseline": "1.1.1n", - "port-version": 1 + "baseline": "3.0.2", + "port-version": 0 }, "openssl-unix": { "baseline": "1.1.1h", @@ -5630,7 +5630,7 @@ }, "qpid-proton": { "baseline": "0.32.0", - "port-version": 3 + "port-version": 4 }, "qscintilla": { "baseline": "2.12.0", @@ -7222,7 +7222,7 @@ }, "uthenticode": { "baseline": "1.0.6", - "port-version": 1 + "port-version": 2 }, "uvatlas": { "baseline": "2022-03-24", diff --git a/versions/i-/idevicerestore.json b/versions/i-/idevicerestore.json index 90f22b214c94c5..1db7a148e83b93 100644 --- a/versions/i-/idevicerestore.json +++ b/versions/i-/idevicerestore.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "0269d10da20f4f0b8d1317f21b71a7e8cac0ff16", + "version": "1.0.12", + "port-version": 7 + }, { "git-tree": "020019d72f9fa90089c2f406edb5938294f2dc3d", "version-string": "1.0.12", diff --git a/versions/l-/libdatachannel.json b/versions/l-/libdatachannel.json index 2027825e4a7276..17279c4e6fd022 100644 --- a/versions/l-/libdatachannel.json +++ b/versions/l-/libdatachannel.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "61f3e1e569991d144cb32b0f21c2b1e3baab78a2", + "version-semver": "0.16.4", + "port-version": 1 + }, { "git-tree": "a9f98aa660deca99a714ae3fc0e7a356c5d74cc8", "version-semver": "0.16.4", diff --git a/versions/l-/libmysql.json b/versions/l-/libmysql.json index 113bab4268981a..c1a4d97c6ff376 100644 --- a/versions/l-/libmysql.json +++ b/versions/l-/libmysql.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "2bc452d4f5cd5392799424e1bb920175f979dd84", + "version": "8.0.20", + "port-version": 6 + }, { "git-tree": "d19f8e799e7eb9dc6c24968d1fa8c31debc38b62", "version": "8.0.20", diff --git a/versions/l-/librabbitmq.json b/versions/l-/librabbitmq.json index 84f5a5de2b2687..1184cdf7905eb2 100644 --- a/versions/l-/librabbitmq.json +++ b/versions/l-/librabbitmq.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "3131805ba3b7940db19df08d930a13d2fc1c707c", + "version": "0.11.0", + "port-version": 1 + }, { "git-tree": "cfed3947ffb960b8b8bd399093aa21f5981464b7", "version": "0.11.0", diff --git a/versions/l-/librtmp.json b/versions/l-/librtmp.json index 72021cfddbcffd..6f0544b2591129 100644 --- a/versions/l-/librtmp.json +++ b/versions/l-/librtmp.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "337fb3f8ed2cb44c9ed06d7dc8b00356e077aa40", + "version-date": "2019-11-11", + "port-version": 3 + }, { "git-tree": "f3b156fff5f461b63a2665c4ec4a9a805e5a5447", "version-date": "2019-11-11", diff --git a/versions/l-/libssh2.json b/versions/l-/libssh2.json index 4cc59c7e0bf9a0..821615909a1778 100644 --- a/versions/l-/libssh2.json +++ b/versions/l-/libssh2.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "5d6f965bcf911a4750731aad9785a4b40686a2b3", + "version": "1.10.0", + "port-version": 4 + }, { "git-tree": "d1a340be6b7c2a25f42cf4de44c836a577477bfc", "version": "1.10.0", diff --git a/versions/l-/libu2f-server.json b/versions/l-/libu2f-server.json index cb3a974df37f3e..19fb01c5f7067b 100644 --- a/versions/l-/libu2f-server.json +++ b/versions/l-/libu2f-server.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "cb5d1d70d0e3baab221910b12b33e9e34fd383f2", + "version": "1.1.0", + "port-version": 4 + }, { "git-tree": "1939b985161f406db50f8e455a5b7c4ada800596", "version-string": "1.1.0", diff --git a/versions/l-/libwebsockets.json b/versions/l-/libwebsockets.json index ddafd222f61cb3..16e498395fe947 100644 --- a/versions/l-/libwebsockets.json +++ b/versions/l-/libwebsockets.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "52c31e301f0eaa969b7850c20be357ec3f845994", + "version-semver": "4.3.0", + "port-version": 3 + }, { "git-tree": "d8b0df2d428b6902450b58a8dc5e0743549d16b0", "version-semver": "4.3.0", diff --git a/versions/l-/luasec.json b/versions/l-/luasec.json index 7e85956506adf4..29c704691d8713 100644 --- a/versions/l-/luasec.json +++ b/versions/l-/luasec.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "ac5ef37f939164b6bc4a63bf7eeec24e8e8c5a79", + "version": "1.0.1", + "port-version": 1 + }, { "git-tree": "2529ee34af0b23fb576f0e8ed672ceba83c4c305", "version": "1.0.1", diff --git a/versions/o-/open62541.json b/versions/o-/open62541.json index 40cad68db7cdf9..30f520ebd540fd 100644 --- a/versions/o-/open62541.json +++ b/versions/o-/open62541.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "78181e46126a93ba6bbea749a985ba675fb53c03", + "version": "1.2.3", + "port-version": 1 + }, { "git-tree": "7a42ce1cf8d2a5f4380a4dcc2807a0d86962d49d", "version": "1.2.3", diff --git a/versions/o-/openssl.json b/versions/o-/openssl.json index 7a4a3ffabb1141..1ea6e851f5f691 100644 --- a/versions/o-/openssl.json +++ b/versions/o-/openssl.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "2ba2e59ee4f32c11e30aeccc0ecabc09b69c5d22", + "version": "3.0.2", + "port-version": 0 + }, { "git-tree": "06b9e0464af9c7c73227ba9f0fa93c77ef62496e", "version-string": "1.1.1n", diff --git a/versions/q-/qpid-proton.json b/versions/q-/qpid-proton.json index 19532ceadc92bb..f96fe6984196f7 100644 --- a/versions/q-/qpid-proton.json +++ b/versions/q-/qpid-proton.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "be327f08d64834a36d80a140832abbbc66e67207", + "version": "0.32.0", + "port-version": 4 + }, { "git-tree": "109a9bb4fac5d5c5a52cd620d7ddb22da6fe47f7", "version": "0.32.0", diff --git a/versions/u-/uthenticode.json b/versions/u-/uthenticode.json index b4f7957ef03362..f33c0b6cfbf5c1 100644 --- a/versions/u-/uthenticode.json +++ b/versions/u-/uthenticode.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "673c5ea6d0982481405bbe54c1e993f696d29d23", + "version": "1.0.6", + "port-version": 2 + }, { "git-tree": "bc0bd0b234a79de442f7001bd1a216716333e067", "version": "1.0.6",