Debian original packaging for 2.5.0.
authorFrantišek Dvořák <valtri@civ.zcu.cz>
Mon, 20 Jul 2015 21:32:00 +0000 (23:32 +0200)
committerFrantišek Dvořák <valtri@civ.zcu.cz>
Mon, 20 Jul 2015 21:32:00 +0000 (23:32 +0200)
32 files changed:
debian/changelog [new file with mode: 0644]
debian/compat [new file with mode: 0644]
debian/control [new file with mode: 0644]
debian/copyright [new file with mode: 0644]
debian/gbp.conf [new file with mode: 0644]
debian/java-build.xml [new file with mode: 0644]
debian/libprotobuf-dev.dirs [new file with mode: 0644]
debian/libprotobuf-dev.install [new file with mode: 0644]
debian/libprotobuf-java.poms [new file with mode: 0644]
debian/libprotobuf-lite8.install [new file with mode: 0644]
debian/libprotobuf-lite8.shlibs [new file with mode: 0644]
debian/libprotobuf8.install [new file with mode: 0644]
debian/libprotobuf8.shlibs [new file with mode: 0644]
debian/libprotoc-dev.dirs [new file with mode: 0644]
debian/libprotoc-dev.install [new file with mode: 0644]
debian/libprotoc8.install [new file with mode: 0644]
debian/libprotoc8.shlibs [new file with mode: 0644]
debian/patches/arm_optimization.diff [new file with mode: 0644]
debian/patches/disable-setuptools-download.diff [new file with mode: 0644]
debian/patches/fix-ftbfs-gcc4.7-kfreebsd.patch [new file with mode: 0644]
debian/patches/fix-ftbfs-upstream-issue-488.patch [new file with mode: 0644]
debian/patches/revert_upstream_issue_388_about_rpath.diff [new file with mode: 0644]
debian/patches/series [new file with mode: 0644]
debian/pkg-test.sh [new file with mode: 0755]
debian/protobuf-compiler.docs [new file with mode: 0644]
debian/protobuf-compiler.install [new file with mode: 0644]
debian/protobuf-compiler.manpages [new file with mode: 0644]
debian/protoc.xml [new file with mode: 0644]
debian/python-protobuf.README.Debian [new file with mode: 0644]
debian/rules [new file with mode: 0755]
debian/source/format [new file with mode: 0644]
debian/watch [new file with mode: 0644]

diff --git a/debian/changelog b/debian/changelog
new file mode 100644 (file)
index 0000000..24e31f0
--- /dev/null
@@ -0,0 +1,340 @@
+protobuf (2.5.0-9) unstable; urgency=medium
+
+  * Upload to unstable.
+  * Officially take over primary maintainership of the package, per Iustin.
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Wed, 05 Feb 2014 11:37:11 -0500
+
+protobuf (2.5.0-8) experimental; urgency=medium
+
+  * Revert debian/patches/fix-ftbfs-upstream-issue-488.patch to use the
+    version of this patch from 2.5.0-5.
+  * Build-Depend on g++ >= 4:4.7 to ensure that the *default* compiler is new
+    enough to support the gcc __atomic*() built-ins.
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Mon, 03 Feb 2014 19:42:23 -0500
+
+protobuf (2.5.0-7) unstable; urgency=medium
+
+  * Upload to unstable.
+  * Closes: #736801.
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Wed, 29 Jan 2014 14:27:42 -0500
+
+protobuf (2.5.0-6) experimental; urgency=medium
+
+  * Use a different approach to fixing the FTBFS caused by upstream bug #488.
+  * Revert the Build-Depends on a specific gcc/g++ version.
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Sun, 26 Jan 2014 23:56:47 -0500
+
+protobuf (2.5.0-5) unstable; urgency=medium
+
+  * Upload to unstable.
+  * Note that the experimental C++ backend in python-protobuf has been
+    disabled.
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Sat, 25 Jan 2014 16:57:43 -0500
+
+protobuf (2.5.0-4) experimental; urgency=medium
+
+  * Rewrite the platform detection logic in .../platform-macros.h to be more
+    tolerant of all Debian architectures.
+  * Switch from autotools-dev to dh-autoreconf.
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Sun, 12 Jan 2014 12:49:50 -0500
+
+protobuf (2.5.0-3) experimental; urgency=medium
+
+  * Fix FTBFS on mips, due to missing detection of that architecture in
+    .../platform-macros.h.
+  * Fix FTBFS on ia64, powerpc, and sparc, where the default gcc version is
+    too old to compile the new __atomic*() intrinsics, by Build-Depending on
+    gcc-4.8, g++-4.8.
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Sat, 11 Jan 2014 17:21:17 -0500
+
+protobuf (2.5.0-2) experimental; urgency=low
+
+  * Fix FTBFS on "unsupported" architectures due to upstream issue 488:
+    - https://code.google.com/p/protobuf/issues/detail?id=488
+    Patch from Stanislav Ochotnicky (Red Hat).
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Sat, 19 Oct 2013 10:42:29 -0400
+
+protobuf (2.5.0-1) experimental; urgency=low
+
+  [ Micah Anderson ]
+  * New upstream version. (Closes: #704731.)
+  * Update debian/watch.
+  * Refresh patches.
+
+  [ Colin Watson ]
+  * Use the autotools-dev dh addon to update config.guess/config.sub for
+    arm64. (Closes: #725976.)
+
+  [ Steve Langasek ]
+  * Don't recommend protobuf-compiler from the bindings, it's not used and
+    this doesn't need to be pulled in at runtime. (Closes: #703628.)
+  * Mark protobuf-compiler Multi-Arch: foreign; the output of this command
+    is architecture-independent source, we don't need the version of the
+    compiler to match the target arch.
+  * Bump to debhelper compat 9, so that our libs get installed to the
+    multiarch locations.
+  * Mark the library packages Multi-Arch: same.
+  * Fix debian/rules to support cross-building of the python bindings.
+  * Build-depend on libpython-dev, not python-dev, for cross-build
+    compatibility.
+  * (Closes: #726083.)
+
+  [ Robert S. Edmonds ]
+  * Upload to experimental.
+  * Bump ABI version from 7 to 8.
+  * Bump Standards-Version to 3.9.4.
+  * Convert from python-support to dh-python.
+  * Drop support for python2.6.
+  * python-protobuf: switch back to the pure Python implementation, as
+    upstream appears to no longer be maintaining the current C++ based Python
+    binding. See the following upstream issues for details:
+    - https://code.google.com/p/protobuf/issues/detail?id=434
+    - https://code.google.com/p/protobuf/issues/detail?id=503
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Sat, 12 Oct 2013 18:32:37 -0400
+
+protobuf (2.4.1-3) unstable; urgency=low
+
+  * Add patch from Steven Chamberlain fixing build failures of the
+    embedded gtest copy on kFreeBSD (Closes: #675837)
+
+ -- Iustin Pop <iustin@debian.org>  Sun, 17 Jun 2012 18:29:37 +0200
+
+protobuf (2.4.1-2) unstable; urgency=low
+
+  [ Matthias Klose ]
+  * Work around build failure with GCC 4.7. Closes: #672094.
+
+  [ Jakub Adam ]
+  * Install libprotobuf-java without reference to parent POM
+    (Closes: #648672)
+
+  [ Iustin Pop ]
+  * libprotobuf-java:
+    - remove dependency on default-jre (Closes: #653115)
+    - revert the jar name change introduced in 2.4.1, due to the use of
+      maven helper (Closes: #648850)
+  * Bump priority of packages from extra to optional (Closes: #664744)
+  * Enable hardening flags (Closes: #673675)
+
+ -- Iustin Pop <iustin@debian.org>  Thu, 24 May 2012 01:27:26 +0200
+
+protobuf (2.4.1-1) unstable; urgency=low
+
+  [ Thomas Koch ]
+  * remove ant-wrapper, which worked around #491074
+  * patch: revert_upstream_issue_388_about_rpath
+  * publish maven artifacts (Closes: #644263)
+
+  [ Iustin Pop ]
+  * Fix (again) the pkg-test script
+  * Update section based on override disparities
+  * Imported Upstream version 2.4.1
+  * Modify debian/rules directly not via patches
+  * Drop .la files per ReleaseGoals/LAFileRemoval
+
+ -- Iustin Pop <iustin@debian.org>  Tue, 08 Nov 2011 07:56:58 +0900
+
+protobuf (2.4.0a-2) unstable; urgency=low
+
+  * Re-upload to unstable
+
+ -- Iustin Pop <iustin@debian.org>  Sat, 16 Apr 2011 20:18:28 +0200
+
+protobuf (2.4.0a-1) experimental; urgency=low
+
+  * New upstream version, uploading to experimental due to Python changes
+  * Fix "Missing depends on zlib1g-dev", thanks Fernando Tarlá Cardoso Lemos
+    (Closes: #608670)
+  * Re-enable parallel builds, but only for the C++ sources/tests
+  * Enable the C++-based implementation for the Python bindings
+
+ -- Iustin Pop <iustin@debian.org>  Wed, 16 Feb 2011 21:24:42 +0100
+
+protobuf (2.3.0-4) unstable; urgency=low
+
+  * Thanks to Peter Palfrader for finding the two bugs below:
+  * Disable setuptools auto-download in case of wrong dependencies, and
+    fix the current dependency version (Closes: #593269)
+  * Fix the python cleanup rule, by always running the individual steps
+    (Closes: #593268)
+
+ -- Iustin Pop <iustin@debian.org>  Wed, 18 Aug 2010 22:54:42 +0200
+
+protobuf (2.3.0-3) unstable; urgency=low
+
+  * Acknowledge NMU (thanks Giuseppe!)
+  * Update packaging to comply with policy 3.9.1 (.la files are still
+    shipped though)
+  * Updated watch file to account for code.google.com brokeness
+
+ -- Iustin Pop <iustin@debian.org>  Sat, 31 Jul 2010 17:47:24 -0400
+
+protobuf (2.3.0-2.1) unstable; urgency=high
+
+  * Non-maintainer upload.
+  * Build-depends on on default-jdk and set JAVA_HOME to
+    /usr/lib/jvm/default-java (Closes: #587732)
+
+ -- Giuseppe Iuculano <iuculano@debian.org>  Sat, 10 Jul 2010 18:37:19 +0200
+
+protobuf (2.3.0-2) unstable; urgency=low
+
+  * Fix "FTBFS on armel (test-suite failure)" by disabling optimizations
+    of a troublesome function (idea taken from #580334) (Closes: #572923)
+  * Standards version 3.8.4 (no changes needed)
+  * Update my address to the @debian.org one
+
+ -- Iustin Pop <iustin@debian.org>  Mon, 24 May 2010 18:04:17 +0200
+
+protobuf (2.3.0-1) unstable; urgency=low
+
+  * New upstream version.
+  * Split out libprotobuf-lite from the libprotobuf package.
+  * Add CFLAGS specific to sh4; closes: #560322.
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Mon, 25 Jan 2010 18:14:49 -0500
+
+protobuf (2.2.0a-1) unstable; urgency=low
+
+  * Acknowledge NMUs (thanks Dirk!)
+  * Convert the source format to 3.0 (quilt)
+
+ -- Iustin Pop <iusty@k1024.org>  Sun, 06 Dec 2009 16:27:40 +0100
+
+protobuf (2.2.0a-0.1) unstable; urgency=low
+
+  * Non-maintainer upload
+  * New upstream release made this evening correction major SONAME
+  * debian/control: Updated major version to 5 (Closes: #556563)
+  * debian/rules: Updated two links to use libproto*5
+  * debian/libprotobuf5.shlibs: Added
+  * debian/libprotoc5.shlibs: Added
+
+ -- Dirk Eddelbuettel <edd@debian.org>  Wed, 18 Nov 2009 21:47:41 -0600
+
+protobuf (2.2.0-0.1) unstable; urgency=low
+
+  * Non-maintainer upload coordinated with maintainer
+  * New upstream release (Closes: #551931)
+
+  * debian/libprotobuf-install: Added 'usr/lib/pkgconfig/*' to have
+    pkg-config support files installed
+
+  * debian/control: Added (= ${binary:Version}) to Depends for -dev
+    packages for tighter link to underlying libraries [lintian warning]
+  * debian/control: Updated StandardVersion: to 3.8.3
+
+  * debian/control: Major version not incremented as upstream kept it at 4
+
+ -- Dirk Eddelbuettel <edd@debian.org>  Sat, 14 Nov 2009 06:44:22 -0600
+
+protobuf (2.1.0-1) unstable; urgency=low
+
+  * New Upstream Version
+  * Fix "Please split out libprotoc.so.N out of the libprotobufN
+    package" (Closes: #524087)
+  * Update Standards Version to 3.8.2 (no changes needed, sections are already
+    correct and the rest doesn't affect this package)
+
+ -- Iustin Pop <iusty@k1024.org>  Wed, 24 Jun 2009 00:19:03 +0200
+
+protobuf (2.0.3-2.2) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix FTBFS from -2.1: don't fail when we can't clean up the java build,
+    such as when openjdk isn't installed.
+  * Disable parallel builds, because libtool is made of fail (if binary-arch
+    and build-indep run concurrently, we relink a library while it's being
+    used; that doesn't work so well).
+
+ -- Julien Cristau <jcristau@debian.org>  Tue, 02 Jun 2009 16:19:00 +0200
+
+protobuf (2.0.3-2.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Medium urgency for RC bugfix.
+  * Fix building of test suites on ia64: use __clone2() instead of clone(),
+    which doesn't exist there (closes: #530606).  Patch by Sune Vuorela.
+  * Only build the java and python bindings when building the arch:all
+    packages.  Move openjdk to Build-Depends-Indep.  This should allow
+    building on hppa, which doesn't have openjdk.  Based on a patch by Sune
+    Vuorela (but any bugs are mine).
+
+ -- Julien Cristau <jcristau@debian.org>  Tue, 02 Jun 2009 14:45:32 +0200
+
+protobuf (2.0.3-2) unstable; urgency=low
+
+  * Fix the binary-arch/binary-common interaction by only calling
+    dh_pysupport when we are in arch-independent mode (DH_OPTIONS=-i)
+  * Remove the extraneous conflicts/replace with libprotobuf2/libprotobuf0
+    from libprotobuf3, as they share no files (and have different SONAMES)
+    (Closes: #523992)
+
+ -- Iustin Pop <iusty@k1024.org>  Tue, 14 Apr 2009 09:35:39 +0200
+
+protobuf (2.0.3-1) unstable; urgency=low
+
+  [ Ehren Kret ]
+  * New Upstream Version (Closes: #522470)
+  * Applied patch proposed in bug#503807 provided by
+    Torsten Werner <twerner@debian.org> (Closes: #503807)
+
+  [ Iustin Pop ]
+  * Policy version 3.8.1, added handling for the nocheck DEB_BUILD_OPTIONS flag
+  * Fix lintian warnings (copyright-with-old-dh-make-debian-copyright,
+    wrong-section-according-to-package-name)
+  * The new upstream version build successfully (and passes the
+    unittest) with gcc-snapshort, so marking bug#505411 as fixed
+    (Closes: #505411)
+
+ -- Iustin Pop <iusty@k1024.org>  Thu, 09 Apr 2009 15:01:36 +0200
+
+protobuf (2.0.2-1) unstable; urgency=low
+
+  * New Upstream Version (Closes: #501349)
+
+ -- Iustin Pop <iusty@k1024.org>  Tue, 07 Oct 2008 21:51:47 +0200
+
+protobuf (2.0.1-2) unstable; urgency=low
+
+  * Fix the java .jar symlink (Closes: #501490)
+
+ -- Iustin Pop <iusty@k1024.org>  Sat, 04 Oct 2008 17:05:01 +0200
+
+protobuf (2.0.1-1) unstable; urgency=low
+
+  * New Upstream Version (Closes: #499925)
+
+ -- Iustin Pop <iusty@k1024.org>  Sun, 28 Sep 2008 18:14:16 +0200
+
+protobuf (2.0.0~b-3) unstable; urgency=low
+
+  * Remove DM-Upload-Allowed for sponsoring
+
+ -- Iustin Pop <iusty@k1024.org>  Sun, 03 Aug 2008 11:01:44 +0200
+
+protobuf (2.0.0~b-2) unstable; urgency=low
+
+  * Mark the different license for some of the files, and fix the long
+    description (it contained UTF-8 chars), both thanks to Vincent Bernat
+    <bernat@debian.org>
+  * Cleanup debian/rules (removed commented out debhelper lines)
+  * Improve the java build process, as suggested by Matthew Johnson
+    <mjj29@debian.org>
+
+ -- Iustin Pop <iusty@k1024.org>  Sat, 02 Aug 2008 14:12:59 +0200
+
+protobuf (2.0.0~b-1) unstable; urgency=low
+
+  * Initial release (Closes: #489842)
+
+ -- Iustin Pop <iusty@k1024.org>  Tue, 08 Jul 2008 20:03:51 +0200
diff --git a/debian/compat b/debian/compat
new file mode 100644 (file)
index 0000000..ec63514
--- /dev/null
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644 (file)
index 0000000..fdb8a58
--- /dev/null
@@ -0,0 +1,181 @@
+Source: protobuf
+Section: devel
+Priority: optional
+Maintainer: Robert S. Edmonds <edmonds@debian.org>
+Uploaders: Iustin Pop <iustin@debian.org>
+Build-Depends: dpkg-dev (>=1.16.1~), debhelper (>= 9),
+ g++ (>= 4:4.7),
+ python (>= 2.6.6-3~),
+ python-setuptools (>= 0.6c9), xmlto, ant, zlib1g-dev,
+ default-jdk, unzip, dh-python,
+ maven-repo-helper, dh-autoreconf
+Standards-Version: 3.9.5
+Homepage: https://code.google.com/p/protobuf/
+Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/protobuf.git
+Vcs-Git: git://anonscm.debian.org/collab-maint/protobuf.git
+X-Python-Version: >= 2.7
+
+Package: libprotobuf8
+Architecture: any
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: protocol buffers C++ library
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the runtime library needed for C++ applications.
+
+Package: libprotobuf-lite8
+Architecture: any
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: protocol buffers C++ library (lite version)
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the runtime library needed for C++ applications whose
+ message definitions have the "lite runtime" optimization setting.
+
+Package: libprotobuf-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, zlib1g-dev,
+ libprotobuf8 (= ${binary:Version}), libprotobuf-lite8 (= ${binary:Version})
+Description: protocol buffers C++ library (development files)
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the development headers and static libraries needed for
+ writing C++ applications.
+
+Package: libprotoc8
+Architecture: any
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: protocol buffers compiler library
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the runtime library needed for the protocol buffer
+ compiler.
+
+Package: libprotoc-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends},
+ libprotoc8 (= ${binary:Version}), libprotobuf-dev (= ${binary:Version})
+Replaces: libprotobuf-dev (<< 2.1.0)
+Breaks: libprotobuf-dev (<< 2.1.0)
+Description: protocol buffers compiler library (development files)
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the development headers and static library needed for
+ writing protobuf compilers.
+
+Package: protobuf-compiler
+Architecture: any
+Multi-Arch: foreign
+Depends: ${shlibs:Depends}, ${misc:Depends}, libprotoc8 (= ${binary:Version})
+Description: compiler for protocol buffer definition files
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the protocol buffer compiler that is used for
+ translating from .proto files (containing the definitions) to the language
+ binding for the supported languages.
+
+Package: python-protobuf
+Architecture: all
+Section: python
+Depends: ${python:Depends}, ${misc:Depends}
+Description: Python bindings for protocol buffers
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the Python bindings for the protocol buffers. You will
+ need the protoc tool (in the protobuf-compiler package) to compile your
+ definition to Python classes, and then the modules in this package will allow
+ you to use those classes in your programs.
+
+Package: libprotobuf-java
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Section: java
+Description: Java bindings for protocol buffers
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the Java bindings for the protocol buffers. You will
+ need the protoc tool (in the protobuf-compiler package) to compile your
+ definition to Java classes, and then the modules in this package will allow
+ you to use those classes in your programs.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644 (file)
index 0000000..ee0c91e
--- /dev/null
@@ -0,0 +1,105 @@
+This package was debianized by Iustin Pop <iusty@k1024.org> on
+Mon, 07 Jul 2008 17:48:21 +0200.
+
+It was downloaded from http://code.google.com/p/protobuf/
+
+Upstream Authors: Google Inc, more specifically:
+
+Original Protocol Buffers design and implementation:
+  Sanjay Ghemawat <sanjay@google.com>
+  Jeff Dean <jeff@google.com>
+  Daniel Dulitz <daniel@google.com>
+  Craig Silverstein
+  Paul Haahr <haahr@google.com>
+  Corey Anderson <corin@google.com>
+  (and many others)
+
+Proto2 C++ and Java primary author:
+  Kenton Varda <kenton@google.com>
+
+Proto2 Python primary authors:
+  Will Robinson <robinson@google.com>
+  Petar Petrov <petar@google.com>
+
+Large code contributions:
+  Joseph Schorr <jschorr@google.com>
+  Wenbo Zhu <wenboz@google.com>
+
+Large quantity of code reviews:
+  Scott Bruce <sbruce@google.com>
+  Frank Yellin
+  Neal Norwitz <nnorwitz@google.com>
+  Jeffrey Yasskin <jyasskin@google.com>
+  Ambrose Feinstein <ambrose@google.com>
+
+Documentation:
+  Lisa Carey <lcarey@google.com>
+
+Maven packaging:
+  Gregory Kick <gak@google.com>
+
+Copyright:
+
+    Copyright (C) 2008 Google Inc.
+
+License (new style BSD, with Google Inc. as copyright holder):
+
+  Copyright 2008, Google Inc.
+  All rights reserved.
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions are
+  met:
+
+      * Redistributions of source code must retain the above copyright
+  notice, this list of conditions and the following disclaimer.
+      * Redistributions in binary form must reproduce the above
+  copyright notice, this list of conditions and the following disclaimer
+  in the documentation and/or other materials provided with the
+  distribution.
+      * Neither the name of Google Inc. nor the names of its
+  contributors may be used to endorse or promote products derived from
+  this software without specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+  Code generated by the Protocol Buffer compiler is owned by the owner
+  of the input file used when generating it.  This code is not
+  standalone and requires a support library to be linked with it.  This
+  support library is itself covered by the above license.
+
+The files `python/mox.py' and `python/stubout.py' are licensed under a
+different license (Apache License 2.0):
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+
+On Debian systems, the complete text of the Apache License can be found in
+`/usr/share/common-licenses/Apache-2.0'.
+
+The Debian packaging is:
+
+        Copyright (C) 2008, 2009, 2010 Iustin Pop <iusty@k1024.org>
+
+and is licensed under the GPL version 3,
+see `/usr/share/common-licenses/GPL-3'.
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644 (file)
index 0000000..0da192b
--- /dev/null
@@ -0,0 +1,4 @@
+[buildpackage]
+pristine-tar = True
+[import-orig]
+pristine-tar = True
diff --git a/debian/java-build.xml b/debian/java-build.xml
new file mode 100644 (file)
index 0000000..05e9354
--- /dev/null
@@ -0,0 +1,33 @@
+<project name="protobuf-java" default="jar" basedir="..">
+    <property name="srcdir" value="src" />
+    <property name="javadir" value="java" />
+    <property name="javasrcdir" value="${javadir}/src" />
+    <property name="targetdir" value="${javadir}/target" />
+    <property name="classesdir" value="${targetdir}/classes" />
+    <property name="generateddir" value="${targetdir}/generated-sources" />
+
+    <target name="clean">
+        <delete dir="${targetdir}"/>
+    </target>
+
+    <target name="generate">
+        <mkdir dir="${generateddir}" />
+        <echo message="${srcdir}" />
+        <exec executable="${srcdir}/protoc">
+            <arg value="--java_out=${generateddir}" />
+            <arg value="--proto_path=${srcdir}" />
+            <arg value="${srcdir}/google/protobuf/descriptor.proto" />
+        </exec>
+    </target>
+
+    <target name="compile" depends="generate">
+        <mkdir dir="${classesdir}"/>
+        <javac srcdir="${generateddir}:${javasrcdir}/main/java"
+               destdir="${classesdir}" source="1.5" target="1.5"
+               includeantruntime="false" />
+    </target>
+
+    <target name="jar" depends="compile">
+        <jar destfile="${targetdir}/protobuf.jar" basedir="${classesdir}" />
+    </target>
+</project>
diff --git a/debian/libprotobuf-dev.dirs b/debian/libprotobuf-dev.dirs
new file mode 100644 (file)
index 0000000..7276ecd
--- /dev/null
@@ -0,0 +1 @@
+usr/share/doc
diff --git a/debian/libprotobuf-dev.install b/debian/libprotobuf-dev.install
new file mode 100644 (file)
index 0000000..cdb1bb9
--- /dev/null
@@ -0,0 +1,8 @@
+usr/lib/*/libprotobuf.a
+usr/lib/*/libprotobuf-lite.a
+usr/lib/*/libprotobuf.so
+usr/lib/*/libprotobuf-lite.so
+usr/lib/*/libprotobuf.la
+usr/lib/*/libprotobuf-lite.la
+usr/lib/*/pkgconfig/*
+usr/include
diff --git a/debian/libprotobuf-java.poms b/debian/libprotobuf-java.poms
new file mode 100644 (file)
index 0000000..12fed3e
--- /dev/null
@@ -0,0 +1 @@
+java/pom.xml --artifact=java/target/protobuf.jar --java-lib --no-parent --usj-name=protobuf
diff --git a/debian/libprotobuf-lite8.install b/debian/libprotobuf-lite8.install
new file mode 100644 (file)
index 0000000..45e0054
--- /dev/null
@@ -0,0 +1 @@
+usr/lib/*/libprotobuf-lite.so.*
diff --git a/debian/libprotobuf-lite8.shlibs b/debian/libprotobuf-lite8.shlibs
new file mode 100644 (file)
index 0000000..6167c8c
--- /dev/null
@@ -0,0 +1 @@
+libprotobuf-lite 8 libprotobuf-lite8
diff --git a/debian/libprotobuf8.install b/debian/libprotobuf8.install
new file mode 100644 (file)
index 0000000..9ac8d24
--- /dev/null
@@ -0,0 +1 @@
+usr/lib/*/libprotobuf.so.*
diff --git a/debian/libprotobuf8.shlibs b/debian/libprotobuf8.shlibs
new file mode 100644 (file)
index 0000000..4d60a1a
--- /dev/null
@@ -0,0 +1 @@
+libprotobuf 8 libprotobuf8
diff --git a/debian/libprotoc-dev.dirs b/debian/libprotoc-dev.dirs
new file mode 100644 (file)
index 0000000..7276ecd
--- /dev/null
@@ -0,0 +1 @@
+usr/share/doc
diff --git a/debian/libprotoc-dev.install b/debian/libprotoc-dev.install
new file mode 100644 (file)
index 0000000..fac955b
--- /dev/null
@@ -0,0 +1,4 @@
+usr/lib/*/libprotoc.a
+usr/lib/*/libprotoc.so
+usr/lib/*/libprotoc.la
+usr/include/google/protobuf/compiler
diff --git a/debian/libprotoc8.install b/debian/libprotoc8.install
new file mode 100644 (file)
index 0000000..a280133
--- /dev/null
@@ -0,0 +1 @@
+usr/lib/*/libprotoc*.so.*
diff --git a/debian/libprotoc8.shlibs b/debian/libprotoc8.shlibs
new file mode 100644 (file)
index 0000000..e876281
--- /dev/null
@@ -0,0 +1 @@
+libprotoc 8 libprotoc8
diff --git a/debian/patches/arm_optimization.diff b/debian/patches/arm_optimization.diff
new file mode 100644 (file)
index 0000000..16e8e77
--- /dev/null
@@ -0,0 +1,18 @@
+Description: disable optimization of a given function on arm (bug in gcc
+ 4.4, which creates unittest failures for 64-bit operations)
+Author: Iustin Pop <iustin@debian.org>
+--- a/src/google/protobuf/wire_format_lite.h
++++ b/src/google/protobuf/wire_format_lite.h
+@@ -222,7 +222,11 @@
+   static uint32 ZigZagEncode32(int32 n);
+   static int32  ZigZagDecode32(uint32 n);
+   static uint64 ZigZagEncode64(int64 n);
+-  static int64  ZigZagDecode64(uint64 n);
++  static int64  ZigZagDecode64(uint64 n)
++#ifdef __arm__
++    __attribute__((__optimize__(0)))
++#endif
++  ;
+   // =================================================================
+   // Methods for reading/writing individual field.  The implementations
diff --git a/debian/patches/disable-setuptools-download.diff b/debian/patches/disable-setuptools-download.diff
new file mode 100644 (file)
index 0000000..d595568
--- /dev/null
@@ -0,0 +1,24 @@
+Description: Disable automatic setuptools download
+ For Debian builds, we must use the packaged setuptools, and
+ if that is not available, fail hard instead of downloading
+ and installing from the internet the needed version
+Author: Iustin Pop <iustin@debian.org>
+Bug-Debian: http://bugs.debian.org/593269
+Forwarded: not-needed
+Last-Update: 2010-08-18
+--- a/python/ez_setup.py
++++ b/python/ez_setup.py
+@@ -99,9 +99,10 @@
+     """
+     was_imported = 'pkg_resources' in sys.modules or 'setuptools' in sys.modules
+     def do_download():
+-        egg = download_setuptools(version, download_base, to_dir, download_delay)
+-        sys.path.insert(0, egg)
+-        import setuptools; setuptools.bootstrap_install_from = egg
++        print >>sys.stderr, (
++        "The required version of setuptools (>=%s) is not available, and\n"
++        "can't be installed during Debian package builds.") % version
++        sys.exit(2)
+     try:
+         import pkg_resources
+     except ImportError:
diff --git a/debian/patches/fix-ftbfs-gcc4.7-kfreebsd.patch b/debian/patches/fix-ftbfs-gcc4.7-kfreebsd.patch
new file mode 100644 (file)
index 0000000..6097c35
--- /dev/null
@@ -0,0 +1,19 @@
+Description: fix GCC 4.7 build on 'other' platforms like GNU/kFreeBSD
+ Assume that all platforms in the 'other' category will have unistd.h;
+ as of GCC 4.7 they are going to have to include it.
+Author: Steven Chamberlain <steven@pyro.eu.org>
+
+Index: protobuf/gtest/include/gtest/internal/gtest-port.h
+===================================================================
+--- protobuf.orig/gtest/include/gtest/internal/gtest-port.h    2013-08-13 17:03:10.932794167 -0400
++++ protobuf/gtest/include/gtest/internal/gtest-port.h 2013-08-13 17:03:10.932794167 -0400
+@@ -325,6 +325,9 @@
+ #else
++// Assume other platforms have unistd.h
++#include <unistd.h>  // NOLINT
++
+ // <regex.h> may not be available on this platform.  Use our own
+ // simple regex implementation instead.
+ # define GTEST_USES_SIMPLE_RE 1
diff --git a/debian/patches/fix-ftbfs-upstream-issue-488.patch b/debian/patches/fix-ftbfs-upstream-issue-488.patch
new file mode 100644 (file)
index 0000000..da0c9e5
--- /dev/null
@@ -0,0 +1,268 @@
+From 65f7f19291a387dd14baf5bc8e4af3fb665881e8 Mon Sep 17 00:00:00 2001
+From: "Robert S. Edmonds" <edmonds@debian.org>
+Date: Sun, 12 Jan 2014 12:01:27 -0500
+Subject: [PATCH] Add generic GCC >= 4.7 support for atomic operations
+
+This is useful for architectures where no specialized code has been
+written.
+
+Author: Stanislav Ochotnicky <sochotnicky@redhat.com>
+Bug: https://code.google.com/p/protobuf/issues/detail?id=488
+
+[edmonds@debian.org: This squashes the two patches submitted to the
+upstream bug tracker and rewrites the architecture detection logic in
+.../platform_macros.h. The original logic was quite fragile and would
+emit a #error on architectures that were not explicitly detected, as the
+upstream protobuf release lacks a generic atomic implementation. With
+gcc >= 4.7 and the generic atomic implementation by Stanislav Ochotnicky
+we only need to be able to tell 64-bit vs. 32-bit in order to set
+GOOGLE_PROTOBUF_ARCH_64_BIT correctly (in fact,
+GOOGLE_PROTOBUF_ARCH_32_BIT is not even used in the protobuf code base;
+likely this header file has been copied from some internal Google source
+tree), and we only need to be able to detect the specific architectures
+where protobuf has a more specific atomic implementation (i.e., amd64,
+i386, armel/armhf, mips/mipsel). It should not be necessary to add
+additional architecture detection logic to .../platform_macros.h for
+other Debian architectures, as we should fall back to the generic atomic
+implementation. Theoretically, since we are willing to Build-Depend on
+gcc >= 4.7 we might be able to use the same generic gcc implementation
+across all architectures and do away with the architecture-specific
+implementations entirely, but that would be a larger and more intrusive
+patch.]
+---
+ src/Makefile.am                                    |   1 +
+ src/google/protobuf/stubs/atomicops.h              |   2 +-
+ .../stubs/atomicops_internals_generic_gcc.h        | 139 +++++++++++++++++++++
+ src/google/protobuf/stubs/platform_macros.h        |  42 +++----
+ 4 files changed, 158 insertions(+), 26 deletions(-)
+ create mode 100644 src/google/protobuf/stubs/atomicops_internals_generic_gcc.h
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index df733d9..6f5c21d 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -42,6 +42,7 @@ nobase_include_HEADERS =                                        \
+   google/protobuf/stubs/atomicops_internals_arm_gcc.h           \
+   google/protobuf/stubs/atomicops_internals_arm_qnx.h           \
+   google/protobuf/stubs/atomicops_internals_atomicword_compat.h \
++  google/protobuf/stubs/atomicops_internals_generic_gcc.h       \
+   google/protobuf/stubs/atomicops_internals_macosx.h            \
+   google/protobuf/stubs/atomicops_internals_mips_gcc.h          \
+   google/protobuf/stubs/atomicops_internals_pnacl.h             \
+diff --git a/src/google/protobuf/stubs/atomicops.h b/src/google/protobuf/stubs/atomicops.h
+index b8581fa..883b125 100644
+--- a/src/google/protobuf/stubs/atomicops.h
++++ b/src/google/protobuf/stubs/atomicops.h
+@@ -185,7 +185,7 @@ GOOGLE_PROTOBUF_ATOMICOPS_ERROR
+ #elif defined(__pnacl__)
+ #include <google/protobuf/stubs/atomicops_internals_pnacl.h>
+ #else
+-GOOGLE_PROTOBUF_ATOMICOPS_ERROR
++#include <google/protobuf/stubs/atomicops_internals_generic_gcc.h>
+ #endif
+ // Unknown.
+diff --git a/src/google/protobuf/stubs/atomicops_internals_generic_gcc.h b/src/google/protobuf/stubs/atomicops_internals_generic_gcc.h
+new file mode 100644
+index 0000000..3fc2a9b
+--- /dev/null
++++ b/src/google/protobuf/stubs/atomicops_internals_generic_gcc.h
+@@ -0,0 +1,139 @@
++// Protocol Buffers - Google's data interchange format
++// Copyright 2013 Red Hat Inc.  All rights reserved.
++// http://code.google.com/p/protobuf/
++//
++// Redistribution and use in source and binary forms, with or without
++// modification, are permitted provided that the following conditions are
++// met:
++//
++//     * Redistributions of source code must retain the above copyright
++// notice, this list of conditions and the following disclaimer.
++//     * Redistributions in binary form must reproduce the above
++// copyright notice, this list of conditions and the following disclaimer
++// in the documentation and/or other materials provided with the
++// distribution.
++//     * Neither the name of Red Hat Inc. nor the names of its
++// contributors may be used to endorse or promote products derived from
++// this software without specific prior written permission.
++//
++// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
++// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
++// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
++// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
++// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
++// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
++// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
++// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
++// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++
++// This file is an internal atomic implementation, use atomicops.h instead.
++
++#ifndef GOOGLE_PROTOBUF_ATOMICOPS_INTERNALS_GENERIC_GCC_H_
++#define GOOGLE_PROTOBUF_ATOMICOPS_INTERNALS_GENERIC_GCC_H_
++
++namespace google {
++namespace protobuf {
++namespace internal {
++
++inline Atomic32 NoBarrier_CompareAndSwap(volatile Atomic32* ptr,
++                                         Atomic32 old_value,
++                                         Atomic32 new_value) {
++  __atomic_compare_exchange_n(ptr, &old_value, new_value, true,
++                              __ATOMIC_RELAXED, __ATOMIC_RELAXED);
++  return old_value;
++}
++
++inline Atomic32 NoBarrier_AtomicExchange(volatile Atomic32* ptr,
++                                         Atomic32 new_value) {
++  return __atomic_exchange_n(ptr, new_value, __ATOMIC_RELAXED);
++}
++
++inline Atomic32 NoBarrier_AtomicIncrement(volatile Atomic32* ptr,
++                                          Atomic32 increment) {
++  return __atomic_add_fetch(ptr, increment, __ATOMIC_RELAXED);
++}
++
++inline Atomic32 Barrier_AtomicIncrement(volatile Atomic32* ptr,
++                                        Atomic32 increment) {
++  return __atomic_add_fetch(ptr, increment, __ATOMIC_SEQ_CST);
++}
++
++inline Atomic32 Acquire_CompareAndSwap(volatile Atomic32* ptr,
++                                       Atomic32 old_value,
++                                       Atomic32 new_value) {
++  __atomic_compare_exchange(ptr, &old_value, &new_value, true,
++                            __ATOMIC_ACQUIRE, __ATOMIC_ACQUIRE);
++  return old_value;
++}
++
++inline Atomic32 Release_CompareAndSwap(volatile Atomic32* ptr,
++                                       Atomic32 old_value,
++                                       Atomic32 new_value) {
++  __atomic_compare_exchange_n(ptr, &old_value, new_value, true,
++                            __ATOMIC_RELEASE, __ATOMIC_ACQUIRE);
++  return old_value;
++}
++
++inline void NoBarrier_Store(volatile Atomic32* ptr, Atomic32 value) {
++  __atomic_store_n(ptr, value, __ATOMIC_RELAXED);
++}
++
++inline void MemoryBarrier() {
++  __sync_synchronize();
++}
++
++inline void Acquire_Store(volatile Atomic32* ptr, Atomic32 value) {
++  __atomic_store_n(ptr, value, __ATOMIC_ACQUIRE);
++}
++
++inline void Release_Store(volatile Atomic32* ptr, Atomic32 value) {
++  __atomic_store_n(ptr, value, __ATOMIC_RELEASE);
++}
++
++inline Atomic32 NoBarrier_Load(volatile const Atomic32* ptr) {
++  return __atomic_load_n(ptr, __ATOMIC_RELAXED);
++}
++
++inline Atomic32 Acquire_Load(volatile const Atomic32* ptr) {
++  return __atomic_load_n(ptr, __ATOMIC_ACQUIRE);
++}
++
++inline Atomic32 Release_Load(volatile const Atomic32* ptr) {
++  return __atomic_load_n(ptr, __ATOMIC_RELEASE);
++}
++
++#ifdef __LP64__
++
++inline void Release_Store(volatile Atomic64* ptr, Atomic64 value) {
++  __atomic_store_n(ptr, value, __ATOMIC_RELEASE);
++}
++
++inline Atomic64 Acquire_Load(volatile const Atomic64* ptr) {
++  return __atomic_load_n(ptr, __ATOMIC_ACQUIRE);
++}
++
++inline Atomic64 Acquire_CompareAndSwap(volatile Atomic64* ptr,
++                                       Atomic64 old_value,
++                                       Atomic64 new_value) {
++  __atomic_compare_exchange_n(ptr, &old_value, new_value, true,
++                              __ATOMIC_ACQUIRE, __ATOMIC_ACQUIRE);
++  return old_value;
++}
++
++inline Atomic64 NoBarrier_CompareAndSwap(volatile Atomic64* ptr,
++                                         Atomic64 old_value,
++                                         Atomic64 new_value) {
++  __atomic_compare_exchange_n(ptr, &old_value, new_value, true,
++                            __ATOMIC_RELAXED, __ATOMIC_RELAXED);
++  return old_value;
++}
++
++#endif // defined(__LP64__)
++
++}  // namespace internal
++}  // namespace protobuf
++}  // namespace google
++
++#endif  // GOOGLE_PROTOBUF_ATOMICOPS_INTERNALS_GENERIC_GCC_H_
+diff --git a/src/google/protobuf/stubs/platform_macros.h b/src/google/protobuf/stubs/platform_macros.h
+index b1df60e..c724a61 100644
+--- a/src/google/protobuf/stubs/platform_macros.h
++++ b/src/google/protobuf/stubs/platform_macros.h
+@@ -37,34 +37,26 @@
+ //   http://msdn.microsoft.com/en-us/library/b0084kay.aspx
+ //   http://www.agner.org/optimize/calling_conventions.pdf
+ //   or with gcc, run: "echo | gcc -E -dM -"
+-#if defined(_M_X64) || defined(__x86_64__)
+-#define GOOGLE_PROTOBUF_ARCH_X64 1
+-#define GOOGLE_PROTOBUF_ARCH_64_BIT 1
+-#elif defined(_M_IX86) || defined(__i386__)
+-#define GOOGLE_PROTOBUF_ARCH_IA32 1
+-#define GOOGLE_PROTOBUF_ARCH_32_BIT 1
+-#elif defined(__QNX__)
+-#define GOOGLE_PROTOBUF_ARCH_ARM_QNX 1
+-#define GOOGLE_PROTOBUF_ARCH_32_BIT 1
+-#elif defined(__ARMEL__)
+-#define GOOGLE_PROTOBUF_ARCH_ARM 1
+-#define GOOGLE_PROTOBUF_ARCH_32_BIT 1
+-#elif defined(__MIPSEL__)
+-#define GOOGLE_PROTOBUF_ARCH_MIPS 1
+-#define GOOGLE_PROTOBUF_ARCH_32_BIT 1
+-#elif defined(__pnacl__)
+-#define GOOGLE_PROTOBUF_ARCH_32_BIT 1
+-#elif defined(__ppc__)
+-#define GOOGLE_PROTOBUF_ARCH_PPC 1
+-#define GOOGLE_PROTOBUF_ARCH_32_BIT 1
++
++#if defined(__GNUC__)
++# if __LP64__
++#  define GOOGLE_PROTOBUF_ARCH_64_BIT 1
++# else
++#  define GOOGLE_PROTOBUF_ARCH_32_BIT 1
++# endif
+ #else
+-#error Host architecture was not detected as supported by protobuf
++# error Host architecture was not detected as supported by protobuf
+ #endif
+-#if defined(__APPLE__)
+-#define GOOGLE_PROTOBUF_OS_APPLE
+-#elif defined(__native_client__)
+-#define GOOGLE_PROTOBUF_OS_NACL
++#if defined(__x86_64__)
++# define GOOGLE_PROTOBUF_ARCH_X64 1
++#elif defined(__i386__)
++# define GOOGLE_PROTOBUF_ARCH_IA32 1
++#elif defined(__ARMEL__)
++# define GOOGLE_PROTOBUF_ARCH_ARM 1
++#elif defined(__mips__) || defined(__MIPSEL__)
++# define GOOGLE_PROTOBUF_ARCH_MIPS 1
++/* Else we fallback to generic GCC implementation in atomicops.h */
+ #endif
+ #endif  // GOOGLE_PROTOBUF_PLATFORM_MACROS_H_
+-- 
+1.9.rc1
+
diff --git a/debian/patches/revert_upstream_issue_388_about_rpath.diff b/debian/patches/revert_upstream_issue_388_about_rpath.diff
new file mode 100644 (file)
index 0000000..ae72698
--- /dev/null
@@ -0,0 +1,50 @@
+Description: workaround issue 271 upstream
+Author: Thomas Koch <thomas@koch.ro
+Bug: http://code.google.com/p/protobuf/issues/detail?id=271
+Last-Update: 2011-11-07
+Index: protobuf/python/README.txt
+===================================================================
+--- protobuf.orig/python/README.txt    2013-08-13 17:00:57.056444999 -0400
++++ protobuf/python/README.txt 2013-08-13 17:00:57.052445109 -0400
+@@ -64,9 +64,9 @@
+      $ python setup.py install
+    This step may require superuser privileges.
+-   NOTE: To use C++ implementation, you need to install C++ protobuf runtime
+-   library of the same version and export the environment variable before this
+-   step. See the "C++ Implementation" section below for more details.
++   NOTE: To use C++ implementation, you need to export the environment variable
++   before this step. See the "C++ Implementation" section below for more
++   details.
+ Usage
+ =====
+@@ -84,10 +84,7 @@
+ The C++ implementation for Python messages is built as a Python extension to
+ improve the overall protobuf Python performance.
+-To use the C++ implementation, you need to:
+-1) Install the C++ protobuf runtime library, please see instructions in the
+-   parent directory.
+-2) Export an environment variable:
++To use the C++ implementation, export an environment variable:
+   $ export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=cpp
+Index: protobuf/python/setup.py
+===================================================================
+--- protobuf.orig/python/setup.py      2013-08-13 17:00:57.056444999 -0400
++++ protobuf/python/setup.py   2013-08-13 17:00:57.052445109 -0400
+@@ -152,8 +152,10 @@
+         [ "google/protobuf/pyext/python_descriptor.cc",
+           "google/protobuf/pyext/python_protobuf.cc",
+           "google/protobuf/pyext/python-proto2.cc" ],
+-        include_dirs = [ "." ],
+-        libraries = [ "protobuf" ]))
++        include_dirs = [ "../src", "." ],
++        libraries = [ "protobuf" ],
++#        runtime_library_dirs = [ "../src/.libs" ],
++        library_dirs = [ "../src/.libs" ]))
+   setup(name = 'protobuf',
+         version = '2.5.0',
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644 (file)
index 0000000..04556ab
--- /dev/null
@@ -0,0 +1,6 @@
+# comment to keep empty file in the diff.gz
+disable-setuptools-download.diff
+arm_optimization.diff
+revert_upstream_issue_388_about_rpath.diff
+fix-ftbfs-gcc4.7-kfreebsd.patch
+fix-ftbfs-upstream-issue-488.patch
diff --git a/debian/pkg-test.sh b/debian/pkg-test.sh
new file mode 100755 (executable)
index 0000000..3c6bd0e
--- /dev/null
@@ -0,0 +1,67 @@
+#!/bin/sh
+
+# Script to automate running the provided example programs to test all
+# language binding (cpp, python, java)
+
+# Needs to be run from the directory containing the newly-built deb's
+
+set -e
+
+test -f protobuf-compiler_*.deb || \
+    { echo "Cannot find protobuf-compiler deb file, exiting" 1>&2; exit 1; }
+
+echo "*** Installing dependencies (hardcoded list)"
+
+apt-get install -y openjdk-6-jdk python python-support pkg-config zlib1g-dev
+
+echo "*** Installing packages"
+
+dpkg -i *.deb
+
+cd /usr/share/doc/protobuf-compiler/examples
+
+export CLASSPATH=/usr/share/java/protobuf.jar
+
+echo "*** Building example programs"
+
+make
+
+TEST_FILE=`mktemp`
+echo "Test file is $TEST_FILE"
+
+echo "*** Adding via cpp"
+./add_person_cpp $TEST_FILE << EOF
+1
+Person One
+
+
+EOF
+
+echo "*** Adding via python"
+
+./add_person_python $TEST_FILE << EOF
+2
+Person Two
+two@example.net
+
+EOF
+
+echo "*** Adding via java"
+
+./add_person_java $TEST_FILE << EOF
+2
+Person Two
+
+555-1234
+work
+
+EOF
+
+
+
+for kind in cpp python java; do
+  echo "*** Listing via $kind"
+  ./list_people_$kind $TEST_FILE
+done
+
+rm $TEST_FILE
diff --git a/debian/protobuf-compiler.docs b/debian/protobuf-compiler.docs
new file mode 100644 (file)
index 0000000..223b42b
--- /dev/null
@@ -0,0 +1,4 @@
+CONTRIBUTORS.txt
+README.txt
+editors
+examples
diff --git a/debian/protobuf-compiler.install b/debian/protobuf-compiler.install
new file mode 100644 (file)
index 0000000..e772481
--- /dev/null
@@ -0,0 +1 @@
+usr/bin
diff --git a/debian/protobuf-compiler.manpages b/debian/protobuf-compiler.manpages
new file mode 100644 (file)
index 0000000..f723754
--- /dev/null
@@ -0,0 +1 @@
+protoc.1
diff --git a/debian/protoc.xml b/debian/protoc.xml
new file mode 100644 (file)
index 0000000..6b2af5f
--- /dev/null
@@ -0,0 +1,223 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+
+<!--
+
+`xsltproc -nonet \
+          -param man.charmap.use.subset "0" \
+          -param make.year.ranges "1" \
+          -param make.single.year.ranges "1" \
+          /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl \
+          manpage.xml'
+
+A manual page <package>.<section> will be generated. You may view the
+manual page with: nroff -man <package>.<section> | less'. A typical entry
+in a Makefile or Makefile.am is:
+
+DB2MAN = /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl
+XP     = xsltproc -nonet -param man.charmap.use.subset "0"
+
+manpage.1: manpage.xml
+        $(XP) $(DB2MAN) $<
+
+The xsltproc binary is found in the xsltproc package. The XSL files are in
+docbook-xsl. A description of the parameters you can use can be found in the
+docbook-xsl-doc-* packages. Please remember that if you create the nroff
+version in one of the debian/rules file targets (such as build), you will need
+to include xsltproc and docbook-xsl in your Build-Depends control field.
+Alternatively use the xmlto command/package. That will also automatically
+pull in xsltproc and docbook-xsl.
+
+Notes for using docbook2x: docbook2x-man does not automatically create the
+AUTHOR(S) and COPYRIGHT sections. In this case, please add them manually as
+<refsect1> ... </refsect1>.
+
+To disable the automatic creation of the AUTHOR(S) and COPYRIGHT sections
+read /usr/share/doc/docbook-xsl/doc/manpages/authors.html. This file can be
+found in the docbook-xsl-doc-html package.
+
+Validation can be done using: `xmllint -noout -valid manpage.xml`
+
+General documentation about man-pages and man-page-formatting:
+man(1), man(7), http://www.tldp.org/HOWTO/Man-Page/
+
+-->
+
+  <!-- Fill in your name for FIRSTNAME and SURNAME. -->
+  <!ENTITY dhfirstname "Iustin">
+  <!ENTITY dhsurname   "Pop">
+  <!-- dhusername could also be set to "&firstname; &surname;". -->
+  <!ENTITY dhusername  "&dhfirstname; &dhsurname;">
+  <!ENTITY dhemail     "iusty@k1024.org">
+  <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
+       allowed: see man(7), man(1) and
+       http://www.tldp.org/HOWTO/Man-Page/q2.html. -->
+  <!ENTITY dhsection   "1">
+  <!-- TITLE should be something like "User commands" or similar (see
+       http://www.tldp.org/HOWTO/Man-Page/q2.html). -->
+  <!ENTITY dhtitle     "protocol buffer compiler">
+  <!ENTITY dhucpackage "protobuf">
+  <!ENTITY dhpackage   "protoc">
+]>
+
+<refentry>
+  <refentryinfo>
+    <title>&dhtitle;</title>
+    <productname>&dhucpackage;</productname>
+    <authorgroup>
+      <author>
+       <firstname>&dhfirstname;</firstname>
+        <surname>&dhsurname;</surname>
+        <contrib>Wrote this manpage for the Debian system.</contrib>
+        <address>
+          <email>&dhemail;</email>
+        </address>
+      </author>
+    </authorgroup>
+    <copyright>
+      <year>2007</year>
+      <holder>&dhusername;</holder>
+    </copyright>
+    <legalnotice>
+      <para>This manual page was written for the Debian system
+        (but may be used by others).</para>
+      <para>Permission is granted to copy, distribute and/or modify this
+        document under the terms of the GNU General Public License,
+        Version 2 or (at your option) any later version published by
+        the Free Software Foundation.</para>
+      <para>On Debian systems, the complete text of the GNU General Public
+        License can be found in
+        <filename>/usr/share/common-licenses/GPL</filename>.</para>
+    </legalnotice>
+    <date>2008-10-04</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>&dhpackage;</refentrytitle>
+    <manvolnum>&dhsection;</manvolnum>
+    <refmiscinfo class="version">2.0.2</refmiscinfo>
+  </refmeta>
+  <refnamediv>
+    <refname>&dhpackage;</refname>
+    <refpurpose>compile protocol buffer description files</refpurpose>
+  </refnamediv>
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>&dhpackage;</command>
+      <!-- These are several examples, how syntaxes could look -->
+      <arg choice="opt"><option>--cpp_out=<replaceable>OUT_DIR</replaceable></option></arg>
+      <arg choice="opt"><option>--java_out=<replaceable>OUT_DIR</replaceable></option></arg>
+      <arg choice="opt"><option>--python_out=<replaceable>OUT_DIR</replaceable></option></arg>
+
+      <arg choice="opt">
+        <group choice="plain">
+          <arg choice="plain"><option>-I<replaceable>PATH</replaceable></option></arg>
+          <arg choice="plain"><option>--proto-path=<replaceable>PATH</replaceable></option></arg>
+        </group>
+      </arg>
+      <arg choice="plain"><replaceable>PROTO_FILE</replaceable></arg>
+    </cmdsynopsis>
+    <!-- Normally the help and version options make the programs stop
+         right after outputting the requested information. -->
+    <cmdsynopsis>
+      <command>&dhpackage;</command>
+      <group choice="req">
+        <arg choice="plain"><option>-h</option></arg>
+        <arg choice="plain"><option>--help</option></arg>
+      </group>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>&dhpackage;</command>
+      <arg choice="plain"><option>--version</option></arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1 id="description">
+    <title>DESCRIPTION</title>
+
+    <para><command>&dhpackage;</command> is a compiler for protocol
+    buffers definitions files. It can can generate C++, Java and
+    Python source code for the classes defined in
+    <replaceable>PROTO_FILE</replaceable>.</para>
+
+  </refsect1>
+
+  <refsect1 id="options">
+    <title>OPTIONS</title>
+    <variablelist>
+      <!-- Use the variablelist.term.separator and the
+           variablelist.term.break.after parameters to
+           control the term elements. -->
+      <varlistentry>
+        <term><option>-I<replaceable>PATH</replaceable></option></term>
+        <term><option>--proto_path=<replaceable>PATH</replaceable></option></term>
+        <listitem>
+          <para>Specify the directory in which to search for imports.
+          May be specified multiple times; directories will be
+          searched in order. If not given, the current working
+          directory is used.</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--cpp_out=<replaceable>OUT_DIR</replaceable></option></term>
+        <listitem>
+          <simpara>Enable generation of C++ bindings and store them in
+          <replaceable>OUT_DIR</replaceable>.</simpara>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--java_out=<replaceable>OUT_DIR</replaceable></option></term>
+        <listitem>
+          <simpara>Enable generation of Java bindings and store them
+          in <replaceable>OUT_DIR</replaceable>.</simpara>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--python_out=<replaceable>OUT_DIR</replaceable></option></term>
+        <listitem>
+          <simpara>Enable generation of Python bindings and store them
+          in <replaceable>OUT_DIR</replaceable>.</simpara>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-h</option></term>
+        <term><option>--help</option></term>
+        <listitem>
+          <para>Show summary of options.</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--version</option></term>
+        <listitem>
+          <para>Show version of program.</para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+
+    <para>Note that at least one of the <option>--cpp_out</option>,
+    <option>--java_out</option> and <option>--python_out</option>
+    options must be given (otherwise the program has nothing to
+    do). It's also possible to specify more than one.</para>
+
+  </refsect1>
+  <refsect1 id="bugs">
+    <!-- Or use this section to tell about upstream BTS. -->
+    <title>BUGS</title>
+
+    <para>The program currently exits with code 255 for all errors,
+    which makes it hard to differentiante from scripts the actual
+    error.</para>
+
+    <para>The upstreams <acronym>BTS</acronym> can be found at <ulink
+    url="http://code.google.com/p/protobuf/issues/list"/>.</para>
+
+  </refsect1>
+  <refsect1 id="see_also">
+    <title>SEE ALSO</title>
+
+    <para>More documentation about protocol buffers syntax and APIs is
+    available online at <ulink
+    url="http://code.google.com/apis/protocolbuffers/docs/overview.html"></ulink>.</para>
+
+
+  </refsect1>
+</refentry>
diff --git a/debian/python-protobuf.README.Debian b/debian/python-protobuf.README.Debian
new file mode 100644 (file)
index 0000000..1b884f3
--- /dev/null
@@ -0,0 +1,28 @@
+C++ backend
+===========
+
+Per the upstream bug tracker [0,1], the experimental C++ backend for the
+Python protobuf bindings is buggy and unmaintained. A new implementation may
+be available in a future release, but until then the Debian python-protobuf
+package can only use the classic pure Python implementation.
+
+[0] https://code.google.com/p/protobuf/issues/detail?id=434
+
+[1] https://code.google.com/p/protobuf/issues/detail?id=503
+
+ -- Robert S. Edmonds <edmonds@debian.org>  Sat, 25 Jan 2014 16:49:57 -0500
+
+Note that protobuf version 2.4.0 added an experimental C++-based
+library for the python bindings. Currently, this is not enabled by
+default, and selection of the used backend depends on the
+PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION environment variable as such:
+
+- when set to 'python' (the default), the classic Python
+  implementation is used
+- when set to 'cpp', the new implementation is used
+
+While you can use this variable to explicitly control the
+implementation being used, upstream said that the selection methods or
+the default could change in the future so you should be warned.
+
+ -- Iustin Pop <iustin@debian.org>, Wed, 16 Feb 2011 21:23:38 +0100
diff --git a/debian/rules b/debian/rules
new file mode 100755 (executable)
index 0000000..b0d81ac
--- /dev/null
@@ -0,0 +1,191 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+#
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+#
+# Modified to make a template file for a multi-binary package with separated
+# build-arch and build-indep targets  by Bill Allombert 2001
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# This has to be exported to make some magic below work.
+export DH_OPTIONS
+
+DPKG_EXPORT_BUILDFLAGS = 1
+include /usr/share/dpkg/buildflags.mk
+
+DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CC  = gcc
+CXX = g++
+ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
+  CC  := $(DEB_HOST_GNU_TYPE)-$(CC)
+  CXX := $(DEB_HOST_GNU_TYPE)-$(CXX)
+endif
+
+CFLAGS += -Wall
+CXXFLAGS += -Wall -fpermissive
+
+# Renesas SH(sh4) need -mieee option.
+# If this option is not effective, NaN test failed.
+ifeq (sh4,$(shell dpkg-architecture -qDEB_HOST_ARCH))
+  CFLAGS += -mieee
+  CXXFLAGS += -mieee
+endif
+
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    PAROPTS = -j$(NUMJOBS)
+else
+    PAROPTS =
+endif
+# end DEB_BUILD_OPTIONS
+
+version=0.0.0
+major=0
+
+configure: configure-stamp
+configure-stamp:
+       dh_testdir
+       # Add here commands to configure the package.
+       dh_autoreconf
+       dh_auto_configure
+       touch configure-stamp
+
+
+#Architecture
+build: build-arch
+
+build-arch: build-arch-stamp
+build-arch-stamp: configure-stamp
+
+       # Add here commands to compile the arch part of the package.
+       $(MAKE) $(PAROPTS)
+
+       # run the test suite
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+       $(MAKE) $(PAROPTS) check
+endif
+
+       # build the protoc manpage
+       xmlto man debian/protoc.xml
+
+       touch $@
+
+build-indep: build-indep-stamp
+build-indep-stamp: build-arch-stamp
+
+       # python bindings
+       cd python && python setup.py build
+
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+       cd python && python setup.py test
+endif
+
+       # java bindings
+       # this code mimics mvn package. This should be changed when maven is supported by debian.
+       $(SHELL) /usr/bin/ant -f debian/java-build.xml jar
+
+       touch $@
+
+clean:
+       dh_testdir
+       dh_testroot
+       rm -f build-arch-stamp build-indep-stamp configure-stamp
+
+       # C++ bindings cleanups
+       [ ! -f Makefile ] || $(MAKE) distclean
+
+       # remove the built manpage
+       rm -f protoc.1
+
+       # Python bindings cleanups
+       cd python && python setup.py clean --all
+       rm -rf python/protobuf.egg-info
+
+       # Java bindings cleanups
+       $(SHELL) /usr/bin/ant -f debian/java-build.xml clean || true
+
+       dh_autoreconf_clean
+       dh_clean
+       mh_clean
+
+install: install-indep install-arch
+install-indep: build-indep
+       dh_testdir
+       dh_testroot
+       dh_prep -i
+       dh_installdirs -i
+
+       # python bindings
+       cd python && \
+               python setup.py install --install-layout=deb --no-compile \
+                       --root=$(CURDIR)/debian/python-protobuf ; \
+                       find $(CURDIR)/debian/python-protobuf -name 'protobuf-*-nspkg.pth' -print0 | \
+                               xargs -r0 rm -f
+
+       dh_install -i
+       mh_install
+
+install-arch: build-arch
+       dh_testdir
+       dh_testroot
+       dh_prep -s
+       dh_installdirs -s
+
+       # Add here commands to install the arch part of the package into
+       # debian/tmp.
+       $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
+
+       dh_install --sourcedir=debian/tmp -s
+
+       # convert doc dir to symlink for the dev packages
+       rm -rf $(CURDIR)/debian/libprotobuf-dev/usr/share/doc/libprotobuf-dev
+       ln -s libprotobuf8 $(CURDIR)/debian/libprotobuf-dev/usr/share/doc/libprotobuf-dev
+       rm -rf $(CURDIR)/debian/libprotoc-dev/usr/share/doc/libprotoc-dev
+       ln -s libprotoc8 $(CURDIR)/debian/libprotoc-dev/usr/share/doc/libprotoc-dev
+
+       # remove compiler headers from libprotobuf-dev
+       rm -rf $(CURDIR)/debian/libprotobuf-dev/usr/include/google/protobuf/compiler
+
+       # remove .la files, as no other library depends on us
+       find $(CURDIR)/debian -name '*.la' -print0|xargs -r0 rm -f
+
+# Must not depend on anything. This is to be called by
+# binary-arch/binary-indep
+# in another 'make' thread.
+binary-common:
+       dh_testdir
+       dh_testroot
+       dh_installchangelogs CHANGES.txt
+       dh_installdocs
+       dh_installexamples
+       dh_installman
+       dh_link
+       dh_strip
+       dh_compress
+       dh_fixperms
+       dh_python2
+       dh_makeshlibs
+       dh_installdeb
+       dh_shlibdeps
+       dh_gencontrol
+       dh_md5sums
+       dh_builddeb
+
+# Build architecture independant packages using the common target.
+binary-indep: install-indep
+       $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
+
+# Build architecture dependant packages using the common target.
+binary-arch: install-arch
+       $(MAKE) -f debian/rules DH_OPTIONS=-s binary-common
+
+binary: binary-arch binary-indep
+.PHONY: build clean binary-indep binary-arch binary install install-indep install-arch configure
diff --git a/debian/source/format b/debian/source/format
new file mode 100644 (file)
index 0000000..163aaf8
--- /dev/null
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/watch b/debian/watch
new file mode 100644 (file)
index 0000000..bdcdcf1
--- /dev/null
@@ -0,0 +1,6 @@
+# format version number, currently 3; this line is compulsory!
+version=3
+opts=\
+downloadurlmangle=s|.*[?]name=(.*?)&.*|http://protobuf.googlecode.com/files/$1|,\
+filenamemangle=s|[^/]+[?]name=(.*?)&.*|$1| \
+http://code.google.com/p/protobuf/downloads/detail[?]name=protobuf-([0-9.]+).tar.gz&.*