mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-15 17:06:58 +02:00
dev-libs/protobuf: Sync with gentoo
It's from gentoo commit cc1aca7d866bf7e31e53ef9f3ed08788176f0ded.
This commit is contained in:
parent
c5a50f1ea5
commit
eadd6337c7
@ -1,3 +1,7 @@
|
|||||||
DIST protobuf-3.4.1.tar.gz 4490100 BLAKE2B e2bc1ef2ee1a0af44830b3c65a6c9e73883fe6ec0d07f6a6136f5564f0e85306005440ca6f8c4eb834c7c70f909792c9e2457a761f10f95431981263a9acd7a3 SHA512 471e52198fa878a79183dc8fbc39d9c65239be4d9dff799e12281ee9b1af61a427584534b1baae1773bc6e4c86467f89ca2e7911a21effd86bc5f40cc7d94c34
|
DIST protobuf-3.17.0.tar.gz 5185780 BLAKE2B a168619df72cdf097c7ddfd50aca96a2101bf73e7c1c842c020e6ee08a853db8674a86ca999b7706da3dd21d4d3d2159241c93232efc693701962f3a54a382e9 SHA512 36ed2de641849ce01531ff1207f62a0748f811519c40622a119a17a1e709864382de81481fb58f374a025948971c48416e7e6de9c00512a78633c7a8a3aa3a36
|
||||||
DIST protobuf-3.5.1.1.tar.gz 4584489 BLAKE2B 995ee2f06a6358e9935b488269ee50f0dccede417c1757828b0108fbe8c67034301f3a9cb87517430acd9838ae71bb677f4edd8b59b2418f99c15d8ea3d33591 SHA512 f25ecf772facc8efd196b7c06012ce9ec24152b2c0cde38ed2e29ecded8f534221b008e649f4cbd991436ad3436130cd2e31d51e75019d08240d518111fb4496
|
DIST protobuf-3.17.1.tar.gz 5192666 BLAKE2B 7f912db7e0835aaa42628fcf564a5666e2cbfa021bb35638a5eec53c3c457f1e747225dea54f732b7239a1520febca9bc20c824b1938f100796caa3ac2133bc1 SHA512 5a18aa3c1dab040dc6d22310a8503241081106acf7ca89079d7b416533d7c2cdd47719dc9023e6bc26969f0f1c796550260a04034a403c69752f6a3a7a651bb8
|
||||||
DIST protobuf-3.5.2.tar.gz 4584659 BLAKE2B f582212169d802a5844574eb900c9f8cbb343b7e73f2074e5ff0bfc544ebd13f4bc2b78271fb70f4465d78fdc39972ed68339f453c0d3ffe98d8564fbf520544 SHA512 09d10cf0c07a0ba249428bbf20f5dbed840965fa06b3c09682f286a4dee9d84bb96f3b5b50e993d48ef1f20440531255ce7d0e60a648bf3fe536a5f2b0b74181
|
DIST protobuf-3.17.2.tar.gz 5192779 BLAKE2B 97f9561848e70b8d26ebcc7fc4fa8da51c4b8267efbe1d2d386c2785308e7ba7edc05f1b3863c274dc8838866d58b58509606d72c51a22b956d1d528584c4c95 SHA512 b3e7ad50ed772668df70a3a20ad1af13a5e82f23b109e4fecd34e6a74947bed300963c9f084907fbfafe28fc18365cde7df1975e2ff9538d2f5a3d2b458bca98
|
||||||
|
DIST protobuf-3.17.3.tar.gz 5235236 BLAKE2B 2495e678c8f9436d4e5a30ccee8b6226125d418ac7ecf7df20b078a1a16c221cbccab7d846dcd56a90220c106617fa75c410a21b62612fedec378cd7e8571350 SHA512 b4030b4474cc5fb5a62501200725dd488e6e66e3ced4ed12ab4ee029fcfed305e92ec966adafbdd343afffd186908163849422b95eaa500e7e741ac325d01d12
|
||||||
|
DIST protobuf-3.18.2.tar.gz 5272935 BLAKE2B f65caa4483d3ff4186f9ea388e2a9ef232ab758cfda846cfb5993df1f991e4574e63a33b175dd00c72f61c0a23ed12d3c62eb658cd397bf43b805c41fb34c47e SHA512 8ca613fdeefcbd93e866fab65effc38aa8508060aa3de0109dbead68f2e27eb22ad0a8aea10c8b4c3e9de181d62185c93b369fb5abf96de02a170f2e5c27e0cd
|
||||||
|
DIST protobuf-3.19.1.tar.gz 5291573 BLAKE2B a34f1a7cf99ecb6cb8a26bc858de6273bfd26aa9be1e89e48c16cb5df0f1e9576479344c8250017238dbac0d0c4ac33001125b5fc622cb64ed6b91023198b03a SHA512 f1271f5159a7be363a5f60ce4921dfea68a8468d66808330bacaeaa1cb7f652d045ab080b5d82816a6fd4e6d7d7fe79aaa6c8d66d81692721d36ce3bbf619f31
|
||||||
|
DIST protobuf-3.19.3.tar.gz 5293258 BLAKE2B c05b70ffca97f7166ea6a511a36907eed125edf1ebf17f908718221d9b851be84dfb2b1b39973f2faf35f6ade630e6ba4f9e8b91b8fbc922c5db97079323ee6e SHA512 1c003e7cbc8eae6a038f46e688b401ee202ba47f502561e909df79770f6e8b7daf3dc1ccc727e31bfb5b52cd04cb4fef7d2d2a28d650c13f396872ad4aa076c6
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
https://github.com/google/protobuf/pull/235
|
https://github.com/protocolbuffers/protobuf/pull/235
|
||||||
|
|
||||||
--- /src/google/protobuf/compiler/command_line_interface.cc
|
--- /src/google/protobuf/compiler/command_line_interface.cc
|
||||||
+++ /src/google/protobuf/compiler/command_line_interface.cc
|
+++ /src/google/protobuf/compiler/command_line_interface.cc
|
||||||
@@ -942,6 +942,28 @@
|
@@ -1110,6 +1110,28 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mode_ == MODE_ENCODE || mode_ == MODE_DECODE) {
|
if (mode_ == MODE_ENCODE || mode_ == MODE_DECODE) {
|
||||||
@ -31,7 +31,7 @@ https://github.com/google/protobuf/pull/235
|
|||||||
if (codec_type_.empty()) {
|
if (codec_type_.empty()) {
|
||||||
// HACK: Define an EmptyMessage type to use for decoding.
|
// HACK: Define an EmptyMessage type to use for decoding.
|
||||||
DescriptorPool pool;
|
DescriptorPool pool;
|
||||||
@@ -950,13 +972,20 @@
|
@@ -1118,13 +1140,20 @@
|
||||||
file.add_message_type()->set_name("EmptyMessage");
|
file.add_message_type()->set_name("EmptyMessage");
|
||||||
GOOGLE_CHECK(pool.BuildFile(file) != NULL);
|
GOOGLE_CHECK(pool.BuildFile(file) != NULL);
|
||||||
codec_type_ = "EmptyMessage";
|
codec_type_ = "EmptyMessage";
|
||||||
@ -58,7 +58,7 @@ https://github.com/google/protobuf/pull/235
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -994,6 +1023,11 @@
|
@@ -1163,6 +1192,11 @@
|
||||||
for (int i = 0; i < proto_path_.size(); i++) {
|
for (int i = 0; i < proto_path_.size(); i++) {
|
||||||
source_tree->MapPath(proto_path_[i].first, proto_path_[i].second);
|
source_tree->MapPath(proto_path_[i].first, proto_path_[i].second);
|
||||||
}
|
}
|
||||||
@ -69,10 +69,10 @@ https://github.com/google/protobuf/pull/235
|
|||||||
+ }
|
+ }
|
||||||
|
|
||||||
// Map input files to virtual paths if possible.
|
// Map input files to virtual paths if possible.
|
||||||
if (!MakeInputsBeProtoPathRelative(source_tree)) {
|
if (!MakeInputsBeProtoPathRelative(source_tree, fallback_database)) {
|
||||||
@@ -1561,6 +1595,12 @@
|
@@ -1885,6 +1919,12 @@
|
||||||
|
} else if (name == "--deterministic_output") {
|
||||||
codec_type_ = value;
|
deterministic_output_ = true;
|
||||||
|
|
||||||
+ } else if (name == "--protobuf_in") {
|
+ } else if (name == "--protobuf_in") {
|
||||||
+ protobuf_in_path_ = value;
|
+ protobuf_in_path_ = value;
|
||||||
@ -83,47 +83,53 @@ https://github.com/google/protobuf/pull/235
|
|||||||
} else if (name == "--error_format") {
|
} else if (name == "--error_format") {
|
||||||
if (value == "gcc") {
|
if (value == "gcc") {
|
||||||
error_format_ = ERROR_FORMAT_GCC;
|
error_format_ = ERROR_FORMAT_GCC;
|
||||||
@@ -1684,18 +1724,29 @@
|
@@ -2018,22 +2058,38 @@
|
||||||
" --version Show version info and exit.\n"
|
--version Show version info and exit.
|
||||||
" -h, --help Show this text and exit.\n"
|
-h, --help Show this text and exit.
|
||||||
" --encode=MESSAGE_TYPE Read a text-format message of the given type\n"
|
--encode=MESSAGE_TYPE Read a text-format message of the given type
|
||||||
-" from standard input and write it in binary\n"
|
- from standard input and write it in binary
|
||||||
-" to standard output. The message type must\n"
|
- to standard output. The message type must
|
||||||
-" be defined in PROTO_FILES or their imports.\n"
|
+ from input protobuf file and write it in binary
|
||||||
-" --decode=MESSAGE_TYPE Read a binary message of the given type from\n"
|
+ to output protobuf file. The message type must
|
||||||
-" standard input and write it in text format\n"
|
be defined in PROTO_FILES or their imports.
|
||||||
-" to standard output. The message type must\n"
|
+ The input/output protobuf files are specified
|
||||||
+" an write it in binary. The message type must\n"
|
+ using the --protobuf_in and --protobuf_out
|
||||||
" be defined in PROTO_FILES or their imports.\n"
|
+ command line flags.
|
||||||
-" --decode_raw Read an arbitrary protocol message from\n"
|
--deterministic_output When using --encode, ensure map fields are
|
||||||
-" standard input and write the raw tag/value\n"
|
deterministically ordered. Note that this order
|
||||||
-" pairs in text format to standard output. No\n"
|
is not canonical, and changes across builds or
|
||||||
+" The input/output protobuf files are specified\n"
|
releases of protoc.
|
||||||
+" using the --protobuf_in and --protobuf_out\n"
|
--decode=MESSAGE_TYPE Read a binary message of the given type from
|
||||||
+" command line flags.\n"
|
- standard input and write it in text format
|
||||||
+" --decode=MESSAGE_TYPE Read a binary message of the given type and\n"
|
- to standard output. The message type must
|
||||||
+" write it in text format. The message type\n"
|
+ input protobuf file and write it in text format
|
||||||
+" must be defined in PROTO_FILES or their\n"
|
+ to output protobuf file. The message type must
|
||||||
+" imports. The input/output protobuf files are\n"
|
be defined in PROTO_FILES or their imports.
|
||||||
+" specified using the --protobuf_in and \n"
|
+ The input/output protobuf files are specified
|
||||||
+" --protobuf_out command line flags.\n"
|
+ using the --protobuf_in and --protobuf_out
|
||||||
+" --decode_raw Read an arbitrary protocol message and write\n"
|
+ command line flags.
|
||||||
+" the raw tag/value pairs in text format. No\n"
|
--decode_raw Read an arbitrary protocol message from
|
||||||
" PROTO_FILES should be given when using this\n"
|
- standard input and write the raw tag/value
|
||||||
-" flag.\n"
|
- pairs in text format to standard output. No
|
||||||
+" flag. The input/output protobuf files are\n"
|
+ input protobuf file and write the raw tag/value
|
||||||
+" specified using the --protobuf_in and \n"
|
+ pairs in text format to output protobuf file. No
|
||||||
+" --protobuf_out command line flags.\n"
|
PROTO_FILES should be given when using this
|
||||||
+" --protobuf_in Absolute path to the protobuf file to read to\n"
|
- flag.
|
||||||
+" encode/decode. If omitted, file will be read\n"
|
+ flag. The input/output protobuf files are
|
||||||
+" from STDIN.\n"
|
+ specified using the --protobuf_in and
|
||||||
+" --protobuf_out Absolute path to the protobuf file to write to\n"
|
+ --protobuf_out command line flags.
|
||||||
+" after encode/decode operation. If omitted,\n"
|
+ --protobuf_in=FILE Absolute path to the protobuf file from which
|
||||||
+" output is written to STDOUT.\n"
|
+ input of encoding/decoding operation will be
|
||||||
" --descriptor_set_in=FILES Specifies a delimited list of FILES\n"
|
+ read. If omitted, input will be read from
|
||||||
" each containing a FileDescriptorSet (a\n"
|
+ standard input.
|
||||||
" protocol buffer defined in descriptor.proto).\n"
|
+ --protobuf_out=FILE Absolute path to the protobuf file to which
|
||||||
@@ -1957,7 +2008,9 @@
|
+ output of encoding/decoding operation will be
|
||||||
|
+ written. If omitted, output will be written to
|
||||||
|
+ standard output.
|
||||||
|
--descriptor_set_in=FILES Specifies a delimited list of FILES
|
||||||
|
each containing a FileDescriptorSet (a
|
||||||
|
protocol buffer defined in descriptor.proto).
|
||||||
|
@@ -2344,7 +2400,9 @@
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -134,8 +140,8 @@ https://github.com/google/protobuf/pull/235
|
|||||||
// Look up the type.
|
// Look up the type.
|
||||||
const Descriptor* type = pool->FindMessageTypeByName(codec_type_);
|
const Descriptor* type = pool->FindMessageTypeByName(codec_type_);
|
||||||
if (type == NULL) {
|
if (type == NULL) {
|
||||||
@@ -1969,15 +2022,15 @@
|
@@ -2356,15 +2414,15 @@
|
||||||
google::protobuf::scoped_ptr<Message> message(dynamic_factory.GetPrototype(type)->New());
|
std::unique_ptr<Message> message(dynamic_factory.GetPrototype(type)->New());
|
||||||
|
|
||||||
if (mode_ == MODE_ENCODE) {
|
if (mode_ == MODE_ENCODE) {
|
||||||
- SetFdToTextMode(STDIN_FILENO);
|
- SetFdToTextMode(STDIN_FILENO);
|
||||||
@ -158,8 +164,8 @@ https://github.com/google/protobuf/pull/235
|
|||||||
// Input is text.
|
// Input is text.
|
||||||
--- /src/google/protobuf/compiler/command_line_interface.h
|
--- /src/google/protobuf/compiler/command_line_interface.h
|
||||||
+++ /src/google/protobuf/compiler/command_line_interface.h
|
+++ /src/google/protobuf/compiler/command_line_interface.h
|
||||||
@@ -269,7 +269,9 @@
|
@@ -292,7 +292,9 @@
|
||||||
GeneratorContext* generator_context, string* error);
|
GeneratorContext* generator_context, std::string* error);
|
||||||
|
|
||||||
// Implements --encode and --decode.
|
// Implements --encode and --decode.
|
||||||
- bool EncodeOrDecode(const DescriptorPool* pool);
|
- bool EncodeOrDecode(const DescriptorPool* pool);
|
||||||
@ -169,23 +175,23 @@ https://github.com/google/protobuf/pull/235
|
|||||||
|
|
||||||
// Implements the --descriptor_set_out option.
|
// Implements the --descriptor_set_out option.
|
||||||
bool WriteDescriptorSet(
|
bool WriteDescriptorSet(
|
||||||
@@ -402,6 +404,13 @@
|
@@ -427,6 +429,13 @@
|
||||||
// parsed FileDescriptorSets to be used for loading protos. Otherwise, empty.
|
// parsed FileDescriptorSets to be used for loading protos. Otherwise, empty.
|
||||||
std::vector<string> descriptor_set_in_names_;
|
std::vector<std::string> descriptor_set_in_names_;
|
||||||
|
|
||||||
+ // When using --encode / --decode / --decode_raw absolute path to the output
|
+ // When using --encode / --decode / --decode_raw absolute path to the output
|
||||||
+ // file. (Empty string indicates write to STDOUT).
|
+ // file. (Empty string indicates write to STDOUT).
|
||||||
+ string protobuf_out_path_;
|
+ std::string protobuf_out_path_;
|
||||||
+ // When using --encode / --decode / --decode_raw, absolute path to the input
|
+ // When using --encode / --decode / --decode_raw, absolute path to the input
|
||||||
+ // file. (Empty string indicates read from STDIN).
|
+ // file. (Empty string indicates read from STDIN).
|
||||||
+ string protobuf_in_path_;
|
+ std::string protobuf_in_path_;
|
||||||
+
|
+
|
||||||
// If --descriptor_set_out was given, this is the filename to which the
|
// If --descriptor_set_out was given, this is the filename to which the
|
||||||
// FileDescriptorSet should be written. Otherwise, empty.
|
// FileDescriptorSet should be written. Otherwise, empty.
|
||||||
string descriptor_set_out_name_;
|
std::string descriptor_set_out_name_;
|
||||||
--- /src/google/protobuf/compiler/command_line_interface_unittest.cc
|
--- /src/google/protobuf/compiler/command_line_interface_unittest.cc
|
||||||
+++ /src/google/protobuf/compiler/command_line_interface_unittest.cc
|
+++ /src/google/protobuf/compiler/command_line_interface_unittest.cc
|
||||||
@@ -95,7 +95,7 @@
|
@@ -99,7 +99,7 @@
|
||||||
virtual void SetUp();
|
virtual void SetUp();
|
||||||
virtual void TearDown();
|
virtual void TearDown();
|
||||||
|
|
||||||
@ -193,9 +199,9 @@ https://github.com/google/protobuf/pull/235
|
|||||||
+ // Run the CommandLineInterface with the given command line. The
|
+ // Run the CommandLineInterface with the given command line. The
|
||||||
// command is automatically split on spaces, and the string "$tmpdir"
|
// command is automatically split on spaces, and the string "$tmpdir"
|
||||||
// is replaced with TestTempDir().
|
// is replaced with TestTempDir().
|
||||||
void Run(const string& command);
|
void Run(const std::string& command);
|
||||||
@@ -2308,6 +2308,17 @@
|
@@ -2626,6 +2626,17 @@
|
||||||
EXPECT_EQ(StripCR(expected_text), StripCR(captured_stderr_));
|
std::string::npos);
|
||||||
}
|
}
|
||||||
|
|
||||||
+ void ExpectBinaryFilesMatch(const string &expected_file,
|
+ void ExpectBinaryFilesMatch(const string &expected_file,
|
||||||
@ -212,22 +218,23 @@ https://github.com/google/protobuf/pull/235
|
|||||||
private:
|
private:
|
||||||
void WriteUnittestProtoDescriptorSet() {
|
void WriteUnittestProtoDescriptorSet() {
|
||||||
unittest_proto_descriptor_set_filename_ =
|
unittest_proto_descriptor_set_filename_ =
|
||||||
@@ -2398,6 +2409,18 @@
|
@@ -2749,6 +2760,19 @@
|
||||||
"google/protobuf/no_such_file.proto: No such file or directory\n");
|
"Can only use --deterministic_output with --encode.\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
+TEST_P(EncodeDecodeTest, RedirectInputOutput) {
|
+TEST_P(EncodeDecodeTest, RedirectInputOutput) {
|
||||||
+ string out_file = TestTempDir() + "/golden_message_out.pbf";
|
+ string out_file = TestTempDir() + "/golden_message_out.pbf";
|
||||||
+ string cmd = "";
|
+ EXPECT_TRUE(
|
||||||
+ cmd += "google/protobuf/unittest.proto ";
|
+ Run(TestUtil::MaybeTranslatePath("net/proto2/internal/unittest.proto") +
|
||||||
+ cmd += "--encode=protobuf_unittest.TestAllTypes ";
|
+ " --encode=protobuf_unittest.TestAllTypes" +
|
||||||
+ cmd += "--protobuf_in=" + TestSourceDir() +
|
+ " --protobuf_in=" + TestUtil::GetTestDataPath(
|
||||||
+ "/google/protobuf/testdata/text_format_unittest_data_oneof_implemented.txt ";
|
+ "net/proto2/internal/"
|
||||||
+ cmd += "--protobuf_out=" + out_file;
|
+ "testdata/text_format_unittest_data_oneof_implemented.txt") +
|
||||||
+ EXPECT_TRUE(Run(cmd));
|
+ " --protobuf_out=" + out_file));
|
||||||
+ ExpectBinaryFilesMatch(out_file, TestSourceDir() + "/google/protobuf/testdata/golden_message_oneof_implemented");
|
+ ExpectBinaryFilesMatch(out_file, TestUtil::GetTestDataPath(
|
||||||
|
+ "net/proto2/internal/testdata/golden_message_oneof_implemented"));
|
||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
INSTANTIATE_TEST_CASE_P(FileDescriptorSetSource,
|
INSTANTIATE_TEST_SUITE_P(FileDescriptorSetSource, EncodeDecodeTest,
|
||||||
EncodeDecodeTest,
|
|
||||||
testing::Values(PROTO_PATH, DESCRIPTOR_SET_IN));
|
testing::Values(PROTO_PATH, DESCRIPTOR_SET_IN));
|
||||||
|
} // anonymous namespace
|
@ -2,16 +2,16 @@ Disable no-warning-test which is compiled with -Werror option and whose only pur
|
|||||||
|
|
||||||
--- /src/Makefile.am
|
--- /src/Makefile.am
|
||||||
+++ /src/Makefile.am
|
+++ /src/Makefile.am
|
||||||
@@ -750,7 +750,7 @@
|
@@ -713,7 +713,7 @@
|
||||||
|
GOOGLEMOCK_SRC_DIR=$(srcdir)/../third_party/googletest/googlemock
|
||||||
check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
|
check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
|
||||||
protobuf-lite-test test_plugin protobuf-lite-arena-test \
|
protobuf-lite-test test_plugin protobuf-lite-arena-test \
|
||||||
- no-warning-test $(GZCHECKPROGRAMS)
|
- no-warning-test $(GZCHECKPROGRAMS)
|
||||||
+ $(GZCHECKPROGRAMS)
|
+ $(GZCHECKPROGRAMS)
|
||||||
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
../gmock/gtest/lib/libgtest.la \
|
$(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
../gmock/lib/libgmock.la \
|
$(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
@@ -931,4 +931,4 @@
|
@@ -900,4 +900,4 @@
|
||||||
|
|
||||||
TESTS = protobuf-test protobuf-lazy-descriptor-test protobuf-lite-test \
|
TESTS = protobuf-test protobuf-lazy-descriptor-test protobuf-lite-test \
|
||||||
google/protobuf/compiler/zip_output_unittest.sh $(GZTESTS) \
|
google/protobuf/compiler/zip_output_unittest.sh $(GZTESTS) \
|
@ -1,12 +1,8 @@
|
|||||||
--- /Makefile.am
|
--- /Makefile.am
|
||||||
+++ /Makefile.am
|
+++ /Makefile.am
|
||||||
@@ -8,31 +8,12 @@
|
@@ -11,28 +11,10 @@
|
||||||
# the right time.
|
# Always include third_party directories in distributions.
|
||||||
SUBDIRS = . src
|
DIST_SUBDIRS = src conformance benchmarks third_party/googletest
|
||||||
|
|
||||||
-# Always include gmock in distributions.
|
|
||||||
-DIST_SUBDIRS = $(subdirs) src conformance benchmarks
|
|
||||||
+DIST_SUBDIRS = src conformance benchmarks
|
|
||||||
|
|
||||||
-# Build gmock before we build protobuf tests. We don't add gmock to SUBDIRS
|
-# Build gmock before we build protobuf tests. We don't add gmock to SUBDIRS
|
||||||
-# because then "make check" would also build and run all of gmock's own tests,
|
-# because then "make check" would also build and run all of gmock's own tests,
|
||||||
@ -15,8 +11,8 @@
|
|||||||
-# the installed version of gmock if there is one.
|
-# the installed version of gmock if there is one.
|
||||||
check-local:
|
check-local:
|
||||||
- @echo "Making lib/libgmock.a lib/libgmock_main.a in gmock"
|
- @echo "Making lib/libgmock.a lib/libgmock_main.a in gmock"
|
||||||
- @cd gmock && $(MAKE) $(AM_MAKEFLAGS) lib/libgmock.la lib/libgmock_main.la
|
- @cd third_party/googletest/googletest && $(MAKE) $(AM_MAKEFLAGS) lib/libgtest.la lib/libgtest_main.la
|
||||||
- @cd gmock/gtest && $(MAKE) $(AM_MAKEFLAGS) lib/libgtest.la lib/libgtest_main.la
|
- @cd third_party/googletest/googlemock && $(MAKE) $(AM_MAKEFLAGS) lib/libgmock.la lib/libgmock_main.la
|
||||||
|
|
||||||
-# We would like to clean gmock when "make clean" is invoked. But we have to
|
-# We would like to clean gmock when "make clean" is invoked. But we have to
|
||||||
-# be careful because clean-local is also invoked during "make distclean", but
|
-# be careful because clean-local is also invoked during "make distclean", but
|
||||||
@ -25,9 +21,9 @@
|
|||||||
-# cd to the directory again and "make clean" it will fail. So, check that the
|
-# cd to the directory again and "make clean" it will fail. So, check that the
|
||||||
-# Makefile exists before recursing.
|
-# Makefile exists before recursing.
|
||||||
clean-local:
|
clean-local:
|
||||||
- @if test -e gmock/Makefile; then \
|
- @if test -e third_party/googletest/Makefile; then \
|
||||||
- echo "Making clean in gmock"; \
|
- echo "Making clean in googletest"; \
|
||||||
- cd gmock && $(MAKE) $(AM_MAKEFLAGS) clean; \
|
- cd third_party/googletest && $(MAKE) $(AM_MAKEFLAGS) clean; \
|
||||||
- fi; \
|
- fi; \
|
||||||
- if test -e conformance/Makefile; then \
|
- if test -e conformance/Makefile; then \
|
||||||
+ @if test -e conformance/Makefile; then \
|
+ @if test -e conformance/Makefile; then \
|
||||||
@ -36,81 +32,89 @@
|
|||||||
fi; \
|
fi; \
|
||||||
--- /configure.ac
|
--- /configure.ac
|
||||||
+++ /configure.ac
|
+++ /configure.ac
|
||||||
@@ -200,12 +200,5 @@
|
@@ -236,12 +236,5 @@
|
||||||
|
fi
|
||||||
AX_CXX_COMPILE_STDCXX([11], [noext], [optional])
|
AC_SUBST([LIBLOG_LIBS])
|
||||||
|
|
||||||
-# HACK: Make gmock's configure script pick up our copy of CFLAGS and CXXFLAGS,
|
-# HACK: Make gmock's configure script pick up our copy of CFLAGS and CXXFLAGS,
|
||||||
-# since the flags added by ACX_CHECK_SUNCC must be used when compiling gmock
|
-# since the flags added by ACX_CHECK_SUNCC must be used when compiling gmock
|
||||||
-# too.
|
-# too.
|
||||||
-export CFLAGS
|
-export CFLAGS
|
||||||
-export CXXFLAGS
|
-export CXXFLAGS
|
||||||
-AC_CONFIG_SUBDIRS([gmock])
|
-AC_CONFIG_SUBDIRS([third_party/googletest])
|
||||||
-
|
-
|
||||||
AC_CONFIG_FILES([Makefile src/Makefile benchmarks/Makefile conformance/Makefile protobuf.pc protobuf-lite.pc])
|
AC_CONFIG_FILES([Makefile src/Makefile benchmarks/Makefile conformance/Makefile protobuf.pc protobuf-lite.pc])
|
||||||
AC_OUTPUT
|
AC_OUTPUT
|
||||||
--- /src/Makefile.am
|
--- /src/Makefile.am
|
||||||
+++ /src/Makefile.am
|
+++ /src/Makefile.am
|
||||||
@@ -752,11 +752,7 @@
|
@@ -707,19 +707,11 @@
|
||||||
|
google/protobuf/testing/file.cc \
|
||||||
|
google/protobuf/testing/file.h
|
||||||
|
|
||||||
|
-GOOGLETEST_BUILD_DIR=../third_party/googletest/googletest
|
||||||
|
-GOOGLEMOCK_BUILD_DIR=../third_party/googletest/googlemock
|
||||||
|
-GOOGLETEST_SRC_DIR=$(srcdir)/../third_party/googletest/googletest
|
||||||
|
-GOOGLEMOCK_SRC_DIR=$(srcdir)/../third_party/googletest/googlemock
|
||||||
|
check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
|
||||||
protobuf-lite-test test_plugin protobuf-lite-arena-test \
|
protobuf-lite-test test_plugin protobuf-lite-arena-test \
|
||||||
no-warning-test $(GZCHECKPROGRAMS)
|
$(GZCHECKPROGRAMS)
|
||||||
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
- ../gmock/gtest/lib/libgtest.la \
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
- ../gmock/lib/libgmock.la \
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
- ../gmock/lib/libgmock_main.la
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
-protobuf_test_CPPFLAGS = -I$(srcdir)/../gmock/gtest/include \
|
-protobuf_test_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include \
|
||||||
- -I$(srcdir)/../gmock/include
|
- -I$(GOOGLEMOCK_SRC_DIR)/include
|
||||||
+ -lgtest -lgmock -lgmock_main
|
+ -lgtest -lgmock -lgmock_main
|
||||||
# Disable optimization for tests unless the user explicitly asked for it,
|
# Disable optimization for tests unless the user explicitly asked for it,
|
||||||
# since test_util.cc takes forever to compile with optimization (with GCC).
|
# since test_util.cc takes forever to compile with optimization (with GCC).
|
||||||
# See configure.ac for more info.
|
# See configure.ac for more info.
|
||||||
@@ -843,12 +839,8 @@
|
@@ -811,12 +803,8 @@
|
||||||
# Run cpp_unittest again with PROTOBUF_TEST_NO_DESCRIPTORS defined.
|
# Run cpp_unittest again with PROTOBUF_TEST_NO_DESCRIPTORS defined.
|
||||||
protobuf_lazy_descriptor_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la \
|
protobuf_lazy_descriptor_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la \
|
||||||
libprotoc.la \
|
libprotoc.la \
|
||||||
- ../gmock/gtest/lib/libgtest.la \
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
- ../gmock/lib/libgmock.la \
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
- ../gmock/lib/libgmock_main.la
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
-protobuf_lazy_descriptor_test_CPPFLAGS = -I$(srcdir)/../gmock/include \
|
-protobuf_lazy_descriptor_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
- -I$(srcdir)/../gmock/gtest/include \
|
- -I$(GOOGLETEST_SRC_DIR)/include \
|
||||||
- -DPROTOBUF_TEST_NO_DESCRIPTORS
|
- -DPROTOBUF_TEST_NO_DESCRIPTORS
|
||||||
+ -lgtest -lgmock -lgmock_main
|
+ -lgtest -lgmock -lgmock_main
|
||||||
+protobuf_lazy_descriptor_test_CPPFLAGS = -DPROTOBUF_TEST_NO_DESCRIPTORS
|
+protobuf_lazy_descriptor_test_CPPFLAGS = -DPROTOBUF_TEST_NO_DESCRIPTORS
|
||||||
protobuf_lazy_descriptor_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
protobuf_lazy_descriptor_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
protobuf_lazy_descriptor_test_SOURCES = \
|
protobuf_lazy_descriptor_test_SOURCES = \
|
||||||
google/protobuf/compiler/cpp/cpp_unittest.cc \
|
google/protobuf/compiler/cpp/cpp_unittest.cc \
|
||||||
@@ -868,11 +860,7 @@
|
@@ -837,11 +825,7 @@
|
||||||
# full runtime and we want to make sure this test builds without full
|
# full runtime and we want to make sure this test builds without full
|
||||||
# runtime.
|
# runtime.
|
||||||
protobuf_lite_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
|
protobuf_lite_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
|
||||||
- ../gmock/gtest/lib/libgtest.la \
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
- ../gmock/lib/libgmock.la \
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
- ../gmock/lib/libgmock_main.la
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
-protobuf_lite_test_CPPFLAGS= -I$(srcdir)/../gmock/include \
|
-protobuf_lite_test_CPPFLAGS= -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
- -I$(srcdir)/../gmock/gtest/include
|
- -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
+ -lgtest -lgmock -lgmock_main
|
+ -lgtest -lgmock -lgmock_main
|
||||||
protobuf_lite_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
protobuf_lite_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
protobuf_lite_test_SOURCES = \
|
protobuf_lite_test_SOURCES = \
|
||||||
google/protobuf/lite_unittest.cc \
|
google/protobuf/lite_unittest.cc \
|
||||||
@@ -883,11 +871,7 @@
|
@@ -853,11 +837,7 @@
|
||||||
# gtest when building the test internally our memory sanitizer doesn't detect
|
# gtest when building the test internally our memory sanitizer doesn't detect
|
||||||
# memory leaks (don't know why).
|
# memory leaks (don't know why).
|
||||||
protobuf_lite_arena_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
|
protobuf_lite_arena_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
|
||||||
- ../gmock/gtest/lib/libgtest.la \
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
- ../gmock/lib/libgmock.la \
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
- ../gmock/lib/libgmock_main.la
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
-protobuf_lite_arena_test_CPPFLAGS = -I$(srcdir)/../gmock/include \
|
-protobuf_lite_arena_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
- -I$(srcdir)/../gmock/gtest/include
|
- -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
+ -lgtest -lgmock -lgmock_main
|
+ -lgtest -lgmock -lgmock_main
|
||||||
protobuf_lite_arena_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
protobuf_lite_arena_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
protobuf_lite_arena_test_SOURCES = \
|
protobuf_lite_arena_test_SOURCES = \
|
||||||
google/protobuf/lite_arena_unittest.cc \
|
google/protobuf/lite_arena_unittest.cc \
|
||||||
@@ -896,8 +880,7 @@
|
@@ -867,8 +847,7 @@
|
||||||
|
|
||||||
# Test plugin binary.
|
# Test plugin binary.
|
||||||
test_plugin_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
test_plugin_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
- ../gmock/gtest/lib/libgtest.la
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la
|
||||||
-test_plugin_CPPFLAGS = -I$(srcdir)/../gmock/gtest/include
|
-test_plugin_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
+ -lgtest
|
+ -lgtest
|
||||||
test_plugin_SOURCES = \
|
test_plugin_SOURCES = \
|
||||||
google/protobuf/compiler/mock_code_generator.cc \
|
google/protobuf/compiler/mock_code_generator.cc \
|
@ -0,0 +1,36 @@
|
|||||||
|
From 290073d7d4ddaa6d39ad12c90245e795c5482432 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
|
||||||
|
Date: Sat, 29 Jan 2022 22:43:50 +0800
|
||||||
|
Subject: [PATCH] protobuf-3.18.0: disable no-warning test
|
||||||
|
|
||||||
|
Disable no-warning-test which is compiled with -Werror option
|
||||||
|
and whose only purpose is checking if compilation results in any warnings.
|
||||||
|
|
||||||
|
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
|
||||||
|
Signed-off-by: Yixun Lan <dlan@gentoo.org>
|
||||||
|
---
|
||||||
|
src/Makefile.am | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||||
|
index e6b4d0f..1cfd885 100644
|
||||||
|
--- a/src/Makefile.am
|
||||||
|
+++ b/src/Makefile.am
|
||||||
|
@@ -726,7 +726,7 @@ GOOGLETEST_SRC_DIR=$(srcdir)/../third_party/googletest/googletest
|
||||||
|
GOOGLEMOCK_SRC_DIR=$(srcdir)/../third_party/googletest/googlemock
|
||||||
|
check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
|
||||||
|
protobuf-lite-test test_plugin protobuf-lite-arena-test \
|
||||||
|
- no-warning-test $(GZCHECKPROGRAMS)
|
||||||
|
+ $(GZCHECKPROGRAMS)
|
||||||
|
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
|
$(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
$(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
@@ -915,4 +915,4 @@ nodist_no_warning_test_SOURCES = no_warning_test.cc $(protoc_outputs)
|
||||||
|
|
||||||
|
TESTS = protobuf-test protobuf-lazy-descriptor-test protobuf-lite-test \
|
||||||
|
google/protobuf/compiler/zip_output_unittest.sh $(GZTESTS) \
|
||||||
|
- protobuf-lite-arena-test no-warning-test
|
||||||
|
+ protobuf-lite-arena-test
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
@ -0,0 +1,146 @@
|
|||||||
|
From 10b2d5bb5a4d1b7529cb781e5513940ad6db4ada Mon Sep 17 00:00:00 2001
|
||||||
|
From: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
|
||||||
|
Date: Sat, 29 Jan 2022 22:46:38 +0800
|
||||||
|
Subject: [PATCH] protobuf-3.18.0: system_libraries
|
||||||
|
|
||||||
|
Use system version of GoogleTest,
|
||||||
|
which will unbundle gtest, gmock libraries
|
||||||
|
|
||||||
|
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
|
||||||
|
Signed-off-by: Yixun Lan <dlan@gentoo.org>
|
||||||
|
---
|
||||||
|
Makefile.am | 20 +-------------------
|
||||||
|
configure.ac | 7 -------
|
||||||
|
src/Makefile.am | 33 ++++++---------------------------
|
||||||
|
3 files changed, 7 insertions(+), 53 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 7ce954e..c1493e0 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -11,28 +11,10 @@ SUBDIRS = . src
|
||||||
|
# Always include third_party directories in distributions.
|
||||||
|
DIST_SUBDIRS = src conformance benchmarks third_party/googletest
|
||||||
|
|
||||||
|
-# Build gmock before we build protobuf tests. We don't add gmock to SUBDIRS
|
||||||
|
-# because then "make check" would also build and run all of gmock's own tests,
|
||||||
|
-# which takes a lot of time and is generally not useful to us. Also, we don't
|
||||||
|
-# want "make install" to recurse into gmock since we don't want to overwrite
|
||||||
|
-# the installed version of gmock if there is one.
|
||||||
|
check-local:
|
||||||
|
- @echo "Making lib/libgmock.a lib/libgmock_main.a in gmock"
|
||||||
|
- @cd third_party/googletest/googletest && $(MAKE) $(AM_MAKEFLAGS) lib/libgtest.la lib/libgtest_main.la
|
||||||
|
- @cd third_party/googletest/googlemock && $(MAKE) $(AM_MAKEFLAGS) lib/libgmock.la lib/libgmock_main.la
|
||||||
|
|
||||||
|
-# We would like to clean gmock when "make clean" is invoked. But we have to
|
||||||
|
-# be careful because clean-local is also invoked during "make distclean", but
|
||||||
|
-# "make distclean" already recurses into gmock because it's listed among the
|
||||||
|
-# DIST_SUBDIRS. distclean will delete gmock/Makefile, so if we then try to
|
||||||
|
-# cd to the directory again and "make clean" it will fail. So, check that the
|
||||||
|
-# Makefile exists before recursing.
|
||||||
|
clean-local:
|
||||||
|
- @if test -e third_party/googletest/Makefile; then \
|
||||||
|
- echo "Making clean in googletest"; \
|
||||||
|
- cd third_party/googletest && $(MAKE) $(AM_MAKEFLAGS) clean; \
|
||||||
|
- fi; \
|
||||||
|
- if test -e conformance/Makefile; then \
|
||||||
|
+ @if test -e conformance/Makefile; then \
|
||||||
|
echo "Making clean in conformance"; \
|
||||||
|
cd conformance && $(MAKE) $(AM_MAKEFLAGS) clean; \
|
||||||
|
fi; \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 4a6d50a..6301bd6 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -236,12 +236,5 @@ if test "x$ANDROID_TEST" = xyes; then
|
||||||
|
fi
|
||||||
|
AC_SUBST([LIBLOG_LIBS])
|
||||||
|
|
||||||
|
-# HACK: Make gmock's configure script pick up our copy of CFLAGS and CXXFLAGS,
|
||||||
|
-# since the flags added by ACX_CHECK_SUNCC must be used when compiling gmock
|
||||||
|
-# too.
|
||||||
|
-export CFLAGS
|
||||||
|
-export CXXFLAGS
|
||||||
|
-AC_CONFIG_SUBDIRS([third_party/googletest])
|
||||||
|
-
|
||||||
|
AC_CONFIG_FILES([Makefile src/Makefile benchmarks/Makefile conformance/Makefile protobuf.pc protobuf-lite.pc])
|
||||||
|
AC_OUTPUT
|
||||||
|
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||||
|
index 1cfd885..73c2c6d 100644
|
||||||
|
--- a/src/Makefile.am
|
||||||
|
+++ b/src/Makefile.am
|
||||||
|
@@ -720,19 +720,11 @@ COMMON_TEST_SOURCES = \
|
||||||
|
google/protobuf/testing/googletest.cc \
|
||||||
|
google/protobuf/testing/googletest.h
|
||||||
|
|
||||||
|
-GOOGLETEST_BUILD_DIR=../third_party/googletest/googletest
|
||||||
|
-GOOGLEMOCK_BUILD_DIR=../third_party/googletest/googlemock
|
||||||
|
-GOOGLETEST_SRC_DIR=$(srcdir)/../third_party/googletest/googletest
|
||||||
|
-GOOGLEMOCK_SRC_DIR=$(srcdir)/../third_party/googletest/googlemock
|
||||||
|
check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
|
||||||
|
protobuf-lite-test test_plugin protobuf-lite-arena-test \
|
||||||
|
$(GZCHECKPROGRAMS)
|
||||||
|
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
|
-protobuf_test_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include \
|
||||||
|
- -I$(GOOGLEMOCK_SRC_DIR)/include
|
||||||
|
+ -lgtest -lgmock -lgmock_main
|
||||||
|
# Disable optimization for tests unless the user explicitly asked for it,
|
||||||
|
# since test_util.cc takes forever to compile with optimization (with GCC).
|
||||||
|
# See configure.ac for more info.
|
||||||
|
@@ -825,12 +817,8 @@ $(am_protobuf_test_OBJECTS): unittest_proto_middleman
|
||||||
|
# Run cpp_unittest again with PROTOBUF_TEST_NO_DESCRIPTORS defined.
|
||||||
|
protobuf_lazy_descriptor_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la \
|
||||||
|
libprotoc.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
|
-protobuf_lazy_descriptor_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
|
- -I$(GOOGLETEST_SRC_DIR)/include \
|
||||||
|
- -DPROTOBUF_TEST_NO_DESCRIPTORS
|
||||||
|
+ -lgtest -lgmock -lgmock_main
|
||||||
|
+protobuf_lazy_descriptor_test_CPPFLAGS = -DPROTOBUF_TEST_NO_DESCRIPTORS
|
||||||
|
protobuf_lazy_descriptor_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
|
protobuf_lazy_descriptor_test_SOURCES = \
|
||||||
|
google/protobuf/compiler/cpp/cpp_unittest.cc \
|
||||||
|
@@ -851,11 +839,7 @@ COMMON_LITE_TEST_SOURCES = \
|
||||||
|
# full runtime and we want to make sure this test builds without full
|
||||||
|
# runtime.
|
||||||
|
protobuf_lite_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
|
-protobuf_lite_test_CPPFLAGS= -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
|
- -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
|
+ -lgtest -lgmock -lgmock_main
|
||||||
|
protobuf_lite_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
|
protobuf_lite_test_SOURCES = \
|
||||||
|
google/protobuf/lite_unittest.cc \
|
||||||
|
@@ -867,11 +851,7 @@ $(am_protobuf_lite_test_OBJECTS): unittest_proto_middleman
|
||||||
|
# gtest when building the test internally our memory sanitizer doesn't detect
|
||||||
|
# memory leaks (don't know why).
|
||||||
|
protobuf_lite_arena_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
|
-protobuf_lite_arena_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
|
- -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
|
+ -lgtest -lgmock -lgmock_main
|
||||||
|
protobuf_lite_arena_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
|
protobuf_lite_arena_test_SOURCES = \
|
||||||
|
google/protobuf/lite_arena_unittest.cc \
|
||||||
|
@@ -881,8 +861,7 @@ $(am_protobuf_lite_arena_test_OBJECTS): unittest_proto_middleman
|
||||||
|
|
||||||
|
# Test plugin binary.
|
||||||
|
test_plugin_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la
|
||||||
|
-test_plugin_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
|
+ -lgtest
|
||||||
|
test_plugin_SOURCES = \
|
||||||
|
google/protobuf/compiler/mock_code_generator.cc \
|
||||||
|
google/protobuf/compiler/test_plugin.cc \
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
@ -0,0 +1,36 @@
|
|||||||
|
From 12e381222a8cdce50845dfb7d8fdf863f6f8bb8a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
|
||||||
|
Date: Fri, 28 Jan 2022 15:08:40 +0800
|
||||||
|
Subject: [PATCH] protobuf-3.19.0: disable no-warning test
|
||||||
|
|
||||||
|
Disable no-warning-test which is compiled with -Werror option
|
||||||
|
and whose only purpose is checking if compilation results in any warnings.
|
||||||
|
|
||||||
|
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
|
||||||
|
Signed-off-by: Yixun Lan <dlan@gentoo.org>
|
||||||
|
---
|
||||||
|
src/Makefile.am | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||||
|
index 3312e5d..7e86b62 100644
|
||||||
|
--- a/src/Makefile.am
|
||||||
|
+++ b/src/Makefile.am
|
||||||
|
@@ -722,7 +722,7 @@ GOOGLETEST_SRC_DIR=$(srcdir)/../third_party/googletest/googletest
|
||||||
|
GOOGLEMOCK_SRC_DIR=$(srcdir)/../third_party/googletest/googlemock
|
||||||
|
check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
|
||||||
|
protobuf-lite-test test_plugin protobuf-lite-arena-test \
|
||||||
|
- no-warning-test $(GZCHECKPROGRAMS)
|
||||||
|
+ $(GZCHECKPROGRAMS)
|
||||||
|
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
|
$(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
$(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
@@ -911,4 +911,4 @@ nodist_no_warning_test_SOURCES = no_warning_test.cc $(protoc_outputs)
|
||||||
|
|
||||||
|
TESTS = protobuf-test protobuf-lazy-descriptor-test protobuf-lite-test \
|
||||||
|
google/protobuf/compiler/zip_output_unittest.sh $(GZTESTS) \
|
||||||
|
- protobuf-lite-arena-test no-warning-test
|
||||||
|
+ protobuf-lite-arena-test
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
@ -0,0 +1,146 @@
|
|||||||
|
From c080d329298e841d7d4e1380ff7ec88de5cb3b02 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
|
||||||
|
Date: Fri, 28 Jan 2022 15:14:59 +0800
|
||||||
|
Subject: [PATCH] protobuf-3.19.0: system_libraries
|
||||||
|
|
||||||
|
Use system version of GoogleTest,
|
||||||
|
which will unbundle gtest, gmock libraries
|
||||||
|
|
||||||
|
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
|
||||||
|
Signed-off-by: Yixun Lan <dlan@gentoo.org>
|
||||||
|
---
|
||||||
|
Makefile.am | 20 +-------------------
|
||||||
|
configure.ac | 7 -------
|
||||||
|
src/Makefile.am | 33 ++++++---------------------------
|
||||||
|
3 files changed, 7 insertions(+), 53 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 41d4061..b24f8f4 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -11,28 +11,10 @@ SUBDIRS = . src
|
||||||
|
# Always include third_party directories in distributions.
|
||||||
|
DIST_SUBDIRS = src conformance benchmarks third_party/googletest
|
||||||
|
|
||||||
|
-# Build gmock before we build protobuf tests. We don't add gmock to SUBDIRS
|
||||||
|
-# because then "make check" would also build and run all of gmock's own tests,
|
||||||
|
-# which takes a lot of time and is generally not useful to us. Also, we don't
|
||||||
|
-# want "make install" to recurse into gmock since we don't want to overwrite
|
||||||
|
-# the installed version of gmock if there is one.
|
||||||
|
check-local:
|
||||||
|
- @echo "Making lib/libgmock.a lib/libgmock_main.a in gmock"
|
||||||
|
- @cd third_party/googletest/googletest && $(MAKE) $(AM_MAKEFLAGS) lib/libgtest.la lib/libgtest_main.la
|
||||||
|
- @cd third_party/googletest/googlemock && $(MAKE) $(AM_MAKEFLAGS) lib/libgmock.la lib/libgmock_main.la
|
||||||
|
|
||||||
|
-# We would like to clean gmock when "make clean" is invoked. But we have to
|
||||||
|
-# be careful because clean-local is also invoked during "make distclean", but
|
||||||
|
-# "make distclean" already recurses into gmock because it's listed among the
|
||||||
|
-# DIST_SUBDIRS. distclean will delete gmock/Makefile, so if we then try to
|
||||||
|
-# cd to the directory again and "make clean" it will fail. So, check that the
|
||||||
|
-# Makefile exists before recursing.
|
||||||
|
clean-local:
|
||||||
|
- @if test -e third_party/googletest/Makefile; then \
|
||||||
|
- echo "Making clean in googletest"; \
|
||||||
|
- cd third_party/googletest && $(MAKE) $(AM_MAKEFLAGS) clean; \
|
||||||
|
- fi; \
|
||||||
|
- if test -e conformance/Makefile; then \
|
||||||
|
+ @if test -e conformance/Makefile; then \
|
||||||
|
echo "Making clean in conformance"; \
|
||||||
|
cd conformance && $(MAKE) $(AM_MAKEFLAGS) clean; \
|
||||||
|
fi; \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 02085ca..449fb3d 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -236,12 +236,5 @@ if test "x$ANDROID_TEST" = xyes; then
|
||||||
|
fi
|
||||||
|
AC_SUBST([LIBLOG_LIBS])
|
||||||
|
|
||||||
|
-# HACK: Make gmock's configure script pick up our copy of CFLAGS and CXXFLAGS,
|
||||||
|
-# since the flags added by ACX_CHECK_SUNCC must be used when compiling gmock
|
||||||
|
-# too.
|
||||||
|
-export CFLAGS
|
||||||
|
-export CXXFLAGS
|
||||||
|
-AC_CONFIG_SUBDIRS([third_party/googletest])
|
||||||
|
-
|
||||||
|
AC_CONFIG_FILES([Makefile src/Makefile benchmarks/Makefile conformance/Makefile protobuf.pc protobuf-lite.pc])
|
||||||
|
AC_OUTPUT
|
||||||
|
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||||
|
index 7e86b62..47d759f 100644
|
||||||
|
--- a/src/Makefile.am
|
||||||
|
+++ b/src/Makefile.am
|
||||||
|
@@ -716,19 +716,11 @@ COMMON_TEST_SOURCES = \
|
||||||
|
google/protobuf/testing/googletest.cc \
|
||||||
|
google/protobuf/testing/googletest.h
|
||||||
|
|
||||||
|
-GOOGLETEST_BUILD_DIR=../third_party/googletest/googletest
|
||||||
|
-GOOGLEMOCK_BUILD_DIR=../third_party/googletest/googlemock
|
||||||
|
-GOOGLETEST_SRC_DIR=$(srcdir)/../third_party/googletest/googletest
|
||||||
|
-GOOGLEMOCK_SRC_DIR=$(srcdir)/../third_party/googletest/googlemock
|
||||||
|
check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
|
||||||
|
protobuf-lite-test test_plugin protobuf-lite-arena-test \
|
||||||
|
$(GZCHECKPROGRAMS)
|
||||||
|
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
|
-protobuf_test_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include \
|
||||||
|
- -I$(GOOGLEMOCK_SRC_DIR)/include
|
||||||
|
+ -lgtest -lgmock -lgmock_main
|
||||||
|
# Disable optimization for tests unless the user explicitly asked for it,
|
||||||
|
# since test_util.cc takes forever to compile with optimization (with GCC).
|
||||||
|
# See configure.ac for more info.
|
||||||
|
@@ -820,12 +812,8 @@ $(am_protobuf_test_OBJECTS): unittest_proto_middleman
|
||||||
|
# Run cpp_unittest again with PROTOBUF_TEST_NO_DESCRIPTORS defined.
|
||||||
|
protobuf_lazy_descriptor_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la \
|
||||||
|
libprotoc.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
|
-protobuf_lazy_descriptor_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
|
- -I$(GOOGLETEST_SRC_DIR)/include \
|
||||||
|
- -DPROTOBUF_TEST_NO_DESCRIPTORS
|
||||||
|
+ -lgtest -lgmock -lgmock_main
|
||||||
|
+protobuf_lazy_descriptor_test_CPPFLAGS = -DPROTOBUF_TEST_NO_DESCRIPTORS
|
||||||
|
protobuf_lazy_descriptor_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
|
protobuf_lazy_descriptor_test_SOURCES = \
|
||||||
|
google/protobuf/compiler/cpp/cpp_unittest.cc \
|
||||||
|
@@ -847,11 +835,7 @@ COMMON_LITE_TEST_SOURCES = \
|
||||||
|
# full runtime and we want to make sure this test builds without full
|
||||||
|
# runtime.
|
||||||
|
protobuf_lite_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
|
-protobuf_lite_test_CPPFLAGS= -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
|
- -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
|
+ -lgtest -lgmock -lgmock_main
|
||||||
|
protobuf_lite_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
|
protobuf_lite_test_SOURCES = \
|
||||||
|
google/protobuf/lite_unittest.cc \
|
||||||
|
@@ -863,11 +847,7 @@ $(am_protobuf_lite_test_OBJECTS): unittest_proto_middleman
|
||||||
|
# gtest when building the test internally our memory sanitizer doesn't detect
|
||||||
|
# memory leaks (don't know why).
|
||||||
|
protobuf_lite_arena_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
|
||||||
|
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
|
||||||
|
-protobuf_lite_arena_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
|
||||||
|
- -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
|
+ -lgtest -lgmock -lgmock_main
|
||||||
|
protobuf_lite_arena_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
|
||||||
|
protobuf_lite_arena_test_SOURCES = \
|
||||||
|
google/protobuf/lite_arena_unittest.cc \
|
||||||
|
@@ -877,8 +857,7 @@ $(am_protobuf_lite_arena_test_OBJECTS): unittest_proto_middleman
|
||||||
|
|
||||||
|
# Test plugin binary.
|
||||||
|
test_plugin_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
|
||||||
|
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la
|
||||||
|
-test_plugin_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include
|
||||||
|
+ -lgtest
|
||||||
|
test_plugin_SOURCES = \
|
||||||
|
google/protobuf/compiler/mock_code_generator.cc \
|
||||||
|
google/protobuf/compiler/test_plugin.cc \
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
@ -1,21 +0,0 @@
|
|||||||
https://github.com/google/protobuf/issues/3937
|
|
||||||
https://github.com/google/protobuf/pull/3955
|
|
||||||
https://github.com/google/protobuf/commit/642e1ac635f2563b4a14c255374f02645ae85dac
|
|
||||||
|
|
||||||
--- /src/google/protobuf/stubs/atomicops_internals_generic_gcc.h
|
|
||||||
+++ /src/google/protobuf/stubs/atomicops_internals_generic_gcc.h
|
|
||||||
@@ -146,6 +146,14 @@
|
|
||||||
return __atomic_load_n(ptr, __ATOMIC_RELAXED);
|
|
||||||
}
|
|
||||||
|
|
||||||
+inline Atomic64 Release_CompareAndSwap(volatile Atomic64* ptr,
|
|
||||||
+ Atomic64 old_value,
|
|
||||||
+ Atomic64 new_value) {
|
|
||||||
+ __atomic_compare_exchange_n(ptr, &old_value, new_value, false,
|
|
||||||
+ __ATOMIC_RELEASE, __ATOMIC_ACQUIRE);
|
|
||||||
+ return old_value;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
#endif // defined(__LP64__)
|
|
||||||
|
|
||||||
} // namespace internal
|
|
@ -1,18 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
<pkgmetadata>
|
<pkgmetadata>
|
||||||
<maintainer type="person">
|
<maintainer type="person" proxied="yes">
|
||||||
<email>arfrever.fta@gmail.com</email>
|
<email>arfrever.fta@gmail.com</email>
|
||||||
<name>Arfrever Frehtes Taifersar Arahesis</name>
|
<name>Arfrever Frehtes Taifersar Arahesis</name>
|
||||||
</maintainer>
|
</maintainer>
|
||||||
<maintainer type="project">
|
<maintainer type="project">
|
||||||
<email>proxy-maint@gentoo.org</email>
|
<email>cjk@gentoo.org</email>
|
||||||
<name>Proxy Maintainers</name>
|
<name>Cjk</name>
|
||||||
</maintainer>
|
</maintainer>
|
||||||
<slots>
|
<slots>
|
||||||
<subslots>Soname version number</subslots>
|
<subslots>Soname version number</subslots>
|
||||||
</slots>
|
</slots>
|
||||||
<upstream>
|
<upstream>
|
||||||
<remote-id type="github">google/protobuf</remote-id>
|
<remote-id type="cpe">cpe:/a:google:protobuf</remote-id>
|
||||||
|
<remote-id type="github">protocolbuffers/protobuf</remote-id>
|
||||||
</upstream>
|
</upstream>
|
||||||
</pkgmetadata>
|
</pkgmetadata>
|
||||||
|
143
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.17.0.ebuild
vendored
Normal file
143
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.17.0.ebuild
vendored
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
# Copyright 2008-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI="7"
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
||||||
|
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||||
|
EGIT_SUBMODULES=()
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
||||||
|
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
SRC_URI=""
|
||||||
|
else
|
||||||
|
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="BSD"
|
||||||
|
SLOT="0/28"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||||
|
IUSE="emacs examples static-libs test zlib"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
BDEPEND="emacs? ( app-editors/emacs:* )"
|
||||||
|
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
RDEPEND="emacs? ( app-editors/emacs:* )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-disable_no-warning-test.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-system_libraries.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.16.0-protoc_input_output_files.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/7413
|
||||||
|
sed -e "/^AC_PROG_CXX_FOR_BUILD$/d" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8082
|
||||||
|
sed -e "/^TEST_F(IoTest, LargeOutput) {$/,/^}$/d" -i src/google/protobuf/io/zero_copy_stream_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8459
|
||||||
|
sed \
|
||||||
|
-e "/^TEST(ArenaTest, BlockSizeSmallerThanAllocation) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-e "/^TEST(ArenaTest, SpaceAllocated_and_Used) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-i src/google/protobuf/arena_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8460
|
||||||
|
sed -e "/^TEST(AnyTest, TestPackFromSerializationExceedsSizeLimit) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" -i src/google/protobuf/any_test.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9392
|
||||||
|
sed -e "s/^AC_PROG_OBJC$/AS_CASE([\$target_os], [darwin*], [AC_PROG_OBJC], [AM_CONDITIONAL([am__fastdepOBJC], [false])])/" -i configure.ac || die
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
||||||
|
|
||||||
|
if tc-ld-is-gold; then
|
||||||
|
# https://sourceware.org/bugzilla/show_bug.cgi?id=24527
|
||||||
|
tc-ld-disable-gold
|
||||||
|
fi
|
||||||
|
|
||||||
|
multilib-minimal_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_configure() {
|
||||||
|
local options=(
|
||||||
|
$(use_enable static-libs static)
|
||||||
|
$(use_with zlib)
|
||||||
|
)
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build system uses protoc when building, so protoc copy runnable on host is needed.
|
||||||
|
mkdir -p "${WORKDIR}/build" || die
|
||||||
|
pushd "${WORKDIR}/build" > /dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build "${options[@]}"
|
||||||
|
options+=(--with-protoc="$(pwd)/src/protoc")
|
||||||
|
popd > /dev/null || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" econf "${options[@]}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
multilib-minimal_src_compile
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-compile editors/protobuf-mode.el
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
emake -C "${WORKDIR}/build/src" protoc
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_test() {
|
||||||
|
emake check
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install_all() {
|
||||||
|
find "${ED}" -name "*.la" -delete || die
|
||||||
|
|
||||||
|
insinto /usr/share/vim/vimfiles/syntax
|
||||||
|
doins editors/proto.vim
|
||||||
|
insinto /usr/share/vim/vimfiles/ftdetect
|
||||||
|
doins "${FILESDIR}/proto.vim"
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-install ${PN} editors/protobuf-mode.el*
|
||||||
|
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
DOCS+=(examples)
|
||||||
|
docompress -x /usr/share/doc/${PF}/examples
|
||||||
|
fi
|
||||||
|
|
||||||
|
einstalldocs
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
143
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.17.1.ebuild
vendored
Normal file
143
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.17.1.ebuild
vendored
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
# Copyright 2008-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI="7"
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
||||||
|
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||||
|
EGIT_SUBMODULES=()
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
||||||
|
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
SRC_URI=""
|
||||||
|
else
|
||||||
|
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="BSD"
|
||||||
|
SLOT="0/28"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||||
|
IUSE="emacs examples static-libs test zlib"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
BDEPEND="emacs? ( app-editors/emacs:* )"
|
||||||
|
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
RDEPEND="emacs? ( app-editors/emacs:* )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-disable_no-warning-test.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-system_libraries.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.16.0-protoc_input_output_files.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/7413
|
||||||
|
sed -e "/^AC_PROG_CXX_FOR_BUILD$/d" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8082
|
||||||
|
sed -e "/^TEST_F(IoTest, LargeOutput) {$/,/^}$/d" -i src/google/protobuf/io/zero_copy_stream_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8459
|
||||||
|
sed \
|
||||||
|
-e "/^TEST(ArenaTest, BlockSizeSmallerThanAllocation) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-e "/^TEST(ArenaTest, SpaceAllocated_and_Used) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-i src/google/protobuf/arena_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8460
|
||||||
|
sed -e "/^TEST(AnyTest, TestPackFromSerializationExceedsSizeLimit) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" -i src/google/protobuf/any_test.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9392
|
||||||
|
sed -e "s/^AC_PROG_OBJC$/AS_CASE([\$target_os], [darwin*], [AC_PROG_OBJC], [AM_CONDITIONAL([am__fastdepOBJC], [false])])/" -i configure.ac || die
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
||||||
|
|
||||||
|
if tc-ld-is-gold; then
|
||||||
|
# https://sourceware.org/bugzilla/show_bug.cgi?id=24527
|
||||||
|
tc-ld-disable-gold
|
||||||
|
fi
|
||||||
|
|
||||||
|
multilib-minimal_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_configure() {
|
||||||
|
local options=(
|
||||||
|
$(use_enable static-libs static)
|
||||||
|
$(use_with zlib)
|
||||||
|
)
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build system uses protoc when building, so protoc copy runnable on host is needed.
|
||||||
|
mkdir -p "${WORKDIR}/build" || die
|
||||||
|
pushd "${WORKDIR}/build" > /dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build "${options[@]}"
|
||||||
|
options+=(--with-protoc="$(pwd)/src/protoc")
|
||||||
|
popd > /dev/null || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" econf "${options[@]}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
multilib-minimal_src_compile
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-compile editors/protobuf-mode.el
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
emake -C "${WORKDIR}/build/src" protoc
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_test() {
|
||||||
|
emake check
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install_all() {
|
||||||
|
find "${ED}" -name "*.la" -delete || die
|
||||||
|
|
||||||
|
insinto /usr/share/vim/vimfiles/syntax
|
||||||
|
doins editors/proto.vim
|
||||||
|
insinto /usr/share/vim/vimfiles/ftdetect
|
||||||
|
doins "${FILESDIR}/proto.vim"
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-install ${PN} editors/protobuf-mode.el*
|
||||||
|
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
DOCS+=(examples)
|
||||||
|
docompress -x /usr/share/doc/${PF}/examples
|
||||||
|
fi
|
||||||
|
|
||||||
|
einstalldocs
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
143
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.17.2.ebuild
vendored
Normal file
143
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.17.2.ebuild
vendored
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
# Copyright 2008-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI="7"
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
||||||
|
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||||
|
EGIT_SUBMODULES=()
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
||||||
|
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
SRC_URI=""
|
||||||
|
else
|
||||||
|
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="BSD"
|
||||||
|
SLOT="0/28"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||||
|
IUSE="emacs examples static-libs test zlib"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
BDEPEND="emacs? ( app-editors/emacs:* )"
|
||||||
|
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
RDEPEND="emacs? ( app-editors/emacs:* )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-disable_no-warning-test.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-system_libraries.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.16.0-protoc_input_output_files.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/7413
|
||||||
|
sed -e "/^AC_PROG_CXX_FOR_BUILD$/d" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8082
|
||||||
|
sed -e "/^TEST_F(IoTest, LargeOutput) {$/,/^}$/d" -i src/google/protobuf/io/zero_copy_stream_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8459
|
||||||
|
sed \
|
||||||
|
-e "/^TEST(ArenaTest, BlockSizeSmallerThanAllocation) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-e "/^TEST(ArenaTest, SpaceAllocated_and_Used) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-i src/google/protobuf/arena_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8460
|
||||||
|
sed -e "/^TEST(AnyTest, TestPackFromSerializationExceedsSizeLimit) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" -i src/google/protobuf/any_test.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9392
|
||||||
|
sed -e "s/^AC_PROG_OBJC$/AS_CASE([\$target_os], [darwin*], [AC_PROG_OBJC], [AM_CONDITIONAL([am__fastdepOBJC], [false])])/" -i configure.ac || die
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
||||||
|
|
||||||
|
if tc-ld-is-gold; then
|
||||||
|
# https://sourceware.org/bugzilla/show_bug.cgi?id=24527
|
||||||
|
tc-ld-disable-gold
|
||||||
|
fi
|
||||||
|
|
||||||
|
multilib-minimal_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_configure() {
|
||||||
|
local options=(
|
||||||
|
$(use_enable static-libs static)
|
||||||
|
$(use_with zlib)
|
||||||
|
)
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build system uses protoc when building, so protoc copy runnable on host is needed.
|
||||||
|
mkdir -p "${WORKDIR}/build" || die
|
||||||
|
pushd "${WORKDIR}/build" > /dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build "${options[@]}"
|
||||||
|
options+=(--with-protoc="$(pwd)/src/protoc")
|
||||||
|
popd > /dev/null || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" econf "${options[@]}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
multilib-minimal_src_compile
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-compile editors/protobuf-mode.el
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
emake -C "${WORKDIR}/build/src" protoc
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_test() {
|
||||||
|
emake check
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install_all() {
|
||||||
|
find "${ED}" -name "*.la" -delete || die
|
||||||
|
|
||||||
|
insinto /usr/share/vim/vimfiles/syntax
|
||||||
|
doins editors/proto.vim
|
||||||
|
insinto /usr/share/vim/vimfiles/ftdetect
|
||||||
|
doins "${FILESDIR}/proto.vim"
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-install ${PN} editors/protobuf-mode.el*
|
||||||
|
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
DOCS+=(examples)
|
||||||
|
docompress -x /usr/share/doc/${PF}/examples
|
||||||
|
fi
|
||||||
|
|
||||||
|
einstalldocs
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
143
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.17.3.ebuild
vendored
Normal file
143
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.17.3.ebuild
vendored
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
# Copyright 2008-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI="7"
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
||||||
|
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||||
|
EGIT_SUBMODULES=()
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
||||||
|
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
SRC_URI=""
|
||||||
|
else
|
||||||
|
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="BSD"
|
||||||
|
SLOT="0/28"
|
||||||
|
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||||
|
IUSE="emacs examples static-libs test zlib"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
BDEPEND="emacs? ( app-editors/emacs:* )"
|
||||||
|
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
RDEPEND="emacs? ( app-editors/emacs:* )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-disable_no-warning-test.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-system_libraries.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.16.0-protoc_input_output_files.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/7413
|
||||||
|
sed -e "/^AC_PROG_CXX_FOR_BUILD$/d" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8082
|
||||||
|
sed -e "/^TEST_F(IoTest, LargeOutput) {$/,/^}$/d" -i src/google/protobuf/io/zero_copy_stream_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8459
|
||||||
|
sed \
|
||||||
|
-e "/^TEST(ArenaTest, BlockSizeSmallerThanAllocation) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-e "/^TEST(ArenaTest, SpaceAllocated_and_Used) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-i src/google/protobuf/arena_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8460
|
||||||
|
sed -e "/^TEST(AnyTest, TestPackFromSerializationExceedsSizeLimit) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" -i src/google/protobuf/any_test.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9392
|
||||||
|
sed -e "s/^AC_PROG_OBJC$/AS_CASE([\$target_os], [darwin*], [AC_PROG_OBJC], [AM_CONDITIONAL([am__fastdepOBJC], [false])])/" -i configure.ac || die
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
||||||
|
|
||||||
|
if tc-ld-is-gold; then
|
||||||
|
# https://sourceware.org/bugzilla/show_bug.cgi?id=24527
|
||||||
|
tc-ld-disable-gold
|
||||||
|
fi
|
||||||
|
|
||||||
|
multilib-minimal_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_configure() {
|
||||||
|
local options=(
|
||||||
|
$(use_enable static-libs static)
|
||||||
|
$(use_with zlib)
|
||||||
|
)
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build system uses protoc when building, so protoc copy runnable on host is needed.
|
||||||
|
mkdir -p "${WORKDIR}/build" || die
|
||||||
|
pushd "${WORKDIR}/build" > /dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build "${options[@]}"
|
||||||
|
options+=(--with-protoc="$(pwd)/src/protoc")
|
||||||
|
popd > /dev/null || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" econf "${options[@]}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
multilib-minimal_src_compile
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-compile editors/protobuf-mode.el
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
emake -C "${WORKDIR}/build/src" protoc
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_test() {
|
||||||
|
emake check
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install_all() {
|
||||||
|
find "${ED}" -name "*.la" -delete || die
|
||||||
|
|
||||||
|
insinto /usr/share/vim/vimfiles/syntax
|
||||||
|
doins editors/proto.vim
|
||||||
|
insinto /usr/share/vim/vimfiles/ftdetect
|
||||||
|
doins "${FILESDIR}/proto.vim"
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-install ${PN} editors/protobuf-mode.el*
|
||||||
|
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
DOCS+=(examples)
|
||||||
|
docompress -x /usr/share/doc/${PF}/examples
|
||||||
|
fi
|
||||||
|
|
||||||
|
einstalldocs
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
147
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.18.2.ebuild
vendored
Normal file
147
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.18.2.ebuild
vendored
Normal file
@ -0,0 +1,147 @@
|
|||||||
|
# Copyright 2008-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI="7"
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
||||||
|
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||||
|
EGIT_SUBMODULES=()
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
||||||
|
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
SRC_URI=""
|
||||||
|
else
|
||||||
|
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="BSD"
|
||||||
|
SLOT="0/29"
|
||||||
|
# -hppa for bug #831728
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 -hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||||
|
IUSE="emacs examples static-libs test zlib"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
BDEPEND="emacs? ( app-editors/emacs:* )"
|
||||||
|
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
RDEPEND="emacs? ( app-editors/emacs:* )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-3.18.0-disable_no-warning-test.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.18.0-system_libraries.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.16.0-protoc_input_output_files.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/7413
|
||||||
|
sed -e "/^AC_PROG_CXX_FOR_BUILD$/d" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8082
|
||||||
|
sed -e "/^TEST_F(IoTest, LargeOutput) {$/,/^}$/d" -i src/google/protobuf/io/zero_copy_stream_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8459
|
||||||
|
sed \
|
||||||
|
-e "/^TEST(ArenaTest, BlockSizeSmallerThanAllocation) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-e "/^TEST(ArenaTest, SpaceAllocated_and_Used) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-i src/google/protobuf/arena_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8460
|
||||||
|
sed -e "/^TEST(AnyTest, TestPackFromSerializationExceedsSizeLimit) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" -i src/google/protobuf/any_test.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9392
|
||||||
|
sed -e "s/^AC_PROG_OBJC$/AS_CASE([\$target_os], [darwin*], [AC_PROG_OBJC], [AM_CONDITIONAL([am__fastdepOBJC], [false])])/" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9433
|
||||||
|
sed -e "/^[[:space:]]*static_assert(alignof(T) <= 8, \"\");$/d" -i src/google/protobuf/descriptor.cc || die
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
||||||
|
|
||||||
|
if tc-ld-is-gold; then
|
||||||
|
# https://sourceware.org/bugzilla/show_bug.cgi?id=24527
|
||||||
|
tc-ld-disable-gold
|
||||||
|
fi
|
||||||
|
|
||||||
|
multilib-minimal_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_configure() {
|
||||||
|
local options=(
|
||||||
|
$(use_enable static-libs static)
|
||||||
|
$(use_with zlib)
|
||||||
|
)
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build system uses protoc when building, so protoc copy runnable on host is needed.
|
||||||
|
mkdir -p "${WORKDIR}/build" || die
|
||||||
|
pushd "${WORKDIR}/build" > /dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build "${options[@]}"
|
||||||
|
options+=(--with-protoc="$(pwd)/src/protoc")
|
||||||
|
popd > /dev/null || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" econf "${options[@]}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
multilib-minimal_src_compile
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-compile editors/protobuf-mode.el
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
emake -C "${WORKDIR}/build/src" protoc
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_test() {
|
||||||
|
emake check
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install_all() {
|
||||||
|
find "${ED}" -name "*.la" -delete || die
|
||||||
|
|
||||||
|
insinto /usr/share/vim/vimfiles/syntax
|
||||||
|
doins editors/proto.vim
|
||||||
|
insinto /usr/share/vim/vimfiles/ftdetect
|
||||||
|
doins "${FILESDIR}/proto.vim"
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-install ${PN} editors/protobuf-mode.el*
|
||||||
|
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
DOCS+=(examples)
|
||||||
|
docompress -x /usr/share/doc/${PF}/examples
|
||||||
|
fi
|
||||||
|
|
||||||
|
einstalldocs
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
141
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.19.1.ebuild
vendored
Normal file
141
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.19.1.ebuild
vendored
Normal file
@ -0,0 +1,141 @@
|
|||||||
|
# Copyright 2008-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
||||||
|
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||||
|
EGIT_SUBMODULES=()
|
||||||
|
else
|
||||||
|
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
||||||
|
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||||
|
|
||||||
|
LICENSE="BSD"
|
||||||
|
SLOT="0/30"
|
||||||
|
# -hppa for bug #831728
|
||||||
|
KEYWORDS="~alpha amd64 arm arm64 -hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||||
|
IUSE="emacs examples static-libs test zlib"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
BDEPEND="emacs? ( app-editors/emacs:* )"
|
||||||
|
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
RDEPEND="emacs? ( app-editors/emacs:* )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-disable_no-warning-test.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.17.0-system_libraries.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.16.0-protoc_input_output_files.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/7413
|
||||||
|
sed -e "/^AC_PROG_CXX_FOR_BUILD$/d" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8082
|
||||||
|
sed -e "/^TEST_F(IoTest, LargeOutput) {$/,/^}$/d" -i src/google/protobuf/io/zero_copy_stream_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8459
|
||||||
|
sed \
|
||||||
|
-e "/^TEST(ArenaTest, BlockSizeSmallerThanAllocation) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-e "/^TEST(ArenaTest, SpaceAllocated_and_Used) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-i src/google/protobuf/arena_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8460
|
||||||
|
sed -e "/^TEST(AnyTest, TestPackFromSerializationExceedsSizeLimit) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" -i src/google/protobuf/any_test.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9392
|
||||||
|
sed -e "s/^AC_PROG_OBJC$/AS_CASE([\$target_os], [darwin*], [AC_PROG_OBJC], [AM_CONDITIONAL([am__fastdepOBJC], [false])])/" -i configure.ac || die
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
||||||
|
|
||||||
|
if tc-ld-is-gold; then
|
||||||
|
# https://sourceware.org/bugzilla/show_bug.cgi?id=24527
|
||||||
|
tc-ld-disable-gold
|
||||||
|
fi
|
||||||
|
|
||||||
|
multilib-minimal_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_configure() {
|
||||||
|
local options=(
|
||||||
|
$(use_enable static-libs static)
|
||||||
|
$(use_with zlib)
|
||||||
|
)
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build system uses protoc when building, so protoc copy runnable on host is needed.
|
||||||
|
mkdir -p "${WORKDIR}/build" || die
|
||||||
|
pushd "${WORKDIR}/build" > /dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build "${options[@]}"
|
||||||
|
options+=(--with-protoc="$(pwd)/src/protoc")
|
||||||
|
popd > /dev/null || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" econf "${options[@]}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
multilib-minimal_src_compile
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-compile editors/protobuf-mode.el
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
emake -C "${WORKDIR}/build/src" protoc
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_test() {
|
||||||
|
emake check
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install_all() {
|
||||||
|
find "${ED}" -name "*.la" -delete || die
|
||||||
|
|
||||||
|
insinto /usr/share/vim/vimfiles/syntax
|
||||||
|
doins editors/proto.vim
|
||||||
|
insinto /usr/share/vim/vimfiles/ftdetect
|
||||||
|
doins "${FILESDIR}/proto.vim"
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-install ${PN} editors/protobuf-mode.el*
|
||||||
|
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
DOCS+=(examples)
|
||||||
|
docompress -x /usr/share/doc/${PF}/examples
|
||||||
|
fi
|
||||||
|
|
||||||
|
einstalldocs
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
146
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.19.3.ebuild
vendored
Normal file
146
sdk_container/src/third_party/portage-stable/dev-libs/protobuf/protobuf-3.19.3.ebuild
vendored
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
# Copyright 2008-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI="7"
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
||||||
|
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||||
|
EGIT_SUBMODULES=()
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
||||||
|
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
SRC_URI=""
|
||||||
|
else
|
||||||
|
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="BSD"
|
||||||
|
SLOT="0/30"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||||
|
IUSE="emacs examples static-libs test zlib"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
BDEPEND="emacs? ( app-editors/emacs:* )"
|
||||||
|
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
RDEPEND="emacs? ( app-editors/emacs:* )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-3.19.0-disable_no-warning-test.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.19.0-system_libraries.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.16.0-protoc_input_output_files.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/7413
|
||||||
|
sed -e "/^AC_PROG_CXX_FOR_BUILD$/d" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8082
|
||||||
|
sed -e "/^TEST_F(IoTest, LargeOutput) {$/,/^}$/d" -i src/google/protobuf/io/zero_copy_stream_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8459
|
||||||
|
sed \
|
||||||
|
-e "/^TEST(ArenaTest, BlockSizeSmallerThanAllocation) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-e "/^TEST(ArenaTest, SpaceAllocated_and_Used) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" \
|
||||||
|
-i src/google/protobuf/arena_unittest.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/8460
|
||||||
|
sed -e "/^TEST(AnyTest, TestPackFromSerializationExceedsSizeLimit) {$/a\\ if (sizeof(void*) == 4) {\n GTEST_SKIP();\n }" -i src/google/protobuf/any_test.cc || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9392
|
||||||
|
sed -e "s/^AC_PROG_OBJC$/AS_CASE([\$target_os], [darwin*], [AC_PROG_OBJC], [AM_CONDITIONAL([am__fastdepOBJC], [false])])/" -i configure.ac || die
|
||||||
|
|
||||||
|
# https://github.com/protocolbuffers/protobuf/issues/9433
|
||||||
|
sed -e "/^[[:space:]]*static_assert(alignof(T) <= 8, \"\");$/d" -i src/google/protobuf/descriptor.cc || die
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
||||||
|
|
||||||
|
if tc-ld-is-gold; then
|
||||||
|
# https://sourceware.org/bugzilla/show_bug.cgi?id=24527
|
||||||
|
tc-ld-disable-gold
|
||||||
|
fi
|
||||||
|
|
||||||
|
multilib-minimal_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_configure() {
|
||||||
|
local options=(
|
||||||
|
$(use_enable static-libs static)
|
||||||
|
$(use_with zlib)
|
||||||
|
)
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build system uses protoc when building, so protoc copy runnable on host is needed.
|
||||||
|
mkdir -p "${WORKDIR}/build" || die
|
||||||
|
pushd "${WORKDIR}/build" > /dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build "${options[@]}"
|
||||||
|
options+=(--with-protoc="$(pwd)/src/protoc")
|
||||||
|
popd > /dev/null || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" econf "${options[@]}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
multilib-minimal_src_compile
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-compile editors/protobuf-mode.el
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
emake -C "${WORKDIR}/build/src" protoc
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_test() {
|
||||||
|
emake check
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install_all() {
|
||||||
|
find "${ED}" -name "*.la" -delete || die
|
||||||
|
|
||||||
|
insinto /usr/share/vim/vimfiles/syntax
|
||||||
|
doins editors/proto.vim
|
||||||
|
insinto /usr/share/vim/vimfiles/ftdetect
|
||||||
|
doins "${FILESDIR}/proto.vim"
|
||||||
|
|
||||||
|
if use emacs; then
|
||||||
|
elisp-install ${PN} editors/protobuf-mode.el*
|
||||||
|
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
DOCS+=(examples)
|
||||||
|
docompress -x /usr/share/doc/${PF}/examples
|
||||||
|
fi
|
||||||
|
|
||||||
|
einstalldocs
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
use emacs && elisp-site-regen
|
||||||
|
}
|
@ -1,101 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI="6"
|
|
||||||
|
|
||||||
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
|
||||||
|
|
||||||
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
|
||||||
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/google/protobuf"
|
|
||||||
SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="BSD"
|
|
||||||
SLOT="0/14"
|
|
||||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~x86-macos"
|
|
||||||
IUSE="emacs examples static-libs test zlib"
|
|
||||||
|
|
||||||
RDEPEND="emacs? ( virtual/emacs )
|
|
||||||
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
test? ( >=dev-cpp/gtest-1.8.0[${MULTILIB_USEDEP}] )"
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}/${PN}-3.4.0-disable_no-warning-test.patch"
|
|
||||||
"${FILESDIR}/${PN}-3.4.0-system_libraries.patch"
|
|
||||||
"${FILESDIR}/${PN}-3.4.0-protoc_input_output_files.patch"
|
|
||||||
)
|
|
||||||
|
|
||||||
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
|
||||||
default
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_configure() {
|
|
||||||
local myeconfargs=(
|
|
||||||
$(use_enable static-libs static)
|
|
||||||
$(use_with zlib)
|
|
||||||
)
|
|
||||||
|
|
||||||
if tc-is-cross-compiler; then
|
|
||||||
# The build system wants `protoc` when building, so we need a copy that
|
|
||||||
# runs on the host. This is more hermetic than relying on the version
|
|
||||||
# installed in the host being the exact same version.
|
|
||||||
mkdir -p "${WORKDIR}/build" || die
|
|
||||||
pushd "${WORKDIR}/build" > /dev/null || die
|
|
||||||
ECONF_SOURCE="${S}" econf_build "${myeconfargs[@]}"
|
|
||||||
myeconfargs+=(--with-protoc="${PWD}"/src/protoc)
|
|
||||||
popd > /dev/null || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
multilib-minimal_src_compile
|
|
||||||
|
|
||||||
if use emacs; then
|
|
||||||
elisp-compile editors/protobuf-mode.el
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_compile() {
|
|
||||||
if tc-is-cross-compiler; then
|
|
||||||
emake -C "${WORKDIR}/build/src" protoc
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_test() {
|
|
||||||
emake check
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_install_all() {
|
|
||||||
insinto /usr/share/vim/vimfiles/syntax
|
|
||||||
doins editors/proto.vim
|
|
||||||
insinto /usr/share/vim/vimfiles/ftdetect
|
|
||||||
doins "${FILESDIR}/proto.vim"
|
|
||||||
|
|
||||||
if use emacs; then
|
|
||||||
elisp-install ${PN} editors/protobuf-mode.el*
|
|
||||||
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use examples; then
|
|
||||||
DOCS+=(examples)
|
|
||||||
docompress -x /usr/share/doc/${PF}/examples
|
|
||||||
fi
|
|
||||||
|
|
||||||
einstalldocs
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
use emacs && elisp-site-regen
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
use emacs && elisp-site-regen
|
|
||||||
}
|
|
@ -1,106 +0,0 @@
|
|||||||
# Copyright 1999-2018 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI="6"
|
|
||||||
|
|
||||||
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
|
||||||
|
|
||||||
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
|
||||||
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/google/protobuf"
|
|
||||||
SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="BSD"
|
|
||||||
SLOT="0/15"
|
|
||||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~sh sparc x86 ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~x86-macos"
|
|
||||||
IUSE="emacs examples static-libs test zlib"
|
|
||||||
|
|
||||||
RDEPEND="emacs? ( virtual/emacs )
|
|
||||||
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
test? ( >=dev-cpp/gtest-1.8.0[${MULTILIB_USEDEP}] )"
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}/${PN}-3.4.0-disable_no-warning-test.patch"
|
|
||||||
"${FILESDIR}/${PN}-3.4.0-system_libraries.patch"
|
|
||||||
"${FILESDIR}/${PN}-3.4.0-protoc_input_output_files.patch"
|
|
||||||
"${FILESDIR}/${PN}-3.5.0-atomic_operations.patch"
|
|
||||||
)
|
|
||||||
|
|
||||||
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
default
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
|
|
||||||
multilib-minimal_src_configure
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_configure() {
|
|
||||||
local myeconfargs=(
|
|
||||||
$(use_enable static-libs static)
|
|
||||||
$(use_with zlib)
|
|
||||||
)
|
|
||||||
|
|
||||||
if tc-is-cross-compiler; then
|
|
||||||
# The build system wants `protoc` when building, so we need a copy that
|
|
||||||
# runs on the host. This is more hermetic than relying on the version
|
|
||||||
# installed in the host being the exact same version.
|
|
||||||
mkdir -p "${WORKDIR}/build" || die
|
|
||||||
pushd "${WORKDIR}/build" > /dev/null || die
|
|
||||||
ECONF_SOURCE="${S}" econf_build "${myeconfargs[@]}"
|
|
||||||
myeconfargs+=(--with-protoc="${PWD}"/src/protoc)
|
|
||||||
popd > /dev/null || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
multilib-minimal_src_compile
|
|
||||||
|
|
||||||
if use emacs; then
|
|
||||||
elisp-compile editors/protobuf-mode.el
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_compile() {
|
|
||||||
if tc-is-cross-compiler; then
|
|
||||||
emake -C "${WORKDIR}/build/src" protoc
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_test() {
|
|
||||||
emake check
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_install_all() {
|
|
||||||
insinto /usr/share/vim/vimfiles/syntax
|
|
||||||
doins editors/proto.vim
|
|
||||||
insinto /usr/share/vim/vimfiles/ftdetect
|
|
||||||
doins "${FILESDIR}/proto.vim"
|
|
||||||
|
|
||||||
if use emacs; then
|
|
||||||
elisp-install ${PN} editors/protobuf-mode.el*
|
|
||||||
elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use examples; then
|
|
||||||
DOCS+=(examples)
|
|
||||||
docompress -x /usr/share/doc/${PF}/examples
|
|
||||||
fi
|
|
||||||
|
|
||||||
einstalldocs
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
use emacs && elisp-site-regen
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
use emacs && elisp-site-regen
|
|
||||||
}
|
|
@ -1,29 +1,41 @@
|
|||||||
# Copyright 1999-2018 Gentoo Foundation
|
# Copyright 2008-2022 Gentoo Authors
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI="6"
|
EAPI="7"
|
||||||
|
|
||||||
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
|
||||||
|
|
||||||
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||||
|
EGIT_SUBMODULES=()
|
||||||
|
fi
|
||||||
|
|
||||||
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
||||||
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/google/protobuf"
|
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||||
SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
if [[ "${PV}" == "9999" ]]; then
|
||||||
|
SRC_URI=""
|
||||||
|
else
|
||||||
|
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
LICENSE="BSD"
|
LICENSE="BSD"
|
||||||
SLOT="0/15"
|
SLOT="0/30"
|
||||||
KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 ~sh sparc x86 ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~x86-macos"
|
KEYWORDS=""
|
||||||
IUSE="emacs examples static-libs test zlib"
|
IUSE="emacs examples static-libs test zlib"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
RDEPEND="emacs? ( virtual/emacs )
|
BDEPEND="emacs? ( app-editors/emacs:* )"
|
||||||
|
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
|
||||||
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
|
RDEPEND="emacs? ( app-editors/emacs:* )
|
||||||
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
test? ( >=dev-cpp/gtest-1.8.0[${MULTILIB_USEDEP}] )"
|
|
||||||
|
|
||||||
PATCHES=(
|
PATCHES=(
|
||||||
"${FILESDIR}/${PN}-3.4.0-disable_no-warning-test.patch"
|
"${FILESDIR}/${PN}-3.19.0-disable_no-warning-test.patch"
|
||||||
"${FILESDIR}/${PN}-3.4.0-system_libraries.patch"
|
"${FILESDIR}/${PN}-3.19.0-system_libraries.patch"
|
||||||
"${FILESDIR}/${PN}-3.4.0-protoc_input_output_files.patch"
|
"${FILESDIR}/${PN}-3.16.0-protoc_input_output_files.patch"
|
||||||
"${FILESDIR}/${PN}-3.5.0-atomic_operations.patch"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
|
||||||
@ -77,6 +89,8 @@ multilib_src_test() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
multilib_src_install_all() {
|
multilib_src_install_all() {
|
||||||
|
find "${ED}" -name "*.la" -delete || die
|
||||||
|
|
||||||
insinto /usr/share/vim/vimfiles/syntax
|
insinto /usr/share/vim/vimfiles/syntax
|
||||||
doins editors/proto.vim
|
doins editors/proto.vim
|
||||||
insinto /usr/share/vim/vimfiles/ftdetect
|
insinto /usr/share/vim/vimfiles/ftdetect
|
Loading…
Reference in New Issue
Block a user