[protobuf] Bump to latest upstream (#883822)

konradm konradm at fedoraproject.org
Sun Mar 10 03:32:08 UTC 2013


commit ea3d1526d18cce4585a55f0168661f590927d0b3
Author: Conrad Meyer <cse.cem at gmail.com>
Date:   Sat Mar 9 19:31:48 2013 -0800

    Bump to latest upstream (#883822)
    
    - Rebase gtest, maven patches on 2.5.0

 .gitignore                        |    1 +
 protobuf-2.3.0-fedora-gtest.patch |   99 -----------------
 protobuf-2.4.1-java-fixes.patch   |  120 ---------------------
 protobuf-2.5.0-fedora-gtest.patch |  215 +++++++++++++++++++++++++++++++++++++
 protobuf-2.5.0-java-fixes.patch   |  201 ++++++++++++++++++++++++++++++++++
 protobuf.spec                     |   14 ++-
 sources                           |    2 +-
 7 files changed, 427 insertions(+), 225 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 20a8ecf..b61dc84 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
 protobuf-2.3.0.tar.bz2
 /protobuf-2.4.1.tar.bz2
+/protobuf-2.5.0.tar.bz2
diff --git a/protobuf-2.5.0-fedora-gtest.patch b/protobuf-2.5.0-fedora-gtest.patch
new file mode 100644
index 0000000..7584d40
--- /dev/null
+++ b/protobuf-2.5.0-fedora-gtest.patch
@@ -0,0 +1,215 @@
+--- protobuf-2.5.0/autogen.sh.orig	2013-02-26 09:56:44.000000000 -0800
++++ protobuf-2.5.0/autogen.sh	2013-03-09 19:21:52.512010330 -0800
+@@ -1,41 +1,24 @@
+ #!/bin/sh
+ 
+ # Run this script to generate the configure script and other files that will
+ # be included in the distribution.  These files are not checked in because they
+ # are automatically generated.
+ 
+ set -e
+ 
+ # Check that we're being run from the right directory.
+ if test ! -f src/google/protobuf/stubs/common.h; then
+   cat >&2 << __EOF__
+ Could not find source code.  Make sure you are running this script from the
+ root of the distribution tree.
+ __EOF__
+   exit 1
+ fi
+ 
+-# Check that gtest is present.  Usually it is already there since the
+-# directory is set up as an SVN external.
+-if test ! -e gtest; then
+-  echo "Google Test not present.  Fetching gtest-1.5.0 from the web..."
+-  curl http://googletest.googlecode.com/files/gtest-1.5.0.tar.bz2 | tar jx
+-  mv gtest-1.5.0 gtest
+-fi
+-
+ set -ex
+ 
+-# Temporary hack:  Must change C runtime library to "multi-threaded DLL",
+-#   otherwise it will be set to "multi-threaded static" when MSVC upgrades
+-#   the project file to MSVC 2005/2008.  vladl of Google Test says gtest will
+-#   probably change their default to match, then this will be unnecessary.
+-#   One of these mappings converts the debug configuration and the other
+-#   converts the release configuration.  I don't know which is which.
+-sed -i -e 's/RuntimeLibrary="5"/RuntimeLibrary="3"/g;
+-           s/RuntimeLibrary="4"/RuntimeLibrary="2"/g;' gtest/msvc/*.vcproj
+-
+ # TODO(kenton):  Remove the ",no-obsolete" part and fix the resulting warnings.
+ autoreconf -f -i -Wall,no-obsolete
+ 
+ rm -rf autom4te.cache config.h.in~
+ exit 0
+--- protobuf-2.5.0/Makefile.am.orig	2013-02-26 09:56:44.000000000 -0800
++++ protobuf-2.5.0/Makefile.am	2013-03-09 19:22:18.741692020 -0800
+@@ -1,54 +1,33 @@
+ ## Process this file with automake to produce Makefile.in
+ 
+ ACLOCAL_AMFLAGS = -I m4
+ 
+ AUTOMAKE_OPTIONS = foreign
+ 
+ # Build . before src so that our all-local and clean-local hooks kicks in at
+ # the right time.
+ SUBDIRS = . src
+ 
+ # Always include gtest in distributions.
+ DIST_SUBDIRS = $(subdirs) src
+ 
+-# Build gtest before we build protobuf tests.  We don't add gtest to SUBDIRS
+-# because then "make check" would also build and run all of gtest'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 gtest since we don't want to overwrite
+-# the installed version of gtest if there is one.
+-check-local:
+-	@echo "Making lib/libgtest.a lib/libgtest_main.a in gtest"
+-	@cd gtest && $(MAKE) $(AM_MAKEFLAGS) lib/libgtest.la lib/libgtest_main.la
+-
+-# We would like to clean gtest 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 gtest because it's listed among the
+-# DIST_SUBDIRS.  distclean will delete gtest/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 gtest/Makefile; then \
+-	  echo "Making clean in gtest"; \
+-	  cd gtest && $(MAKE) $(AM_MAKEFLAGS) clean; \
+-	fi
+-
+ pkgconfigdir = $(libdir)/pkgconfig
+ pkgconfig_DATA = protobuf.pc protobuf-lite.pc
+ 
+ EXTRA_DIST =                                                                 \
+   autogen.sh                                                                 \
+   generate_descriptor_proto.sh                                               \
+   README.txt                                                                 \
+   INSTALL.txt                                                                \
+   COPYING.txt                                                                \
+   CONTRIBUTORS.txt                                                           \
+   CHANGES.txt                                                                \
+   editors/README.txt                                                         \
+   editors/proto.vim                                                          \
+   editors/protobuf-mode.el                                                   \
+   vsprojects/config.h                                                        \
+   vsprojects/extract_includes.bat                                            \
+   vsprojects/libprotobuf.vcproj                                              \
+   vsprojects/libprotobuf-lite.vcproj                                         \
+   vsprojects/libprotoc.vcproj                                                \
+   vsprojects/protobuf.sln                                                    \
+--- protobuf-2.5.0/src/Makefile.am.orig	2013-02-26 09:56:43.000000000 -0800
++++ protobuf-2.5.0/src/Makefile.am	2013-03-09 19:25:09.076620571 -0800
+@@ -286,44 +286,42 @@
+ # building out-of-tree.
+ unittest_proto_middleman: protoc$(EXEEXT) $(protoc_inputs)
+ 	oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/protoc$(EXEEXT) -I. --cpp_out=$$oldpwd $(protoc_inputs) )
+ 	touch unittest_proto_middleman
+ 
+ endif
+ 
+ $(protoc_outputs): unittest_proto_middleman
+ 
+ COMMON_TEST_SOURCES =                                          \
+   google/protobuf/test_util.cc                                 \
+   google/protobuf/test_util.h                                  \
+   google/protobuf/testing/googletest.cc                        \
+   google/protobuf/testing/googletest.h                         \
+   google/protobuf/testing/file.cc                              \
+   google/protobuf/testing/file.h
+ 
+ check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
+                  protobuf-lite-test test_plugin $(GZCHECKPROGRAMS)
+ protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
+-                      $(top_builddir)/gtest/lib/libgtest.la       \
+-                      $(top_builddir)/gtest/lib/libgtest_main.la
++                      -lgtest -lgtest_main
+-protobuf_test_CPPFLAGS = -I$(top_srcdir)/gtest/include         \
+-                         -I$(top_builddir)/gtest/include
++protobuf_test_CPPFLAGS =
+ # 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.
+ protobuf_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
+ protobuf_test_SOURCES =                                        \
+   google/protobuf/stubs/common_unittest.cc                     \
+   google/protobuf/stubs/once_unittest.cc                       \
+   google/protobuf/stubs/strutil_unittest.cc                    \
+   google/protobuf/stubs/structurally_valid_unittest.cc         \
+   google/protobuf/stubs/stringprintf_unittest.cc               \
+   google/protobuf/stubs/template_util_unittest.cc              \
+   google/protobuf/stubs/type_traits_unittest.cc                \
+   google/protobuf/descriptor_database_unittest.cc              \
+   google/protobuf/descriptor_unittest.cc                       \
+   google/protobuf/dynamic_message_unittest.cc                  \
+   google/protobuf/extension_set_unittest.cc                    \
+   google/protobuf/generated_message_reflection_unittest.cc     \
+   google/protobuf/message_unittest.cc                          \
+   google/protobuf/reflection_ops_unittest.cc                   \
+   google/protobuf/repeated_field_unittest.cc                   \
+@@ -335,61 +333,58 @@
+   google/protobuf/io/printer_unittest.cc                       \
+   google/protobuf/io/tokenizer_unittest.cc                     \
+   google/protobuf/io/zero_copy_stream_unittest.cc              \
+   google/protobuf/compiler/command_line_interface_unittest.cc  \
+   google/protobuf/compiler/importer_unittest.cc                \
+   google/protobuf/compiler/mock_code_generator.cc              \
+   google/protobuf/compiler/mock_code_generator.h               \
+   google/protobuf/compiler/parser_unittest.cc                  \
+   google/protobuf/compiler/cpp/cpp_bootstrap_unittest.cc       \
+   google/protobuf/compiler/cpp/cpp_unittest.h                  \
+   google/protobuf/compiler/cpp/cpp_unittest.cc                 \
+   google/protobuf/compiler/cpp/cpp_plugin_unittest.cc          \
+   google/protobuf/compiler/java/java_plugin_unittest.cc        \
+   google/protobuf/compiler/java/java_doc_comment_unittest.cc   \
+   google/protobuf/compiler/python/python_plugin_unittest.cc    \
+   $(COMMON_TEST_SOURCES)
+ nodist_protobuf_test_SOURCES = $(protoc_outputs)
+ 
+ # Run cpp_unittest again with PROTOBUF_TEST_NO_DESCRIPTORS defined.
+ protobuf_lazy_descriptor_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la \
+-                      $(top_builddir)/gtest/lib/libgtest.la       \
+-                      $(top_builddir)/gtest/lib/libgtest_main.la
++                                      -lgtest -lgtest_main
+-protobuf_lazy_descriptor_test_CPPFLAGS = -I$(top_srcdir)/gtest/include    \
+-                                         -I$(top_builddir)/gtest/include  \
+-                                         -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_SOURCES =                        \
+   google/protobuf/compiler/cpp/cpp_unittest.cc                 \
+   $(COMMON_TEST_SOURCES)
+ nodist_protobuf_lazy_descriptor_test_SOURCES = $(protoc_outputs)
+ 
+ # Build lite_unittest separately, since it doesn't use gtest.
+ protobuf_lite_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la
+ protobuf_lite_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
+ protobuf_lite_test_SOURCES =                                           \
+   google/protobuf/lite_unittest.cc                                     \
+   google/protobuf/test_util_lite.cc                                    \
+   google/protobuf/test_util_lite.h
+ nodist_protobuf_lite_test_SOURCES = $(protoc_lite_outputs)
+ 
+ # Test plugin binary.
+ test_plugin_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
+-                    $(top_builddir)/gtest/lib/libgtest.la
++                    -lgtest
+ test_plugin_CPPFLAGS = -I$(top_srcdir)/gtest/include         \
+                        -I$(top_builddir)/gtest/include
+ test_plugin_SOURCES =                                          \
+   google/protobuf/compiler/mock_code_generator.cc              \
+   google/protobuf/testing/file.cc                              \
+   google/protobuf/testing/file.h                               \
+   google/protobuf/compiler/test_plugin.cc
+ 
+ if HAVE_ZLIB
+ zcgzip_LDADD = $(PTHREAD_LIBS) libprotobuf.la
+ zcgzip_SOURCES = google/protobuf/testing/zcgzip.cc
+ 
+ zcgunzip_LDADD = $(PTHREAD_LIBS) libprotobuf.la
+ zcgunzip_SOURCES = google/protobuf/testing/zcgunzip.cc
+ endif
+ 
+ TESTS = protobuf-test protobuf-lazy-descriptor-test protobuf-lite-test \
+         google/protobuf/compiler/zip_output_unittest.sh $(GZTESTS)
diff --git a/protobuf-2.5.0-java-fixes.patch b/protobuf-2.5.0-java-fixes.patch
new file mode 100644
index 0000000..9952627
--- /dev/null
+++ b/protobuf-2.5.0-java-fixes.patch
@@ -0,0 +1,201 @@
+--- protobuf-2.5.0/java/pom.xml.orig	2013-02-26 09:58:21.000000000 -0800
++++ protobuf-2.5.0/java/pom.xml	2013-03-09 19:16:29.581904896 -0800
+@@ -1,152 +1,79 @@
+ <?xml version="1.0" encoding="UTF-8"?>
+ <project xmlns="http://maven.apache.org/POM/4.0.0"
+   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+   <modelVersion>4.0.0</modelVersion>
+-  <parent>
+-    <groupId>com.google</groupId>
+-    <artifactId>google</artifactId>
+-    <version>1</version>
+-  </parent>
+   <groupId>com.google.protobuf</groupId>
+   <artifactId>protobuf-java</artifactId>
+   <version>2.5.0</version>
+   <packaging>bundle</packaging>
+   <name>Protocol Buffer Java API</name>
+   <description>
+     Protocol Buffers are a way of encoding structured data in an efficient yet
+     extensible format.
+   </description>
+   <inceptionYear>2008</inceptionYear>
+   <url>http://code.google.com/p/protobuf</url>
+   <licenses>
+     <license>
+       <name>New BSD license</name>
+       <url>http://www.opensource.org/licenses/bsd-license.php</url>
+       <distribution>repo</distribution>
+     </license>
+   </licenses>
+   <scm>
+     <url>http://code.google.com/p/protobuf/source/browse</url>
+     <connection>
+       scm:svn:http://protobuf.googlecode.com/svn/trunk/
+     </connection>
+   </scm>
+-  <dependencies>
+-    <dependency>
+-      <groupId>junit</groupId>
+-      <artifactId>junit</artifactId>
+-      <version>4.4</version>
+-      <scope>test</scope>
+-    </dependency>
+-    <dependency>
+-      <groupId>org.easymock</groupId>
+-      <artifactId>easymock</artifactId>
+-      <version>2.2</version>
+-      <scope>test</scope>
+-    </dependency>
+-    <dependency>
+-      <groupId>org.easymock</groupId>
+-      <artifactId>easymockclassextension</artifactId>
+-      <version>2.2.1</version>
+-      <scope>test</scope>
+-    </dependency>
+-  </dependencies>
+   <build>
+     <plugins>
+       <plugin>
+         <artifactId>maven-compiler-plugin</artifactId>
+         <configuration>
+           <source>1.5</source>
+           <target>1.5</target>
+         </configuration>
+       </plugin>
+       <plugin>
+-        <artifactId>maven-surefire-plugin</artifactId>
+-        <configuration>
+-          <includes>
+-            <include>**/*Test.java</include>
+-          </includes>
+-        </configuration>
+-      </plugin>
+-      <plugin>
+         <artifactId>maven-antrun-plugin</artifactId>
+         <executions>
+           <execution>
+             <id>generate-sources</id>
+             <phase>generate-sources</phase>
+             <configuration>
+               <tasks>
+                 <mkdir dir="target/generated-sources" />
+                 <exec executable="../src/protoc">
+                   <arg value="--java_out=target/generated-sources" />
+                   <arg value="--proto_path=../src" />
+                   <arg value="../src/google/protobuf/descriptor.proto" />
+                 </exec>
+               </tasks>
+               <sourceRoot>target/generated-sources</sourceRoot>
+             </configuration>
+             <goals>
+               <goal>run</goal>
+             </goals>
+           </execution>
+-          <execution>
+-            <id>generate-test-sources</id>
+-            <phase>generate-test-sources</phase>
+-            <configuration>
+-              <tasks>
+-                <mkdir dir="target/generated-test-sources" />
+-                <exec executable="../src/protoc">
+-                  <arg value="--java_out=target/generated-test-sources" />
+-                  <arg value="--proto_path=../src" />
+-                  <arg value="--proto_path=src/test/java" />
+-                  <arg value="../src/google/protobuf/unittest.proto" />
+-                  <arg value="../src/google/protobuf/unittest_import.proto" />
+-                  <arg value="../src/google/protobuf/unittest_import_public.proto" />
+-                  <arg value="../src/google/protobuf/unittest_mset.proto" />
+-                  <arg
+-                    value="src/test/java/com/google/protobuf/multiple_files_test.proto" />
+-                  <arg value="src/test/java/com/google/protobuf/nested_builders_test.proto" />
+-                  <arg value="src/test/java/com/google/protobuf/nested_extension.proto" />
+-                  <arg value="src/test/java/com/google/protobuf/nested_extension_lite.proto" />
+-                  <arg value="src/test/java/com/google/protobuf/non_nested_extension.proto" />
+-                  <arg value="src/test/java/com/google/protobuf/non_nested_extension_lite.proto" />
+-                  <arg value="src/test/java/com/google/protobuf/test_bad_identifiers.proto" />
+-                  <arg
+-                    value="../src/google/protobuf/unittest_optimize_for.proto" />
+-                  <arg
+-                    value="../src/google/protobuf/unittest_custom_options.proto" />
+-                  <arg value="../src/google/protobuf/unittest_lite.proto" />
+-                  <arg value="../src/google/protobuf/unittest_import_lite.proto" />
+-                  <arg value="../src/google/protobuf/unittest_import_public_lite.proto" />
+-                  <arg value="../src/google/protobuf/unittest_lite_imports_nonlite.proto" />
+-                  <arg value="../src/google/protobuf/unittest_enormous_descriptor.proto" />
+-                  <arg value="../src/google/protobuf/unittest_no_generic_services.proto" />
+-                </exec>
+-              </tasks>
+-              <testSourceRoot>target/generated-test-sources</testSourceRoot>
+-            </configuration>
+-            <goals>
+-              <goal>run</goal>
+-            </goals>
+-          </execution>
+         </executions>
+       </plugin>
+       <plugin>
+         <groupId>org.apache.felix</groupId>
+         <artifactId>maven-bundle-plugin</artifactId>
+         <extensions>true</extensions>
+         <configuration>
+           <instructions>
+             <Export-Package>*</Export-Package>
+           </instructions>
+         </configuration>
+       </plugin>
+     </plugins>
+   </build>
+   <profiles>
+     <profile>
+       <id>lite</id>
+       <build>
+         <plugins>
+           <plugin>
+@@ -161,45 +88,33 @@
+                 <include>**/FieldSet.java</include>
+                 <include>**/GeneratedMessageLite.java</include>
+                 <include>**/Internal.java</include>
+                 <include>**/InvalidProtocolBufferException.java</include>
+                 <include>**/LazyStringArrayList.java</include>
+                 <include>**/LazyStringList.java</include>
+                 <include>**/MessageLite.java</include>
+                 <include>**/MessageLiteOrBuilder.java</include>
+                 <include>**/SmallSortedMap.java</include>
+                 <include>**/UninitializedMessageException.java</include>
+                 <include>**/UnmodifiableLazyStringList.java</include>
+                 <include>**/WireFormat.java</include>
+                 <include>**/Parser.java</include>
+                 <include>**/AbstractParser.java</include>
+                 <include>**/BoundedByteString.java</include>
+                 <include>**/LiteralByteString.java</include>
+                 <include>**/RopeByteString.java</include>
+                 <include>**/Utf8.java</include>
+                 <include>**/LazyField.java</include>
+               </includes>
+-              <testIncludes>
+-                <testInclude>**/LiteTest.java</testInclude>
+-                <testInclude>**/*Lite.java</testInclude>
+-              </testIncludes>
+-            </configuration>
+-          </plugin>
+-          <plugin>
+-            <artifactId>maven-surefire-plugin</artifactId>
+-            <configuration>
+-              <includes>
+-                <include>**/LiteTest.java</include>
+-              </includes>
+             </configuration>
+           </plugin>
+           <plugin>
+             <artifactId>maven-jar-plugin</artifactId>
+             <configuration>
+               <classifier>lite</classifier>
+             </configuration>
+           </plugin>
+         </plugins>
+       </build>
+     </profile>
+   </profiles>
+ </project>
diff --git a/protobuf.spec b/protobuf.spec
index ff10fb8..46ae034 100644
--- a/protobuf.spec
+++ b/protobuf.spec
@@ -15,15 +15,15 @@
 
 Summary:        Protocol Buffers - Google's data interchange format
 Name:           protobuf
-Version:        2.4.1
-Release:        12%{?dist}
+Version:        2.5.0
+Release:        1%{?dist}
 License:        BSD
 Group:          Development/Libraries
-Source:         http://protobuf.googlecode.com/files/%{name}-%{version}.tar.bz2
+Source:         http://protobuf.googlecode.com/files/protobuf-%{version}.tar.bz2
 Source1:        ftdetect-proto.vim
 Source2:        protobuf-init.el
-Patch1:         protobuf-2.3.0-fedora-gtest.patch
-Patch2:    	    protobuf-2.4.1-java-fixes.patch
+Patch1:         protobuf-2.5.0-fedora-gtest.patch
+Patch2:    	    protobuf-2.5.0-java-fixes.patch
 URL:            http://code.google.com/p/protobuf/
 BuildRequires:  automake autoconf libtool pkgconfig zlib-devel
 BuildRequires:  emacs
@@ -344,6 +344,10 @@ install -p -m 0644 %{SOURCE2} $RPM_BUILD_ROOT%{emacs_startdir}
 %endif
 
 %changelog
+* Sat Mar 9 2013 Conrad Meyer <cemeyer at uw.edu> - 2.5.0-1
+- Bump to latest upstream (#883822)
+- Rebase gtest, maven patches on 2.5.0
+
 * Tue Feb 26 2013 Conrad Meyer <cemeyer at uw.edu> - 2.4.1-12
 - Nuke BR on maven-doxia, maven-doxia-sitetools (#915620)
 
diff --git a/sources b/sources
index 1ec868f..cf25af4 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-ed436802019c9e1f40cc750eaf78f318  protobuf-2.4.1.tar.bz2
+a72001a9067a4c2c4e0e836d0f92ece4  protobuf-2.5.0.tar.bz2


More information about the scm-commits mailing list