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