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.3.0-fedora-gtest.patch b/protobuf-2.3.0-fedora-gtest.patch
deleted file mode 100644
index 3b223c1..0000000
--- a/protobuf-2.3.0-fedora-gtest.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-diff -up protobuf-2.3.0/autogen.sh.orig protobuf-2.3.0/autogen.sh
---- protobuf-2.3.0/autogen.sh.orig 2010-04-21 18:55:43.857266895 -0600
-+++ protobuf-2.3.0/autogen.sh 2010-04-21 19:54:57.386270273 -0600
-@@ -15,25 +15,8 @@ __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.3.0 from the web..."
-- curl http://googletest.googlecode.com/files/gtest-1.3.0.tar.bz2 | tar jx
-- mv gtest-1.3.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
-
-diff -up protobuf-2.3.0/Makefile.am.orig protobuf-2.3.0/Makefile.am
---- protobuf-2.3.0/Makefile.am.orig 2010-04-21 18:55:38.009265866 -0600
-+++ protobuf-2.3.0/Makefile.am 2010-04-21 18:56:15.068016238 -0600
-@@ -11,27 +11,6 @@ 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
-
-diff -up protobuf-2.3.0/src/Makefile.am.orig protobuf-2.3.0/src/Makefile.am
---- protobuf-2.3.0/src/Makefile.am.orig 2010-04-21 18:56:57.342268786 -0600
-+++ protobuf-2.3.0/src/Makefile.am 2010-04-21 20:02:40.168268698 -0600
-@@ -276,10 +276,8 @@ COMMON_TEST_SOURCES =
- 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
--protobuf_test_CPPFLAGS = -I$(top_srcdir)/gtest/include \
-- -I$(top_builddir)/gtest/include
-+ -lgtest -lgtest_main
-+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.
-@@ -319,11 +317,8 @@ nodist_protobuf_test_SOURCES = $(protoc_
-
- # 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
--protobuf_lazy_descriptor_test_CPPFLAGS = -I$(top_srcdir)/gtest/include \
-- -I$(top_builddir)/gtest/include \
-- -DPROTOBUF_TEST_NO_DESCRIPTORS
-+ -lgtest -lgtest_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 \
-@@ -341,7 +336,7 @@ nodist_protobuf_lite_test_SOURCES = $(pr
-
- # 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 = \
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.4.1-java-fixes.patch b/protobuf-2.5.0-java-fixes.patch
similarity index 56%
rename from protobuf-2.4.1-java-fixes.patch
rename to protobuf-2.5.0-java-fixes.patch
index cb0e300..9952627 100644
--- a/protobuf-2.4.1-java-fixes.patch
+++ b/protobuf-2.5.0-java-fixes.patch
@@ -1,6 +1,8 @@
---- protobuf-2.4.1/java/pom.xml.orig 2011-04-30 12:23:04.000000000 -0500
-+++ protobuf-2.4.1/java/pom.xml 2011-06-09 14:47:09.554188809 -0500
-@@ -3,11 +3,6 @@
+--- 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 @@
+
+
4.0.0
@@ -11,8 +13,25 @@
-
com.google.protobuf
protobuf-java
- 2.4.1
-@@ -32,26 +27,6 @@
+ 2.5.0
+ bundle
+ Protocol Buffer Java API
+
+ Protocol Buffers are a way of encoding structured data in an efficient yet
+ extensible format.
+
+ 2008
+ http://code.google.com/p/protobuf
+
+
+ New BSD license
+ http://www.opensource.org/licenses/bsd-license.php
+ repo
+
+
+
+ http://code.google.com/p/protobuf/source/browse
+
scm:svn:http://protobuf.googlecode.com/svn/trunk/
@@ -39,7 +58,10 @@
-@@ -62,14 +37,6 @@
+ maven-compiler-plugin
+
+ 1.5
+ 1.5
@@ -54,7 +76,20 @@
maven-antrun-plugin
-@@ -90,44 +57,6 @@
+ generate-sources
+ generate-sources
+
+
+
+
+
+
+
+
+
+ target/generated-sources
+
+
run
@@ -70,6 +105,7 @@
-
-
-
+-
-
-
@@ -85,6 +121,7 @@
- value="../src/google/protobuf/unittest_custom_options.proto" />
-
-
+-
-
-
-
@@ -98,10 +135,44 @@
-
+
+ org.apache.felix
+ maven-bundle-plugin
+ true
+
+
+ *
+
+
+
-@@ -159,18 +88,6 @@
+
+
+
+ lite
+
+
+
+@@ -161,45 +88,33 @@
+ **/FieldSet.java
+ **/GeneratedMessageLite.java
+ **/Internal.java
+ **/InvalidProtocolBufferException.java
+ **/LazyStringArrayList.java
+ **/LazyStringList.java
+ **/MessageLite.java
+ **/MessageLiteOrBuilder.java
+ **/SmallSortedMap.java
+ **/UninitializedMessageException.java
**/UnmodifiableLazyStringList.java
**/WireFormat.java
+ **/Parser.java
+ **/AbstractParser.java
+ **/BoundedByteString.java
+ **/LiteralByteString.java
+ **/RopeByteString.java
+ **/Utf8.java
+ **/LazyField.java
-
- **/LiteTest.java
@@ -118,3 +189,13 @@
+ maven-jar-plugin
+
+ lite
+
+
+
+
+
+
+
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 - 2.5.0-1
+- Bump to latest upstream (#883822)
+- Rebase gtest, maven patches on 2.5.0
+
* Tue Feb 26 2013 Conrad Meyer - 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