diff options
author | V3n3RiX <venerix@koprulu.sector> | 2021-12-05 02:47:11 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2021-12-05 02:47:11 +0000 |
commit | 2771f79232c273bc2a57d23bf335dd81ccf6af28 (patch) | |
tree | c8af0fd04194aed03cf067d44e53c7edd3e9ab84 /dev-libs/protobuf | |
parent | e9d044d4b9b71200a96adfa280848858c0f468c9 (diff) |
gentoo resync : 05.12.2021
Diffstat (limited to 'dev-libs/protobuf')
-rw-r--r-- | dev-libs/protobuf/Manifest | 6 | ||||
-rw-r--r-- | dev-libs/protobuf/files/protobuf-3.15.0-protoc_input_output_files.patch | 240 | ||||
-rw-r--r-- | dev-libs/protobuf/files/protobuf-3.15.0-system_libraries.patch | 121 | ||||
-rw-r--r-- | dev-libs/protobuf/protobuf-3.15.8.ebuild | 140 | ||||
-rw-r--r-- | dev-libs/protobuf/protobuf-9999.ebuild | 2 |
5 files changed, 2 insertions, 507 deletions
diff --git a/dev-libs/protobuf/Manifest b/dev-libs/protobuf/Manifest index a7a60af44ab3..71cb1560b15e 100644 --- a/dev-libs/protobuf/Manifest +++ b/dev-libs/protobuf/Manifest @@ -1,25 +1,21 @@ AUX 70protobuf-gentoo.el 170 BLAKE2B 6d9a92bd3310ca09d18dd762bc0bbd4b0b36184c17f95c80c02183c457fe4ff1142ca1e3207e5a77c078fe5f768cb3e85abc712abc1f4c85774ca1ebf178059b SHA512 ed73cd6b1bf6c0019e4da73c3a480b0f917e949dfad2696336e805263c81610b2a8a0514840e389db0f0e78252cf053d754c5e07731dc5e9c93c9e88f0b2923c AUX proto.vim 49 BLAKE2B 9b6d31105811a8f8cbcf76328172fda5b66b33351bb16573ed1ed08d4c553af2805962a6d6609fbdad4a2644bf9cecd1e771a557f138111ad2c0be959b497ee9 SHA512 65c1f49887c17973d1dfce07fa86d04c5079d2382826eaeb22e128570717f181c53d22ba50905252021f7e476a90ecd29f9d18799c1ccea64b01f4638323538e AUX protobuf-3.15.0-disable_no-warning-test.patch 965 BLAKE2B fdc24fa141b5d3c4d45dace718d089e26862bb451789c14e652e74cfedde7cca14d1c4c2bc7fbf028516e47b790841bd9c69658b94a47d3ad36ee61bed596b36 SHA512 d1c4ad3ff7a5548437a116243b263d4ccc22b2bc8872c0e043788e902c5190b26de73d61736fb08403bfe4a0b4c2340dbe8d92f35768e52ba3c770350b26cb49 -AUX protobuf-3.15.0-protoc_input_output_files.patch 10060 BLAKE2B 5e20468fe2d31da3651106e57522c2efcdfd70b2430dc1028c95f9752f446b150f8304835349e048d0bcd9aab673814a4540e01671a67e31850f0c44da9cd0a6 SHA512 c43d0a0b5d022ffbac545b596aee139267b5232d4971356d90327a4016e0b2cfed12711efef818aa747caed08964c3b0bfcf501668b9df887b7d3988c17885e3 -AUX protobuf-3.15.0-system_libraries.patch 6352 BLAKE2B 8d54bdfbbeb0420c9d4629ac38b4ba172d59bc832dbff46b6438985bbc76239d3f1a74ada052b046f0e982fe3b2f5109621e6370f2546c37160d31e2d1b4593d SHA512 d98c88b2e96990f943464c429e01a19fe47458d0794ad9ebdae098c48eb25bf46e1fecbca9d09a2e23330a4b9723b9bc18638eb7a043cbd486919b29d57033bf AUX protobuf-3.16.0-protoc_input_output_files.patch 10060 BLAKE2B e91d2e60ec9a901df0b0e11a8e51ff92b8765357e052231a915a2afa996c78096e18cf443708bf32e51b882c3fe2512e2ab9f7bb8ec1c6141f2c9bb7fb98af95 SHA512 03721151866f25564e203eb5af987649bf3c148ba7b9e1a2a837b336062b911d892714c4deaa5b19572a3ec47e3b309114ce67b0ec0adcff50d208b73283a7b5 AUX protobuf-3.16.0-system_libraries.patch 6299 BLAKE2B 30a2aa46cf9bf6a415e5a12d6d8c931fdd5a18cb100e4389ed777196480598e1400464cf759a49ee3bc4954fc3b9e8d6029a24623aad123186bcb27ca1da6ef7 SHA512 b4b2b60cff6bea9d4dd716c8f7106b0c77ca35f1377201996d6fc323fd4dc59054d7300bb5e949005405ae7371d6c56d1b30195804e723d05fc2199554398302 AUX protobuf-3.17.0-disable_no-warning-test.patch 965 BLAKE2B 584b43b43861280254f92ad48d8a068b6427e1af3822097f2ddd872983fae11f3bd7af1d73b9b58592987ac4aff7399fa31291e21db6656518bce10c5977a785 SHA512 a67fe3231064c1cf3f4ca94be4248fd65f455b1aaa1d1a09afae847a9b9bbae9673d1fec177e822abe0a83b2fe3342bd20dd9aff87adea0dddcc05309aaca682 AUX protobuf-3.17.0-system_libraries.patch 6299 BLAKE2B a9252af294342e0a12137c618bc1e6fbe9aa021feaa458c2638aaf407dd6a43473587b7ac3e7278217874e5091ff7337234594715daa7567c9d3cf1bd3191973 SHA512 1d712f886e28907d5a5bef414c9fec56d1c056c316428f6e05fdfb87494e93506c17ff6dd5cff4ec716a6f20b56258393773701cdb6b04f87e44264a919a588e -DIST protobuf-3.15.8.tar.gz 5285277 BLAKE2B 798fc011ac03cdc2406acf5845c667d8482082044bdace06c2c1d02b5b1b69c1b1f30e29774180dc1801a1d21d62e2ce50325105859564a1e36d3fe478e64d8b SHA512 56fc6df2dae14eee0fb67dd4204fc1ec54a18d994a69c9e42c7888d0cd50d269d1c5e1445d74f0fa705850d4ac86a22d86781e09769a716e5c6f829b15b05592 DIST protobuf-3.16.0.tar.gz 5299781 BLAKE2B 9ace02a6038c31b7393671fb2ccd6a4866a3f8b7d87d2bc8371f49d65b9180f10792ca2430a83449dfa7d785a1244dac23c20756414c9d1e7c7e871a8038b123 SHA512 0191e5a6a23d03f691e883e259f6d06a0ac8eef427455bc7d1cc70b6f0ed260e4ad8f360c836fd4bdc95ec0ca314c887cbf7acbcda60e03cdfe69e4cd275bff5 DIST protobuf-3.17.0.tar.gz 5185780 BLAKE2B a168619df72cdf097c7ddfd50aca96a2101bf73e7c1c842c020e6ee08a853db8674a86ca999b7706da3dd21d4d3d2159241c93232efc693701962f3a54a382e9 SHA512 36ed2de641849ce01531ff1207f62a0748f811519c40622a119a17a1e709864382de81481fb58f374a025948971c48416e7e6de9c00512a78633c7a8a3aa3a36 DIST protobuf-3.17.1.tar.gz 5192666 BLAKE2B 7f912db7e0835aaa42628fcf564a5666e2cbfa021bb35638a5eec53c3c457f1e747225dea54f732b7239a1520febca9bc20c824b1938f100796caa3ac2133bc1 SHA512 5a18aa3c1dab040dc6d22310a8503241081106acf7ca89079d7b416533d7c2cdd47719dc9023e6bc26969f0f1c796550260a04034a403c69752f6a3a7a651bb8 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.19.1.tar.gz 5291573 BLAKE2B a34f1a7cf99ecb6cb8a26bc858de6273bfd26aa9be1e89e48c16cb5df0f1e9576479344c8250017238dbac0d0c4ac33001125b5fc622cb64ed6b91023198b03a SHA512 f1271f5159a7be363a5f60ce4921dfea68a8468d66808330bacaeaa1cb7f652d045ab080b5d82816a6fd4e6d7d7fe79aaa6c8d66d81692721d36ce3bbf619f31 -EBUILD protobuf-3.15.8.ebuild 3749 BLAKE2B 12ba8cd774d1ff1961c54253cffd729f30f37da02e3d103646b966e261d819b4b85fff402eb3a917bdd41153ab07883d416eb288b20801aa89d9a41c3ce85ed7 SHA512 1dc4105d31dec058a611c6c1d05060854e904fd5018e75d1718aeed3a719d22746e94b7a1fefcf6ebe894fec4211f17729ed8a55289a43647aa22cd7b16720c1 EBUILD protobuf-3.16.0.ebuild 3756 BLAKE2B df0ebf61c08a5dbb4fdeace2bfd04d1fa9929cb20878802142044aa13d417a59b61f7a81246ef7595fff417d17590ce43e14ee3c2b513aedf92d79d3a9be7015 SHA512 d3d3fc384d2fd1d0bfcf155c5fd1a5140057d39c6350362cea4d19cd77154a49d0b9efd4265dd6983299493ba4b7c4ba471bbf2bf170085e6a2abcb74aec25be EBUILD protobuf-3.17.0.ebuild 3756 BLAKE2B 43fb43c67e6fd5baae33bdc3b70e91f5cf009c230c766f68e918afa414d97395caab697839e4c8a95ee9b56aae8a2016c831e6b38f0dc8d4dc499affb1c4f6f7 SHA512 7daaa2b24463230be1cef9b1d8b8cbe1ed9732c6cbea497bf1be650adcc6bc4ef4133da902851824b1c74432a6b12725516ccb57e9b9f1c70c567a8e2cbe7d3a EBUILD protobuf-3.17.1.ebuild 3756 BLAKE2B 43fb43c67e6fd5baae33bdc3b70e91f5cf009c230c766f68e918afa414d97395caab697839e4c8a95ee9b56aae8a2016c831e6b38f0dc8d4dc499affb1c4f6f7 SHA512 7daaa2b24463230be1cef9b1d8b8cbe1ed9732c6cbea497bf1be650adcc6bc4ef4133da902851824b1c74432a6b12725516ccb57e9b9f1c70c567a8e2cbe7d3a EBUILD protobuf-3.17.2.ebuild 3756 BLAKE2B 43fb43c67e6fd5baae33bdc3b70e91f5cf009c230c766f68e918afa414d97395caab697839e4c8a95ee9b56aae8a2016c831e6b38f0dc8d4dc499affb1c4f6f7 SHA512 7daaa2b24463230be1cef9b1d8b8cbe1ed9732c6cbea497bf1be650adcc6bc4ef4133da902851824b1c74432a6b12725516ccb57e9b9f1c70c567a8e2cbe7d3a EBUILD protobuf-3.17.3.ebuild 3756 BLAKE2B e6c40342fa60a698262bec36941c120f32db5eb67d751cb9f3b28ff066a88f4f4bc78220d6881d486bcd665f6418edb474fea727675fcc47c2e6de3cfa5bc8e5 SHA512 56856012f7a731f0a3338070c7c04107e6088fc8f20ce15fd7736ff07e8980073e85f99f78f67b414410a9d8788ca7d939e66ce1ec3e4a39af86fb07947a8029 EBUILD protobuf-3.19.1.ebuild 3713 BLAKE2B ee6effc25e72192a28a3c49532b8567f21fe0fa3f9f8605a24c99fe8994d96429192ff7ffd974aea18d7235a32e5462ad1587dc3605b44eccaf167f0cc517535 SHA512 4b2f0a9722e93bc004e200918dd948971313c187c7818e915b7f7a0da9386a1956234cdabb936d87838212f25322eea165808fd26b15b57833789f5ee2f2486e -EBUILD protobuf-9999.ebuild 2672 BLAKE2B 194e9d88477eb97f57cb544d733c61661bcd2fbcdb9cd1c1353ba1b9fd1c22de8e3ea291cd5f9bfbdac939afa316c6ca2888a2fc790d5f1113a2c416d9f3a3ed SHA512 c55a151753fe1b845d5566999064640fb3ccea13c222b37e4563eeaa8c09788ee74bb89407f4d68d17288d40ae0fd5761ad556989e8d2803c9317c7626ad24e4 +EBUILD protobuf-9999.ebuild 2672 BLAKE2B 8819fbde3c69e3455be70b5c800fd31d3095c4616c6e5e2f0182e88f54e78e52c9fa2bc7dc94fe7552b459c286b00bf8a357325fc30fc26af572f45f174bb4c4 SHA512 52999f41a6dac48b6ee5c76c2172bb37b48b8994f6c4cc568a5ba2a93c028248320c25240a1e7dacb5e5c02c75ac6571ddec8722e30231face8ac9f352901a22 MISC metadata.xml 623 BLAKE2B 0073d736a4b20a2bb9d49c48e0191843286c8c09553a8b662e64494b0674fd8d1b411a7fdbb85e088783cac04af5ab590f9e7ee99027197f37270588a005caca SHA512 a242b229d34554e31aed2638e2febade4e1c3df86c2bfad87fa42d0be307a10a90d94e92dfbebed6ff6a50b3724b7a9a274e967a81bda8a6ae4b3eddb4c23a71 diff --git a/dev-libs/protobuf/files/protobuf-3.15.0-protoc_input_output_files.patch b/dev-libs/protobuf/files/protobuf-3.15.0-protoc_input_output_files.patch deleted file mode 100644 index 8e9733fc4644..000000000000 --- a/dev-libs/protobuf/files/protobuf-3.15.0-protoc_input_output_files.patch +++ /dev/null @@ -1,240 +0,0 @@ -https://github.com/protocolbuffers/protobuf/pull/235 - ---- /src/google/protobuf/compiler/command_line_interface.cc -+++ /src/google/protobuf/compiler/command_line_interface.cc -@@ -1109,6 +1109,28 @@ - } - - if (mode_ == MODE_ENCODE || mode_ == MODE_DECODE) { -+ bool success = false; -+ int in_fd = STDIN_FILENO; -+ int out_fd = STDOUT_FILENO; -+ -+ if (!protobuf_in_path_.empty()) { -+ in_fd = open(protobuf_in_path_.c_str(), O_RDONLY); -+ if (in_fd == -1) { -+ std::cerr << protobuf_in_path_ << ": error: failed to open file." << std::endl; -+ return 1; -+ } -+ } -+ if (!protobuf_out_path_.empty()) { -+ out_fd = open(protobuf_out_path_.c_str(), -+ O_WRONLY | O_CREAT | O_TRUNC, -+ 0644); -+ if (out_fd == -1) { -+ std::cerr << protobuf_out_path_ << ": error: failed to open file." << std::endl; -+ close(in_fd); -+ return 1; -+ } -+ } -+ - if (codec_type_.empty()) { - // HACK: Define an EmptyMessage type to use for decoding. - DescriptorPool pool; -@@ -1117,13 +1139,20 @@ - file.add_message_type()->set_name("EmptyMessage"); - GOOGLE_CHECK(pool.BuildFile(file) != NULL); - codec_type_ = "EmptyMessage"; -- if (!EncodeOrDecode(&pool)) { -- return 1; -- } -+ success = EncodeOrDecode(&pool, in_fd, out_fd); - } else { -- if (!EncodeOrDecode(descriptor_pool.get())) { -- return 1; -- } -+ success = EncodeOrDecode(descriptor_pool.get(), in_fd, out_fd); -+ } -+ -+ if (in_fd != STDIN_FILENO) { -+ close(in_fd); -+ } -+ if (out_fd != STDOUT_FILENO) { -+ close(out_fd); -+ } -+ -+ if (!success) { -+ return 1; - } - } - -@@ -1161,6 +1190,11 @@ - for (int i = 0; i < proto_path_.size(); i++) { - source_tree->MapPath(proto_path_[i].first, proto_path_[i].second); - } -+ if (mode_ == MODE_COMPILE && -+ (!protobuf_in_path_.empty() || !protobuf_out_path_.empty())) { -+ std::cerr << "--protobuf_in and --protobuf_out are only valid with " -+ << "decode operations. Ignoring."; -+ } - - // Map input files to virtual paths if possible. - if (!MakeInputsBeProtoPathRelative(source_tree, fallback_database)) { -@@ -1892,6 +1926,12 @@ - } else if (name == "--deterministic_output") { - deterministic_output_ = true; - -+ } else if (name == "--protobuf_in") { -+ protobuf_in_path_ = value; -+ -+ } else if (name == "--protobuf_out") { -+ protobuf_out_path_ = value; -+ - } else if (name == "--error_format") { - if (value == "gcc") { - error_format_ = ERROR_FORMAT_GCC; -@@ -2019,22 +2059,38 @@ - --version Show version info and exit. - -h, --help Show this text and exit. - --encode=MESSAGE_TYPE Read a text-format message of the given type -- from standard input and write it in binary -- to standard output. The message type must -+ from input protobuf file and write it in binary -+ to output protobuf file. The message type must - be defined in PROTO_FILES or their imports. -+ The input/output protobuf files are specified -+ using the --protobuf_in and --protobuf_out -+ command line flags. - --deterministic_output When using --encode, ensure map fields are - deterministically ordered. Note that this order - is not canonical, and changes across builds or - releases of protoc. - --decode=MESSAGE_TYPE Read a binary message of the given type from -- standard input and write it in text format -- to standard output. The message type must -+ input protobuf file and write it in text format -+ to output protobuf file. The message type must - be defined in PROTO_FILES or their imports. -+ The input/output protobuf files are specified -+ using the --protobuf_in and --protobuf_out -+ command line flags. - --decode_raw Read an arbitrary protocol message from -- standard input and write the raw tag/value -- pairs in text format to standard output. No -+ input protobuf file and write the raw tag/value -+ pairs in text format to output protobuf file. No - PROTO_FILES should be given when using this -- flag. -+ flag. The input/output protobuf files are -+ specified using the --protobuf_in and -+ --protobuf_out command line flags. -+ --protobuf_in=FILE Absolute path to the protobuf file from which -+ input of encoding/decoding operation will be -+ read. If omitted, input will be read from -+ standard input. -+ --protobuf_out=FILE Absolute path to the protobuf file to which -+ 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). -@@ -2341,7 +2397,9 @@ - return true; - } - --bool CommandLineInterface::EncodeOrDecode(const DescriptorPool* pool) { -+bool CommandLineInterface::EncodeOrDecode(const DescriptorPool* pool, -+ int in_fd, -+ int out_fd) { - // Look up the type. - const Descriptor* type = pool->FindMessageTypeByName(codec_type_); - if (type == NULL) { -@@ -2353,15 +2411,15 @@ - std::unique_ptr<Message> message(dynamic_factory.GetPrototype(type)->New()); - - if (mode_ == MODE_ENCODE) { -- SetFdToTextMode(STDIN_FILENO); -- SetFdToBinaryMode(STDOUT_FILENO); -+ SetFdToTextMode(in_fd); -+ SetFdToBinaryMode(out_fd); - } else { -- SetFdToBinaryMode(STDIN_FILENO); -- SetFdToTextMode(STDOUT_FILENO); -+ SetFdToBinaryMode(in_fd); -+ SetFdToTextMode(out_fd); - } - -- io::FileInputStream in(STDIN_FILENO); -- io::FileOutputStream out(STDOUT_FILENO); -+ io::FileInputStream in(in_fd); -+ io::FileOutputStream out(out_fd); - - if (mode_ == MODE_ENCODE) { - // Input is text. ---- /src/google/protobuf/compiler/command_line_interface.h -+++ /src/google/protobuf/compiler/command_line_interface.h -@@ -296,7 +296,9 @@ - GeneratorContext* generator_context, std::string* error); - - // Implements --encode and --decode. -- bool EncodeOrDecode(const DescriptorPool* pool); -+ bool EncodeOrDecode(const DescriptorPool* pool, -+ int in_fd, -+ int out_fd); - - // Implements the --descriptor_set_out option. - bool WriteDescriptorSet( -@@ -428,6 +430,13 @@ - // parsed FileDescriptorSets to be used for loading protos. Otherwise, empty. - std::vector<std::string> descriptor_set_in_names_; - -+ // When using --encode / --decode / --decode_raw absolute path to the output -+ // file. (Empty string indicates write to STDOUT). -+ std::string protobuf_out_path_; -+ // When using --encode / --decode / --decode_raw, absolute path to the input -+ // file. (Empty string indicates read from STDIN). -+ std::string protobuf_in_path_; -+ - // If --descriptor_set_out was given, this is the filename to which the - // FileDescriptorSet should be written. Otherwise, empty. - std::string descriptor_set_out_name_; ---- /src/google/protobuf/compiler/command_line_interface_unittest.cc -+++ /src/google/protobuf/compiler/command_line_interface_unittest.cc -@@ -97,7 +97,7 @@ - virtual void SetUp(); - virtual void TearDown(); - -- // Runs 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" - // is replaced with TestTempDir(). - void Run(const std::string& command); -@@ -2596,6 +2596,17 @@ - std::string::npos); - } - -+ void ExpectBinaryFilesMatch(const string &expected_file, -+ const string &actual_file) { -+ string expected_output, actual_output; -+ ASSERT_TRUE(File::ReadFileToString(expected_file, &expected_output)); -+ ASSERT_TRUE(File::ReadFileToString(actual_file, &actual_output)); -+ -+ // Don't use EXPECT_EQ because we don't want to print raw binary data to -+ // stdout on failure. -+ EXPECT_TRUE(expected_output == actual_output); -+ } -+ - private: - void WriteUnittestProtoDescriptorSet() { - unittest_proto_descriptor_set_filename_ = -@@ -2719,6 +2730,19 @@ - "Can only use --deterministic_output with --encode.\n"); - } - -+TEST_P(EncodeDecodeTest, RedirectInputOutput) { -+ string out_file = TestTempDir() + "/golden_message_out.pbf"; -+ EXPECT_TRUE( -+ Run(TestUtil::MaybeTranslatePath("net/proto2/internal/unittest.proto") + -+ " --encode=protobuf_unittest.TestAllTypes" + -+ " --protobuf_in=" + TestUtil::GetTestDataPath( -+ "net/proto2/internal/" -+ "testdata/text_format_unittest_data_oneof_implemented.txt") + -+ " --protobuf_out=" + out_file)); -+ ExpectBinaryFilesMatch(out_file, TestUtil::GetTestDataPath( -+ "net/proto2/internal/testdata/golden_message_oneof_implemented")); -+} -+ - INSTANTIATE_TEST_SUITE_P(FileDescriptorSetSource, EncodeDecodeTest, - testing::Values(PROTO_PATH, DESCRIPTOR_SET_IN)); - } // anonymous namespace diff --git a/dev-libs/protobuf/files/protobuf-3.15.0-system_libraries.patch b/dev-libs/protobuf/files/protobuf-3.15.0-system_libraries.patch deleted file mode 100644 index 9a75a6665f0c..000000000000 --- a/dev-libs/protobuf/files/protobuf-3.15.0-system_libraries.patch +++ /dev/null @@ -1,121 +0,0 @@ ---- /Makefile.am -+++ /Makefile.am -@@ -11,28 +11,10 @@ - # 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; \ ---- /configure.ac -+++ /configure.ac -@@ -223,12 +223,5 @@ - esac - AM_CONDITIONAL([OBJC_CONFORMANCE_TEST], [test $OBJC_CONFORMANCE_TEST = 1]) - --# 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 ---- /src/Makefile.am -+++ /src/Makefile.am -@@ -703,19 +703,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 \ - $(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. -@@ -807,12 +799,8 @@ - # 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 \ -@@ -833,11 +821,7 @@ - # 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 \ -@@ -849,11 +833,7 @@ - # 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 \ -@@ -863,8 +843,7 @@ - - # 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/testing/file.cc \ diff --git a/dev-libs/protobuf/protobuf-3.15.8.ebuild b/dev-libs/protobuf/protobuf-3.15.8.ebuild deleted file mode 100644 index 751620427fff..000000000000 --- a/dev-libs/protobuf/protobuf-3.15.8.ebuild +++ /dev/null @@ -1,140 +0,0 @@ -# Copyright 2008-2021 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/26" -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.15.0-disable_no-warning-test.patch" - "${FILESDIR}/${PN}-3.15.0-system_libraries.patch" - "${FILESDIR}/${PN}-3.15.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 - - 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 -} diff --git a/dev-libs/protobuf/protobuf-9999.ebuild b/dev-libs/protobuf/protobuf-9999.ebuild index 6a5eecd502cf..cfe56720a1a3 100644 --- a/dev-libs/protobuf/protobuf-9999.ebuild +++ b/dev-libs/protobuf/protobuf-9999.ebuild @@ -21,7 +21,7 @@ else fi LICENSE="BSD" -SLOT="0/28" +SLOT="0/30" KEYWORDS="" IUSE="emacs examples static-libs test zlib" RESTRICT="!test? ( test )" |