[arch-commits] Commit in protobuf-c/repos (7 files)
Gaëtan Bisson
bisson at archlinux.org
Fri Sep 14 07:24:43 UTC 2018
Date: Friday, September 14, 2018 @ 07:24:43
Author: bisson
Revision: 334534
db-move: moved protobuf-c from [testing] to [extra] (x86_64)
Added:
protobuf-c/repos/extra-x86_64/PKGBUILD
(from rev 334533, protobuf-c/repos/testing-x86_64/PKGBUILD)
protobuf-c/repos/extra-x86_64/add-std-namespace-to-some-types.patch
(from rev 334533, protobuf-c/repos/testing-x86_64/add-std-namespace-to-some-types.patch)
protobuf-c/repos/extra-x86_64/protobuf36.patch
(from rev 334533, protobuf-c/repos/testing-x86_64/protobuf36.patch)
Deleted:
protobuf-c/repos/extra-x86_64/PKGBUILD
protobuf-c/repos/extra-x86_64/add-std-namespace-to-some-types.patch
protobuf-c/repos/extra-x86_64/protobuf36.patch
protobuf-c/repos/testing-x86_64/
----------------------------------------------------+
/PKGBUILD | 31 +++
/add-std-namespace-to-some-types.patch | 107 ++++++++++++
/protobuf36.patch | 157 +++++++++++++++++++
extra-x86_64/PKGBUILD | 45 -----
extra-x86_64/add-std-namespace-to-some-types.patch | 107 ------------
extra-x86_64/protobuf36.patch | 157 -------------------
6 files changed, 295 insertions(+), 309 deletions(-)
Deleted: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD 2018-09-14 07:24:42 UTC (rev 334533)
+++ extra-x86_64/PKGBUILD 2018-09-14 07:24:43 UTC (rev 334534)
@@ -1,45 +0,0 @@
-# Maintainer: Lukas Fleischer <lfleischer at archlinux.org>
-# Contributor: Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
-# Contributor: Aurélien Wailly <aurelien.wailly at gmail.com>
-
-pkgname=protobuf-c
-pkgver=1.3.0
-pkgrel=3
-pkgdesc='Protocol Buffers implementation in C'
-arch=('x86_64')
-url='https://github.com/protobuf-c/protobuf-c'
-license=('BSD')
-depends=('protobuf')
-provides=('libprotobuf-c.so')
-source=("$url/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz"
- add-std-namespace-to-some-types.patch
- protobuf36.patch)
-sha256sums=('5dc9ad7a9b889cf7c8ff6bf72215f1874a90260f60ad4f88acf21bb15d2752a1'
- '8dcb76d45bee8ae0a8652546f213c17a9b8fa774f16f50db18ed5ddad313aeb3'
- '1330ee4a72f268805ffa3d154c561a03b3086f962cc4e92f2740627db37dd769')
-
-prepare() {
- cd "$pkgname-$pkgver"
-
- # https://github.com/protobuf-c/protobuf-c/pull/309
- patch -Np1 -i ../add-std-namespace-to-some-types.patch
-
- # https://github.com/protobuf-c/protobuf-c/pull/328
- patch -Np1 -i ../protobuf36.patch
-}
-
-build() {
- cd "$pkgname-$pkgver"
- ./configure --prefix=/usr --disable-static
- make
-}
-
-check() {
- make -C "$pkgname-$pkgver" check
-}
-
-package() {
- cd "$pkgname-$pkgver"
- make DESTDIR="$pkgdir" install
- install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-}
Copied: protobuf-c/repos/extra-x86_64/PKGBUILD (from rev 334533, protobuf-c/repos/testing-x86_64/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD (rev 0)
+++ extra-x86_64/PKGBUILD 2018-09-14 07:24:43 UTC (rev 334534)
@@ -0,0 +1,31 @@
+# Maintainer: Lukas Fleischer <lfleischer at archlinux.org>
+# Contributor: Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+# Contributor: Aurélien Wailly <aurelien.wailly at gmail.com>
+
+pkgname=protobuf-c
+pkgver=1.3.1
+pkgrel=1
+pkgdesc='Protocol Buffers implementation in C'
+arch=('x86_64')
+url='https://github.com/protobuf-c/protobuf-c'
+license=('BSD')
+depends=('protobuf')
+provides=('libprotobuf-c.so')
+source=("$url/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz")
+sha256sums=('51472d3a191d6d7b425e32b612e477c06f73fe23e07f6a6a839b11808e9d2267')
+
+build() {
+ cd "$pkgname-$pkgver"
+ ./configure --prefix=/usr --disable-static
+ make
+}
+
+check() {
+ make -C "$pkgname-$pkgver" check
+}
+
+package() {
+ cd "$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
Deleted: extra-x86_64/add-std-namespace-to-some-types.patch
===================================================================
--- extra-x86_64/add-std-namespace-to-some-types.patch 2018-09-14 07:24:42 UTC (rev 334533)
+++ extra-x86_64/add-std-namespace-to-some-types.patch 2018-09-14 07:24:43 UTC (rev 334534)
@@ -1,107 +0,0 @@
-From 034e603d2a5e629c1c3fbac405638f8afb3ead51 Mon Sep 17 00:00:00 2001
-From: Fredrik Gustafsson <iveqy at iveqy.com>
-Date: Sun, 11 Mar 2018 08:57:46 +0100
-Subject: [PATCH] Add std:: to some types
-
-This is required for compilation to succeed on debian jessie with g++
-6.3.0.
----
- protoc-c/c_file.h | 2 +-
- protoc-c/c_generator.cc | 8 ++++----
- protoc-c/c_helpers.cc | 12 ++++++------
- 3 files changed, 11 insertions(+), 11 deletions(-)
-
-diff --git a/protoc-c/c_file.h b/protoc-c/c_file.h
-index ed38ce4..84df522 100644
---- a/protoc-c/c_file.h
-+++ b/protoc-c/c_file.h
-@@ -104,7 +104,7 @@ class FileGenerator {
- scoped_array<scoped_ptr<ExtensionGenerator> > extension_generators_;
-
- // E.g. if the package is foo.bar, package_parts_ is {"foo", "bar"}.
-- vector<string> package_parts_;
-+ std::vector<string> package_parts_;
-
- GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FileGenerator);
- };
-diff --git a/protoc-c/c_generator.cc b/protoc-c/c_generator.cc
-index a0d0cb6..79a272f 100644
---- a/protoc-c/c_generator.cc
-+++ b/protoc-c/c_generator.cc
-@@ -80,13 +80,13 @@ namespace c {
- // "foo=bar,baz,qux=corge"
- // parses to the pairs:
- // ("foo", "bar"), ("baz", ""), ("qux", "corge")
--void ParseOptions(const string& text, vector<pair<string, string> >* output) {
-- vector<string> parts;
-+void ParseOptions(const string& text, std::vector<std::pair<string, string> >* output) {
-+ std::vector<string> parts;
- SplitStringUsing(text, ",", &parts);
-
- for (unsigned i = 0; i < parts.size(); i++) {
- string::size_type equals_pos = parts[i].find_first_of('=');
-- pair<string, string> value;
-+ std::pair<string, string> value;
- if (equals_pos == string::npos) {
- value.first = parts[i];
- value.second = "";
-@@ -105,7 +105,7 @@ bool CGenerator::Generate(const FileDescriptor* file,
- const string& parameter,
- OutputDirectory* output_directory,
- string* error) const {
-- vector<pair<string, string> > options;
-+ std::vector<std::pair<string, string> > options;
- ParseOptions(parameter, &options);
-
- // -----------------------------------------------------------------
-diff --git a/protoc-c/c_helpers.cc b/protoc-c/c_helpers.cc
-index b79b5b0..71b8682 100644
---- a/protoc-c/c_helpers.cc
-+++ b/protoc-c/c_helpers.cc
-@@ -177,7 +177,7 @@ string ToCamel(const string &name) {
- }
-
- string FullNameToLower(const string &full_name) {
-- vector<string> pieces;
-+ std::vector<string> pieces;
- SplitStringUsing(full_name, ".", &pieces);
- string rv = "";
- for (unsigned i = 0; i < pieces.size(); i++) {
-@@ -188,7 +188,7 @@ string FullNameToLower(const string &full_name) {
- return rv;
- }
- string FullNameToUpper(const string &full_name) {
-- vector<string> pieces;
-+ std::vector<string> pieces;
- SplitStringUsing(full_name, ".", &pieces);
- string rv = "";
- for (unsigned i = 0; i < pieces.size(); i++) {
-@@ -199,7 +199,7 @@ string FullNameToUpper(const string &full_name) {
- return rv;
- }
- string FullNameToC(const string &full_name) {
-- vector<string> pieces;
-+ std::vector<string> pieces;
- SplitStringUsing(full_name, ".", &pieces);
- string rv = "";
- for (unsigned i = 0; i < pieces.size(); i++) {
-@@ -214,7 +214,7 @@ void PrintComment (io::Printer* printer, string comment)
- {
- if (!comment.empty())
- {
-- vector<string> comment_lines;
-+ std::vector<string> comment_lines;
- SplitStringUsing (comment, "\r\n", &comment_lines);
- printer->Print ("/*\n");
- for (int i = 0; i < comment_lines.size(); i++)
-@@ -503,8 +503,8 @@ void SplitStringToIteratorUsing(const string& full,
-
- void SplitStringUsing(const string& full,
- const char* delim,
-- vector<string>* result) {
-- std::back_insert_iterator< vector<string> > it(*result);
-+ std::vector<string>* result) {
-+ std::back_insert_iterator< std::vector<string> > it(*result);
- SplitStringToIteratorUsing(full, delim, it);
- }
-
Copied: protobuf-c/repos/extra-x86_64/add-std-namespace-to-some-types.patch (from rev 334533, protobuf-c/repos/testing-x86_64/add-std-namespace-to-some-types.patch)
===================================================================
--- extra-x86_64/add-std-namespace-to-some-types.patch (rev 0)
+++ extra-x86_64/add-std-namespace-to-some-types.patch 2018-09-14 07:24:43 UTC (rev 334534)
@@ -0,0 +1,107 @@
+From 034e603d2a5e629c1c3fbac405638f8afb3ead51 Mon Sep 17 00:00:00 2001
+From: Fredrik Gustafsson <iveqy at iveqy.com>
+Date: Sun, 11 Mar 2018 08:57:46 +0100
+Subject: [PATCH] Add std:: to some types
+
+This is required for compilation to succeed on debian jessie with g++
+6.3.0.
+---
+ protoc-c/c_file.h | 2 +-
+ protoc-c/c_generator.cc | 8 ++++----
+ protoc-c/c_helpers.cc | 12 ++++++------
+ 3 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/protoc-c/c_file.h b/protoc-c/c_file.h
+index ed38ce4..84df522 100644
+--- a/protoc-c/c_file.h
++++ b/protoc-c/c_file.h
+@@ -104,7 +104,7 @@ class FileGenerator {
+ scoped_array<scoped_ptr<ExtensionGenerator> > extension_generators_;
+
+ // E.g. if the package is foo.bar, package_parts_ is {"foo", "bar"}.
+- vector<string> package_parts_;
++ std::vector<string> package_parts_;
+
+ GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FileGenerator);
+ };
+diff --git a/protoc-c/c_generator.cc b/protoc-c/c_generator.cc
+index a0d0cb6..79a272f 100644
+--- a/protoc-c/c_generator.cc
++++ b/protoc-c/c_generator.cc
+@@ -80,13 +80,13 @@ namespace c {
+ // "foo=bar,baz,qux=corge"
+ // parses to the pairs:
+ // ("foo", "bar"), ("baz", ""), ("qux", "corge")
+-void ParseOptions(const string& text, vector<pair<string, string> >* output) {
+- vector<string> parts;
++void ParseOptions(const string& text, std::vector<std::pair<string, string> >* output) {
++ std::vector<string> parts;
+ SplitStringUsing(text, ",", &parts);
+
+ for (unsigned i = 0; i < parts.size(); i++) {
+ string::size_type equals_pos = parts[i].find_first_of('=');
+- pair<string, string> value;
++ std::pair<string, string> value;
+ if (equals_pos == string::npos) {
+ value.first = parts[i];
+ value.second = "";
+@@ -105,7 +105,7 @@ bool CGenerator::Generate(const FileDescriptor* file,
+ const string& parameter,
+ OutputDirectory* output_directory,
+ string* error) const {
+- vector<pair<string, string> > options;
++ std::vector<std::pair<string, string> > options;
+ ParseOptions(parameter, &options);
+
+ // -----------------------------------------------------------------
+diff --git a/protoc-c/c_helpers.cc b/protoc-c/c_helpers.cc
+index b79b5b0..71b8682 100644
+--- a/protoc-c/c_helpers.cc
++++ b/protoc-c/c_helpers.cc
+@@ -177,7 +177,7 @@ string ToCamel(const string &name) {
+ }
+
+ string FullNameToLower(const string &full_name) {
+- vector<string> pieces;
++ std::vector<string> pieces;
+ SplitStringUsing(full_name, ".", &pieces);
+ string rv = "";
+ for (unsigned i = 0; i < pieces.size(); i++) {
+@@ -188,7 +188,7 @@ string FullNameToLower(const string &full_name) {
+ return rv;
+ }
+ string FullNameToUpper(const string &full_name) {
+- vector<string> pieces;
++ std::vector<string> pieces;
+ SplitStringUsing(full_name, ".", &pieces);
+ string rv = "";
+ for (unsigned i = 0; i < pieces.size(); i++) {
+@@ -199,7 +199,7 @@ string FullNameToUpper(const string &full_name) {
+ return rv;
+ }
+ string FullNameToC(const string &full_name) {
+- vector<string> pieces;
++ std::vector<string> pieces;
+ SplitStringUsing(full_name, ".", &pieces);
+ string rv = "";
+ for (unsigned i = 0; i < pieces.size(); i++) {
+@@ -214,7 +214,7 @@ void PrintComment (io::Printer* printer, string comment)
+ {
+ if (!comment.empty())
+ {
+- vector<string> comment_lines;
++ std::vector<string> comment_lines;
+ SplitStringUsing (comment, "\r\n", &comment_lines);
+ printer->Print ("/*\n");
+ for (int i = 0; i < comment_lines.size(); i++)
+@@ -503,8 +503,8 @@ void SplitStringToIteratorUsing(const string& full,
+
+ void SplitStringUsing(const string& full,
+ const char* delim,
+- vector<string>* result) {
+- std::back_insert_iterator< vector<string> > it(*result);
++ std::vector<string>* result) {
++ std::back_insert_iterator< std::vector<string> > it(*result);
+ SplitStringToIteratorUsing(full, delim, it);
+ }
+
Deleted: extra-x86_64/protobuf36.patch
===================================================================
--- extra-x86_64/protobuf36.patch 2018-09-14 07:24:42 UTC (rev 334533)
+++ extra-x86_64/protobuf36.patch 2018-09-14 07:24:43 UTC (rev 334534)
@@ -1,157 +0,0 @@
-From 67e5187e96baac2e16d88ac01471c5ce7cdc3c53 Mon Sep 17 00:00:00 2001
-From: ilovezfs <ilovezfs at icloud.com>
-Date: Wed, 20 Jun 2018 08:08:53 -0700
-Subject: [PATCH] Fix build with protobuf 3.6.x
-
-Adapt to changes from https://github.com/google/protobuf/pull/4387.
-
-scoped_ptr and scoped_array were removed in favor of std::unique_ptr
----
- protoc-c/c_field.cc | 2 +-
- protoc-c/c_field.h | 2 +-
- protoc-c/c_file.cc | 8 ++++----
- protoc-c/c_file.h | 8 ++++----
- protoc-c/c_generator.cc | 4 ++--
- protoc-c/c_helpers.cc | 2 +-
- protoc-c/c_message.cc | 6 +++---
- protoc-c/c_message.h | 6 +++---
- 8 files changed, 19 insertions(+), 19 deletions(-)
-
-diff --git a/protoc-c/c_field.cc b/protoc-c/c_field.cc
-index 9fa56ef..eaa38d2 100644
---- a/protoc-c/c_field.cc
-+++ b/protoc-c/c_field.cc
-@@ -189,7 +189,7 @@ void FieldGenerator::GenerateDescriptorInitializerGeneric(io::Printer* printer,
- FieldGeneratorMap::FieldGeneratorMap(const Descriptor* descriptor)
- : descriptor_(descriptor),
- field_generators_(
-- new scoped_ptr<FieldGenerator>[descriptor->field_count()]) {
-+ new std::unique_ptr<FieldGenerator>[descriptor->field_count()]) {
- // Construct all the FieldGenerators.
- for (int i = 0; i < descriptor->field_count(); i++) {
- field_generators_[i].reset(MakeGenerator(descriptor->field(i)));
-diff --git a/protoc-c/c_field.h b/protoc-c/c_field.h
-index 91f1a03..efd5a29 100644
---- a/protoc-c/c_field.h
-+++ b/protoc-c/c_field.h
-@@ -117,7 +117,7 @@ class FieldGeneratorMap {
-
- private:
- const Descriptor* descriptor_;
-- scoped_array<scoped_ptr<FieldGenerator> > field_generators_;
-+ std::unique_ptr<std::unique_ptr<FieldGenerator>[] > field_generators_;
-
- static FieldGenerator* MakeGenerator(const FieldDescriptor* field);
-
-diff --git a/protoc-c/c_file.cc b/protoc-c/c_file.cc
-index 9851768..6dae516 100644
---- a/protoc-c/c_file.cc
-+++ b/protoc-c/c_file.cc
-@@ -83,13 +83,13 @@ FileGenerator::FileGenerator(const FileDescriptor* file,
- const string& dllexport_decl)
- : file_(file),
- message_generators_(
-- new scoped_ptr<MessageGenerator>[file->message_type_count()]),
-+ new std::unique_ptr<MessageGenerator>[file->message_type_count()]),
- enum_generators_(
-- new scoped_ptr<EnumGenerator>[file->enum_type_count()]),
-+ new std::unique_ptr<EnumGenerator>[file->enum_type_count()]),
- service_generators_(
-- new scoped_ptr<ServiceGenerator>[file->service_count()]),
-+ new std::unique_ptr<ServiceGenerator>[file->service_count()]),
- extension_generators_(
-- new scoped_ptr<ExtensionGenerator>[file->extension_count()]) {
-+ new std::unique_ptr<ExtensionGenerator>[file->extension_count()]) {
-
- for (int i = 0; i < file->message_type_count(); i++) {
- message_generators_[i].reset(
-diff --git a/protoc-c/c_file.h b/protoc-c/c_file.h
-index ed38ce4..e86cc44 100644
---- a/protoc-c/c_file.h
-+++ b/protoc-c/c_file.h
-@@ -98,10 +98,10 @@ class FileGenerator {
- private:
- const FileDescriptor* file_;
-
-- scoped_array<scoped_ptr<MessageGenerator> > message_generators_;
-- scoped_array<scoped_ptr<EnumGenerator> > enum_generators_;
-- scoped_array<scoped_ptr<ServiceGenerator> > service_generators_;
-- scoped_array<scoped_ptr<ExtensionGenerator> > extension_generators_;
-+ std::unique_ptr<std::unique_ptr<MessageGenerator>[] > message_generators_;
-+ std::unique_ptr<std::unique_ptr<EnumGenerator>[] > enum_generators_;
-+ std::unique_ptr<std::unique_ptr<ServiceGenerator>[] > service_generators_;
-+ std::unique_ptr<std::unique_ptr<ExtensionGenerator>[] > extension_generators_;
-
- // E.g. if the package is foo.bar, package_parts_ is {"foo", "bar"}.
- vector<string> package_parts_;
-diff --git a/protoc-c/c_generator.cc b/protoc-c/c_generator.cc
-index a0d0cb6..fe3ad26 100644
---- a/protoc-c/c_generator.cc
-+++ b/protoc-c/c_generator.cc
-@@ -149,7 +149,7 @@ bool CGenerator::Generate(const FileDescriptor* file,
-
- // Generate header.
- {
-- scoped_ptr<io::ZeroCopyOutputStream> output(
-+ std::unique_ptr<io::ZeroCopyOutputStream> output(
- output_directory->Open(basename + ".h"));
- io::Printer printer(output.get(), '$');
- file_generator.GenerateHeader(&printer);
-@@ -157,7 +157,7 @@ bool CGenerator::Generate(const FileDescriptor* file,
-
- // Generate cc file.
- {
-- scoped_ptr<io::ZeroCopyOutputStream> output(
-+ std::unique_ptr<io::ZeroCopyOutputStream> output(
- output_directory->Open(basename + ".c"));
- io::Printer printer(output.get(), '$');
- file_generator.GenerateSource(&printer);
-diff --git a/protoc-c/c_helpers.cc b/protoc-c/c_helpers.cc
-index b79b5b0..f2ab448 100644
---- a/protoc-c/c_helpers.cc
-+++ b/protoc-c/c_helpers.cc
-@@ -559,7 +559,7 @@ static int CEscapeInternal(const char* src, int src_len, char* dest,
- }
- string CEscape(const string& src) {
- const int dest_length = src.size() * 4 + 1; // Maximum possible expansion
-- scoped_array<char> dest(new char[dest_length]);
-+ std::unique_ptr<char[]> dest(new char[dest_length]);
- const int len = CEscapeInternal(src.data(), src.size(),
- dest.get(), dest_length, false);
- GOOGLE_DCHECK_GE(len, 0);
-diff --git a/protoc-c/c_message.cc b/protoc-c/c_message.cc
-index 6b22c71..85a946e 100755
---- a/protoc-c/c_message.cc
-+++ b/protoc-c/c_message.cc
-@@ -83,11 +83,11 @@ MessageGenerator::MessageGenerator(const Descriptor* descriptor,
- : descriptor_(descriptor),
- dllexport_decl_(dllexport_decl),
- field_generators_(descriptor),
-- nested_generators_(new scoped_ptr<MessageGenerator>[
-+ nested_generators_(new std::unique_ptr<MessageGenerator>[
- descriptor->nested_type_count()]),
-- enum_generators_(new scoped_ptr<EnumGenerator>[
-+ enum_generators_(new std::unique_ptr<EnumGenerator>[
- descriptor->enum_type_count()]),
-- extension_generators_(new scoped_ptr<ExtensionGenerator>[
-+ extension_generators_(new std::unique_ptr<ExtensionGenerator>[
- descriptor->extension_count()]) {
-
- for (int i = 0; i < descriptor->nested_type_count(); i++) {
-diff --git a/protoc-c/c_message.h b/protoc-c/c_message.h
-index 8b115d1..63aa97a 100644
---- a/protoc-c/c_message.h
-+++ b/protoc-c/c_message.h
-@@ -126,9 +126,9 @@ class MessageGenerator {
- const Descriptor* descriptor_;
- string dllexport_decl_;
- FieldGeneratorMap field_generators_;
-- scoped_array<scoped_ptr<MessageGenerator> > nested_generators_;
-- scoped_array<scoped_ptr<EnumGenerator> > enum_generators_;
-- scoped_array<scoped_ptr<ExtensionGenerator> > extension_generators_;
-+ std::unique_ptr<std::unique_ptr<MessageGenerator>[] > nested_generators_;
-+ std::unique_ptr<std::unique_ptr<EnumGenerator>[] > enum_generators_;
-+ std::unique_ptr<std::unique_ptr<ExtensionGenerator>[] > extension_generators_;
-
- GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageGenerator);
- };
Copied: protobuf-c/repos/extra-x86_64/protobuf36.patch (from rev 334533, protobuf-c/repos/testing-x86_64/protobuf36.patch)
===================================================================
--- extra-x86_64/protobuf36.patch (rev 0)
+++ extra-x86_64/protobuf36.patch 2018-09-14 07:24:43 UTC (rev 334534)
@@ -0,0 +1,157 @@
+From 67e5187e96baac2e16d88ac01471c5ce7cdc3c53 Mon Sep 17 00:00:00 2001
+From: ilovezfs <ilovezfs at icloud.com>
+Date: Wed, 20 Jun 2018 08:08:53 -0700
+Subject: [PATCH] Fix build with protobuf 3.6.x
+
+Adapt to changes from https://github.com/google/protobuf/pull/4387.
+
+scoped_ptr and scoped_array were removed in favor of std::unique_ptr
+---
+ protoc-c/c_field.cc | 2 +-
+ protoc-c/c_field.h | 2 +-
+ protoc-c/c_file.cc | 8 ++++----
+ protoc-c/c_file.h | 8 ++++----
+ protoc-c/c_generator.cc | 4 ++--
+ protoc-c/c_helpers.cc | 2 +-
+ protoc-c/c_message.cc | 6 +++---
+ protoc-c/c_message.h | 6 +++---
+ 8 files changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/protoc-c/c_field.cc b/protoc-c/c_field.cc
+index 9fa56ef..eaa38d2 100644
+--- a/protoc-c/c_field.cc
++++ b/protoc-c/c_field.cc
+@@ -189,7 +189,7 @@ void FieldGenerator::GenerateDescriptorInitializerGeneric(io::Printer* printer,
+ FieldGeneratorMap::FieldGeneratorMap(const Descriptor* descriptor)
+ : descriptor_(descriptor),
+ field_generators_(
+- new scoped_ptr<FieldGenerator>[descriptor->field_count()]) {
++ new std::unique_ptr<FieldGenerator>[descriptor->field_count()]) {
+ // Construct all the FieldGenerators.
+ for (int i = 0; i < descriptor->field_count(); i++) {
+ field_generators_[i].reset(MakeGenerator(descriptor->field(i)));
+diff --git a/protoc-c/c_field.h b/protoc-c/c_field.h
+index 91f1a03..efd5a29 100644
+--- a/protoc-c/c_field.h
++++ b/protoc-c/c_field.h
+@@ -117,7 +117,7 @@ class FieldGeneratorMap {
+
+ private:
+ const Descriptor* descriptor_;
+- scoped_array<scoped_ptr<FieldGenerator> > field_generators_;
++ std::unique_ptr<std::unique_ptr<FieldGenerator>[] > field_generators_;
+
+ static FieldGenerator* MakeGenerator(const FieldDescriptor* field);
+
+diff --git a/protoc-c/c_file.cc b/protoc-c/c_file.cc
+index 9851768..6dae516 100644
+--- a/protoc-c/c_file.cc
++++ b/protoc-c/c_file.cc
+@@ -83,13 +83,13 @@ FileGenerator::FileGenerator(const FileDescriptor* file,
+ const string& dllexport_decl)
+ : file_(file),
+ message_generators_(
+- new scoped_ptr<MessageGenerator>[file->message_type_count()]),
++ new std::unique_ptr<MessageGenerator>[file->message_type_count()]),
+ enum_generators_(
+- new scoped_ptr<EnumGenerator>[file->enum_type_count()]),
++ new std::unique_ptr<EnumGenerator>[file->enum_type_count()]),
+ service_generators_(
+- new scoped_ptr<ServiceGenerator>[file->service_count()]),
++ new std::unique_ptr<ServiceGenerator>[file->service_count()]),
+ extension_generators_(
+- new scoped_ptr<ExtensionGenerator>[file->extension_count()]) {
++ new std::unique_ptr<ExtensionGenerator>[file->extension_count()]) {
+
+ for (int i = 0; i < file->message_type_count(); i++) {
+ message_generators_[i].reset(
+diff --git a/protoc-c/c_file.h b/protoc-c/c_file.h
+index ed38ce4..e86cc44 100644
+--- a/protoc-c/c_file.h
++++ b/protoc-c/c_file.h
+@@ -98,10 +98,10 @@ class FileGenerator {
+ private:
+ const FileDescriptor* file_;
+
+- scoped_array<scoped_ptr<MessageGenerator> > message_generators_;
+- scoped_array<scoped_ptr<EnumGenerator> > enum_generators_;
+- scoped_array<scoped_ptr<ServiceGenerator> > service_generators_;
+- scoped_array<scoped_ptr<ExtensionGenerator> > extension_generators_;
++ std::unique_ptr<std::unique_ptr<MessageGenerator>[] > message_generators_;
++ std::unique_ptr<std::unique_ptr<EnumGenerator>[] > enum_generators_;
++ std::unique_ptr<std::unique_ptr<ServiceGenerator>[] > service_generators_;
++ std::unique_ptr<std::unique_ptr<ExtensionGenerator>[] > extension_generators_;
+
+ // E.g. if the package is foo.bar, package_parts_ is {"foo", "bar"}.
+ vector<string> package_parts_;
+diff --git a/protoc-c/c_generator.cc b/protoc-c/c_generator.cc
+index a0d0cb6..fe3ad26 100644
+--- a/protoc-c/c_generator.cc
++++ b/protoc-c/c_generator.cc
+@@ -149,7 +149,7 @@ bool CGenerator::Generate(const FileDescriptor* file,
+
+ // Generate header.
+ {
+- scoped_ptr<io::ZeroCopyOutputStream> output(
++ std::unique_ptr<io::ZeroCopyOutputStream> output(
+ output_directory->Open(basename + ".h"));
+ io::Printer printer(output.get(), '$');
+ file_generator.GenerateHeader(&printer);
+@@ -157,7 +157,7 @@ bool CGenerator::Generate(const FileDescriptor* file,
+
+ // Generate cc file.
+ {
+- scoped_ptr<io::ZeroCopyOutputStream> output(
++ std::unique_ptr<io::ZeroCopyOutputStream> output(
+ output_directory->Open(basename + ".c"));
+ io::Printer printer(output.get(), '$');
+ file_generator.GenerateSource(&printer);
+diff --git a/protoc-c/c_helpers.cc b/protoc-c/c_helpers.cc
+index b79b5b0..f2ab448 100644
+--- a/protoc-c/c_helpers.cc
++++ b/protoc-c/c_helpers.cc
+@@ -559,7 +559,7 @@ static int CEscapeInternal(const char* src, int src_len, char* dest,
+ }
+ string CEscape(const string& src) {
+ const int dest_length = src.size() * 4 + 1; // Maximum possible expansion
+- scoped_array<char> dest(new char[dest_length]);
++ std::unique_ptr<char[]> dest(new char[dest_length]);
+ const int len = CEscapeInternal(src.data(), src.size(),
+ dest.get(), dest_length, false);
+ GOOGLE_DCHECK_GE(len, 0);
+diff --git a/protoc-c/c_message.cc b/protoc-c/c_message.cc
+index 6b22c71..85a946e 100755
+--- a/protoc-c/c_message.cc
++++ b/protoc-c/c_message.cc
+@@ -83,11 +83,11 @@ MessageGenerator::MessageGenerator(const Descriptor* descriptor,
+ : descriptor_(descriptor),
+ dllexport_decl_(dllexport_decl),
+ field_generators_(descriptor),
+- nested_generators_(new scoped_ptr<MessageGenerator>[
++ nested_generators_(new std::unique_ptr<MessageGenerator>[
+ descriptor->nested_type_count()]),
+- enum_generators_(new scoped_ptr<EnumGenerator>[
++ enum_generators_(new std::unique_ptr<EnumGenerator>[
+ descriptor->enum_type_count()]),
+- extension_generators_(new scoped_ptr<ExtensionGenerator>[
++ extension_generators_(new std::unique_ptr<ExtensionGenerator>[
+ descriptor->extension_count()]) {
+
+ for (int i = 0; i < descriptor->nested_type_count(); i++) {
+diff --git a/protoc-c/c_message.h b/protoc-c/c_message.h
+index 8b115d1..63aa97a 100644
+--- a/protoc-c/c_message.h
++++ b/protoc-c/c_message.h
+@@ -126,9 +126,9 @@ class MessageGenerator {
+ const Descriptor* descriptor_;
+ string dllexport_decl_;
+ FieldGeneratorMap field_generators_;
+- scoped_array<scoped_ptr<MessageGenerator> > nested_generators_;
+- scoped_array<scoped_ptr<EnumGenerator> > enum_generators_;
+- scoped_array<scoped_ptr<ExtensionGenerator> > extension_generators_;
++ std::unique_ptr<std::unique_ptr<MessageGenerator>[] > nested_generators_;
++ std::unique_ptr<std::unique_ptr<EnumGenerator>[] > enum_generators_;
++ std::unique_ptr<std::unique_ptr<ExtensionGenerator>[] > extension_generators_;
+
+ GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageGenerator);
+ };
More information about the arch-commits
mailing list