From 1f6bbba3da511773189e5075b6781222402d10fa Mon Sep 17 00:00:00 2001 From: Dennis Date: Wed, 28 Jan 2026 10:56:42 +0100 Subject: [PATCH] [protobuf] update to 6.33.4 (#49107) --- .../arcus/0001-fix-protobuf-deprecated.patch | 64 +- ports/arcus/0003-cstdint.patch | 24 + ports/arcus/portfile.cmake | 1 + ports/arcus/vcpkg.json | 3 +- ports/braft/portfile.cmake | 1 + ports/braft/protobuf-6.patch | 13 + ports/braft/vcpkg.json | 2 +- ports/brpc/portfile.cmake | 8 + ports/brpc/protobuf-6.patch | 668 ++++++++++++++++++ ports/brpc/vcpkg.json | 1 + ports/ecal/0009-protobuf-6.patch | 258 +++++++ ports/ecal/portfile.cmake | 1 + ports/ecal/vcpkg.json | 1 + ports/gamenetworkingsockets/portfile.cmake | 1 + ports/gamenetworkingsockets/protobuf-6.patch | 13 + ports/gamenetworkingsockets/vcpkg.json | 2 +- ports/grpc/00001-fix-uwp.patch | 146 ++-- ports/grpc/00006-utf8-range.patch | 44 +- ports/grpc/00017-add-src-upb.patch | 36 - ports/grpc/portfile.cmake | 3 +- ports/grpc/vcpkg.json | 3 +- ports/gz-common/portfile.cmake | 3 +- ports/gz-common/vcpkg.json | 3 +- ports/gz-gui/portfile.cmake | 2 +- ports/gz-gui/vcpkg.json | 3 +- ports/gz-physics/portfile.cmake | 2 +- ports/gz-physics/vcpkg.json | 3 +- ports/gz-rendering/portfile.cmake | 2 +- ports/gz-rendering/vcpkg.json | 2 +- ports/gz-sensors/portfile.cmake | 2 +- ports/gz-sensors/vcpkg.json | 2 +- ports/gz-sim/portfile.cmake | 2 +- ports/gz-sim/vcpkg.json | 3 +- ports/gz-tools/portfile.cmake | 2 +- ports/gz-tools/vcpkg.json | 2 +- ports/ogre-next/avoid-name-clashes.patch | 15 - ports/ogre-next/fix-dependencies.patch | 34 +- ports/ogre-next/portfile.cmake | 4 +- ports/ogre-next/toolchain_fixes.patch | 55 +- ports/ogre-next/vcpkg.json | 3 +- ports/opencv3/0021-protobuf-6.patch | 52 ++ ports/opencv3/0022-include-thread.patch | 15 + ports/opencv3/portfile.cmake | 2 + ports/opencv3/vcpkg.json | 2 +- ports/openvino/portfile.cmake | 1 + ports/openvino/protobuf-6.patch | 13 + ports/openvino/vcpkg.json | 1 + ports/protobuf/fix-abseil.patch | 91 --- ports/protobuf/fix-install-dirs.patch | 6 +- ports/protobuf/fix-mingw-tail-call.patch | 18 - ports/protobuf/fix-upb.patch | 22 + ports/protobuf/fix-utf8-range.patch | 39 +- ports/protobuf/portfile.cmake | 11 +- ports/protobuf/vcpkg.json | 3 +- ports/pulsar-client-cpp/portfile.cmake | 2 +- ports/pulsar-client-cpp/vcpkg.json | 2 +- ports/sdformat/portfile.cmake | 2 +- ports/sdformat/vcpkg.json | 3 +- ports/srpc/portfile.cmake | 12 +- ports/srpc/protobuf.patch | 299 ++++---- ports/srpc/vcpkg.json | 4 +- ports/urdfdom/portfile.cmake | 8 + ports/urdfdom/vcpkg.json | 1 + ports/utf8-range/portfile.cmake | 6 +- ports/utf8-range/vcpkg.json | 2 +- ports/workflow/portfile.cmake | 4 +- ports/workflow/vcpkg.json | 2 +- scripts/ci.baseline.txt | 6 +- scripts/ci.feature.baseline.txt | 18 +- versions/a-/arcus.json | 5 + versions/b-/braft.json | 5 + versions/b-/brpc.json | 5 + versions/baseline.json | 64 +- versions/e-/ecal.json | 5 + versions/g-/gamenetworkingsockets.json | 5 + versions/g-/grpc.json | 5 + versions/g-/gz-common.json | 5 + versions/g-/gz-gui.json | 5 + versions/g-/gz-physics.json | 5 + versions/g-/gz-rendering.json | 5 + versions/g-/gz-sensors.json | 5 + versions/g-/gz-sim.json | 5 + versions/g-/gz-tools.json | 5 + versions/o-/ogre-next.json | 5 + versions/o-/opencv3.json | 5 + versions/o-/openvino.json | 5 + versions/p-/protobuf.json | 5 + versions/p-/pulsar-client-cpp.json | 5 + versions/s-/sdformat.json | 5 + versions/s-/srpc.json | 5 + versions/u-/urdfdom.json | 5 + versions/u-/utf8-range.json | 5 + versions/w-/workflow.json | 5 + 93 files changed, 1677 insertions(+), 586 deletions(-) create mode 100644 ports/arcus/0003-cstdint.patch create mode 100644 ports/braft/protobuf-6.patch create mode 100644 ports/brpc/protobuf-6.patch create mode 100644 ports/ecal/0009-protobuf-6.patch create mode 100644 ports/gamenetworkingsockets/protobuf-6.patch delete mode 100644 ports/grpc/00017-add-src-upb.patch delete mode 100644 ports/ogre-next/avoid-name-clashes.patch create mode 100644 ports/opencv3/0021-protobuf-6.patch create mode 100644 ports/opencv3/0022-include-thread.patch create mode 100644 ports/openvino/protobuf-6.patch delete mode 100644 ports/protobuf/fix-abseil.patch delete mode 100644 ports/protobuf/fix-mingw-tail-call.patch create mode 100644 ports/protobuf/fix-upb.patch diff --git a/ports/arcus/0001-fix-protobuf-deprecated.patch b/ports/arcus/0001-fix-protobuf-deprecated.patch index 81980a454e..52bb9b4b29 100644 --- a/ports/arcus/0001-fix-protobuf-deprecated.patch +++ b/ports/arcus/0001-fix-protobuf-deprecated.patch @@ -1,26 +1,38 @@ -diff --git a/src/MessageTypeStore.cpp b/src/MessageTypeStore.cpp -index 382a138..5f09122 100644 ---- a/src/MessageTypeStore.cpp -+++ b/src/MessageTypeStore.cpp -@@ -52,7 +52,7 @@ class ErrorCollector : public google::protobuf::compiler::MultiFileErrorCollecto - public: - ErrorCollector() : _error_count(0) { } - -- void AddError(const std::string& filename, int line, int column, const std::string& message) override -+ void RecordError(absl::string_view filename, int line, int column, absl::string_view message) override - { - _stream << "[" << filename << " (" << line << "," << column << ")] " << message << std::endl; - _error_count++; -diff --git a/src/Socket_p.h b/src/Socket_p.h -index 9c3c084..9ccabda 100644 ---- a/src/Socket_p.h -+++ b/src/Socket_p.h -@@ -548,7 +548,7 @@ namespace Arcus - - google::protobuf::io::ArrayInputStream array(wire_message->data, wire_message->size); - google::protobuf::io::CodedInputStream stream(&array); -- stream.SetTotalBytesLimit(message_size_maximum, message_size_warning); -+ stream.SetTotalBytesLimit(message_size_maximum); - if(!message->ParseFromCodedStream(&stream)) - { - error(ErrorCode::ParseFailedError, "Failed to parse message:" + std::string(wire_message->data)); +diff --git a/src/MessageTypeStore.cpp b/src/MessageTypeStore.cpp +index 382a138..65c10e8 100644 +--- a/src/MessageTypeStore.cpp ++++ b/src/MessageTypeStore.cpp +@@ -34,9 +34,9 @@ using namespace Arcus; + * of std::hash differs between compilers, we need to make sure we use the same + * implementation everywhere. + */ +-uint32_t hash(const std::string& input) ++uint32_t hash(const absl::string_view& input) + { +- const char* data = input.c_str(); ++ const char* data = input.data(); + uint32_t length = input.size(); + uint32_t result = static_cast(2166136261UL); + for(; length; --length) +@@ -52,7 +52,7 @@ class ErrorCollector : public google::protobuf::compiler::MultiFileErrorCollecto + public: + ErrorCollector() : _error_count(0) { } + +- void AddError(const std::string& filename, int line, int column, const std::string& message) override ++ void RecordError(absl::string_view filename, int line, int column, absl::string_view message) override + { + _stream << "[" << filename << " (" << line << "," << column << ")] " << message << std::endl; + _error_count++; +diff --git a/src/Socket_p.h b/src/Socket_p.h +index 9c3c084..9ccabda 100644 +--- a/src/Socket_p.h ++++ b/src/Socket_p.h +@@ -548,7 +548,7 @@ namespace Arcus + + google::protobuf::io::ArrayInputStream array(wire_message->data, wire_message->size); + google::protobuf::io::CodedInputStream stream(&array); +- stream.SetTotalBytesLimit(message_size_maximum, message_size_warning); ++ stream.SetTotalBytesLimit(message_size_maximum); + if(!message->ParseFromCodedStream(&stream)) + { + error(ErrorCode::ParseFailedError, "Failed to parse message:" + std::string(wire_message->data)); diff --git a/ports/arcus/0003-cstdint.patch b/ports/arcus/0003-cstdint.patch new file mode 100644 index 0000000000..c8dd390b3e --- /dev/null +++ b/ports/arcus/0003-cstdint.patch @@ -0,0 +1,24 @@ +diff --git a/src/PlatformSocket_p.h b/src/PlatformSocket_p.h +index f2dbd1c..b0f8ca7 100644 +--- a/src/PlatformSocket_p.h ++++ b/src/PlatformSocket_p.h +@@ -21,6 +21,7 @@ + + #include + #include ++#include + + namespace Arcus + { +diff --git a/src/Types.h b/src/Types.h +index ac55c0e..50320dc 100644 +--- a/src/Types.h ++++ b/src/Types.h +@@ -21,6 +21,7 @@ + + #include + #include ++#include + + namespace google + { diff --git a/ports/arcus/portfile.cmake b/ports/arcus/portfile.cmake index da0dcc4cf0..cee88af0fe 100644 --- a/ports/arcus/portfile.cmake +++ b/ports/arcus/portfile.cmake @@ -7,6 +7,7 @@ vcpkg_from_github( PATCHES 0001-fix-protobuf-deprecated.patch 0002-protobuf-version.patch + 0003-cstdint.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" ENABLE_STATIC) diff --git a/ports/arcus/vcpkg.json b/ports/arcus/vcpkg.json index 61a48d4a83..8ad0cfeab8 100644 --- a/ports/arcus/vcpkg.json +++ b/ports/arcus/vcpkg.json @@ -1,9 +1,10 @@ { "name": "arcus", "version-semver": "4.10.0", - "port-version": 4, + "port-version": 5, "description": "This library contains C++ bindings for creating a socket in a thread and using this socket to send and receive messages based on the Protocol Buffers library.", "homepage": "https://github.com/Ultimaker/libArcus", + "license": "LGPL-3.0-or-later", "supports": "!uwp", "dependencies": [ "protobuf", diff --git a/ports/braft/portfile.cmake b/ports/braft/portfile.cmake index 8811e4f9b3..382c4978e2 100644 --- a/ports/braft/portfile.cmake +++ b/ports/braft/portfile.cmake @@ -18,6 +18,7 @@ vcpkg_from_github( "${GCC_11_PATCH}" fix-glog.patch protobuf.patch + protobuf-6.patch ) vcpkg_cmake_configure( diff --git a/ports/braft/protobuf-6.patch b/ports/braft/protobuf-6.patch new file mode 100644 index 0000000000..6d7e95887c --- /dev/null +++ b/ports/braft/protobuf-6.patch @@ -0,0 +1,13 @@ +diff --git a/src/braft/replicator.cpp b/src/braft/replicator.cpp +index 2e0d1e1..c58b181 100644 +--- a/src/braft/replicator.cpp ++++ b/src/braft/replicator.cpp +@@ -418,7 +418,7 @@ void Replicator::_on_rpc_returned(ReplicatorId id, brpc::Controller* cntl, + r->_notify_on_caught_up(EPERM, true); + butil::Status status; + status.set_error(EHIGHERTERMRESPONSE, "Leader receives higher term " +- "%s from peer:%s", response->GetTypeName().c_str(), r->_options.peer_id.to_string().c_str()); ++ "%s from peer:%s", response->GetTypeName().data(), r->_options.peer_id.to_string().c_str()); + r->_destroy(); + node_impl->increase_term_to(response->term(), status); + node_impl->Release(); diff --git a/ports/braft/vcpkg.json b/ports/braft/vcpkg.json index 2083b4d5ce..59d3d335c8 100644 --- a/ports/braft/vcpkg.json +++ b/ports/braft/vcpkg.json @@ -1,7 +1,7 @@ { "name": "braft", "version-date": "2021-26-04", - "port-version": 5, + "port-version": 6, "description": "Consensus algorithm library", "homepage": "https://github.com/baidu/braft", "license": "Apache-2.0", diff --git a/ports/brpc/portfile.cmake b/ports/brpc/portfile.cmake index 679d32b449..bae9584300 100644 --- a/ports/brpc/portfile.cmake +++ b/ports/brpc/portfile.cmake @@ -1,3 +1,10 @@ +vcpkg_download_distfile( + PROTOBUF_V6_PATCH + URLS https://github.com/apache/brpc/commit/8d87814330d9ebbfe5b95774fdb71056fcb3170c.patch?full_index=1 + SHA512 d8787b11f91b50377869713f9f9159a36659c8f4ca43e77105968b3918c95cb13dbcaef6170329bd2eaa5e7455d00636cfa6db2fd99e8aace293a0e7e1b3df75 + FILENAME 8d87814330d9ebbfe5b95774fdb71056fcb3170c.patch +) + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/brpc @@ -7,6 +14,7 @@ vcpkg_from_github( PATCHES fix-build.patch fix-warnings.patch + ${PROTOBUF_V6_PATCH} ) vcpkg_cmake_configure( diff --git a/ports/brpc/protobuf-6.patch b/ports/brpc/protobuf-6.patch new file mode 100644 index 0000000000..0aa0e27789 --- /dev/null +++ b/ports/brpc/protobuf-6.patch @@ -0,0 +1,668 @@ +diff --git a/src/brpc/amf.cpp b/src/brpc/amf.cpp +index 023eaa9b..bc90797e 100644 +--- a/src/brpc/amf.cpp ++++ b/src/brpc/amf.cpp +@@ -1000,7 +1000,7 @@ void WriteAMFObject(const google::protobuf::Message& message, + continue; + } + } +- const std::string& name = field->name(); ++ const auto name = field->name(); + if (name.size() >= 65536u) { + LOG(ERROR) << "name is too long!"; + return stream->set_bad(); +diff --git a/src/brpc/builtin/protobufs_service.cpp b/src/brpc/builtin/protobufs_service.cpp +index 2344e461..4f24cf48 100644 +--- a/src/brpc/builtin/protobufs_service.cpp ++++ b/src/brpc/builtin/protobufs_service.cpp +@@ -42,7 +42,7 @@ int ProtobufsService::Init() { + } + const google::protobuf::ServiceDescriptor* d = + iter->second.service->GetDescriptor(); +- _map[d->full_name()] = d->DebugString(); ++ _map[std::string(d->full_name())] = d->DebugString(); + const int method_count = d->method_count(); + for (int j = 0; j < method_count; ++j) { + const google::protobuf::MethodDescriptor* md = d->method(j); +@@ -53,13 +53,13 @@ int ProtobufsService::Init() { + while (!stack.empty()) { + const google::protobuf::Descriptor* d = stack.back(); + stack.pop_back(); +- _map[d->full_name()] = d->DebugString(); ++ _map[std::string(d->full_name())] = d->DebugString(); + for (int i = 0; i < d->field_count(); ++i) { + const google::protobuf::FieldDescriptor* f = d->field(i); + if (f->type() == google::protobuf::FieldDescriptor::TYPE_MESSAGE || + f->type() == google::protobuf::FieldDescriptor::TYPE_GROUP) { + const google::protobuf::Descriptor* sub_d = f->message_type(); +- if (sub_d != d && _map.find(sub_d->full_name()) == _map.end()) { ++ if (sub_d != d && _map.find(std::string(sub_d->full_name())) == _map.end()) { + stack.push_back(sub_d); + } + } +diff --git a/src/brpc/channel.cpp b/src/brpc/channel.cpp +index 0252e97d..e5f7bf48 100644 +--- a/src/brpc/channel.cpp ++++ b/src/brpc/channel.cpp +@@ -493,10 +493,12 @@ void Channel::CallMethod(const google::protobuf::MethodDescriptor* method, + if (cntl->_sender == NULL && IsTraceable(Span::tls_parent())) { + const int64_t start_send_us = butil::cpuwide_time_us(); + const std::string* method_name = NULL; ++ std::string full_name; + if (_get_method_name) { + method_name = &_get_method_name(method, cntl); + } else if (method) { +- method_name = &method->full_name(); ++ full_name.assign(method->full_name()); ++ method_name = &full_name; + } else { + const static std::string NULL_METHOD_STR = "null-method"; + method_name = &NULL_METHOD_STR; +diff --git a/src/brpc/nshead_pb_service_adaptor.cpp b/src/brpc/nshead_pb_service_adaptor.cpp +index ed3552f5..5fe74173 100644 +--- a/src/brpc/nshead_pb_service_adaptor.cpp ++++ b/src/brpc/nshead_pb_service_adaptor.cpp +@@ -126,7 +126,7 @@ void NsheadPbServiceAdaptor::ProcessNsheadRequest( + google::protobuf::Service* svc = sp->service; + const google::protobuf::MethodDescriptor* method = sp->method; + ControllerPrivateAccessor(controller).set_method(method); +- done->SetMethodName(method->full_name()); ++ done->SetMethodName(std::string(method->full_name())); + pbdone->pbreq.reset(svc->GetRequestPrototype(method).New()); + pbdone->pbres.reset(svc->GetResponsePrototype(method).New()); + +diff --git a/src/brpc/policy/baidu_rpc_protocol.cpp b/src/brpc/policy/baidu_rpc_protocol.cpp +index 5adf77b2..7e83fcdc 100644 +--- a/src/brpc/policy/baidu_rpc_protocol.cpp ++++ b/src/brpc/policy/baidu_rpc_protocol.cpp +@@ -233,7 +233,7 @@ static bool SerializeResponse(const google::protobuf::Message& res, + cntl.SetFailed(ERESPONSE, + "Fail to serialize response=%s, " + "ContentType=%s, CompressType=%s, ChecksumType=%s", +- res.GetDescriptor()->full_name().c_str(), ++ res.GetDescriptor()->full_name().data(), + ContentTypeToCStr(content_type), + CompressTypeToCStr(compress_type), + ChecksumTypeToCStr(checksum_type)); +@@ -775,7 +775,7 @@ void ProcessRpcRequest(InputMessageBase* msg_base) { + cntl->SetFailed( + ELIMIT, + "Rejected by %s's ConcurrencyLimiter, concurrency=%d", +- mp->method->full_name().c_str(), rejected_cc); ++ mp->method->full_name().data(), rejected_cc); + break; + } + } +@@ -784,7 +784,7 @@ void ProcessRpcRequest(InputMessageBase* msg_base) { + accessor.set_method(method); + + if (span) { +- span->ResetServerSpanName(method->full_name()); ++ span->ResetServerSpanName(std::string(method->full_name())); + } + + if (!server->AcceptRequest(cntl.get())) { +@@ -812,7 +812,7 @@ void ProcessRpcRequest(InputMessageBase* msg_base) { + EREQUEST, + "Fail to parse request=%s, ContentType=%s, " + "CompressType=%s, ChecksumType=%s, request_size=%d", +- messages->Request()->GetDescriptor()->full_name().c_str(), ++ messages->Request()->GetDescriptor()->full_name().data(), + ContentTypeToCStr(content_type), + CompressTypeToCStr(compress_type), + ChecksumTypeToCStr(checksum_type), req_size); +@@ -996,7 +996,7 @@ void ProcessRpcResponse(InputMessageBase* msg_base) { + EREQUEST, + "Fail to parse response=%s, ContentType=%s, " + "CompressType=%s, ChecksumType=%s, request_size=%d", +- cntl->response()->GetDescriptor()->full_name().c_str(), ++ cntl->response()->GetDescriptor()->full_name().data(), + ContentTypeToCStr(content_type), + CompressTypeToCStr(compress_type), + ChecksumTypeToCStr(checksum_type), res_size); +@@ -1033,7 +1033,7 @@ void SerializeRpcRequest(butil::IOBuf* request_buf, Controller* cntl, + EREQUEST, + "Fail to compress request=%s, " + "ContentType=%s, CompressType=%s, ChecksumType=%s", +- request->GetDescriptor()->full_name().c_str(), ++ request->GetDescriptor()->full_name().data(), + ContentTypeToCStr(content_type), CompressTypeToCStr(compress_type), + ChecksumTypeToCStr(checksum_type)); + } +diff --git a/src/brpc/policy/http_rpc_protocol.cpp b/src/brpc/policy/http_rpc_protocol.cpp +index 872c2897..88eee74a 100644 +--- a/src/brpc/policy/http_rpc_protocol.cpp ++++ b/src/brpc/policy/http_rpc_protocol.cpp +@@ -284,7 +284,7 @@ static bool JsonToProtoMessage(const butil::IOBuf& body, + bool ok = json2pb::JsonToProtoMessage(&wrapper, message, options, &error); + if (!ok) { + cntl->SetFailed(error_code, "Fail to parse http json body as %s: %s", +- message->GetDescriptor()->full_name().c_str(), ++ message->GetDescriptor()->full_name().data(), + error.c_str()); + } + return ok; +@@ -305,7 +305,7 @@ static bool ProtoMessageToJson(const google::protobuf::Message& message, + bool ok = json2pb::ProtoMessageToJson(message, wrapper, options, &error); + if (!ok) { + cntl->SetFailed(error_code, "Fail to convert %s to json: %s", +- message.GetDescriptor()->full_name().c_str(), ++ message.GetDescriptor()->full_name().data(), + error.c_str()); + } + return ok; +@@ -321,7 +321,7 @@ static bool ProtoJsonToProtoMessage(const butil::IOBuf& body, + bool ok = json2pb::ProtoJsonToProtoMessage(&wrapper, message, options, &error); + if (!ok) { + cntl->SetFailed(error_code, "Fail to parse http proto-json body as %s: %s", +- message->GetDescriptor()->full_name().c_str(), ++ message->GetDescriptor()->full_name().data(), + error.c_str()); + } + return ok; +@@ -337,7 +337,7 @@ static bool ProtoMessageToProtoJson(const google::protobuf::Message& message, + bool ok = json2pb::ProtoMessageToProtoJson(message, wrapper, options, &error); + if (!ok) { + cntl->SetFailed(error_code, "Fail to convert %s to proto-json: %s", +- message.GetDescriptor()->full_name().c_str(), error.c_str()); ++ message.GetDescriptor()->full_name().data(), error.c_str()); + } + return ok; + } +@@ -527,13 +527,13 @@ void ProcessHttpResponse(InputMessageBase* msg) { + if (content_type == HTTP_CONTENT_PROTO) { + if (!ParsePbFromIOBuf(cntl->response(), res_body)) { + cntl->SetFailed(ERESPONSE, "Fail to parse content as %s", +- cntl->response()->GetDescriptor()->full_name().c_str()); ++ cntl->response()->GetDescriptor()->full_name().data()); + break; + } + } else if (content_type == HTTP_CONTENT_PROTO_TEXT) { + if (!ParsePbTextFromIOBuf(cntl->response(), res_body)) { + cntl->SetFailed(ERESPONSE, "Fail to parse proto-text content as %s", +- cntl->response()->GetDescriptor()->full_name().c_str()); ++ cntl->response()->GetDescriptor()->full_name().data()); + break; + } + } else if (content_type == HTTP_CONTENT_JSON) { +@@ -612,13 +612,13 @@ void SerializeHttpRequest(butil::IOBuf* /*not used*/, + if (!pbreq->SerializeToZeroCopyStream(&wrapper)) { + cntl->request_attachment().clear(); + return cntl->SetFailed(EREQUEST, "Fail to serialize %s", +- pbreq->GetTypeName().c_str()); ++ pbreq->GetTypeName().data()); + } + } else if (content_type == HTTP_CONTENT_PROTO_TEXT) { + if (!google::protobuf::TextFormat::Print(*pbreq, &wrapper)) { + cntl->request_attachment().clear(); + return cntl->SetFailed(EREQUEST, "Fail to print %s as proto-text", +- pbreq->GetTypeName().c_str()); ++ pbreq->GetTypeName().data()); + } + } else if (content_type == HTTP_CONTENT_PROTO_JSON) { + if (!ProtoMessageToProtoJson(*pbreq, &wrapper, cntl, EREQUEST)) { +@@ -880,11 +880,11 @@ HttpResponseSender::~HttpResponseSender() { + butil::IOBufAsZeroCopyOutputStream wrapper(&cntl->response_attachment()); + if (content_type == HTTP_CONTENT_PROTO) { + if (!res->SerializeToZeroCopyStream(&wrapper)) { +- cntl->SetFailed(ERESPONSE, "Fail to serialize %s", res->GetTypeName().c_str()); ++ cntl->SetFailed(ERESPONSE, "Fail to serialize %s", res->GetTypeName().data()); + } + } else if (content_type == HTTP_CONTENT_PROTO_TEXT) { + if (!google::protobuf::TextFormat::Print(*res, &wrapper)) { +- cntl->SetFailed(ERESPONSE, "Fail to print %s as proto-text", res->GetTypeName().c_str()); ++ cntl->SetFailed(ERESPONSE, "Fail to print %s as proto-text", res->GetTypeName().data()); + } + } else if (content_type == HTTP_CONTENT_PROTO_JSON) { + ProtoMessageToProtoJson(*res, &wrapper, cntl, ERESPONSE); +@@ -1535,7 +1535,7 @@ void ProcessHttpRequest(InputMessageBase *msg) { + cntl->request_attachment().swap(req_body); + google::protobuf::Closure* done = new HttpResponseSenderAsDone(&resp_sender); + if (span) { +- span->ResetServerSpanName(md->full_name()); ++ span->ResetServerSpanName(std::string(md->full_name())); + span->set_start_callback_us(butil::cpuwide_time_us()); + span->AsParent(); + } +@@ -1570,13 +1570,13 @@ void ProcessHttpRequest(InputMessageBase *msg) { + int rejected_cc = 0; + if (!method_status->OnRequested(&rejected_cc)) { + cntl->SetFailed(ELIMIT, "Rejected by %s's ConcurrencyLimiter, concurrency=%d", +- mp->method->full_name().c_str(), rejected_cc); ++ mp->method->full_name().data(), rejected_cc); + return; + } + } + + if (span) { +- span->ResetServerSpanName(mp->method->full_name()); ++ span->ResetServerSpanName(std::string(mp->method->full_name())); + } + // NOTE: accesses to builtin services are not counted as part of + // concurrency, therefore are not limited by ServerOptions.max_concurrency. +@@ -1632,7 +1632,7 @@ void ProcessHttpRequest(InputMessageBase *msg) { + if (!req->IsInitialized()) { + cntl->SetFailed(EREQUEST, "%s needs to be created from a" + " non-empty json, it has required fields.", +- req->GetDescriptor()->full_name().c_str()); ++ req->GetDescriptor()->full_name().data()); + return; + } // else all fields of the request are optional. + } else { +@@ -1677,13 +1677,13 @@ void ProcessHttpRequest(InputMessageBase *msg) { + if (content_type == HTTP_CONTENT_PROTO) { + if (!ParsePbFromIOBuf(req, req_body)) { + cntl->SetFailed(EREQUEST, "Fail to parse http body as %s", +- req->GetDescriptor()->full_name().c_str()); ++ req->GetDescriptor()->full_name().data()); + return; + } + } else if (content_type == HTTP_CONTENT_PROTO_TEXT) { + if (!ParsePbTextFromIOBuf(req, req_body)) { + cntl->SetFailed(EREQUEST, "Fail to parse http proto-text body as %s", +- req->GetDescriptor()->full_name().c_str()); ++ req->GetDescriptor()->full_name().data()); + return; + } + } else if (content_type == HTTP_CONTENT_PROTO_JSON) { +diff --git a/src/brpc/policy/hulu_pbrpc_protocol.cpp b/src/brpc/policy/hulu_pbrpc_protocol.cpp +index 02ec8efc..46b501df 100644 +--- a/src/brpc/policy/hulu_pbrpc_protocol.cpp ++++ b/src/brpc/policy/hulu_pbrpc_protocol.cpp +@@ -473,7 +473,7 @@ void ProcessHuluRequest(InputMessageBase* msg_base) { + int rejected_cc = 0; + if (!method_status->OnRequested(&rejected_cc)) { + cntl->SetFailed(ELIMIT, "Rejected by %s's ConcurrencyLimiter, concurrency=%d", +- sp->method->full_name().c_str(), rejected_cc); ++ sp->method->full_name().data(), rejected_cc); + break; + } + } +@@ -487,7 +487,7 @@ void ProcessHuluRequest(InputMessageBase* msg_base) { + } + + if (span) { +- span->ResetServerSpanName(method->full_name()); ++ span->ResetServerSpanName(std::string(method->full_name())); + } + const int reqsize = msg->payload.length(); + butil::IOBuf req_buf; +diff --git a/src/brpc/policy/mongo_protocol.cpp b/src/brpc/policy/mongo_protocol.cpp +index 82bb3e0b..45ab7076 100644 +--- a/src/brpc/policy/mongo_protocol.cpp ++++ b/src/brpc/policy/mongo_protocol.cpp +@@ -249,7 +249,7 @@ void ProcessMongoRequest(InputMessageBase* msg_base) { + if (!method_status->OnRequested(&rejected_cc)) { + mongo_done->cntl.SetFailed( + ELIMIT, "Rejected by %s's ConcurrencyLimiter, concurrency=%d", +- mp->method->full_name().c_str(), rejected_cc); ++ mp->method->full_name().data(), rejected_cc); + break; + } + } +diff --git a/src/brpc/policy/nshead_mcpack_protocol.cpp b/src/brpc/policy/nshead_mcpack_protocol.cpp +index 40d38836..9bb7ea2b 100644 +--- a/src/brpc/policy/nshead_mcpack_protocol.cpp ++++ b/src/brpc/policy/nshead_mcpack_protocol.cpp +@@ -49,7 +49,7 @@ void NsheadMcpackAdaptor::ParseNsheadMeta( + const google::protobuf::ServiceDescriptor* sd = service->GetDescriptor(); + if (sd->method_count() == 0) { + cntl->SetFailed(ENOMETHOD, "No method in service=%s", +- sd->full_name().c_str()); ++ sd->full_name().data()); + return; + } + const google::protobuf::MethodDescriptor* method = sd->method(0); +@@ -59,7 +59,7 @@ void NsheadMcpackAdaptor::ParseNsheadMeta( + void NsheadMcpackAdaptor::ParseRequestFromIOBuf( + const NsheadMeta&, const NsheadMessage& raw_req, + Controller* cntl, google::protobuf::Message* pb_req) const { +- const std::string& msg_name = pb_req->GetDescriptor()->full_name(); ++ const auto msg_name = std::string(pb_req->GetDescriptor()->full_name()); + mcpack2pb::MessageHandler handler = mcpack2pb::find_message_handler(msg_name); + if (!handler.parse_from_iobuf(pb_req, raw_req.body)) { + cntl->SetFailed(EREQUEST, "Fail to parse request message, " +@@ -86,7 +86,7 @@ void NsheadMcpackAdaptor::SerializeResponseToIOBuf( + return; + } + +- const std::string& msg_name = pb_res->GetDescriptor()->full_name(); ++ const auto msg_name = std::string(pb_res->GetDescriptor()->full_name()); + mcpack2pb::MessageHandler handler = mcpack2pb::find_message_handler(msg_name); + if (!handler.serialize_to_iobuf(*pb_res, &raw_res->body, + ::mcpack2pb::FORMAT_MCPACK_V2)) { +@@ -124,7 +124,7 @@ void ProcessNsheadMcpackResponse(InputMessageBase* msg_base) { + // silently ignore response. + return; + } +- const std::string& msg_name = res->GetDescriptor()->full_name(); ++ const auto msg_name = std::string(res->GetDescriptor()->full_name()); + mcpack2pb::MessageHandler handler = mcpack2pb::find_message_handler(msg_name); + if (!handler.parse_from_iobuf(res, msg->payload)) { + return cntl->CloseConnection("Fail to parse response message"); +@@ -143,7 +143,7 @@ void SerializeNsheadMcpackRequest(butil::IOBuf* buf, Controller* cntl, + "nshead_mcpack protocol doesn't support compression"); + return; + } +- const std::string& msg_name = pb_req->GetDescriptor()->full_name(); ++ const auto msg_name = std::string(pb_req->GetDescriptor()->full_name()); + mcpack2pb::MessageHandler handler = mcpack2pb::find_message_handler(msg_name); + if (!handler.serialize_to_iobuf(*pb_req, buf, ::mcpack2pb::FORMAT_MCPACK_V2)) { + cntl->SetFailed(EREQUEST, "Fail to serialize %s", msg_name.c_str()); +diff --git a/src/brpc/policy/sofa_pbrpc_protocol.cpp b/src/brpc/policy/sofa_pbrpc_protocol.cpp +index 9ee772dc..4bcfa939 100644 +--- a/src/brpc/policy/sofa_pbrpc_protocol.cpp ++++ b/src/brpc/policy/sofa_pbrpc_protocol.cpp +@@ -424,7 +424,7 @@ void ProcessSofaRequest(InputMessageBase* msg_base) { + int rejected_cc = 0; + if (!method_status->OnRequested(&rejected_cc)) { + cntl->SetFailed(ELIMIT, "Rejected by %s's ConcurrencyLimiter, concurrency=%d", +- sp->method->full_name().c_str(), rejected_cc); ++ sp->method->full_name().data(), rejected_cc); + break; + } + } +@@ -437,7 +437,7 @@ void ProcessSofaRequest(InputMessageBase* msg_base) { + } + + if (span) { +- span->ResetServerSpanName(method->full_name()); ++ span->ResetServerSpanName(std::string(method->full_name())); + } + req.reset(svc->GetRequestPrototype(method).New()); + if (!ParseFromCompressedData(msg->payload, req.get(), req_cmp_type)) { +diff --git a/src/brpc/policy/ubrpc2pb_protocol.cpp b/src/brpc/policy/ubrpc2pb_protocol.cpp +index 312ec5d9..92db57e1 100644 +--- a/src/brpc/policy/ubrpc2pb_protocol.cpp ++++ b/src/brpc/policy/ubrpc2pb_protocol.cpp +@@ -169,7 +169,7 @@ void UbrpcAdaptor::ParseNsheadMeta( + void UbrpcAdaptor::ParseRequestFromIOBuf( + const NsheadMeta&, const NsheadMessage& raw_req, + Controller* cntl, google::protobuf::Message* pb_req) const { +- const std::string& msg_name = pb_req->GetDescriptor()->full_name(); ++ const auto msg_name = std::string(pb_req->GetDescriptor()->full_name()); + mcpack2pb::MessageHandler handler = mcpack2pb::find_message_handler(msg_name); + if (handler.parse_body == NULL) { + return cntl->SetFailed(EREQUEST, "Fail to find parser of %s", +@@ -227,7 +227,7 @@ void UbrpcAdaptor::SerializeResponseToIOBuf( + // return AppendError(meta, cntl, raw_res->body); + // } + +- const std::string& msg_name = pb_res->GetDescriptor()->full_name(); ++ const auto msg_name = std::string(pb_res->GetDescriptor()->full_name()); + mcpack2pb::MessageHandler handler = mcpack2pb::find_message_handler(msg_name); + if (handler.serialize_body == NULL) { + cntl->SetFailed(ERESPONSE, "Fail to find serializer of %s", +@@ -279,7 +279,7 @@ static void ParseResponse(Controller* cntl, butil::IOBuf& buf, + // silently ignore response. + return; + } +- const std::string& msg_name = res->GetDescriptor()->full_name(); ++ const auto msg_name = std::string(res->GetDescriptor()->full_name()); + mcpack2pb::MessageHandler handler = mcpack2pb::find_message_handler(msg_name); + if (handler.parse_body == NULL) { + return cntl->SetFailed(ERESPONSE, "Fail to find parser of %s", +@@ -480,7 +480,7 @@ static void SerializeUbrpcRequest(butil::IOBuf* buf, Controller* cntl, + if (cntl->method() == NULL) { + return cntl->SetFailed(ENOMETHOD, "method is NULL"); + } +- const std::string& msg_name = request->GetDescriptor()->full_name(); ++ const auto msg_name = std::string(request->GetDescriptor()->full_name()); + mcpack2pb::MessageHandler handler = mcpack2pb::find_message_handler(msg_name); + if (handler.serialize_body == NULL) { + return cntl->SetFailed(EREQUEST, "Fail to find serializer of %s", +@@ -500,9 +500,9 @@ static void SerializeUbrpcRequest(butil::IOBuf* buf, Controller* cntl, + sr.begin_mcpack_array("content", mcpack2pb::FIELD_OBJECT); + sr.begin_object(); + { +- sr.add_string("service_name", cntl->method()->service()->name()); ++ sr.add_string("service_name", std::string(cntl->method()->service()->name())); + sr.add_int64("id", cntl->call_id().value); +- sr.add_string("method", cntl->method()->name()); ++ sr.add_string("method", std::string(cntl->method()->name())); + sr.begin_object("params"); + const char* const request_name = cntl->idl_names().request_name; + if (request_name != NULL && *request_name) { +diff --git a/src/brpc/server.cpp b/src/brpc/server.cpp +index cd83053a..0df5a774 100644 +--- a/src/brpc/server.cpp ++++ b/src/brpc/server.cpp +@@ -413,7 +413,9 @@ void* Server::UpdateDerivedVars(void* arg) { + + const std::string& Server::ServiceProperty::service_name() const { + if (service) { +- return service->GetDescriptor()->full_name(); ++ static std::string full_name; ++ full_name.assign(service->GetDescriptor()->full_name()); ++ return full_name; + } else if (restful_map) { + return restful_map->service_name(); + } +@@ -1438,7 +1440,7 @@ int Server::AddServiceInternal(google::protobuf::Service* service, + mp.service = service; + mp.method = md; + mp.status = new MethodStatus; +- _method_map[md->full_name()] = mp; ++ _method_map[std::string(md->full_name())] = mp; + if (is_idl_support && sd->name() != sd->full_name()/*has ns*/) { + MethodProperty mp2 = mp; + mp2.own_method_status = false; +@@ -1461,8 +1463,8 @@ int Server::AddServiceInternal(google::protobuf::Service* service, + + const ServiceProperty ss = { + is_builtin_service, svc_opt.ownership, service, NULL }; +- _fullname_service_map[sd->full_name()] = ss; +- _service_map[sd->name()] = ss; ++ _fullname_service_map[std::string(sd->full_name())] = ss; ++ _service_map[std::string(sd->name())] = ss; + if (is_builtin_service) { + ++_builtin_service_count; + } else { +@@ -1504,7 +1506,7 @@ int Server::AddServiceInternal(google::protobuf::Service* service, + // handling is not affected. + for (size_t i = 0; i < mappings.size(); ++i) { + const std::string full_method_name = +- sd->full_name() + "." + mappings[i].method_name; ++ std::string(sd->full_name()) + "." + mappings[i].method_name; + MethodProperty* mp = _method_map.seek(full_method_name); + if (mp == NULL) { + LOG(ERROR) << "Unknown method=`" << full_method_name << '\''; +@@ -1731,7 +1733,7 @@ int Server::RemoveService(google::protobuf::Service* service) { + const google::protobuf::ServiceDescriptor* sd = service->GetDescriptor(); + ServiceProperty* ss = _fullname_service_map.seek(sd->full_name()); + if (ss == NULL) { +- RPC_VLOG << "Fail to find service=" << sd->full_name().c_str(); ++ RPC_VLOG << "Fail to find service=" << sd->full_name().data(); + return -1; + } + RemoveMethodsOf(service); +diff --git a/src/json2pb/json_to_pb.cpp b/src/json2pb/json_to_pb.cpp +index e758bdb3..46d1f924 100644 +--- a/src/json2pb/json_to_pb.cpp ++++ b/src/json2pb/json_to_pb.cpp +@@ -54,7 +54,7 @@ + } \ + butil::string_appendf(perr, fmt, ##__VA_ARGS__); \ + if ((pb) != nullptr) { \ +- butil::string_appendf(perr, " [%s]", (pb)->GetDescriptor()->name().c_str()); \ ++ butil::string_appendf(perr, " [%s]", (pb)->GetDescriptor()->name().data()); \ + } \ + } else { } + +@@ -126,7 +126,7 @@ inline bool value_invalid(const google::protobuf::FieldDescriptor* field, const + string_append_value(value, err); + butil::string_appendf(err, "' for %sfield `%s' which SHOULD be %s", + optional ? "optional " : "", +- field->full_name().c_str(), type); ++ field->full_name().data(), type); + } + if (!optional) { + return false; +@@ -324,7 +324,7 @@ static bool JsonValueToProtoField(const BUTIL_RAPIDJSON_NAMESPACE::Value& value, + int depth) { + if (value.IsNull()) { + if (field->is_required()) { +- J2PERROR(err, "Missing required field: %s", field->full_name().c_str()); ++ J2PERROR(err, "Missing required field: %s", field->full_name().data()); + return false; + } + return true; +@@ -333,7 +333,7 @@ static bool JsonValueToProtoField(const BUTIL_RAPIDJSON_NAMESPACE::Value& value, + if (field->is_repeated()) { + if (!value.IsArray()) { + J2PERROR(err, "Invalid value for repeated field: %s", +- field->full_name().c_str()); ++ field->full_name().data()); + return false; + } + } +@@ -506,7 +506,7 @@ bool JsonMapToProtoMap(const BUTIL_RAPIDJSON_NAMESPACE::Value& value, + int depth) { + if (!value.IsObject()) { + J2PERROR(err, "Non-object value for map field: %s", +- map_desc->full_name().c_str()); ++ map_desc->full_name().data()); + return false; + } + +@@ -584,7 +584,7 @@ bool JsonValueToProtoMessage(const BUTIL_RAPIDJSON_NAMESPACE::Value& json_value, + for (size_t i = 0; i < fields.size(); ++i) { + const google::protobuf::FieldDescriptor* field = fields[i]; + +- const std::string& orig_name = field->name(); ++ const auto orig_name = std::string(field->name()); + bool res = decode_name(orig_name, field_name_str_temp); + const std::string& field_name_str = (res ? field_name_str_temp : orig_name); + +@@ -593,7 +593,7 @@ bool JsonValueToProtoMessage(const BUTIL_RAPIDJSON_NAMESPACE::Value& json_value, + json_value.FindMember(field_name_str.data()); + if (member == json_value.MemberEnd()) { + if (field->is_required()) { +- J2PERROR(err, "Missing required field: %s", field->full_name().c_str()); ++ J2PERROR(err, "Missing required field: %s", field->full_name().data()); + return false; + } + continue; +@@ -604,7 +604,7 @@ bool JsonValueToProtoMessage(const BUTIL_RAPIDJSON_NAMESPACE::Value& json_value, + json_value.FindMember(field_name_str.data()); + if (member == NULL) { + if (field->is_required()) { +- J2PERROR(err, "Missing required field: %s", field->full_name().c_str()); ++ J2PERROR(err, "Missing required field: %s", field->full_name().data()); + return false; + } + continue; +diff --git a/src/json2pb/pb_to_json.cpp b/src/json2pb/pb_to_json.cpp +index f2322267..e0b95b3d 100644 +--- a/src/json2pb/pb_to_json.cpp ++++ b/src/json2pb/pb_to_json.cpp +@@ -172,7 +172,7 @@ bool PbToJsonConverter::Convert(const google::protobuf::Message& message, Handle + if (!field->is_repeated() && !reflection->HasField(message, field)) { + // Field that has not been set + if (field->is_required()) { +- _error = "Missing required field: " + field->full_name(); ++ _error = "Missing required field: " + std::string(field->full_name()); + return false; + } + // Whether dumps default fields +@@ -186,7 +186,7 @@ bool PbToJsonConverter::Convert(const google::protobuf::Message& message, Handle + continue; + } + +- const std::string& orig_name = field->name(); ++ const auto orig_name = std::string(field->name()); + bool decoded = decode_name(orig_name, field_name_str); + const std::string& name = decoded ? field_name_str : orig_name; + handler.Key(name.data(), name.size(), false); +@@ -205,7 +205,7 @@ bool PbToJsonConverter::Convert(const google::protobuf::Message& message, Handle + + // Write a json object corresponding to hold protobuf map + // such as {"key": value, ...} +- const std::string& orig_name = map_desc->name(); ++ const auto orig_name = std::string(map_desc->name()); + bool decoded = decode_name(orig_name, field_name_str); + const std::string& name = decoded ? field_name_str : orig_name; + handler.Key(name.data(), name.size(), false); +@@ -306,7 +306,7 @@ bool PbToJsonConverter::_PbFieldToJson( + handler.StartArray(); + if (_option.enum_option == OUTPUT_ENUM_BY_NAME) { + for (int index = 0; index < field_size; ++index) { +- const std::string& enum_name = reflection->GetRepeatedEnum( ++ const auto enum_name = reflection->GetRepeatedEnum( + message, field, index)->name(); + handler.String(enum_name.data(), enum_name.size(), false); + } +@@ -320,7 +320,7 @@ bool PbToJsonConverter::_PbFieldToJson( + + } else { + if (_option.enum_option == OUTPUT_ENUM_BY_NAME) { +- const std::string& enum_name = ++ const auto enum_name = + reflection->GetEnum(message, field)->name(); + handler.String(enum_name.data(), enum_name.size(), false); + } else { +diff --git a/src/json2pb/pb_to_json.h b/src/json2pb/pb_to_json.h +index 8de63517..8407c477 100644 +--- a/src/json2pb/pb_to_json.h ++++ b/src/json2pb/pb_to_json.h +@@ -93,7 +93,7 @@ bool ProtoMessageToJson(const google::protobuf::Message& message, + std::string* error = NULL); + + // See for details. +-using Pb2ProtoJsonOptions = google::protobuf::util::JsonOptions; ++using Pb2ProtoJsonOptions = google::protobuf::util::JsonPrintOptions; + + #if GOOGLE_PROTOBUF_VERSION >= 5026002 + #define AlwaysPrintPrimitiveFields(options) options.always_print_fields_with_no_presence +diff --git a/src/json2pb/protobuf_map.cpp b/src/json2pb/protobuf_map.cpp +index f552bf62..4b290007 100644 +--- a/src/json2pb/protobuf_map.cpp ++++ b/src/json2pb/protobuf_map.cpp +@@ -38,12 +38,12 @@ bool IsProtobufMap(const FieldDescriptor* field) { + if (NULL == key_desc + || key_desc->is_repeated() + || key_desc->cpp_type() != FieldDescriptor::CPPTYPE_STRING +- || strcmp(KEY_NAME, key_desc->name().c_str()) != 0) { ++ || strcmp(KEY_NAME, key_desc->name().data()) != 0) { + return false; + } + const FieldDescriptor* value_desc = entry_desc->field(VALUE_INDEX); + if (NULL == value_desc +- || strcmp(VALUE_NAME, value_desc->name().c_str()) != 0) { ++ || strcmp(VALUE_NAME, value_desc->name().data()) != 0) { + return false; + } + return true; +diff --git a/src/json2pb/protobuf_type_resolver.h b/src/json2pb/protobuf_type_resolver.h +index a73a4231..2445b9ec 100644 +--- a/src/json2pb/protobuf_type_resolver.h ++++ b/src/json2pb/protobuf_type_resolver.h +@@ -32,7 +32,7 @@ namespace json2pb { + + inline std::string GetTypeUrl(const google::protobuf::Message& message) { + return butil::string_printf(PROTOBUF_TYPE_URL_PREFIX"/%s", +- message.GetDescriptor()->full_name().c_str()); ++ message.GetDescriptor()->full_name().data()); + } + + // unique_ptr deleter for TypeResolver only deletes the object +diff --git a/src/mcpack2pb/generator.cpp b/src/mcpack2pb/generator.cpp +index 0fb78936..4f0dd1e9 100644 +--- a/src/mcpack2pb/generator.cpp ++++ b/src/mcpack2pb/generator.cpp +@@ -1391,13 +1391,13 @@ bool McpackToProtobuf::Generate(const google::protobuf::FileDescriptor* file, + if (!generate_parsing(d, ref_msgs, ref_maps, gimpl_printer)) { + ::butil::string_printf( + error, "Fail to generate parsing code for %s", +- d->full_name().c_str()); ++ d->full_name().data()); + return false; + } + if (!generate_serializing(d, ref_msgs, ref_maps, gimpl_printer)) { + ::butil::string_printf( + error, "Fail to generate serializing code for %s", +- d->full_name().c_str()); ++ d->full_name().data()); + return false; + } + std::string var_name = mcpack2pb::to_var_name(d->full_name()); diff --git a/ports/brpc/vcpkg.json b/ports/brpc/vcpkg.json index d7ed5e0d21..f6dbbfe79a 100644 --- a/ports/brpc/vcpkg.json +++ b/ports/brpc/vcpkg.json @@ -1,6 +1,7 @@ { "name": "brpc", "version": "1.15.0", + "port-version": 1, "description": "Industrial-grade RPC framework used throughout Baidu, with 1,000,000+ instances and thousands kinds of services, called \"baidu-rpc\" inside Baidu.", "homepage": "https://github.com/apache/brpc", "license": "Apache-2.0", diff --git a/ports/ecal/0009-protobuf-6.patch b/ports/ecal/0009-protobuf-6.patch new file mode 100644 index 0000000000..c280ae6047 --- /dev/null +++ b/ports/ecal/0009-protobuf-6.patch @@ -0,0 +1,258 @@ +diff --git a/contrib/ecalproto/include/ecal/protobuf/ecal_proto_hlp.h b/contrib/ecalproto/include/ecal/protobuf/ecal_proto_hlp.h +index f36195022..3c3772dc4 100644 +--- a/contrib/ecalproto/include/ecal/protobuf/ecal_proto_hlp.h ++++ b/contrib/ecalproto/include/ecal/protobuf/ecal_proto_hlp.h +@@ -41,7 +41,7 @@ namespace eCAL + { + namespace protobuf + { +- inline std::string CreateCompleteMessageName(const std::string& name_, const std::string& prefix_) ++ inline std::string CreateCompleteMessageName(absl::string_view name_, const std::string& prefix_) + { + std::string message_name; + if (!prefix_.empty()) +@@ -58,7 +58,7 @@ namespace protobuf + return element_.substr(0, element_.find('.')); + } + +- inline bool HasFile(const google::protobuf::FileDescriptorSet& fset_, const std::string& fname_) ++ inline bool HasFile(const google::protobuf::FileDescriptorSet& fset_, absl::string_view fname_) + { + for (auto findex = 0; findex < fset_.file_size(); ++findex) + { +@@ -140,18 +140,16 @@ namespace protobuf + + inline std::string GetProtoMessageTypeName(const google::protobuf::Message& msg_) + { +- return(std::string("proto:") + msg_.GetTypeName()); ++ return(std::string("proto:") + std::string(msg_.GetTypeName())); + } + + inline std::vector GetProtoMessageFieldNames(const std::vector& fields_) + { + std::vector names_vec; +- std::transform(fields_.begin(), fields_.end(), std::back_inserter(names_vec), +- [](const google::protobuf::FieldDescriptor* field) ++ for (const google::protobuf::FieldDescriptor* field : fields_) + { +- return field->name(); ++ names_vec.emplace_back(field->name()); + } +- ); + return names_vec; + } + +@@ -162,7 +160,7 @@ namespace protobuf + for (int i = 0; i < count; ++i) + { + auto field = descriptor->field(i); +- names_vec.push_back(field->name()); ++ names_vec.emplace_back(field->name()); + } + return names_vec; + } +diff --git a/contrib/ecalproto/src/ecal_proto_decoder.cpp b/contrib/ecalproto/src/ecal_proto_decoder.cpp +index 786ec7885..1e5ad490a 100644 +--- a/contrib/ecalproto/src/ecal_proto_decoder.cpp ++++ b/contrib/ecalproto/src/ecal_proto_decoder.cpp +@@ -48,11 +48,11 @@ namespace protobuf + + if (!is_Array_) + { +- visitor->ScalarMessageStart({ name_, prefix_, (int)index_, msg_.GetTypeName()}, GetProtoMessageFieldNames(descriptor)); ++ visitor->ScalarMessageStart({ name_, prefix_, (int)index_, std::string(msg_.GetTypeName())}, GetProtoMessageFieldNames(descriptor)); + } + else + { +- visitor->ArrayMessageStart({ name_, prefix_, (int)index_, msg_.GetTypeName()}, GetProtoMessageFieldNames(descriptor)); ++ visitor->ArrayMessageStart({ name_, prefix_, (int)index_, std::string(msg_.GetTypeName())}, GetProtoMessageFieldNames(descriptor)); + } + + std::string complete_message_name = CreateCompleteMessageName(name_, prefix_); +@@ -73,7 +73,7 @@ namespace protobuf + { + accept_complete_array = visitor->AcceptMessage(child_message_name + "[*]"); + fsize = ref_ptr->FieldSize(msg_, field); +- visitor->ArrayStart({ field->name(), complete_message_name, field->number(), field->type_name() }, field->type(), fsize); ++ visitor->ArrayStart({ std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name()) }, field->type(), fsize); + } + + const google::protobuf::FieldDescriptor::CppType fdt = field->cpp_type(); +@@ -82,7 +82,7 @@ namespace protobuf + case google::protobuf::FieldDescriptor::CPPTYPE_INT32: // TYPE_INT32, TYPE_SINT32, TYPE_SFIXED32 + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) +"]")) +@@ -94,13 +94,13 @@ namespace protobuf + } + else + { +- visitor->ScalarValueIntegral({ field->name(), complete_message_name, field->number(), field->type_name() }, ref_ptr->GetInt32(msg_, field)); ++ visitor->ScalarValueIntegral({ std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name()) }, ref_ptr->GetInt32(msg_, field)); + } + break; + case google::protobuf::FieldDescriptor::CPPTYPE_UINT32: // TYPE_UINT32, TYPE_FIXED32 + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) + "]")) +@@ -112,13 +112,13 @@ namespace protobuf + } + else + { +- visitor->ScalarValueIntegral({field->name(), complete_message_name, field->number(), field->type_name()}, ref_ptr->GetUInt32(msg_, field)); ++ visitor->ScalarValueIntegral({std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name())}, ref_ptr->GetUInt32(msg_, field)); + } + break; + case google::protobuf::FieldDescriptor::CPPTYPE_INT64: // TYPE_INT64, TYPE_SINT64, TYPE_SFIXED64 + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) + "]")) +@@ -130,13 +130,13 @@ namespace protobuf + } + else + { +- visitor->ScalarValueIntegral({field->name(), complete_message_name, field->number(), field->type_name() }, ref_ptr->GetInt64(msg_, field)); ++ visitor->ScalarValueIntegral({std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name()) }, ref_ptr->GetInt64(msg_, field)); + } + break; + case google::protobuf::FieldDescriptor::CPPTYPE_UINT64: // TYPE_UINT64, TYPE_FIXED64 + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) + "]")) +@@ -148,13 +148,13 @@ namespace protobuf + } + else + { +- visitor->ScalarValueIntegral({field->name(), complete_message_name, field->number(), field->type_name() }, ref_ptr->GetUInt64(msg_, field)); ++ visitor->ScalarValueIntegral({std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name()) }, ref_ptr->GetUInt64(msg_, field)); + } + break; + case google::protobuf::FieldDescriptor::CPPTYPE_FLOAT: // TYPE_FLOAT + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) + "]")) +@@ -166,13 +166,13 @@ namespace protobuf + } + else + { +- visitor->ScalarValueIntegral({field->name(), complete_message_name, field->number(), field->type_name() }, ref_ptr->GetFloat(msg_, field)); ++ visitor->ScalarValueIntegral({std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name()) }, ref_ptr->GetFloat(msg_, field)); + } + break; + case google::protobuf::FieldDescriptor::CPPTYPE_DOUBLE: // TYPE_DOUBLE + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) + "]")) +@@ -184,13 +184,13 @@ namespace protobuf + } + else + { +- visitor->ScalarValueIntegral({field->name(), complete_message_name, field->number(), field->type_name() }, ref_ptr->GetDouble(msg_, field)); ++ visitor->ScalarValueIntegral({std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name()) }, ref_ptr->GetDouble(msg_, field)); + } + break; + case google::protobuf::FieldDescriptor::CPPTYPE_BOOL: // TYPE_BOOL + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) + "]")) +@@ -202,31 +202,31 @@ namespace protobuf + } + else + { +- visitor->ScalarValueIntegral({field->name(), complete_message_name, field->number() , field->type_name()}, ref_ptr->GetBool(msg_, field)); ++ visitor->ScalarValueIntegral({std::string(field->name()), complete_message_name, field->number() , std::string(field->type_name())}, ref_ptr->GetBool(msg_, field)); + } + break; + case google::protobuf::FieldDescriptor::CPPTYPE_ENUM: // TYPE_ENUM + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) + "]")) + { + info.id = fnum; +- visitor->ArrayValueEnum(info, ref_ptr->GetRepeatedEnum(msg_, field, fnum)->number(), ref_ptr->GetRepeatedEnum(msg_, field, fnum)->name()); ++ visitor->ArrayValueEnum(info, ref_ptr->GetRepeatedEnum(msg_, field, fnum)->number(), std::string(ref_ptr->GetRepeatedEnum(msg_, field, fnum)->name())); + } + } + } + else + { +- visitor->ScalarValueEnum({field->name(), complete_message_name, field->number(), field->type_name() }, ref_ptr->GetEnum(msg_, field)->number(), ref_ptr->GetEnum(msg_, field)->name()); ++ visitor->ScalarValueEnum({std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name()) }, ref_ptr->GetEnum(msg_, field)->number(), std::string(ref_ptr->GetEnum(msg_, field)->name())); + } + break; + case google::protobuf::FieldDescriptor::CPPTYPE_STRING: // TYPE_STRING, TYPE_BYTES + if (field->is_repeated()) + { +- MessageInfo info{field->name(), complete_message_name, 0, field->type_name()}; ++ MessageInfo info{std::string(field->name()), complete_message_name, 0, std::string(field->type_name())}; + for (int fnum = 0; fnum < fsize; ++fnum) + { + if (accept_complete_array || visitor->AcceptMessage(child_message_name + "[" + std::to_string(fnum) + "]")) +@@ -247,11 +247,11 @@ namespace protobuf + { + if (field->type() == google::protobuf::FieldDescriptor::TYPE_STRING) + { +- visitor->ScalarValueString({field->name(), complete_message_name, field->number(), field->type_name()}, ref_ptr->GetString(msg_, field)); ++ visitor->ScalarValueString({std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name())}, ref_ptr->GetString(msg_, field)); + } + else // TYPE_BYTES + { +- visitor->ScalarValueBytes({field->name(), complete_message_name, field->number(), field->type_name() }, ref_ptr->GetString(msg_, field)); ++ visitor->ScalarValueBytes({std::string(field->name()), complete_message_name, field->number(), std::string(field->type_name()) }, ref_ptr->GetString(msg_, field)); + } + } + break; +@@ -285,7 +285,7 @@ namespace protobuf + msg.GetReflection()->ListFields(msg, &msg_fields); + + if (prefix_.find(field->name()) == std::string::npos || !msg_fields.empty()) +- ProcProtoMsg(msg, field->name(), complete_message_name, false, field->number()); ++ ProcProtoMsg(msg, std::string(field->name()), complete_message_name, false, field->number()); + } + } + break; +diff --git a/ecal/core/src/pubsub/ecal_proto_dyn_json_sub.cpp b/ecal/core/src/pubsub/ecal_proto_dyn_json_sub.cpp +index 0797a0b98..071414fa4 100644 +--- a/ecal/core/src/pubsub/ecal_proto_dyn_json_sub.cpp ++++ b/ecal/core/src/pubsub/ecal_proto_dyn_json_sub.cpp +@@ -158,7 +158,7 @@ namespace eCAL + if (msg_callback) + { + +- google::protobuf::util::JsonOptions options; ++ google::protobuf::util::JsonPrintOptions options; + #if GOOGLE_PROTOBUF_VERSION >= 5026000 + options.always_print_fields_with_no_presence = true; + #else diff --git a/ports/ecal/portfile.cmake b/ports/ecal/portfile.cmake index 94c51d6309..4ce9c50583 100644 --- a/ports/ecal/portfile.cmake +++ b/ports/ecal/portfile.cmake @@ -17,6 +17,7 @@ vcpkg_from_github( 0006-use-find_dependency-in-cmake-config.patch 0007-allow-static-build-of-core.patch 0008-protobuf-linkage.patch + 0009-protobuf-6.patch ) vcpkg_cmake_configure( diff --git a/ports/ecal/vcpkg.json b/ports/ecal/vcpkg.json index 8a84435bb2..3fea64b57a 100644 --- a/ports/ecal/vcpkg.json +++ b/ports/ecal/vcpkg.json @@ -1,6 +1,7 @@ { "name": "ecal", "version-semver": "5.13.4", + "port-version": 1, "description": "eCAL - enhanced Communication Abstraction Layer", "homepage": "https://eclipse-ecal.github.io/ecal/", "license": "Apache-2.0", diff --git a/ports/gamenetworkingsockets/portfile.cmake b/ports/gamenetworkingsockets/portfile.cmake index 9c57f34604..ff13d4d002 100644 --- a/ports/gamenetworkingsockets/portfile.cmake +++ b/ports/gamenetworkingsockets/portfile.cmake @@ -8,6 +8,7 @@ vcpkg_from_github( HEAD_REF master PATCHES fix-depend-protobuf.patch + protobuf-6.patch ) set(CRYPTO_BACKEND OpenSSL) diff --git a/ports/gamenetworkingsockets/protobuf-6.patch b/ports/gamenetworkingsockets/protobuf-6.patch new file mode 100644 index 0000000000..382a75a74f --- /dev/null +++ b/ports/gamenetworkingsockets/protobuf-6.patch @@ -0,0 +1,13 @@ +diff --git a/src/steamnetworkingsockets/steamnetworkingsockets_internal.h b/src/steamnetworkingsockets/steamnetworkingsockets_internal.h +index d5b0a97..ecaa53d 100644 +--- a/src/steamnetworkingsockets/steamnetworkingsockets_internal.h ++++ b/src/steamnetworkingsockets/steamnetworkingsockets_internal.h +@@ -674,7 +674,7 @@ extern bool BSteamNetworkingIdentityToProtobufInternal( const SteamNetworkingIde + #define SteamNetworkingIdentityToProtobuf( identity, msg, field_identity_string, field_identity_legacy_binary, field_legacy_steam_id ) \ + { SteamDatagramErrMsg identityToProtobufErrMsg; \ + if ( !BSteamNetworkingIdentityToProtobuf( identity, msg, field_identity_string, field_identity_legacy_binary, field_legacy_steam_id, identityToProtobufErrMsg ) ) { \ +- AssertMsg2( false, "Failed to serialize identity to %s message. %s", msg.GetTypeName().c_str(), identityToProtobufErrMsg ); \ ++ AssertMsg2( false, "Failed to serialize identity to %s message. %s", std::string(msg.GetTypeName()).c_str(), identityToProtobufErrMsg ); \ + } \ + } + diff --git a/ports/gamenetworkingsockets/vcpkg.json b/ports/gamenetworkingsockets/vcpkg.json index c291a058d6..33a5156143 100644 --- a/ports/gamenetworkingsockets/vcpkg.json +++ b/ports/gamenetworkingsockets/vcpkg.json @@ -1,7 +1,7 @@ { "name": "gamenetworkingsockets", "version": "1.4.1", - "port-version": 1, + "port-version": 2, "description": "GameNetworkingSockets is a basic transport layer for games.", "homepage": "https://github.com/ValveSoftware/GameNetworkingSockets", "license": "BSD-3-Clause", diff --git a/ports/grpc/00001-fix-uwp.patch b/ports/grpc/00001-fix-uwp.patch index 2fff405541..7bb38897ed 100644 --- a/ports/grpc/00001-fix-uwp.patch +++ b/ports/grpc/00001-fix-uwp.patch @@ -1,73 +1,73 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index fa5b2a0..45d6b78 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -284,6 +284,9 @@ if(UNIX) - endif() - if(WIN32) - set(_gRPC_PLATFORM_WINDOWS ON) -+ if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") -+ set(_gRPC_PLATFORM_UWP ON) -+ endif() - endif() - - if (APPLE AND NOT DEFINED CMAKE_CXX_STANDARD) -@@ -314,6 +317,9 @@ if(MSVC) - set(_gRPC_C_CXX_FLAGS "${_gRPC_C_CXX_FLAGS} /wd4267") - # TODO(jtattermusch): needed to build boringssl with VS2017, revisit later - set(_gRPC_C_CXX_FLAGS "${_gRPC_C_CXX_FLAGS} /wd4987 /wd4774 /wd4819 /wd4996 /wd4619") -+ if(_gRPC_PLATFORM_UWP) -+ add_definitions(-DGRPC_ARES=0) -+ endif() - # Silences thousands of trucation warnings - set(_gRPC_C_CXX_FLAGS "${_gRPC_C_CXX_FLAGS} /wd4503") - # Tell MSVC to build grpc using utf-8 -@@ -546,6 +552,10 @@ file(MAKE_DIRECTORY ${_gRPC_PROTO_GENS_DIR}) - # ``.proto`` files - # - function(protobuf_generate_grpc_cpp) -+ if(_gRPC_PLATFORM_UWP) -+ return() -+ endif() -+ - if(NOT ARGN) - message(SEND_ERROR "Error: PROTOBUF_GENERATE_GRPC_CPP() called without any proto files") - return() -@@ -668,6 +678,7 @@ if (gRPC_BUILD_GRPC_RUBY_PLUGIN) - list(APPEND _gRPC_PLUGIN_LIST grpc_ruby_plugin) - endif () - -+if(NOT _gRPC_PLATFORM_UWP) - add_custom_target(plugins - DEPENDS ${_gRPC_PLUGIN_LIST} - ) -@@ -683,6 +694,7 @@ add_custom_target(tools_cxx - add_custom_target(tools - DEPENDS tools_c tools_cxx) - -+endif() - protobuf_generate_grpc_cpp_with_import_path_correction( - src/core/ext/transport/chaotic_good/chaotic_good_frame.proto src/core/ext/transport/chaotic_good/chaotic_good_frame.proto - ) -diff --git a/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc b/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc -index 462ba6b..06e1a0c 100644 ---- a/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc -+++ b/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc -@@ -38,6 +38,7 @@ bool check_bios_data(const char*) { return false; } - bool check_windows_registry_product_name(HKEY root_key, - const char* reg_key_path, - const char* reg_key_name) { -+ #if !defined(WINAPI_FAMILY) || WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP - const size_t kProductNameBufferSize = 256; - char const expected_substr[] = "Google"; - -@@ -70,6 +71,9 @@ bool check_windows_registry_product_name(HKEY root_key, - } - - return strstr(buffer, expected_substr) != nullptr; -+#else -+ return false; -+#endif - } - - } // namespace internal +diff --git a/CMakeLists.txt b/CMakeLists.txt +index bc86c00463..e675fb3e5e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -292,6 +292,9 @@ if(UNIX) + endif() + if(WIN32) + set(_gRPC_PLATFORM_WINDOWS ON) ++ if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") ++ set(_gRPC_PLATFORM_UWP ON) ++ endif() + endif() + + if (APPLE AND NOT DEFINED CMAKE_CXX_STANDARD) +@@ -322,6 +325,9 @@ if(MSVC) + set(_gRPC_C_CXX_FLAGS "${_gRPC_C_CXX_FLAGS} /wd4267") + # TODO(jtattermusch): needed to build boringssl with VS2017, revisit later + set(_gRPC_C_CXX_FLAGS "${_gRPC_C_CXX_FLAGS} /wd4987 /wd4774 /wd4819 /wd4996 /wd4619") ++ if(_gRPC_PLATFORM_UWP) ++ add_definitions(-DGRPC_ARES=0) ++ endif() + # Silences thousands of trucation warnings + set(_gRPC_C_CXX_FLAGS "${_gRPC_C_CXX_FLAGS} /wd4503") + # Tell MSVC to build grpc using utf-8 +@@ -563,6 +569,10 @@ file(MAKE_DIRECTORY ${_gRPC_PROTO_GENS_DIR}) + # ``.proto`` files + # + function(protobuf_generate_grpc_cpp) ++ if(_gRPC_PLATFORM_UWP) ++ return() ++ endif() ++ + if(NOT ARGN) + message(SEND_ERROR "Error: PROTOBUF_GENERATE_GRPC_CPP() called without any proto files") + return() +@@ -685,6 +695,7 @@ if (gRPC_BUILD_GRPC_RUBY_PLUGIN) + list(APPEND _gRPC_PLUGIN_LIST grpc_ruby_plugin) + endif () + ++if(NOT _gRPC_PLATFORM_UWP) + add_custom_target(plugins + DEPENDS ${_gRPC_PLUGIN_LIST} + ) +@@ -700,6 +711,7 @@ add_custom_target(tools_cxx + add_custom_target(tools + DEPENDS tools_c tools_cxx) + ++endif() + protobuf_generate_grpc_cpp_with_import_path_correction( + src/core/ext/transport/chaotic_good/chaotic_good_frame.proto src/core/ext/transport/chaotic_good/chaotic_good_frame.proto + ) +diff --git a/src/core/credentials/transport/alts/check_gcp_environment_windows.cc b/src/core/credentials/transport/alts/check_gcp_environment_windows.cc +index dfbd5ec396..3b08ef0692 100644 +--- a/src/core/credentials/transport/alts/check_gcp_environment_windows.cc ++++ b/src/core/credentials/transport/alts/check_gcp_environment_windows.cc +@@ -40,6 +40,7 @@ bool check_bios_data(const char*) { return false; } + bool check_windows_registry_product_name(HKEY root_key, + const char* reg_key_path, + const char* reg_key_name) { ++ #if !defined(WINAPI_FAMILY) || WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP + const size_t kProductNameBufferSize = 256; + char const expected_substr[] = "Google"; + +@@ -72,6 +73,9 @@ bool check_windows_registry_product_name(HKEY root_key, + } + + return strstr(buffer, expected_substr) != nullptr; ++#else ++ return false; ++#endif + } + + } // namespace internal diff --git a/ports/grpc/00006-utf8-range.patch b/ports/grpc/00006-utf8-range.patch index e2677a4b09..9b3399c783 100644 --- a/ports/grpc/00006-utf8-range.patch +++ b/ports/grpc/00006-utf8-range.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2d1af5ce7d..791b933345 100644 +index bc86c00463..6f98d5e4c1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -4348,7 +4348,7 @@ if(gRPC_INSTALL) +@@ -4641,7 +4641,7 @@ if(gRPC_INSTALL) ) endif() @@ -11,7 +11,7 @@ index 2d1af5ce7d..791b933345 100644 add_library(utf8_range_lib third_party/utf8_range/utf8_range.c ) -@@ -4398,6 +4398,7 @@ if(gRPC_INSTALL) +@@ -4691,6 +4691,7 @@ if(gRPC_INSTALL) ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR} ) endif() @@ -19,51 +19,51 @@ index 2d1af5ce7d..791b933345 100644 if(gRPC_BUILD_TESTS) -@@ -51142,9 +51143,9 @@ generate_pkgconfig( +@@ -51977,9 +51978,9 @@ generate_pkgconfig( "high performance general RPC framework" "${gRPC_CORE_VERSION}" - "absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr" + "absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_node_hash_map absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr" - "libcares openssl re2 zlib" + "libcares openssl re2 zlib utf8_range" "-lgrpc" -- "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" -+ "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" +- "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" ++ "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" "grpc.pc") # grpc_unsecure .pc file -@@ -51153,9 +51154,9 @@ generate_pkgconfig( +@@ -51988,9 +51989,9 @@ generate_pkgconfig( "high performance general RPC framework without SSL" "${gRPC_CORE_VERSION}" - "absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr" + "absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_node_hash_map absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr" - "libcares zlib" + "libcares zlib utf8_range" "-lgrpc_unsecure" -- "-laddress_sorting -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" -+ "-laddress_sorting -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" +- "-laddress_sorting -lupb_textformat_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" ++ "-laddress_sorting -lupb_textformat_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" "grpc_unsecure.pc") # grpc++ .pc file -@@ -51164,9 +51165,9 @@ generate_pkgconfig( +@@ -51999,9 +52000,9 @@ generate_pkgconfig( "C++ wrapper for gRPC" "${gRPC_CPP_VERSION}" - "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc" + "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_dynamic_annotations absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_layout absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_node_hash_map absl_optional absl_prefetch absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_strings_internal absl_synchronization absl_time absl_type_traits absl_utility gpr grpc" - "libcares openssl re2 zlib" + "libcares openssl re2 zlib utf8_range" "-lgrpc++" -- "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" -+ "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" +- "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" ++ "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" "grpc++.pc") # grpc++_unsecure .pc file -@@ -51175,18 +51176,20 @@ generate_pkgconfig( +@@ -52010,18 +52011,20 @@ generate_pkgconfig( "C++ wrapper for gRPC without SSL" "${gRPC_CPP_VERSION}" - "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc_unsecure" + "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_node_hash_map absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc_unsecure" - "libcares zlib" + "libcares zlib utf8_range" "-lgrpc++_unsecure" -- "-laddress_sorting -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" -+ "-laddress_sorting -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" +- "-laddress_sorting -lupb_textformat_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" ++ "-laddress_sorting -lupb_textformat_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" "grpc++_unsecure.pc") +if(gRPC_BUILD_GRPCPP_OTEL_PLUGIN) @@ -72,12 +72,12 @@ index 2d1af5ce7d..791b933345 100644 "gRPC++ OpenTelemetry Plugin" "OpenTelemetry Plugin for gRPC C++" "${gRPC_CPP_VERSION}" - "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc grpc++ opentelemetry_api" + "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_dynamic_annotations absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_layout absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_node_hash_map absl_optional absl_prefetch absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_strings_internal absl_synchronization absl_time absl_type_traits absl_utility gpr grpc grpc++ opentelemetry_api" - "libcares openssl re2 zlib" + "libcares openssl re2 zlib utf8_range" "-lgrpcpp_otel_plugin" -- "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" -+ "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mem_lib -lupb_base_lib" +- "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" ++ "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" "grpcpp_otel_plugin.pc") +endif() diff --git a/cmake/gRPCConfig.cmake.in b/cmake/gRPCConfig.cmake.in diff --git a/ports/grpc/00017-add-src-upb.patch b/ports/grpc/00017-add-src-upb.patch deleted file mode 100644 index 8cb101b02f..0000000000 --- a/ports/grpc/00017-add-src-upb.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 391d113..3774159 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -3969,6 +3969,7 @@ add_library(upb_json_lib ${_gRPC_STATIC_WIN32} - third_party/upb/upb/reflection/method_def.c - third_party/upb/upb/reflection/oneof_def.c - third_party/upb/upb/reflection/service_def.c -+ third_party/upb/upb/reflection/cmake/google/protobuf/descriptor.upb_minitable.c - ) - - target_compile_features(upb_json_lib PUBLIC cxx_std_17) -@@ -3992,7 +3993,6 @@ endif() - target_include_directories(upb_json_lib - PUBLIC $ $ - PRIVATE -- ${CMAKE_CURRENT_SOURCE_DIR} - ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} - ${_gRPC_RE2_INCLUDE_DIR} - ${_gRPC_SSL_INCLUDE_DIR} -@@ -4226,6 +4226,7 @@ add_library(upb_textformat_lib ${_gRPC_STATIC_WIN32} - third_party/upb/upb/reflection/service_def.c - third_party/upb/upb/text/encode.c - third_party/upb/upb/text/internal/encode.c -+ third_party/upb/upb/reflection/cmake/google/protobuf/descriptor.upb_minitable.c - ) - - target_compile_features(upb_textformat_lib PUBLIC cxx_std_17) -@@ -4249,7 +4250,6 @@ endif() - target_include_directories(upb_textformat_lib - PUBLIC $ $ - PRIVATE -- ${CMAKE_CURRENT_SOURCE_DIR} - ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} - ${_gRPC_RE2_INCLUDE_DIR} - ${_gRPC_SSL_INCLUDE_DIR} diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake index 0c14253d19..f913e40246 100644 --- a/ports/grpc/portfile.cmake +++ b/ports/grpc/portfile.cmake @@ -6,7 +6,7 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO grpc/grpc REF "v${VERSION}" - SHA512 25783f75295919d0a077e3d0ff70ea2e651eaf107da2ebe8af40a584540f2f56aae0e04c7b809f3b1eb7d5adc3892f84464662d80b1234a111836f454ba84a18 + SHA512 6338448d7c0fc78c38480f1fafd7605d031b600a702df3771a9d1b1236da7bf97a93dbdbc2d93d12d395411dc2f2ac57587ad1b697c4b2a5ac56fb8af1184501 HEAD_REF master PATCHES 00001-fix-uwp.patch @@ -16,7 +16,6 @@ vcpkg_from_github( 00006-utf8-range.patch 00015-disable-download-archive.patch 00016-fix-plugin-targets.patch - 00017-add-src-upb.patch ) file(REMOVE_RECURSE "${SOURCE_PATH}/third_party/abseil-cpp" diff --git a/ports/grpc/vcpkg.json b/ports/grpc/vcpkg.json index 49b5da5627..aabf486c0b 100644 --- a/ports/grpc/vcpkg.json +++ b/ports/grpc/vcpkg.json @@ -1,7 +1,6 @@ { "name": "grpc", - "version-semver": "1.71.0", - "port-version": 3, + "version-semver": "1.76.0", "description": "gRPC is a modern, open source, high-performance remote procedure call (RPC) framework that can run anywhere. gRPC enables client and server applications to communicate transparently, and simplifies the building of connected systems.", "homepage": "https://github.com/grpc/grpc", "license": "Apache-2.0", diff --git a/ports/gz-common/portfile.cmake b/ports/gz-common/portfile.cmake index 5d70509014..abf4960961 100644 --- a/ports/gz-common/portfile.cmake +++ b/ports/gz-common/portfile.cmake @@ -6,11 +6,10 @@ ignition_modular_library( NAME ${PACKAGE_NAME} REF ${PORT}${VERSION_MAJOR}_${VERSION} VERSION ${VERSION} - SHA512 0c652285b32d2d2f781595416fd80d6e52a6b765ba968d0018accc3688f4ee9d6ce62dbea74b98fa43ea40641c47020246e13645eac7940aa483057c958d3807 + SHA512 e134d4ac034535652ad10aa29250987e35a0ecde1e3a48d6588a7c815ace6a3370c5f04876c2f72d499363722983d842e35b3133c83ba0c7678c4aaf97044a9a PATCHES gz-utils3-log.diff gz_remotery_vis.patch pthread.diff - 003-include-chrono.patch gdal-3.11.diff ) diff --git a/ports/gz-common/vcpkg.json b/ports/gz-common/vcpkg.json index 9694cbb044..2888294c84 100644 --- a/ports/gz-common/vcpkg.json +++ b/ports/gz-common/vcpkg.json @@ -1,7 +1,6 @@ { "name": "gz-common", - "version": "6.0.2", - "port-version": 2, + "version": "6.1.0", "description": "Common libraries for robotics applications", "homepage": "https://gazebosim.org/libs/common/", "license": "Apache-2.0", diff --git a/ports/gz-gui/portfile.cmake b/ports/gz-gui/portfile.cmake index 7cc2e76bb5..c7925932dd 100644 --- a/ports/gz-gui/portfile.cmake +++ b/ports/gz-gui/portfile.cmake @@ -10,7 +10,7 @@ ignition_modular_library( NAME ${PACKAGE_NAME} REF ${PORT}${VERSION_MAJOR}_${VERSION} VERSION ${VERSION} - SHA512 c90c72a700889289aec71582c6484c6c7a5d06cfa2d01f3634fa194b4271fc1723c6746ed82610dc8463c0f3eb146b46111ba90e2c30f44cafc63d1fa46b56f4 + SHA512 154d8e6149f762d7f32cebde2b41e17b42846b65a643a7216cabde93644ae821d626b10ba3a9faf9fe39c404976489cf726896e3373daf2598177b6738d76545 OPTIONS PATCHES dependencies.patch diff --git a/ports/gz-gui/vcpkg.json b/ports/gz-gui/vcpkg.json index d328db8cb4..aca02b6f33 100644 --- a/ports/gz-gui/vcpkg.json +++ b/ports/gz-gui/vcpkg.json @@ -1,7 +1,6 @@ { "name": "gz-gui", - "version": "9.0.0", - "port-version": 1, + "version": "9.0.2", "description": "Gazebo GUI builds on top of Qt to provide widgets which are useful when developing robotics applications, such as a 3D view, plots, dashboard, etc, and can be used together in a convenient unified interface.", "homepage": "https://gazebosim.org/libs/gui", "license": "Apache-2.0", diff --git a/ports/gz-physics/portfile.cmake b/ports/gz-physics/portfile.cmake index 65842a8acc..9e2cfefcd1 100644 --- a/ports/gz-physics/portfile.cmake +++ b/ports/gz-physics/portfile.cmake @@ -6,7 +6,7 @@ ignition_modular_library( NAME ${PACKAGE_NAME} REF ${PORT}${VERSION_MAJOR}_${VERSION} VERSION ${VERSION} - SHA512 8f62af3838e9189c3a93fea87991c390ddd4fa0d5c0ecb80f8347bfb2f5892ec73c4bca1ac05d083d2a5adcbbd698e76215d56498bd648834a46af7784e8ce57 + SHA512 a3c8d28e552ae1f4d0fa1639638c862a09324dda484f95c9c6edf5a77eeb37528e84d53e22e59a6e27ab5229ea1fd94cf45ccfb6b53ac759aad12c40e4fe6bd9 PATCHES dependencies.patch ) diff --git a/ports/gz-physics/vcpkg.json b/ports/gz-physics/vcpkg.json index 44f4174872..763816f022 100644 --- a/ports/gz-physics/vcpkg.json +++ b/ports/gz-physics/vcpkg.json @@ -1,7 +1,6 @@ { "name": "gz-physics", - "version": "8.0.0", - "port-version": 2, + "version": "8.3.0", "description": "component of Gazebo, provides an abstract physics interface designed to support simulation and rapid development of robot applications.", "homepage": "https://gazebosim.org/libs/physics", "license": "Apache-2.0", diff --git a/ports/gz-rendering/portfile.cmake b/ports/gz-rendering/portfile.cmake index f497d11ea8..c201698a7d 100644 --- a/ports/gz-rendering/portfile.cmake +++ b/ports/gz-rendering/portfile.cmake @@ -6,7 +6,7 @@ ignition_modular_library( NAME ${PACKAGE_NAME} REF ${PORT}${VERSION_MAJOR}_${VERSION} VERSION ${VERSION} - SHA512 0a0f20eadae0c2ac645f44fccc12842cefe01c07211466b1081abaf3a7390730467d0b8c1ecab9451e7e4e1cca30e3bd352a3e79b5c329323d8e70b7815f105a + SHA512 9fc6c9ffd7cfb6290d43ecbe572b41d78251af802400244b5ffa9b0ff5dc7e54462d169aec0a4009b52049df32650c6349d8d7a2287771746098512270f098c0 OPTIONS PATCHES fix-dependencies.patch diff --git a/ports/gz-rendering/vcpkg.json b/ports/gz-rendering/vcpkg.json index 5525d9320f..2ae7c306d6 100644 --- a/ports/gz-rendering/vcpkg.json +++ b/ports/gz-rendering/vcpkg.json @@ -1,6 +1,6 @@ { "name": "gz-rendering", - "version": "9.0.0", + "version": "9.5.0", "description": "Gazebo Rendering is a C++ library designed to provide an abstraction for different rendering engines. It offers unified APIs for creating 3D graphics applications.", "homepage": "https://gazebosim.org/libs/rendering", "license": "Apache-2.0", diff --git a/ports/gz-sensors/portfile.cmake b/ports/gz-sensors/portfile.cmake index e4fd306b7b..84b0783535 100644 --- a/ports/gz-sensors/portfile.cmake +++ b/ports/gz-sensors/portfile.cmake @@ -10,7 +10,7 @@ ignition_modular_library( NAME ${PACKAGE_NAME} REF ${PORT}${VERSION_MAJOR}_${VERSION} VERSION ${VERSION} - SHA512 237235ecc5000e2785e293f7aad65cb72690e46ba06ca6649add9a8baa24e0f7777e21f59fa0a254a4a853fa8f172cc4e9e58770e227bb9b6797949bd8bc06f6 + SHA512 e4a049dc7200f7fc5727c9e500abb48f6fcbec48555a2bae116bf7ff2d3d78a86e129a583243bcf598446fc6317b4bf7ffbf7c8dc64246a429a8987380f05afb OPTIONS PATCHES ) diff --git a/ports/gz-sensors/vcpkg.json b/ports/gz-sensors/vcpkg.json index ba06b650c7..bd253bb933 100644 --- a/ports/gz-sensors/vcpkg.json +++ b/ports/gz-sensors/vcpkg.json @@ -1,6 +1,6 @@ { "name": "gz-sensors", - "version": "9.0.0", + "version": "9.2.0", "description": "Component of Gazebo, provides numerous sensor models designed to generate realistic data from simulation environments.", "homepage": "https://gazebosim.org/libs/sensors", "license": "Apache-2.0", diff --git a/ports/gz-sim/portfile.cmake b/ports/gz-sim/portfile.cmake index edf4654bd2..0366965892 100644 --- a/ports/gz-sim/portfile.cmake +++ b/ports/gz-sim/portfile.cmake @@ -8,7 +8,7 @@ ignition_modular_library( NAME ${PACKAGE_NAME} REF ${PORT}${VERSION_MAJOR}_${VERSION} VERSION ${VERSION} - SHA512 4ac9debe27a41233c7c2116bd80f277ebe74f4ae639f06555cec4209bb7af6fe741197705fac222b4e00c8493daaf701b1eefee4ff639fdea70703bed80e0f8a + SHA512 45125f324d65114264bb57afb99b11f3dab6110f95dad673ec992735c1c958b8fff2daefe90465b3b731499adac8a7e8e790c2a8cbf1e1d73a75ad8362ea4d43 OPTIONS -DSKIP_PYBIND11=ON "-DPython3_EXECUTABLE=${PYTHON3}" diff --git a/ports/gz-sim/vcpkg.json b/ports/gz-sim/vcpkg.json index e9ccf97a08..741b07901a 100644 --- a/ports/gz-sim/vcpkg.json +++ b/ports/gz-sim/vcpkg.json @@ -1,7 +1,6 @@ { "name": "gz-sim", - "version": "9.0.0", - "port-version": 1, + "version": "9.5.0", "description": "Gazebo Sim is an open source robotics simulator.", "homepage": "https://gazebosim.org/libs/sim", "license": "Apache-2.0", diff --git a/ports/gz-tools/portfile.cmake b/ports/gz-tools/portfile.cmake index 121c531cbb..4a32fbb0b4 100644 --- a/ports/gz-tools/portfile.cmake +++ b/ports/gz-tools/portfile.cmake @@ -6,7 +6,7 @@ set(PACKAGE_NAME ${CMAKE_MATCH_1}) ignition_modular_library(NAME ${PACKAGE_NAME} REF ${PORT}${VERSION_MAJOR}_${VERSION} VERSION ${VERSION} - SHA512 0dc78d30876f2091c5a545feb70e769d65967c6f77bca7bc17aec62a5069601657fd4bf03f7a913ef5ad8bb58ca8aba4b2b911c6d4de4d46f827edb609acd61c + SHA512 d74eb686c05c62dea5303e629136a187aa09db67305cdc46577e8ff6dd420b70b074d25474669c9d3f1286d141d1e30cf9b4b32b726f0e6d2bae4dabc298160b PATCHES ) diff --git a/ports/gz-tools/vcpkg.json b/ports/gz-tools/vcpkg.json index 487dd69089..db45f4056d 100644 --- a/ports/gz-tools/vcpkg.json +++ b/ports/gz-tools/vcpkg.json @@ -1,6 +1,6 @@ { "name": "gz-tools", - "version": "2.0.1", + "version": "2.0.3", "description": "Gazebo tools provide the ign command line tool that accepts multiple subcommands.", "homepage": "https://gazebosim.org", "license": "Apache-2.0", diff --git a/ports/ogre-next/avoid-name-clashes.patch b/ports/ogre-next/avoid-name-clashes.patch deleted file mode 100644 index 300aa94cf8..0000000000 --- a/ports/ogre-next/avoid-name-clashes.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/CMake/FeatureSummary.cmake b/CMake/OgreFeatureSummary.cmake -similarity index 100% -rename from CMake/FeatureSummary.cmake -rename to CMake/OgreFeatureSummary.cmake -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 800e956..436c3d3 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -678,5 +678,5 @@ include(Packaging) - - - # Show feature summary --include(FeatureSummary) -+include(OgreFeatureSummary) - diff --git a/ports/ogre-next/fix-dependencies.patch b/ports/ogre-next/fix-dependencies.patch index df65fe426d..8475bbabcb 100644 --- a/ports/ogre-next/fix-dependencies.patch +++ b/ports/ogre-next/fix-dependencies.patch @@ -1,5 +1,5 @@ diff --git a/CMake/CMakeLists.txt b/CMake/CMakeLists.txt -index cdb097a..967d33b 100644 +index b0ca7c12f8..7e52ca668a 100644 --- a/CMake/CMakeLists.txt +++ b/CMake/CMakeLists.txt @@ -21,9 +21,7 @@ endif() @@ -12,13 +12,12 @@ index cdb097a..967d33b 100644 Packages/FindOGRE.cmake Utils/FindPkgMacros.cmake Utils/MacroLogFeature.cmake -@@ -45,12 +43,8 @@ endif () +@@ -44,11 +42,7 @@ if (OGRE_CONFIG_THREAD_PROVIDER STREQUAL "tbb") + endif () set(STATIC_INST_FILES - Packages/FindDirectX.cmake - Packages/FindFreeImage.cmake - Packages/FindFreetype.cmake - Packages/FindOpenGLES.cmake Packages/FindOpenGLES2.cmake - Packages/FindZLIB.cmake - Packages/FindZZip.cmake @@ -26,10 +25,10 @@ index cdb097a..967d33b 100644 ) if (WIN32) diff --git a/CMake/Dependencies.cmake b/CMake/Dependencies.cmake -index 74cb0f4..2cad26a 100644 +index 7dd36f2ab2..e83d040e83 100644 --- a/CMake/Dependencies.cmake +++ b/CMake/Dependencies.cmake -@@ -74,21 +74,24 @@ set(CMAKE_FRAMEWORK_PATH ${OGRE_DEP_SEARCH_PATH} ${CMAKE_FRAMEWORK_PATH}) +@@ -74,26 +74,32 @@ set(CMAKE_FRAMEWORK_PATH ${OGRE_DEP_SEARCH_PATH} ${CMAKE_FRAMEWORK_PATH}) ####################################################################### # Find zlib @@ -58,7 +57,15 @@ index 74cb0f4..2cad26a 100644 macro_log_feature(FREETYPE_FOUND "freetype" "Portable font engine" "http://www.freetype.org" FALSE "" "") find_package(Vulkan) -@@ -105,7 +108,7 @@ if (UNIX AND NOT APPLE AND NOT ANDROID AND NOT EMSCRIPTEN) + macro_log_feature(Vulkan_FOUND "vulkan-sdk" "Vulkan SDK" "https://vulkan.lunarg.com/" FALSE "" "") + ++find_package(glslang CONFIG) ++macro_log_feature(glslang_FOUND "glslang" "glslang" "https://github.com/KhronosGroup/glslang" FALSE "" "") ++ + # Find X11 + if (UNIX AND NOT APPLE AND NOT ANDROID AND NOT EMSCRIPTEN) + find_package(X11) +@@ -105,7 +111,7 @@ if (UNIX AND NOT APPLE AND NOT ANDROID AND NOT EMSCRIPTEN) endif () # Find rapidjson @@ -67,3 +74,16 @@ index 74cb0f4..2cad26a 100644 macro_log_feature(Rapidjson_FOUND "rapidjson" "C++ JSON parser" "https://rapidjson.org/" FALSE "" "") find_package(RenderDoc) +diff --git a/RenderSystems/Vulkan/CMakeLists.txt b/RenderSystems/Vulkan/CMakeLists.txt +index 2fc1859d86..ae8e4e29df 100644 +--- a/RenderSystems/Vulkan/CMakeLists.txt ++++ b/RenderSystems/Vulkan/CMakeLists.txt +@@ -35,7 +35,7 @@ include_directories( + include_directories( ${Vulkan_INCLUDE_DIRS} ) + + ogre_add_library(RenderSystem_Vulkan ${OGRE_LIB_TYPE} ${HEADER_FILES} ${SOURCE_FILES}) +-target_link_libraries(RenderSystem_Vulkan ${OGRE_NEXT}Main ${Vulkan_LIBRARIES}) ++target_link_libraries(RenderSystem_Vulkan ${OGRE_NEXT}Main ${Vulkan_LIBRARIES} glslang::glslang) + + if( OGRE_VULKAN_WINDOW_XCB ) + target_link_libraries(RenderSystem_Vulkan xcb-randr X11-xcb) diff --git a/ports/ogre-next/portfile.cmake b/ports/ogre-next/portfile.cmake index 9da922912c..6f376a67c7 100644 --- a/ports/ogre-next/portfile.cmake +++ b/ports/ogre-next/portfile.cmake @@ -6,11 +6,10 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO OGRECave/ogre-next REF v${VERSION} - SHA512 52ed2d2a3375c0d35f0dc695b986514484ad1d47966c5c18351d3b09913123b2487b9729738c6b8b1219c1a992a8c8509a2303e097a6eb26497e152a14d48830 + SHA512 2ef8f16517c96cc7ddb31986857e4d0002e33c2eeff845b4af0b8e5848c3e92289dc3b10ededbe66fb63ef6234cbee88ed513466182bd4e70d710d0507f98418 HEAD_REF master PATCHES toolchain_fixes.patch - avoid-name-clashes.patch fix-dependencies.patch ) file(REMOVE @@ -74,7 +73,6 @@ vcpkg_cmake_configure( -DOGRE_INSTALL_SAMPLES=OFF -DOGRE_INSTALL_TOOLS=OFF -DOGRE_INSTALL_VSPROPS=OFF - -DOGRE_SKIP_BOOST_SEARCHING=ON -DOGRE_STATIC=${OGRE_STATIC} -DOGRE_USE_NEW_PROJECT_NAME=ON "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}" diff --git a/ports/ogre-next/toolchain_fixes.patch b/ports/ogre-next/toolchain_fixes.patch index 6ea38a1e0e..12e0c5970b 100644 --- a/ports/ogre-next/toolchain_fixes.patch +++ b/ports/ogre-next/toolchain_fixes.patch @@ -1,20 +1,20 @@ diff --git a/CMake/CMakeLists.txt b/CMake/CMakeLists.txt -index 45d5935..cdb097a 100644 +index bcd74ff..b0ca7c1 100644 --- a/CMake/CMakeLists.txt +++ b/CMake/CMakeLists.txt @@ -18,6 +18,7 @@ if(WIN32 OR APPLE) else() - set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/${OGRE_NEXT_PREFIX}/cmake") + set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/${OGRE_NEXT_PREFIX}/cmake") endif() +set(OGRE_CMAKE_DIR "share/ogre-next") set(INST_FILES Packages/FindRapidjson.cmake diff --git a/CMake/ConfigureBuild.cmake b/CMake/ConfigureBuild.cmake -index 9d3b1b2..11fc345 100644 +index cd32ae3..171fe8f 100644 --- a/CMake/ConfigureBuild.cmake +++ b/CMake/ConfigureBuild.cmake -@@ -284,6 +284,11 @@ if (UNIX) +@@ -261,6 +261,11 @@ if (UNIX) # there is no pkgconfig file for freeimage, so we need to add that lib manually set(OGRE_ADDITIONAL_LIBS "${OGRE_ADDITIONAL_LIBS} -lfreeimage") configure_file(${OGRE_TEMPLATES_DIR}/OGREStatic.pc.in ${OGRE_BINARY_DIR}/pkgconfig/${OGRE_NEXT_PREFIX}.pc @ONLY) @@ -27,7 +27,7 @@ index 9d3b1b2..11fc345 100644 configure_file(${OGRE_TEMPLATES_DIR}/OGRE.pc.in ${OGRE_BINARY_DIR}/pkgconfig/${OGRE_NEXT_PREFIX}.pc @ONLY) endif () diff --git a/CMake/Utils/FindPkgMacros.cmake b/CMake/Utils/FindPkgMacros.cmake -index 53111e0..e0f6716 100644 +index 8365f58..d82de5e 100644 --- a/CMake/Utils/FindPkgMacros.cmake +++ b/CMake/Utils/FindPkgMacros.cmake @@ -81,6 +81,12 @@ endmacro (use_pkgconfig) @@ -44,7 +44,7 @@ index 53111e0..e0f6716 100644 set(${PREFIX} optimized ${${PREFIX}_REL} debug ${${PREFIX}_DBG}) elseif (${PREFIX}_REL) diff --git a/CMake/Utils/OgreConfigTargets.cmake b/CMake/Utils/OgreConfigTargets.cmake -index d8e0208..1fdb63c 100644 +index 930dd36..3e4c335 100644 --- a/CMake/Utils/OgreConfigTargets.cmake +++ b/CMake/Utils/OgreConfigTargets.cmake @@ -41,7 +41,7 @@ if (NOT OGRE_RUNTIME_OUTPUT) @@ -66,10 +66,10 @@ index d8e0208..1fdb63c 100644 set(OGRE_RELWDBG_PATH "") set(OGRE_MINSIZE_PATH "") diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2786e35..7a92a7b 100755 +index 93ec6f4..6380b15 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -299,7 +299,6 @@ if (OGRE_BUILD_PLATFORM_APPLE_IOS) +@@ -328,7 +328,6 @@ if (OGRE_BUILD_PLATFORM_APPLE_IOS) execute_process(COMMAND xcodebuild -version -sdk "${XCODE_ATTRIBUTE_SDKROOT}" Path | head -n 1 OUTPUT_VARIABLE CMAKE_OSX_SYSROOT) string(REGEX REPLACE "(\r?\n)+$" "" CMAKE_OSX_SYSROOT "${CMAKE_OSX_SYSROOT}") else() @@ -77,7 +77,7 @@ index 2786e35..7a92a7b 100755 endif() set(CMAKE_EXE_LINKER_FLAGS "-framework Foundation -framework CoreGraphics -framework QuartzCore -framework UIKit") -@@ -364,7 +363,6 @@ elseif (APPLE AND NOT OGRE_BUILD_PLATFORM_APPLE_IOS) +@@ -391,7 +390,6 @@ elseif (APPLE AND NOT OGRE_BUILD_PLATFORM_APPLE_IOS) execute_process(COMMAND xcodebuild -version -sdk "${XCODE_ATTRIBUTE_SDKROOT}" Path | head -n 1 OUTPUT_VARIABLE CMAKE_OSX_SYSROOT) string(REGEX REPLACE "(\r?\n)+$" "" CMAKE_OSX_SYSROOT "${CMAKE_OSX_SYSROOT}") else() @@ -86,10 +86,10 @@ index 2786e35..7a92a7b 100755 set( CMAKE_XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES ) diff --git a/OgreMain/CMakeLists.txt b/OgreMain/CMakeLists.txt -index b698b84..75fef2c 100644 +index d4ad520..0df005b 100644 --- a/OgreMain/CMakeLists.txt +++ b/OgreMain/CMakeLists.txt -@@ -439,7 +439,7 @@ if (APPLE) +@@ -424,7 +424,7 @@ if (APPLE) LINK_FLAGS "-framework IOKit -framework Cocoa -framework Carbon -framework OpenGL -framework CoreVideo" ) @@ -98,7 +98,7 @@ index b698b84..75fef2c 100644 add_custom_command(TARGET ${OGRE_NEXT}Main POST_BUILD COMMAND mkdir ARGS -p ${OGRE_BINARY_DIR}/lib/${OGRE_OSX_BUILD_CONFIGURATION}/Ogre.framework/Headers/Threading -@@ -494,6 +494,9 @@ use_precompiled_header(${OGRE_NEXT}Main +@@ -479,6 +479,9 @@ use_precompiled_header(${OGRE_NEXT}Main ) # install ${OGRE_NEXT}Main @@ -109,28 +109,15 @@ index b698b84..75fef2c 100644 foreach(HEADER_FILE ${HEADER_FILES}) string(REGEX REPLACE "((${CMAKE_CURRENT_SOURCE_DIR}|${OGRE_BINARY_DIR})/)?(include|src)/" "" RELATIVE_HEADER_FILE ${HEADER_FILE}) diff --git a/OgreMain/include/OgrePlatform.h b/OgreMain/include/OgrePlatform.h -index 6754c4e..6b1879d 100644 +index b5445ef..60fab21 100644 --- a/OgreMain/include/OgrePlatform.h +++ b/OgreMain/include/OgrePlatform.h -@@ -504,7 +504,7 @@ THE SOFTWARE. +@@ -508,7 +508,7 @@ THE SOFTWARE. - // Define whether or not Ogre compiled with NEON support. - #if OGRE_DOUBLE_PRECISION == 0 && OGRE_CPU == OGRE_CPU_ARM && \ -- ( defined(__aarch64__) || defined(__ARM_NEON__) || defined(_WIN32_WINNT_WIN8) && _WIN32_WINNT >= _WIN32_WINNT_WIN8 ) -+ ( defined(__aarch64__) || defined(__ARM_NEON__) || defined(_M_ARM64) || defined(_WIN32_WINNT_WIN8) && _WIN32_WINNT >= _WIN32_WINNT_WIN8 ) - #define __OGRE_HAVE_NEON 1 - #endif - #endif -diff --git a/OgreMain/include/OgreString.h b/OgreMain/include/OgreString.h -index 8693c57..b4179ea 100644 ---- a/OgreMain/include/OgreString.h -+++ b/OgreMain/include/OgreString.h -@@ -222,7 +222,7 @@ namespace Ogre { - # endif - #elif OGRE_COMPILER == OGRE_COMPILER_MSVC && OGRE_COMP_VER >= 1600 && OGRE_COMP_VER < 1910 && !defined(STLPORT) // VC++ 10.0 - typedef ::std::tr1::hash< _StringBase > _StringHash; --#elif !defined( _STLP_HASH_FUN_H ) -+#elif 0 - typedef stdext::hash_compare< _StringBase, std::less< _StringBase > > _StringHash; - #else - typedef std::hash< _StringBase > _StringHash; + // Define whether or not Ogre compiled with NEON support. + # if OGRE_DOUBLE_PRECISION == 0 && OGRE_CPU == OGRE_CPU_ARM && \ +- ( defined( __aarch64__ ) || defined( __ARM_NEON__ ) || \ ++ ( defined( __aarch64__ ) || defined( __ARM_NEON__ ) || defined(_M_ARM64) || \ + defined( _WIN32_WINNT_WIN8 ) && _WIN32_WINNT >= _WIN32_WINNT_WIN8 ) + # define __OGRE_HAVE_NEON 1 + # endif diff --git a/ports/ogre-next/vcpkg.json b/ports/ogre-next/vcpkg.json index 53528721c2..45678831ea 100644 --- a/ports/ogre-next/vcpkg.json +++ b/ports/ogre-next/vcpkg.json @@ -1,7 +1,6 @@ { "name": "ogre-next", - "version": "2.3.3", - "port-version": 3, + "version": "3.0.0", "description": "Ogre Next - scene-oriented, flexible 3D engine written in C++", "homepage": "https://github.com/OGRECave/ogre-next", "license": "MIT", diff --git a/ports/opencv3/0021-protobuf-6.patch b/ports/opencv3/0021-protobuf-6.patch new file mode 100644 index 0000000000..0b93f09595 --- /dev/null +++ b/ports/opencv3/0021-protobuf-6.patch @@ -0,0 +1,52 @@ +diff --git a/modules/dnn/src/caffe/caffe_importer.cpp b/modules/dnn/src/caffe/caffe_importer.cpp +index 03dff96464..ffd35ec7fc 100644 +--- a/modules/dnn/src/caffe/caffe_importer.cpp ++++ b/modules/dnn/src/caffe/caffe_importer.cpp +@@ -125,8 +125,8 @@ public: + { + const google::protobuf::UnknownField& field = unknownFields.field(i); + CV_Assert(field.type() == google::protobuf::UnknownField::TYPE_GROUP); +- std::string fieldName = field.group().field(0).length_delimited(); +- std::string fieldValue = field.group().field(1).length_delimited(); ++ std::string fieldName(field.group().field(0).length_delimited()); ++ std::string fieldValue(field.group().field(1).length_delimited()); + params.set(fieldName, fieldValue); + } + } +@@ -136,7 +136,7 @@ public: + const Reflection *refl = msg.GetReflection(); + int type = field->cpp_type(); + bool isRepeated = field->is_repeated(); +- const std::string &name = field->name(); ++ const std::string name(field->name()); + + #define SET_UP_FILED(getter, arrayConstr, gtype) \ + if (isRepeated) { \ +@@ -184,15 +184,15 @@ public: + int size = refl->FieldSize(msg, field); + std::vector buf(size); + for (int i = 0; i < size; i++) +- buf[i] = refl->GetRepeatedEnum(msg, field, i)->name(); ++ buf[i] = std::string(refl->GetRepeatedEnum(msg, field, i)->name()); + params.set(name, DictValue::arrayString(buf.begin(), size)); + } + else { +- params.set(name, refl->GetEnum(msg, field)->name()); ++ params.set(name, std::string(refl->GetEnum(msg, field)->name())); + } + break; + default: +- CV_Error(Error::StsError, "Unknown type \"" + String(field->type_name()) + "\" in prototxt"); ++ CV_Error(Error::StsError, "Unknown type \"" + String(std::string(field->type_name())) + "\" in prototxt"); + break; + } + } +@@ -212,7 +212,7 @@ public: + { + const FieldDescriptor *fd = msgDesc->field(fieldId); + +- if (!isInternal && !ends_with_param(fd->name())) ++ if (!isInternal && !ends_with_param(std::string(fd->name()))) + continue; + + const google::protobuf::UnknownFieldSet& unknownFields = msgRefl->GetUnknownFields(msg); diff --git a/ports/opencv3/0022-include-thread.patch b/ports/opencv3/0022-include-thread.patch new file mode 100644 index 0000000000..c90d88b54e --- /dev/null +++ b/ports/opencv3/0022-include-thread.patch @@ -0,0 +1,15 @@ +diff --git a/modules/dnn/src/dnn.cpp b/modules/dnn/src/dnn.cpp +index b4fa8933c3..224debea7a 100644 +--- a/modules/dnn/src/dnn.cpp ++++ b/modules/dnn/src/dnn.cpp +@@ -60,6 +60,10 @@ + #include + #include + ++#ifdef HAVE_HALIDE ++#include ++#endif ++ + namespace cv { + namespace dnn { + CV__DNN_EXPERIMENTAL_NS_BEGIN diff --git a/ports/opencv3/portfile.cmake b/ports/opencv3/portfile.cmake index 6663c6ad43..3f798cb6e7 100644 --- a/ports/opencv3/portfile.cmake +++ b/ports/opencv3/portfile.cmake @@ -22,6 +22,8 @@ vcpkg_from_github( 0015-fix-supportqnx.patch 0017-enable-gtk.patch 0019-enable-pkgconf.patch + 0021-protobuf-6.patch # 1db93911aeb65599f22db47d5d39f75bc94a821d + 0022-include-thread.patch ) vcpkg_find_acquire_program(PKGCONFIG) diff --git a/ports/opencv3/vcpkg.json b/ports/opencv3/vcpkg.json index 36842fb6c7..4df2b014a1 100644 --- a/ports/opencv3/vcpkg.json +++ b/ports/opencv3/vcpkg.json @@ -1,7 +1,7 @@ { "name": "opencv3", "version": "3.4.20", - "port-version": 1, + "port-version": 2, "description": "Open Source Computer Vision Library", "homepage": "https://github.com/opencv/opencv", "license": "BSD-3-Clause", diff --git a/ports/openvino/portfile.cmake b/ports/openvino/portfile.cmake index 2297e5d6d1..c787a43703 100644 --- a/ports/openvino/portfile.cmake +++ b/ports/openvino/portfile.cmake @@ -6,6 +6,7 @@ vcpkg_from_github( HEAD_REF master PATCHES onednn_gpu_includes.patch + protobuf-6.patch ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS diff --git a/ports/openvino/protobuf-6.patch b/ports/openvino/protobuf-6.patch new file mode 100644 index 0000000000..5a50af7ed4 --- /dev/null +++ b/ports/openvino/protobuf-6.patch @@ -0,0 +1,13 @@ +diff --git a/thirdparty/dependencies.cmake b/thirdparty/dependencies.cmake +index 3d7f137ec9..39114b4b2f 100644 +--- a/thirdparty/dependencies.cmake ++++ b/thirdparty/dependencies.cmake +@@ -359,7 +359,7 @@ if(ENABLE_OV_PADDLE_FRONTEND OR ENABLE_OV_ONNX_FRONTEND OR ENABLE_OV_TF_FRONTEND + # try to find newer version first (major is changed) + # see https://protobuf.dev/support/version-support/ and + # https://github.com/protocolbuffers/protobuf/commit/d61f75ff6db36b4f9c0765f131f8edc2f86310fa +- find_package(Protobuf 5.26.0 QUIET CONFIG) ++ find_package(Protobuf QUIET CONFIG) + if(NOT Protobuf_FOUND) + find_package(Protobuf 4.22.0 QUIET CONFIG) + endif() diff --git a/ports/openvino/vcpkg.json b/ports/openvino/vcpkg.json index 8abed2cef9..0456cfeea4 100644 --- a/ports/openvino/vcpkg.json +++ b/ports/openvino/vcpkg.json @@ -2,6 +2,7 @@ "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json", "name": "openvino", "version": "2025.3.0", + "port-version": 1, "maintainers": "OpenVINO Developers ", "summary": "This is a port for Open Visual Inference And Optimization toolkit for AI inference", "description": [ diff --git a/ports/protobuf/fix-abseil.patch b/ports/protobuf/fix-abseil.patch deleted file mode 100644 index 0314591de8..0000000000 --- a/ports/protobuf/fix-abseil.patch +++ /dev/null @@ -1,91 +0,0 @@ -diff --git a/src/google/protobuf/arena.h b/src/google/protobuf/arena.h -index 545fd5126..55b1ec83b 100644 ---- a/src/google/protobuf/arena.h -+++ b/src/google/protobuf/arena.h -@@ -32,7 +32,6 @@ using type_info = ::type_info; - #include "absl/base/optimization.h" - #include "absl/base/prefetch.h" - #include "absl/log/absl_check.h" --#include "absl/utility/internal/if_constexpr.h" - #include "google/protobuf/arena_align.h" - #include "google/protobuf/arena_allocation_policy.h" - #include "google/protobuf/port.h" -@@ -214,41 +213,31 @@ class PROTOBUF_EXPORT PROTOBUF_ALIGNAS(8) Arena final { - // otherwise, returns a heap-allocated object. - template - PROTOBUF_NDEBUG_INLINE static T* Create(Arena* arena, Args&&... args) { -- return absl::utility_internal::IfConstexprElse< -- is_arena_constructable::value>( -- // Arena-constructable -- [arena](auto&&... args) { -- using Type = std::remove_const_t; --#ifdef __cpp_if_constexpr -- // DefaultConstruct/CopyConstruct are optimized for messages, which -- // are both arena constructible and destructor skippable and they -- // assume much. Don't use these functions unless the invariants -- // hold. -- if constexpr (is_destructor_skippable::value) { -- constexpr auto construct_type = GetConstructType(); -- // We delegate to DefaultConstruct/CopyConstruct where appropriate -- // because protobuf generated classes have external templates for -- // these functions for code size reasons. When `if constexpr` is not -- // available always use the fallback. -- if constexpr (construct_type == ConstructType::kDefault) { -- return static_cast(DefaultConstruct(arena)); -- } else if constexpr (construct_type == ConstructType::kCopy) { -- return static_cast(CopyConstruct(arena, &args...)); -- } -- } --#endif -- return CreateArenaCompatible(arena, -- std::forward(args)...); -- }, -- // Non arena-constructable -- [arena](auto&&... args) { -- if (PROTOBUF_PREDICT_FALSE(arena == nullptr)) { -- return new T(std::forward(args)...); -- } -- return new (arena->AllocateInternal()) -- T(std::forward(args)...); -- }, -- std::forward(args)...); -+ if constexpr (is_arena_constructable::value) { -+ using Type = std::remove_const_t; -+ // DefaultConstruct/CopyConstruct are optimized for messages, which -+ // are both arena constructible and destructor skippable and they -+ // assume much. Don't use these functions unless the invariants -+ // hold. -+ if constexpr (is_destructor_skippable::value) { -+ constexpr auto construct_type = GetConstructType(); -+ // We delegate to DefaultConstruct/CopyConstruct where appropriate -+ // because protobuf generated classes have external templates for -+ // these functions for code size reasons. When `if constexpr` is not -+ // available always use the fallback. -+ if constexpr (construct_type == ConstructType::kDefault) { -+ return static_cast(DefaultConstruct(arena)); -+ } else if constexpr (construct_type == ConstructType::kCopy) { -+ return static_cast(CopyConstruct(arena, &args...)); -+ } -+ } -+ return CreateArenaCompatible(arena, std::forward(args)...); -+ } else { -+ if (ABSL_PREDICT_FALSE(arena == nullptr)) { -+ return new T(std::forward(args)...); -+ } -+ return new (arena->AllocateInternal()) T(std::forward(args)...); -+ } - } - - // API to delete any objects not on an arena. This can be used to safely -diff --git a/cmake/abseil-cpp.cmake b/cmake/abseil-cpp.cmake -index 1b64affa5..c45fb222a 100644 ---- a/cmake/abseil-cpp.cmake -+++ b/cmake/abseil-cpp.cmake -@@ -72,7 +72,6 @@ else() - absl::flat_hash_set - absl::function_ref - absl::hash -- absl::if_constexpr - absl::layout - absl::log_initialize - absl::log_globals diff --git a/ports/protobuf/fix-install-dirs.patch b/ports/protobuf/fix-install-dirs.patch index d9ea3b8bba..cd3f546a5d 100644 --- a/ports/protobuf/fix-install-dirs.patch +++ b/ports/protobuf/fix-install-dirs.patch @@ -1,5 +1,5 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 540c12253..320aaf72d 100644 +index 2b9ca8ed6..1881eb221 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,6 +13,7 @@ endif() @@ -8,5 +8,5 @@ index 540c12253..320aaf72d 100644 project(protobuf C CXX) +include(GNUInstallDirs) - if(protobuf_DEPRECATED_CMAKE_SUBDIRECTORY_USAGE) - if(CMAKE_PROJECT_NAME STREQUAL "protobuf") + if(CMAKE_CXX_STANDARD AND CMAKE_CXX_STANDARD LESS 17) + message(FATAL_ERROR "The minimum supported C++ standard is C++ 17") diff --git a/ports/protobuf/fix-mingw-tail-call.patch b/ports/protobuf/fix-mingw-tail-call.patch deleted file mode 100644 index dc9de46500..0000000000 --- a/ports/protobuf/fix-mingw-tail-call.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/src/google/protobuf/port_def.inc b/src/google/protobuf/port_def.inc -index 56f995e45e..bc7a01e534 100644 ---- a/src/google/protobuf/port_def.inc -+++ b/src/google/protobuf/port_def.inc -@@ -228,11 +228,12 @@ static_assert(PROTOBUF_ABSL_MIN(20230125, 3), - #endif - #if ABSL_HAVE_CPP_ATTRIBUTE(clang::musttail) && !defined(__arm__) && \ - !defined(_ARCH_PPC) && !defined(__wasm__) && \ -- !(defined(_MSC_VER) && defined(_M_IX86)) && !defined(__i386__) -+ !(defined(_MSC_VER) && defined(_M_IX86)) && !defined(__i386__) && !defined(__MINGW32__) - // Compilation fails on ARM32: b/195943306 - // Compilation fails on powerpc64le: b/187985113 - // Compilation fails on X86 Windows: - // https://github.com/llvm/llvm-project/issues/53271 -+// Compilation fails on MINGW: https://github.com/protocolbuffers/protobuf/issues/21625 - #define PROTOBUF_MUSTTAIL [[clang::musttail]] - #define PROTOBUF_TAILCALL true - #else diff --git a/ports/protobuf/fix-upb.patch b/ports/protobuf/fix-upb.patch new file mode 100644 index 0000000000..f8dace8b31 --- /dev/null +++ b/ports/protobuf/fix-upb.patch @@ -0,0 +1,22 @@ +diff --git a/cmake/install.cmake b/cmake/install.cmake +index 5e816b311..84211495b 100644 +--- a/cmake/install.cmake ++++ b/cmake/install.cmake +@@ -60,7 +60,7 @@ if (protobuf_BUILD_PROTOC_BINARIES) + install(TARGETS protoc EXPORT protobuf-targets + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT protoc + BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT protoc) +- if (protobuf_BUILD_LIBUPB) ++ if (0) + foreach (generator upb upbdefs upb_minitable) + list(APPEND _protobuf_binaries protoc-gen-${generator}) + install(TARGETS protoc-gen-${generator} EXPORT protobuf-targets +@@ -93,7 +93,7 @@ set(protobuf_HEADERS + ${descriptor_proto_proto_srcs} + ${plugin_proto_proto_srcs} + ) +-if (protobuf_BUILD_LIBUPB) ++if (0) + list(APPEND protobuf_HEADERS ${libupb_hdrs}) + # Manually install the bootstrap headers + install( diff --git a/ports/protobuf/fix-utf8-range.patch b/ports/protobuf/fix-utf8-range.patch index 72d671c4e2..4b0509f43c 100644 --- a/ports/protobuf/fix-utf8-range.patch +++ b/ports/protobuf/fix-utf8-range.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 15065d874..540c12253 100644 +index 2b9ca8ed6..a9798c35e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -302,6 +302,7 @@ endif (protobuf_BUILD_TESTS) +@@ -274,6 +274,7 @@ endif (protobuf_BUILD_TESTS) include(${protobuf_SOURCE_DIR}/cmake/abseil-cpp.cmake) if (protobuf_BUILD_PROTOBUF_BINARIES) @@ -11,25 +11,48 @@ index 15065d874..540c12253 100644 include(${protobuf_SOURCE_DIR}/cmake/libprotobuf-lite.cmake) if (NOT DEFINED protobuf_LIB_PROTOBUF_LITE) diff --git a/cmake/libprotobuf-lite.cmake b/cmake/libprotobuf-lite.cmake -index 9aa81fb88..699c92ddd 100644 +index 6a923f6c8..d910c8499 100644 --- a/cmake/libprotobuf-lite.cmake +++ b/cmake/libprotobuf-lite.cmake -@@ -46,4 +46,4 @@ set_target_properties(libprotobuf-lite PROPERTIES +@@ -43,4 +43,4 @@ set_target_properties(libprotobuf-lite PROPERTIES ) add_library(protobuf::libprotobuf-lite ALIAS libprotobuf-lite) -target_link_libraries(libprotobuf-lite PRIVATE utf8_validity) +target_link_libraries(libprotobuf-lite PRIVATE utf8_range::utf8_validity) diff --git a/cmake/libprotobuf.cmake b/cmake/libprotobuf.cmake -index 11c09b1bc..33ebac7cc 100644 +index 22df1fd14..ea9a1054b 100644 --- a/cmake/libprotobuf.cmake +++ b/cmake/libprotobuf.cmake -@@ -48,4 +48,4 @@ set_target_properties(libprotobuf PROPERTIES +@@ -45,4 +45,4 @@ set_target_properties(libprotobuf PROPERTIES ) add_library(protobuf::libprotobuf ALIAS libprotobuf) --target_link_libraries(libprotobuf PRIVATE utf8_validity) -+target_link_libraries(libprotobuf PRIVATE utf8_range::utf8_validity) +-target_link_libraries(libprotobuf PUBLIC utf8_validity) ++target_link_libraries(libprotobuf PUBLIC utf8_range::utf8_validity) +diff --git a/cmake/libupb.cmake b/cmake/libupb.cmake +index 1cbbaa209..4feb0345e 100644 +--- a/cmake/libupb.cmake ++++ b/cmake/libupb.cmake +@@ -48,4 +48,4 @@ set_target_properties(libupb PROPERTIES + VISIBILITY_INLINES_HIDDEN ON + ) + add_library(protobuf::libupb ALIAS libupb) +-target_link_libraries(libupb PRIVATE utf8_range) ++target_link_libraries(libupb PRIVATE utf8_range::utf8_range) +diff --git a/cmake/upb_generators.cmake b/cmake/upb_generators.cmake +index 7a55f851e..de897a079 100644 +--- a/cmake/upb_generators.cmake ++++ b/cmake/upb_generators.cmake +@@ -24,7 +24,7 @@ foreach(generator upb upbdefs upb_minitable) + endif() + target_link_libraries(protoc-gen-${generator} + libprotobuf +- utf8_validity ++ utf8_range::utf8_validity + ${protobuf_LIB_UPB} + ${protobuf_ABSL_USED_TARGETS} + ) diff --git a/cmake/utf8_range.cmake b/cmake/utf8_range.cmake index f411a8c5b..21bf8235b 100644 --- a/cmake/utf8_range.cmake diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake index 5198e983e4..13adc2ef0b 100644 --- a/ports/protobuf/portfile.cmake +++ b/ports/protobuf/portfile.cmake @@ -1,17 +1,16 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO protocolbuffers/protobuf - REF "v${VERSION}" - SHA512 46d60de626480f5bac256a09c57300fe5ec990664876edbe04c9385769b500ec88409da976acc28fcb2b2e987afc1bbbf5669f4fed4033c5464ab8bbd38723bc + REF "v33.4" + SHA512 540059a93721447cf4723bcca06e91c43a4399cb366c05bf84e9d8e2c439f3107ba17803f9d912549b54c471f2dcc4c9fc834145ec441dff31ca24f9a3543aa9 HEAD_REF master PATCHES fix-static-build.patch fix-default-proto-file-path.patch fix-utf8-range.patch fix-install-dirs.patch - fix-mingw-tail-call.patch - fix-abseil.patch fix-constinit-with-clang-cl.patch + fix-upb.patch ) string(COMPARE EQUAL "${TARGET_TRIPLET}" "${HOST_TRIPLET}" protobuf_BUILD_PROTOC_BINARIES) @@ -58,8 +57,8 @@ vcpkg_cmake_configure( -DCMAKE_INSTALL_CMAKEDIR:STRING=share/protobuf -Dprotobuf_BUILD_PROTOC_BINARIES=${protobuf_BUILD_PROTOC_BINARIES} -Dprotobuf_BUILD_LIBPROTOC=${protobuf_BUILD_LIBPROTOC} - -Dprotobuf_ABSL_PROVIDER=package - -Dprotobuf_BUILD_LIBUPB=OFF + -Dprotobuf_LOCAL_DEPENDENCIES_ONLY=ON + -Dprotobuf_BUILD_LIBUPB=${protobuf_BUILD_LIBPROTOC} ${FEATURE_OPTIONS} ) diff --git a/ports/protobuf/vcpkg.json b/ports/protobuf/vcpkg.json index c7016a7f8d..81291bd65f 100644 --- a/ports/protobuf/vcpkg.json +++ b/ports/protobuf/vcpkg.json @@ -1,7 +1,6 @@ { "name": "protobuf", - "version": "5.29.5", - "port-version": 3, + "version": "6.33.4", "description": "Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data.", "homepage": "https://github.com/protocolbuffers/protobuf", "license": "BSD-3-Clause", diff --git a/ports/pulsar-client-cpp/portfile.cmake b/ports/pulsar-client-cpp/portfile.cmake index af2a84e4d4..ae21b5826a 100644 --- a/ports/pulsar-client-cpp/portfile.cmake +++ b/ports/pulsar-client-cpp/portfile.cmake @@ -2,7 +2,7 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/pulsar-client-cpp REF "v${VERSION}" - SHA512 ea4b3730c8dadbcd58c79df67399da97650cd4aad203c6151bcf261a18dfc58d2b9a50449fe0298a0f7616cfc799529a777ebe5e8907a80a43114299288c86ab + SHA512 f0f8bdf3b28860e4a896e9a25df2135e8b83b910964a05b0d03e09b2b9294d6930efcfb67c211a9ee153ddac61ae3948300aa55488248dafa68ffd04854576db HEAD_REF main PATCHES disable-warnings.patch diff --git a/ports/pulsar-client-cpp/vcpkg.json b/ports/pulsar-client-cpp/vcpkg.json index 58784d5fb0..e8154611ee 100644 --- a/ports/pulsar-client-cpp/vcpkg.json +++ b/ports/pulsar-client-cpp/vcpkg.json @@ -1,6 +1,6 @@ { "name": "pulsar-client-cpp", - "version": "3.8.0", + "version": "4.0.0", "description": "The Apache Pulsar C++ library", "homepage": "https://github.com/apache/pulsar-client-cpp", "license": "Apache-2.0", diff --git a/ports/sdformat/portfile.cmake b/ports/sdformat/portfile.cmake index 5635b124e8..2d0bc1b0a9 100644 --- a/ports/sdformat/portfile.cmake +++ b/ports/sdformat/portfile.cmake @@ -4,7 +4,7 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO gazebosim/${PORT} REF ${PORT}${VERSION_MAJOR}_${VERSION} - SHA512 8e3bd85b5e567286110ed53ef4b800922a2c4df21aa61d4591141f6fb02d9629d8be0fb3e8bb9fb1e02c95e8064b381f1349d086e1e991aa91b512cff94cdf06 + SHA512 9738057cf85d81213f3eb2cce83d3ea18df53e228f477f8360682396acd7c4c72d4a16d55ec00dddded3553354a1b1792d7f525ec5ce4357649c11aca1a53038 HEAD_REF sdf${VERSION_MAJOR} PATCHES no-absolute.patch diff --git a/ports/sdformat/vcpkg.json b/ports/sdformat/vcpkg.json index 9381904b61..7acb3bd331 100644 --- a/ports/sdformat/vcpkg.json +++ b/ports/sdformat/vcpkg.json @@ -1,7 +1,6 @@ { "name": "sdformat", - "version": "15.1.1", - "port-version": 1, + "version": "15.3.0", "description": "Simulation Description Format (SDF) parser and description files.", "homepage": "http://sdformat.org/", "license": "Apache-2.0", diff --git a/ports/srpc/portfile.cmake b/ports/srpc/portfile.cmake index 98b5142ba0..3395d9f65b 100644 --- a/ports/srpc/portfile.cmake +++ b/ports/srpc/portfile.cmake @@ -1,19 +1,11 @@ -vcpkg_download_distfile( - PROTOBUF_V5_PATCH - URLS https://github.com/sogou/srpc/commit/bb882f98820bff7fa91aa83b29640fa753e11772.patch?full_index=1 - SHA512 dbb665626073860ee22ccaf6369c54635d4c689e0bfcd5f86a60a1738b4c9eb9fb8eaa393b3551c7e9860f54e9a0f8463df66b9fb736394172f3f46dc2681016 - FILENAME bb882f98820bff7fa91aa83b29640fa753e11772.patch -) - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO sogou/srpc REF v${VERSION} - SHA512 55c0ebbf30c24fdb40885792d5d3f1e183f27fcf13df6217053bec13cf9ed6359888351b20a792607b1f49df674b88bd148cf4c8addb1f610b1c59dd4eeba0f2 + SHA512 ff28eaf0b9cb02d63efb7419a3b10163096e16d0c750bc74da53f5253d45b08f5589b02cdf41177846d49814afd72fd45bc7797c50311f26d4fffc4b0fcecc14 HEAD_REF master PATCHES protobuf.patch - ${PROTOBUF_V5_PATCH} ) string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" SRPC_BUILD_STATIC_RUNTIME) @@ -23,7 +15,7 @@ vcpkg_cmake_configure( DISABLE_PARALLEL_CONFIGURE OPTIONS -DSRPC_BUILD_STATIC_RUNTIME=${SRPC_BUILD_STATIC_RUNTIME} - -DCMAKE_CXX_STANDARD=11 + -DCMAKE_CXX_STANDARD=17 MAYBE_UNUSED_VARIABLES SRPC_BUILD_STATIC_RUNTIME ) diff --git a/ports/srpc/protobuf.patch b/ports/srpc/protobuf.patch index 5dc40bda25..41f47b721a 100644 --- a/ports/srpc/protobuf.patch +++ b/ports/srpc/protobuf.patch @@ -1,148 +1,151 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 6c1aafc..97854a6 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -58,11 +58,10 @@ else () - endif () - - check_include_file_cxx("workflow/Workflow.h" WORKFLOW_INSTALLED) --if (NOT WORKFLOW_INSTALLED) -+if (0) - if (NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/workflow/workflow-config.cmake.in") - message( FATAL_ERROR "\nWorkflow" ${THIRD_PARTY_FATAL_MESSAGE} ) - endif () --else () - if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/workflow/workflow-config.cmake.in") - message("Workflow third_party FOUND. Use for source code dependencies.") - set(WORKFLOW_INSTALLED 0) -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 3b47ee6..15c8009 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -16,7 +16,7 @@ set(protobuf_MODULE_COMPATIBLE ON CACHE BOOL "") - if (WIN32) - find_package(Protobuf REQUIRED CONFIG) - else () -- find_package(Protobuf 3.5.0 REQUIRED) -+ find_package(Protobuf CONFIG REQUIRED) - endif () - - if (WIN32) -@@ -59,8 +59,8 @@ if (WIN32) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /MP /wd4200") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /wd4200 /Zc:__cplusplus /std:c++14") - else () -- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fPIC -pipe -std=gnu90") -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fPIC -pipe -std=c++11 -fno-exceptions") -+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fPIC -pipe") -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fPIC -pipe -fno-exceptions") - endif () - - add_subdirectory(generator) -@@ -100,6 +100,7 @@ if (WIN32) - ) - - add_dependencies(${PROJECT_NAME} LINK_HEADERS) -+ target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) - - target_compile_definitions( - ${PROJECT_NAME} PRIVATE -@@ -118,7 +119,6 @@ if (WIN32) - else () - set(STATIC_LIB_NAME ${PROJECT_NAME}-static) - set(SHARED_LIB_NAME ${PROJECT_NAME}-shared) -- get_filename_component(Protobuf_LIB_DIR ${Protobuf_LIBRARY} DIRECTORY) - link_directories(${OPENSSL_LINK_DIR} ${WORKFLOW_LIB_DIR} ${Protobuf_LIB_DIR}) - - add_library( -@@ -143,8 +143,10 @@ else () - $ - ) - -+ target_link_libraries(${SHARED_LIB_NAME} PUBLIC protobuf::libprotobuf) -+ target_link_libraries(${STATIC_LIB_NAME} PUBLIC protobuf::libprotobuf) - if (APPLE) -- target_link_libraries(${SHARED_LIB_NAME} -+ target_link_libraries(${SHARED_LIB_NAME} PUBLIC - OpenSSL::SSL - OpenSSL::Crypto - pthread -diff --git a/src/compress/CMakeLists.txt b/src/compress/CMakeLists.txt -index 818b505..c0d1dde 100644 ---- a/src/compress/CMakeLists.txt -+++ b/src/compress/CMakeLists.txt -@@ -51,3 +51,4 @@ else () - ) - endif() - -+target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) -diff --git a/src/generator/CMakeLists.txt b/src/generator/CMakeLists.txt -index c2d72d7..674c5d0 100644 ---- a/src/generator/CMakeLists.txt -+++ b/src/generator/CMakeLists.txt -@@ -8,6 +8,7 @@ set(SRC - ) - - add_executable(${PROJECT_NAME} ${SRC}) -+target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) - if (WIN32) - target_compile_definitions( - ${PROJECT_NAME} PRIVATE -diff --git a/src/http/CMakeLists.txt b/src/http/CMakeLists.txt -index 64c0377..1cf1dfc 100644 ---- a/src/http/CMakeLists.txt -+++ b/src/http/CMakeLists.txt -@@ -11,6 +11,7 @@ set(SRC - ) - - add_library(${PROJECT_NAME} OBJECT ${SRC}) -+target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) - if (WIN32) - target_compile_definitions( - ${PROJECT_NAME} PRIVATE -diff --git a/src/message/CMakeLists.txt b/src/message/CMakeLists.txt -index 952607f..f947540 100644 ---- a/src/message/CMakeLists.txt -+++ b/src/message/CMakeLists.txt -@@ -15,6 +15,7 @@ set(SRC - ) - - add_library(${PROJECT_NAME} OBJECT ${SRC}) -+target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) - if (WIN32) - target_compile_definitions( - ${PROJECT_NAME} PRIVATE -diff --git a/src/module/CMakeLists.txt b/src/module/CMakeLists.txt -index f0041a4..a9d9a65 100644 ---- a/src/module/CMakeLists.txt -+++ b/src/module/CMakeLists.txt -@@ -22,6 +22,7 @@ set(SRC - ) - - add_library(${PROJECT_NAME} OBJECT ${SRC}) -+target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) - - if (WIN32) - target_compile_definitions( -diff --git a/src/thrift/CMakeLists.txt b/src/thrift/CMakeLists.txt -index 1d1d61c..dc66723 100644 ---- a/src/thrift/CMakeLists.txt -+++ b/src/thrift/CMakeLists.txt -@@ -7,4 +7,4 @@ set(SRC - ) - - add_library(${PROJECT_NAME} OBJECT ${SRC}) -- -+target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) -diff --git a/srpc-config.cmake.in b/srpc-config.cmake.in -index 54b4323..1cdb97f 100644 ---- a/srpc-config.cmake.in -+++ b/srpc-config.cmake.in -@@ -3,7 +3,6 @@ - set(SRPC_VERSION "@srpc_VERSION@") - set_and_check(SRPC_INCLUDE_DIR "@PACKAGE_CONFIG_INC_DIR@") - set_and_check(SRPC_LIB_DIR "@PACKAGE_CONFIG_LIB_DIR@") --set_and_check(SRPC_BIN_DIR "@PACKAGE_CONFIG_BIN_DIR@") - - if (EXISTS "${CMAKE_CURRENT_LIST_DIR}/srpc-targets.cmake") - include ("${CMAKE_CURRENT_LIST_DIR}/srpc-targets.cmake") +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7d61f98..2681c22 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -58,11 +58,10 @@ else () + endif () + + check_include_file_cxx("workflow/Workflow.h" WORKFLOW_INSTALLED) +-if (NOT WORKFLOW_INSTALLED) ++if (0) + if (NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/workflow/workflow-config.cmake.in") + message( FATAL_ERROR "\nWorkflow" ${THIRD_PARTY_FATAL_MESSAGE} ) + endif () +-else () + if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/workflow/workflow-config.cmake.in") + message("Workflow third_party FOUND. Use for source code dependencies.") + set(WORKFLOW_INSTALLED 0) +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 7c2d5b3..89ff1ab 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -16,7 +16,7 @@ set(protobuf_MODULE_COMPATIBLE ON CACHE BOOL "") + if (WIN32) + find_package(Protobuf REQUIRED CONFIG) + else () +- find_package(Protobuf 3.5.0 REQUIRED) ++ find_package(Protobuf CONFIG REQUIRED) + endif () + + if (WIN32) +@@ -57,10 +57,10 @@ include_directories( + + if (WIN32) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /MP /wd4200") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /wd4200 /Zc:__cplusplus /std:c++14") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /wd4200 /Zc:__cplusplus") + else () +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fPIC -pipe -std=gnu90") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fPIC -pipe -std=c++14 -fno-exceptions") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fPIC -pipe") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fPIC -pipe -fno-exceptions") + endif () + + add_subdirectory(generator) +@@ -100,6 +100,7 @@ if (WIN32) + ) + + add_dependencies(${PROJECT_NAME} LINK_HEADERS) ++ target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) + + target_compile_definitions( + ${PROJECT_NAME} PRIVATE +@@ -118,7 +119,6 @@ if (WIN32) + else () + set(STATIC_LIB_NAME ${PROJECT_NAME}-static) + set(SHARED_LIB_NAME ${PROJECT_NAME}-shared) +- get_filename_component(Protobuf_LIB_DIR ${Protobuf_LIBRARY} DIRECTORY) + link_directories(${OPENSSL_LINK_DIR} ${WORKFLOW_LIB_DIR} ${Protobuf_LIB_DIR}) + + add_library( +@@ -143,8 +143,10 @@ else () + $ + ) + ++ target_link_libraries(${SHARED_LIB_NAME} PUBLIC protobuf::libprotobuf) ++ target_link_libraries(${STATIC_LIB_NAME} PUBLIC protobuf::libprotobuf) + if (APPLE) +- target_link_libraries(${SHARED_LIB_NAME} ++ target_link_libraries(${SHARED_LIB_NAME} PUBLIC + OpenSSL::SSL + OpenSSL::Crypto + pthread +diff --git a/src/compress/CMakeLists.txt b/src/compress/CMakeLists.txt +index 818b505..c0d1dde 100644 +--- a/src/compress/CMakeLists.txt ++++ b/src/compress/CMakeLists.txt +@@ -51,3 +51,4 @@ else () + ) + endif() + ++target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) +diff --git a/src/generator/CMakeLists.txt b/src/generator/CMakeLists.txt +index c2d72d7..674c5d0 100644 +--- a/src/generator/CMakeLists.txt ++++ b/src/generator/CMakeLists.txt +@@ -8,6 +8,7 @@ set(SRC + ) + + add_executable(${PROJECT_NAME} ${SRC}) ++target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) + if (WIN32) + target_compile_definitions( + ${PROJECT_NAME} PRIVATE +diff --git a/src/http/CMakeLists.txt b/src/http/CMakeLists.txt +index 64c0377..1cf1dfc 100644 +--- a/src/http/CMakeLists.txt ++++ b/src/http/CMakeLists.txt +@@ -11,6 +11,7 @@ set(SRC + ) + + add_library(${PROJECT_NAME} OBJECT ${SRC}) ++target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) + if (WIN32) + target_compile_definitions( + ${PROJECT_NAME} PRIVATE +diff --git a/src/message/CMakeLists.txt b/src/message/CMakeLists.txt +index 952607f..f947540 100644 +--- a/src/message/CMakeLists.txt ++++ b/src/message/CMakeLists.txt +@@ -15,6 +15,7 @@ set(SRC + ) + + add_library(${PROJECT_NAME} OBJECT ${SRC}) ++target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) + if (WIN32) + target_compile_definitions( + ${PROJECT_NAME} PRIVATE +diff --git a/src/module/CMakeLists.txt b/src/module/CMakeLists.txt +index f0041a4..a9d9a65 100644 +--- a/src/module/CMakeLists.txt ++++ b/src/module/CMakeLists.txt +@@ -22,6 +22,7 @@ set(SRC + ) + + add_library(${PROJECT_NAME} OBJECT ${SRC}) ++target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) + + if (WIN32) + target_compile_definitions( +diff --git a/src/thrift/CMakeLists.txt b/src/thrift/CMakeLists.txt +index 1d1d61c..dc66723 100644 +--- a/src/thrift/CMakeLists.txt ++++ b/src/thrift/CMakeLists.txt +@@ -7,4 +7,4 @@ set(SRC + ) + + add_library(${PROJECT_NAME} OBJECT ${SRC}) +- ++target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf) +diff --git a/srpc-config.cmake.in b/srpc-config.cmake.in +index 54b4323..1cdb97f 100644 +--- a/srpc-config.cmake.in ++++ b/srpc-config.cmake.in +@@ -3,7 +3,6 @@ + set(SRPC_VERSION "@srpc_VERSION@") + set_and_check(SRPC_INCLUDE_DIR "@PACKAGE_CONFIG_INC_DIR@") + set_and_check(SRPC_LIB_DIR "@PACKAGE_CONFIG_LIB_DIR@") +-set_and_check(SRPC_BIN_DIR "@PACKAGE_CONFIG_BIN_DIR@") + + if (EXISTS "${CMAKE_CURRENT_LIST_DIR}/srpc-targets.cmake") + include ("${CMAKE_CURRENT_LIST_DIR}/srpc-targets.cmake") diff --git a/ports/srpc/vcpkg.json b/ports/srpc/vcpkg.json index 10183cc2e8..eb9d52410a 100644 --- a/ports/srpc/vcpkg.json +++ b/ports/srpc/vcpkg.json @@ -1,9 +1,9 @@ { "name": "srpc", - "version-semver": "0.10.3", - "port-version": 1, + "version-semver": "0.10.4", "description": "RPC based on Sogou C++ Workflow", "homepage": "https://github.com/sogou/srpc", + "license": "Apache-2.0", "dependencies": [ "lz4", "openssl", diff --git a/ports/urdfdom/portfile.cmake b/ports/urdfdom/portfile.cmake index fdafe4f62d..51213792ca 100644 --- a/ports/urdfdom/portfile.cmake +++ b/ports/urdfdom/portfile.cmake @@ -1,5 +1,12 @@ vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) +vcpkg_download_distfile( + CSTDINT_PATCH + URLS https://github.com/ros/urdfdom/commit/4061dfa3c8b56a7affe042002aca9945441d1e93.patch?full_index=1 + SHA512 e04f5e8a400927a678282573ebe35752309ea1db32389744a91d5385f7540a4cacd4b00561380f5ce5130df3e155146965e4a4aa0e86442ee7eee045511fad0c + FILENAME 4061dfa3c8b56a7affe042002aca9945441d1e93.patch +) + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ros/urdfdom @@ -10,6 +17,7 @@ vcpkg_from_github( 0001_use_math_defines.patch 0005-fix-config-and-install.patch 0006-pc_file_for_windows.patch + "${CSTDINT_PATCH}" ) vcpkg_cmake_configure( diff --git a/ports/urdfdom/vcpkg.json b/ports/urdfdom/vcpkg.json index f9ef20c91b..75a2b4adfc 100644 --- a/ports/urdfdom/vcpkg.json +++ b/ports/urdfdom/vcpkg.json @@ -1,6 +1,7 @@ { "name": "urdfdom", "version": "3.1.1", + "port-version": 1, "description": "Provides core data structures and a simple XML parsers for populating the class data structures from an URDF file.", "homepage": "https://github.com/ros/urdfdom", "license": "BSD-3-Clause", diff --git a/ports/utf8-range/portfile.cmake b/ports/utf8-range/portfile.cmake index 79ac79b1c4..ca8c308ec5 100644 --- a/ports/utf8-range/portfile.cmake +++ b/ports/utf8-range/portfile.cmake @@ -1,10 +1,13 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +string(REGEX MATCH "^([0-9]+)\\.([0-9]+)\\.([0-9]+)" VERSION ${VERSION}) +set(VERSION "${CMAKE_MATCH_2}.${CMAKE_MATCH_3}") + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO protocolbuffers/protobuf REF "v${VERSION}" - SHA512 46d60de626480f5bac256a09c57300fe5ec990664876edbe04c9385769b500ec88409da976acc28fcb2b2e987afc1bbbf5669f4fed4033c5464ab8bbd38723bc + SHA512 540059a93721447cf4723bcca06e91c43a4399cb366c05bf84e9d8e2c439f3107ba17803f9d912549b54c471f2dcc4c9fc834145ec441dff31ca24f9a3543aa9 HEAD_REF main PATCHES fix-cmake.patch @@ -14,6 +17,7 @@ vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}/third_party/utf8_range" OPTIONS "-Dutf8_range_ENABLE_TESTS=off" + "-Dprotobuf_VERSION=${VERSION}" ) vcpkg_cmake_install() diff --git a/ports/utf8-range/vcpkg.json b/ports/utf8-range/vcpkg.json index 4aa0d598e1..5f58624273 100644 --- a/ports/utf8-range/vcpkg.json +++ b/ports/utf8-range/vcpkg.json @@ -1,6 +1,6 @@ { "name": "utf8-range", - "version": "5.29.5", + "version": "6.33.4", "description": "Fast UTF-8 validation with Range algorithm (NEON+SSE4+AVX2)", "homepage": "https://github.com/protocolbuffers/protobuf", "license": "MIT", diff --git a/ports/workflow/portfile.cmake b/ports/workflow/portfile.cmake index c4fe6e7344..14bd66064a 100644 --- a/ports/workflow/portfile.cmake +++ b/ports/workflow/portfile.cmake @@ -2,7 +2,7 @@ if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO sogou/workflow - REF "v${VERSION}-win" + REF "v0.11.8-win" SHA512 4d33904742c41b9cc5efb38a0950dd1f1ef5a0aacab1d3c1fda899244af5b63e734c74dcb5a231623518880b90fa1db5280bf03c4186e94d293fcd2ad6286929 HEAD_REF windows ) @@ -11,7 +11,7 @@ else() OUT_SOURCE_PATH SOURCE_PATH REPO sogou/workflow REF "v${VERSION}" - SHA512 ea90fb1a9c289a76dfa02b077cb0d99ec27157747f1b73d4437a089560a2659baebd463e2e6f699fbd44ec01e59bcd4d4b2f4556377dd57834f02bde0aefdca3 + SHA512 78996029efd23ca7843f4089d801729174bf8e6bcb1babbe6f557db0c0b4094069dce38328332ddcddffec6710e77cfd03110264d0c670b8cd42b23dda5061ed HEAD_REF master ) endif() diff --git a/ports/workflow/vcpkg.json b/ports/workflow/vcpkg.json index c8752be7a6..a4032188f8 100644 --- a/ports/workflow/vcpkg.json +++ b/ports/workflow/vcpkg.json @@ -1,6 +1,6 @@ { "name": "workflow", - "version": "0.11.8", + "version": "0.11.11", "description": "About C++ Parallel Computing and Asynchronous Networking Engine", "homepage": "https://github.com/sogou/workflow", "license": "Apache-2.0", diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt index 69948573ea..c574946f60 100644 --- a/scripts/ci.baseline.txt +++ b/scripts/ci.baseline.txt @@ -229,9 +229,6 @@ g3log:x64-android=fail gainput:arm-neon-android=fail gainput:arm64-android=fail gainput:x64-android=fail -gamenetworkingsockets:arm-neon-android=fail -gamenetworkingsockets:arm64-android=fail -gamenetworkingsockets:x64-android=fail gapp:arm-neon-android=fail # requires c++20 gapp:arm64-android=fail # requires c++20 gapp:arm64-osx=fail # requires c++20 @@ -274,6 +271,9 @@ gobject-introspection:x64-android=fail graphicsmagick:arm64-uwp=fail graphicsmagick:x64-uwp=fail # gsoap does not offer stable public source downloads +gamenetworkingsockets:arm-neon-android=fail +gamenetworkingsockets:arm64-android=fail +gamenetworkingsockets:x64-android=fail gsoap:x64-android=fail gsoap:x64-windows-release=skip gsoap:x64-windows-static-md=skip diff --git a/scripts/ci.feature.baseline.txt b/scripts/ci.feature.baseline.txt index 9b78079d6b..16a795e29a 100644 --- a/scripts/ci.feature.baseline.txt +++ b/scripts/ci.feature.baseline.txt @@ -245,9 +245,14 @@ usbmuxd:x64-windows-static-md=fail v8(windows)=fail # the version of v8 we have in the repo doesn't support VS2022 vectorclass:arm64-windows=fail winreg:x64-linux=fail -workflow:x64-uwp=fail zeroc-ice(uwp)=fail # ZeroC doesn't provide ARM tagets in project files. # Needs Java runtime +gz-tools:arm-neon-android=fail +gz-tools:arm64-android=fail +gz-tools:x64-android=fail +workflow:arm-neon-android=fail +workflow:arm64-android=fail +workflow:x64-android=fail zookeeper:arm64-osx=fail zookeeper:arm64-uwp=fail zookeeper:arm64-windows-static-md=fail @@ -260,7 +265,6 @@ zookeeper:x64-windows-static=fail zookeeper:x64-windows=fail zookeeper:x86-windows=fail - # testing all features would be too slow: aws-sdk-cpp[access-management,accessanalyzer,account,acm,acm-pca,alexaforbusiness,amp,amplify,amplifybackend,amplifyuibuilder,apigateway,apigatewaymanagementapi,apigatewayv2,appconfig,appconfigdata,appfabric,appflow,appintegrations,application-autoscaling,application-insights,applicationcostprofiler,appmesh,apprunner,appstream,appsync,arc-zonal-shift,athena,auditmanager,autoscaling,autoscaling-plans,awsmigrationhub,awstransfer,backup,backup-gateway,backupstorage,batch,billingconductor,braket,budgets,ce,chime,chime-sdk-identity,chime-sdk-media-pipelines,chime-sdk-meetings,chime-sdk-messaging,chime-sdk-voice,cleanrooms,cloud9,cloudcontrol,clouddirectory,cloudformation,cloudfront,cloudhsm,cloudhsmv2,cloudsearch,cloudsearchdomain,cloudtrail,cloudtrail-data,codeartifact,codebuild,codecatalyst,codecommit,codedeploy,codeguru-reviewer,codeguru-security,codeguruprofiler,codepipeline,codestar,codestar-connections,codestar-notifications,cognito-identity,cognito-idp,cognito-sync,comprehend,comprehendmedical,compute-optimizer,config,connect,connect-contact-lens,connectcampaigns,connectcases,connectparticipant,controltower,cur,customer-profiles,databrew,dataexchange,datapipeline,datasync,dax,detective,devicefarm,devops-guru,directconnect,discovery,dlm,dms,docdb,docdb-elastic,drs,ds,dynamodb,dynamodbstreams,ebs,ec2,ec2-instance-connect,ecr,ecr-public,ecs,eks,elastic-inference,elasticache,elasticbeanstalk,elasticfilesystem,elasticloadbalancing,elasticloadbalancingv2,elasticmapreduce,elastictranscoder,email,emr-containers,emr-serverless,entityresolution,es,eventbridge,events,evidently,finspace,finspace-data,firehose,fis,fms,forecast,forecastquery,frauddetector,fsx,gamelift,gamesparks,glacier,globalaccelerator,glue,grafana,greengrass,greengrassv2,groundstation,guardduty,health,healthlake,honeycode,iam,identity-management,identitystore,imagebuilder,importexport,inspector,inspector2,internetmonitor,iot,iot-data,iot-jobs-data,iot-roborunner,iot1click-devices,iot1click-projects,iotanalytics,iotdeviceadvisor,iotevents,iotevents-data,iotfleethub,iotfleetwise,iotsecuretunneling,iotsitewise,iotthingsgraph,iottwinmaker,iotwireless,ivs,ivs-realtime,ivschat,kafka,kafkaconnect,kendra,kendra-ranking,keyspaces,kinesis,kinesis-video-archived-media,kinesis-video-media,kinesis-video-signaling,kinesis-video-webrtc-storage,kinesisanalytics,kinesisanalyticsv2,kinesisvideo,kms,lakeformation,lambda,lex,lex-models,lexv2-models,lexv2-runtime,license-manager,license-manager-linux-subscriptions,license-manager-user-subscriptions,lightsail,location,logs,lookoutequipment,lookoutmetrics,lookoutvision,m2,machinelearning,macie,macie2,managedblockchain,managedblockchain-query,marketplace-catalog,marketplace-entitlement,marketplacecommerceanalytics,mediaconnect,mediaconvert,medialive,mediapackage,mediapackage-vod,mediapackagev2,mediastore,mediastore-data,mediatailor,medical-imaging,memorydb,meteringmarketplace,mgn,migration-hub-refactor-spaces,migrationhub-config,migrationhuborchestrator,migrationhubstrategy,mobile,monitoring,mq,mturk-requester,mwaa,neptune,neptunedata,network-firewall,networkmanager,nimble,oam,omics,opensearch,opensearchserverless,opsworks,opsworkscm,organizations,osis,outposts,panorama,payment-cryptography,payment-cryptography-data,pca-connector-ad,personalize,personalize-events,personalize-runtime,pi,pinpoint,pinpoint-email,pinpoint-sms-voice-v2,pipes,polly,pricing,privatenetworks,proton,qldb,qldb-session,queues,quicksight,ram,rbin,rds,rds-data,redshift,redshift-data,redshift-serverless,rekognition,resiliencehub,resource-explorer-2,resource-groups,resourcegroupstaggingapi,robomaker,rolesanywhere,route53,route53-recovery-cluster,route53-recovery-control-config,route53-recovery-readiness,route53domains,route53resolver,rum,s3,s3-crt,s3-encryption,s3control,s3outposts,sagemaker,sagemaker-a2i-runtime,sagemaker-edge,sagemaker-featurestore-runtime,sagemaker-geospatial,sagemaker-metrics,sagemaker-runtime,savingsplans,scheduler,schemas,sdb,secretsmanager,securityhub,securitylake,serverlessrepo,service-quotas,servicecatalog,servicecatalog-appregistry,servicediscovery,sesv2,shield,signer,simspaceweaver,sms,sms-voice,snow-device-management,snowball,sns,sqs,ssm,ssm-contacts,ssm-incidents,ssm-sap,sso,sso-admin,sso-oidc,states,storagegateway,sts,support,support-app,swf,synthetics,text-to-speech,textract,timestream-query,timestream-write,tnb,transcribe,transcribestreaming,transfer,translate,verifiedpermissions,voice-id,vpc-lattice,waf,waf-regional,wafv2,wellarchitected,wisdom,workdocs,worklink,workmail,workmailmessageflow,workspaces,workspaces-web,xray] = no-separate-feature-test embree[backface-culling,compact-polys,filter-function,geometry-curve,geometry-grid,geometry-instance,geometry-point,geometry-quad,geometry-subdivision,geometry-triangle,geometry-user,ray-mask,ray-packets] = no-separate-feature-test @@ -876,11 +880,10 @@ ogre[csharp](windows)=feature-fails # .NET workloads not installed in the build ogre[d3d9](windows)=feature-fails # DirectX 9 SDK not installed in the build lab ogre[python]=feature-fails # broken on all test platforms right now ogre-next:arm64-uwp = cascade -ogre-next:arm64-windows = cascade ogre-next:x64-uwp = cascade -ogre-next:x64-windows-static = cascade ogre-next[csharp]:arm64-osx = cascade ogre-next[d3d9]:arm64-osx = cascade +ogre-next[gl3plus]:arm64-osx = feature-fails ogre-next[java]:arm64-osx = cascade ogre-next[python]:arm64-osx = cascade ompl:arm64-uwp = cascade @@ -958,7 +961,6 @@ openvdb[nanovdb]:arm64-uwp = cascade openvdb[nanovdb](osx) = cascade openvino:arm64-uwp = cascade openvino:x64-uwp = cascade -openvino[npu]:x64-linux=cascade # dependency level-zero not supported openvpn3:arm64-uwp = cascade openvpn3:x64-uwp = cascade osg[nvtt](android | arm) = cascade @@ -1311,8 +1313,6 @@ sqlpp11-connector-mysql[mysql]:arm64-windows = cascade sqlpp11-connector-mysql[mysql]:x64-windows-static = cascade sqlpp11-connector-mysql[mysql]:x64-windows-static-md = cascade sqlpp11-connector-mysql[mysql]:x86-windows = cascade -srpc:arm64-uwp = cascade -srpc:x64-uwp = cascade symengine[llvm]:arm64-windows = cascade tensorpipe[cuda](osx) = cascade tgui[sdl2,sfml,tool](uwp) = cascade @@ -1467,6 +1467,9 @@ fftw3[openmp](windows & !static) = feature-fails # Linker missing symbols. See h flann[cuda,hdf5](x64 & windows & !uwp) = combination-fails flashlight-cpu = fail # CMake Error: INSTALL(EXPORT) given unknown export "flashlightTargets". See https://github.com/microsoft/vcpkg/issues/32098 flashlight-sequence[openmp](osx) = feature-fails # No openmp on osx +gamenetworkingsockets:arm-neon-android=fail +gamenetworkingsockets:arm64-android=fail +gamenetworkingsockets:x64-android=fail gapp(android) = fail # requires c++20 gapp(osx) = fail # requires c++20 gegl(osx) = fail # meson bug on osx. See https://github.com/microsoft/vcpkg/issues/44411 @@ -1532,7 +1535,6 @@ opencv2[python](osx) = feature-fails # requires python2 opencv2[world] = feature-fails # See https://github.com/microsoft/vcpkg/issues/29943 opencv3[dc1394](linux | osx) = feature-fails opencv3[ffmpeg] = feature-fails # ffmpeg5+ is not supported under opencv3. See https://github.com/microsoft/vcpkg/issues/32150 -opencv3[halide](linux | osx) = feature-fails # Same as opencv4[halide] opencv3[opengl](android) = feature-fails opencv3[opengl](linux | osx) = no-separate-feature-test # needs gui (gtk | qt) opencv4[core,cuda,world](windows)=options diff --git a/versions/a-/arcus.json b/versions/a-/arcus.json index 517b7f8f80..aab04b1655 100644 --- a/versions/a-/arcus.json +++ b/versions/a-/arcus.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "8228a6607d85f48fb8bfabd040a25c4b2e377136", + "version-semver": "4.10.0", + "port-version": 5 + }, { "git-tree": "2b141efb5eac8763acdbb6e486c018a2393b4486", "version-semver": "4.10.0", diff --git a/versions/b-/braft.json b/versions/b-/braft.json index d97b2daab6..6020aaf8ac 100644 --- a/versions/b-/braft.json +++ b/versions/b-/braft.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "8e216ee57fd2f228d5172bc6605aeb6d3d912433", + "version-date": "2021-26-04", + "port-version": 6 + }, { "git-tree": "72682af00e63de8f23eb8242e17212a0777deb25", "version-date": "2021-26-04", diff --git a/versions/b-/brpc.json b/versions/b-/brpc.json index ed925fcf26..29442867c3 100644 --- a/versions/b-/brpc.json +++ b/versions/b-/brpc.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "89120d70f29486c1ce7bf96454649b85d895fcdf", + "version": "1.15.0", + "port-version": 1 + }, { "git-tree": "e7af27df421f6a9df671dc6776952ad98bbef626", "version": "1.15.0", diff --git a/versions/baseline.json b/versions/baseline.json index 97c935acb7..1d2e3cd119 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -222,7 +222,7 @@ }, "arcus": { "baseline": "4.10.0", - "port-version": 4 + "port-version": 5 }, "arg-router": { "baseline": "1.4.0", @@ -1470,7 +1470,7 @@ }, "braft": { "baseline": "2021-26-04", - "port-version": 5 + "port-version": 6 }, "breakpad": { "baseline": "2024-02-16", @@ -1486,7 +1486,7 @@ }, "brpc": { "baseline": "1.15.0", - "port-version": 0 + "port-version": 1 }, "brunocodutra-metal": { "baseline": "2.1.4", @@ -2686,7 +2686,7 @@ }, "ecal": { "baseline": "5.13.4", - "port-version": 0 + "port-version": 1 }, "ecaludp": { "baseline": "0.1.2", @@ -3238,7 +3238,7 @@ }, "gamenetworkingsockets": { "baseline": "1.4.1", - "port-version": 1 + "port-version": 2 }, "gamma": { "baseline": "gamma-2018-01-27", @@ -3521,8 +3521,8 @@ "port-version": 0 }, "grpc": { - "baseline": "1.71.0", - "port-version": 3 + "baseline": "1.76.0", + "port-version": 0 }, "grppi": { "baseline": "0.4.0", @@ -3613,8 +3613,8 @@ "port-version": 6 }, "gz-common": { - "baseline": "6.0.2", - "port-version": 2 + "baseline": "6.1.0", + "port-version": 0 }, "gz-common5": { "baseline": "5.4.1", @@ -3629,8 +3629,8 @@ "port-version": 1 }, "gz-gui": { - "baseline": "9.0.0", - "port-version": 1 + "baseline": "9.0.2", + "port-version": 0 }, "gz-gui7": { "baseline": "7.2.1", @@ -3653,8 +3653,8 @@ "port-version": 1 }, "gz-physics": { - "baseline": "8.0.0", - "port-version": 2 + "baseline": "8.3.0", + "port-version": 0 }, "gz-physics6": { "baseline": "6.5.1", @@ -3669,7 +3669,7 @@ "port-version": 1 }, "gz-rendering": { - "baseline": "9.0.0", + "baseline": "9.5.0", "port-version": 0 }, "gz-rendering7": { @@ -3677,7 +3677,7 @@ "port-version": 2 }, "gz-sensors": { - "baseline": "9.0.0", + "baseline": "9.2.0", "port-version": 0 }, "gz-sensors7": { @@ -3685,11 +3685,11 @@ "port-version": 1 }, "gz-sim": { - "baseline": "9.0.0", - "port-version": 1 + "baseline": "9.5.0", + "port-version": 0 }, "gz-tools": { - "baseline": "2.0.1", + "baseline": "2.0.3", "port-version": 0 }, "gz-tools2": { @@ -7121,8 +7121,8 @@ "port-version": 0 }, "ogre-next": { - "baseline": "2.3.3", - "port-version": 3 + "baseline": "3.0.0", + "port-version": 0 }, "ois": { "baseline": "1.5.1", @@ -7226,7 +7226,7 @@ }, "opencv3": { "baseline": "3.4.20", - "port-version": 1 + "port-version": 2 }, "opencv4": { "baseline": "4.12.0", @@ -7342,7 +7342,7 @@ }, "openvino": { "baseline": "2025.3.0", - "port-version": 0 + "port-version": 1 }, "openvpn3": { "baseline": "3.10", @@ -7845,8 +7845,8 @@ "port-version": 0 }, "protobuf": { - "baseline": "5.29.5", - "port-version": 3 + "baseline": "6.33.4", + "port-version": 0 }, "protobuf-c": { "baseline": "1.5.2", @@ -7909,7 +7909,7 @@ "port-version": 1 }, "pulsar-client-cpp": { - "baseline": "3.8.0", + "baseline": "4.0.0", "port-version": 0 }, "pulseaudio": { @@ -8917,8 +8917,8 @@ "port-version": 0 }, "sdformat": { - "baseline": "15.1.1", - "port-version": 1 + "baseline": "15.3.0", + "port-version": 0 }, "sdformat13": { "baseline": "13.6.0", @@ -9473,8 +9473,8 @@ "port-version": 0 }, "srpc": { - "baseline": "0.10.3", - "port-version": 1 + "baseline": "0.10.4", + "port-version": 0 }, "sse2neon": { "baseline": "1.9.1", @@ -10206,7 +10206,7 @@ }, "urdfdom": { "baseline": "3.1.1", - "port-version": 0 + "port-version": 1 }, "urdfdom-headers": { "baseline": "1.1.1", @@ -10237,7 +10237,7 @@ "port-version": 4 }, "utf8-range": { - "baseline": "5.29.5", + "baseline": "6.33.4", "port-version": 0 }, "utf8h": { @@ -10729,7 +10729,7 @@ "port-version": 3 }, "workflow": { - "baseline": "0.11.8", + "baseline": "0.11.11", "port-version": 0 }, "wpilib": { diff --git a/versions/e-/ecal.json b/versions/e-/ecal.json index 9775edf899..e84bb976ec 100644 --- a/versions/e-/ecal.json +++ b/versions/e-/ecal.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "aafc1eb6023b6eb1a41c4a22bb72003b9b281f4c", + "version-semver": "5.13.4", + "port-version": 1 + }, { "git-tree": "a8c5a410198bed18e75075bae53595116a85725d", "version-semver": "5.13.4", diff --git a/versions/g-/gamenetworkingsockets.json b/versions/g-/gamenetworkingsockets.json index 3a34c2c153..cf9eff05f6 100644 --- a/versions/g-/gamenetworkingsockets.json +++ b/versions/g-/gamenetworkingsockets.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "96aeec88d1035ce7acb7ba62e78e27a077df6aa6", + "version": "1.4.1", + "port-version": 2 + }, { "git-tree": "75eaecf85e526c7de535e77ac6da7025c8e4020f", "version": "1.4.1", diff --git a/versions/g-/grpc.json b/versions/g-/grpc.json index 00042919f2..c27e799d1b 100644 --- a/versions/g-/grpc.json +++ b/versions/g-/grpc.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "2d6fb875aff67210f8392461e050756b4cb8bd2f", + "version-semver": "1.76.0", + "port-version": 0 + }, { "git-tree": "daebe29c41aa900ce183614afe15c73b3ca4f643", "version-semver": "1.71.0", diff --git a/versions/g-/gz-common.json b/versions/g-/gz-common.json index 0ec682d3a8..d40d644842 100644 --- a/versions/g-/gz-common.json +++ b/versions/g-/gz-common.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "e744ce9dfad415411c44017037cf85f7c5a80979", + "version": "6.1.0", + "port-version": 0 + }, { "git-tree": "a855abe0b29abb138e881bd4d15ea42157b606f3", "version": "6.0.2", diff --git a/versions/g-/gz-gui.json b/versions/g-/gz-gui.json index d105d7c967..e9d11fe337 100644 --- a/versions/g-/gz-gui.json +++ b/versions/g-/gz-gui.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "44b5628ed98e9c69b529177c6c2c06f4a25c28dc", + "version": "9.0.2", + "port-version": 0 + }, { "git-tree": "ff1310cb6e15487d525ff301ccafad1af6a66c46", "version": "9.0.0", diff --git a/versions/g-/gz-physics.json b/versions/g-/gz-physics.json index bda551d8dc..c17fd2e504 100644 --- a/versions/g-/gz-physics.json +++ b/versions/g-/gz-physics.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "a12c41131692785c6c7f99f6f8c925681766c904", + "version": "8.3.0", + "port-version": 0 + }, { "git-tree": "fd8dc5f9e757558dcdfebcaf488883bd8c973a0f", "version": "8.0.0", diff --git a/versions/g-/gz-rendering.json b/versions/g-/gz-rendering.json index 14e34440a4..013550988c 100644 --- a/versions/g-/gz-rendering.json +++ b/versions/g-/gz-rendering.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "9c0332b76dd24ea75d2384ea6f320d28db2faf44", + "version": "9.5.0", + "port-version": 0 + }, { "git-tree": "b7651382a17f484f80c2259c3fde3fc0dd49fa88", "version": "9.0.0", diff --git a/versions/g-/gz-sensors.json b/versions/g-/gz-sensors.json index d2d72e2279..07b87cd6e3 100644 --- a/versions/g-/gz-sensors.json +++ b/versions/g-/gz-sensors.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "1e29d0c7a7fa6ed99a92a07886f2735cf994625a", + "version": "9.2.0", + "port-version": 0 + }, { "git-tree": "ebf9b2acdb4d027ddb9878ce193dc8534eb7cf70", "version": "9.0.0", diff --git a/versions/g-/gz-sim.json b/versions/g-/gz-sim.json index ce6588f5e4..7501856cc5 100644 --- a/versions/g-/gz-sim.json +++ b/versions/g-/gz-sim.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "daf4ff25d1f460f4197c55b870e92cf174cd4353", + "version": "9.5.0", + "port-version": 0 + }, { "git-tree": "30f5f5585d79bcf9abc50e4b1ddce5c8030bf464", "version": "9.0.0", diff --git a/versions/g-/gz-tools.json b/versions/g-/gz-tools.json index 58ee36f16d..63b5d2e865 100644 --- a/versions/g-/gz-tools.json +++ b/versions/g-/gz-tools.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "c8da4e625f75b27937a67ba7360c7700b4742f3e", + "version": "2.0.3", + "port-version": 0 + }, { "git-tree": "cc640ffbb5e16b4650c20a2ac443e8afe8f23b97", "version": "2.0.1", diff --git a/versions/o-/ogre-next.json b/versions/o-/ogre-next.json index efc529f4a2..debf0d4695 100644 --- a/versions/o-/ogre-next.json +++ b/versions/o-/ogre-next.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "2dc534403f69d81c9aec152982051b65876d9e87", + "version": "3.0.0", + "port-version": 0 + }, { "git-tree": "047ac9285440f0328e3bfc6e40946af616c585cd", "version": "2.3.3", diff --git a/versions/o-/opencv3.json b/versions/o-/opencv3.json index 5b100f7beb..5850157f0a 100644 --- a/versions/o-/opencv3.json +++ b/versions/o-/opencv3.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "742c03e19a5b6b467411f297c502c9815e5168c0", + "version": "3.4.20", + "port-version": 2 + }, { "git-tree": "463f53721cfa935828d3fd9cfcc89a8ddf426628", "version": "3.4.20", diff --git a/versions/o-/openvino.json b/versions/o-/openvino.json index 557cd95769..3f08d9e766 100644 --- a/versions/o-/openvino.json +++ b/versions/o-/openvino.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "9385d70cc142992e9e10411d61555807f869d112", + "version": "2025.3.0", + "port-version": 1 + }, { "git-tree": "f3e2da60064643ba5dbd4f2dbe4506a013b12041", "version": "2025.3.0", diff --git a/versions/p-/protobuf.json b/versions/p-/protobuf.json index da0aeca80c..2e362e24f9 100644 --- a/versions/p-/protobuf.json +++ b/versions/p-/protobuf.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "276478aca53e8691c716e67a0e6172db1b391299", + "version": "6.33.4", + "port-version": 0 + }, { "git-tree": "a8fdd2b1b4283409700152a6ac8639c005d1c103", "version": "5.29.5", diff --git a/versions/p-/pulsar-client-cpp.json b/versions/p-/pulsar-client-cpp.json index a4f55e65be..b65d0af78f 100644 --- a/versions/p-/pulsar-client-cpp.json +++ b/versions/p-/pulsar-client-cpp.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "2802b08c39509c22aa3b15999b590e87bdc796e4", + "version": "4.0.0", + "port-version": 0 + }, { "git-tree": "158b7a0a60916b4bcbdc215539ea2195da9957b8", "version": "3.8.0", diff --git a/versions/s-/sdformat.json b/versions/s-/sdformat.json index 9146dabbff..7e716db757 100644 --- a/versions/s-/sdformat.json +++ b/versions/s-/sdformat.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "136a1b02be2f655c2a501064189fb075f4a653b0", + "version": "15.3.0", + "port-version": 0 + }, { "git-tree": "8c2bdc4566609875e621f6c4426dcbf06643be25", "version": "15.1.1", diff --git a/versions/s-/srpc.json b/versions/s-/srpc.json index a0e4b853a2..3a673f7334 100644 --- a/versions/s-/srpc.json +++ b/versions/s-/srpc.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "b2c3dd8895a29f12367479a1bc98cd1eefd277fa", + "version-semver": "0.10.4", + "port-version": 0 + }, { "git-tree": "038425c919e84543a4b67af3e450614affe3bd7b", "version-semver": "0.10.3", diff --git a/versions/u-/urdfdom.json b/versions/u-/urdfdom.json index d31d83fab7..bae49017bd 100644 --- a/versions/u-/urdfdom.json +++ b/versions/u-/urdfdom.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "1b90aaf3d571465399420a01a4331ba98472bb59", + "version": "3.1.1", + "port-version": 1 + }, { "git-tree": "eb1c1a30329b850ac4450d3b1a72166697058bb8", "version": "3.1.1", diff --git a/versions/u-/utf8-range.json b/versions/u-/utf8-range.json index a15c992c06..36df17a1bf 100644 --- a/versions/u-/utf8-range.json +++ b/versions/u-/utf8-range.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "9f24dda3a883d4026bb1122c50077c07c9a32f47", + "version": "6.33.4", + "port-version": 0 + }, { "git-tree": "5d28e170bfcc212d629bb070520e72492240ce65", "version": "5.29.5", diff --git a/versions/w-/workflow.json b/versions/w-/workflow.json index cd9faf77c6..7aaea376aa 100644 --- a/versions/w-/workflow.json +++ b/versions/w-/workflow.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "93981ef47404e62645bb2248258d020115104fb7", + "version": "0.11.11", + "port-version": 0 + }, { "git-tree": "6a63f9977488d092a4c30b9290964d796f341ae4", "version": "0.11.8",