diff options
author | Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> | 2020-12-16 00:00:00 +0000 |
---|---|---|
committer | Mike Gilbert <floppym@gentoo.org> | 2020-12-27 13:39:06 -0500 |
commit | ef1803fa74e037b72cff1976ac97cbd74f2ef26e (patch) | |
tree | 35d56fe6315124fdec7ad353e5518b3a42c0d211 /dev-libs/protobuf | |
parent | dev-libs/libverto: cleanup old (EAPI 5) (diff) | |
download | gentoo-ef1803fa74e037b72cff1976ac97cbd74f2ef26e.tar.gz gentoo-ef1803fa74e037b72cff1976ac97cbd74f2ef26e.tar.bz2 gentoo-ef1803fa74e037b72cff1976ac97cbd74f2ef26e.zip |
dev-libs/protobuf: Delete old version (3.11.4).
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
Diffstat (limited to 'dev-libs/protobuf')
5 files changed, 0 insertions, 531 deletions
diff --git a/dev-libs/protobuf/Manifest b/dev-libs/protobuf/Manifest index 517abfc7f262..f999d53e9889 100644 --- a/dev-libs/protobuf/Manifest +++ b/dev-libs/protobuf/Manifest @@ -1,4 +1,3 @@ -DIST protobuf-3.11.4.tar.gz 5140799 BLAKE2B 97b450c0623593efe6a42b66582ff183344b8831689e6a5b4d36096dbd57c33da9569bbf26578536aaf73ecd866ac0588b6cb7d55a6a9b9a6e840d4c57099001 SHA512 777bbb0e9e2375eaebe6b8c87abd660bac70ee469c9ad00dd25917b82d7fb5bbe33cf87f0d69c90e19d55c07a7285ec20974ba4768623ce9ccfadf147fd5e261 DIST protobuf-3.12.2.tar.gz 5309688 BLAKE2B 6f04ab75a165d8135b4c1de210f8698f56f309f73d664192209de10580e0ef850bf56f6f394b860f21912e341141f7bbb1f63198eaee55fd7ad74d86b00c3b1f SHA512 84a349a1dcb5bce6a6a892cf11264390b557ed1e7b05883b71fa9cfb7460d9f73119da1f2861066869e33c752246ea438d5ce2c2b3ff7a4b07696d9450b7916b DIST protobuf-3.12.4.tar.gz 5310348 BLAKE2B 2630941672963165467221843c10079a0ed966f2fdfcbc970b0b41e1ed3c7f78734496c1fbd3ec509c68999a14f637fff267b309cf82a8acf2bb5a948484f79b SHA512 c5d24502b9a6be0a606a19213186fe462e0de6830547003636f0897781f36d0bd7e4e7d9689d96390a0399ce04b6438cda3a0fe6f97f0feb700a110e90beef0c DIST protobuf-3.13.0.tar.gz 5277913 BLAKE2B 168aaa5beef83be675cd2543ca8efeaf5174f5e7fd861a056b04b01c8c781dc7b1fcbd05068ae89f051dfacfdc47c34b19cc33c8d09dd3212d3827746e3408f2 SHA512 514efa65fc8a36bc0791e6d39bdfb07b2689e9c2a4b82536c657859b800e7bc1e1a0ae86a7ee33f30c43a473a49b5c346ce830ac0057b6da104ed37f90b8b0fd diff --git a/dev-libs/protobuf/files/protobuf-3.11.0-disable_no-warning-test.patch b/dev-libs/protobuf/files/protobuf-3.11.0-disable_no-warning-test.patch deleted file mode 100644 index ec043e3865c1..000000000000 --- a/dev-libs/protobuf/files/protobuf-3.11.0-disable_no-warning-test.patch +++ /dev/null @@ -1,19 +0,0 @@ -Disable no-warning-test which is compiled with -Werror option and whose only purpose is checking if compilation results in any warnings. - ---- /src/Makefile.am -+++ /src/Makefile.am -@@ -714,7 +714,7 @@ - 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 \ -@@ -901,4 +901,4 @@ - - 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 diff --git a/dev-libs/protobuf/files/protobuf-3.11.0-protoc_input_output_files.patch b/dev-libs/protobuf/files/protobuf-3.11.0-protoc_input_output_files.patch deleted file mode 100644 index 0e22b34efc3e..000000000000 --- a/dev-libs/protobuf/files/protobuf-3.11.0-protoc_input_output_files.patch +++ /dev/null @@ -1,262 +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 -@@ -938,6 +938,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; -@@ -946,13 +968,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; - } - } - -@@ -990,6 +1019,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)) { -@@ -1650,6 +1684,12 @@ - - codec_type_ = value; - -+ } 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; -@@ -1786,29 +1826,50 @@ - " -h, --help Show this text and exit.\n" - " --encode=MESSAGE_TYPE Read a text-format message of the " - "given type\n" -- " from standard input and write it in " -- "binary\n" -- " to standard output. The message type " -- "must\n" -+ " and write it in binary. The message " -+ "type must\n" - " be defined in PROTO_FILES or their " - "imports.\n" -+ " The input/output protobuf files are " -+ "specified\n" -+ " using the --protobuf_in and " -+ "--protobuf_out\n" -+ " command line flags.\n" - " --decode=MESSAGE_TYPE Read a binary message of the given " -- "type from\n" -- " standard input and write it in text " -- "format\n" -- " to standard output. The message type " -- "must\n" -- " be defined in PROTO_FILES or their " -- "imports.\n" -+ "type and\n" -+ " write it in text format. The message " -+ "type\n" -+ " must be defined in PROTO_FILES or " -+ "their imports.\n" -+ " The input/output protobuf files are " -+ "specified\n" -+ " using the --protobuf_in and " -+ "--protobuf_out\n" -+ " command line flags.\n" - " --decode_raw Read an arbitrary protocol message " -- "from\n" -- " standard input and write the raw " -- "tag/value\n" -- " pairs in text format to standard " -- "output. No\n" -+ "and write\n" -+ " the raw tag/value pairs in text format." -+ " No\n" - " PROTO_FILES should be given when using " - "this\n" -- " flag.\n" -+ " flag. The input/output protobuf files " -+ "are\n" -+ " specified using the --protobuf_in and\n" -+ " --protobuf_out command line flags.\n" -+ " --protobuf_in=FILE Absolute path to the protobuf file " -+ "from which\n" -+ " input of encoding/decoding operation " -+ "will be\n" -+ " read. If omitted, input will be read " -+ "from\n" -+ " standard input.\n" -+ " --protobuf_out=FILE Absolute path to the protobuf file " -+ "to which\n" -+ " output of encoding/decoding operation " -+ "will be\n" -+ " written. If omitted, output will be " -+ "written to\n" -+ " standard output.\n" - " --descriptor_set_in=FILES Specifies a delimited list of FILES\n" - " each containing a FileDescriptorSet " - "(a\n" -@@ -2123,7 +2184,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) { -@@ -2135,15 +2198,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 -@@ -288,7 +288,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( -@@ -420,6 +422,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 -@@ -95,7 +95,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); -@@ -2491,6 +2491,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_ = -@@ -2585,6 +2596,19 @@ - "net/proto2/internal/no_such_file.proto: No such file or directory\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.11.0-system_libraries.patch b/dev-libs/protobuf/files/protobuf-3.11.0-system_libraries.patch deleted file mode 100644 index 8311ce8b22e9..000000000000 --- a/dev-libs/protobuf/files/protobuf-3.11.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 -@@ -708,19 +708,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. -@@ -812,12 +804,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 \ -@@ -838,11 +826,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 \ -@@ -854,11 +838,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 \ -@@ -868,8 +848,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.11.4.ebuild b/dev-libs/protobuf/protobuf-3.11.4.ebuild deleted file mode 100644 index 568a3f45c37d..000000000000 --- a/dev-libs/protobuf/protobuf-3.11.4.ebuild +++ /dev/null @@ -1,128 +0,0 @@ -# Copyright 2008-2020 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/22" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-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.11.0-disable_no-warning-test.patch" - "${FILESDIR}/${PN}-3.11.0-system_libraries.patch" - "${FILESDIR}/${PN}-3.11.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 - - 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 "${D}" -name "*.la" -type f -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 -} |