[PATCH] Fix lintian errors, make .deb build multiarch-aware

Signed-off-by: Max Suraev <Max.Suraev@fairwaves.co>
---
 debian/README.source           |  1 +
 debian/compat                  |  2 +-
 debian/control                 | 34 ++++++++++++++++++++++++++++++----
 debian/copyright               | 15 ++-------------
 debian/libosmocodec0.install   |  2 +-
 debian/libosmocore-dev.install |  8 ++++----
 debian/libosmocore4.install    |  2 +-
 debian/libosmogb3.install      |  2 +-
 debian/libosmogsm5.install     |  2 +-
 debian/libosmovty0.install     |  2 +-
 10 files changed, 43 insertions(+), 27 deletions(-)
 create mode 100644 debian/README.source

diff --git a/debian/README.source b/debian/README.source
new file mode 100644
index 0000000..9ba5c67
--- /dev/null
+++ b/debian/README.source
@@ -0,0 +1 @@
+We do some Debian-specific source patching magic. This file should contain explanation of what the hell
we do and why until we fix that one way or another.
\ No newline at end of file
diff --git a/debian/compat b/debian/compat
index 45a4fb7..ec63514 100644
--- a/debian/compat
+++ b/debian/compat
@@ -1 +1 @@
-8
(Continue reading)

Re: [PATCH] Fix lintian errors, make .deb build multiarch-aware

This patch fixes all the packaging errors reported by lintian and most of the
warnings: see http://openbsc.osmocom.org/trac/wiki/Tasks/MISCDebianPackaging for
details. Few which still remains are either jquery-related (could it be doxygen
error?) or due to lack of manpage (help2man, anyone?)

The patch also adds basic multiarch support - everything should work as it used to be
if you're using pkg_config but review and testing will be greatly appreciated.

N. B. 1: this isn't complete and ready2use multiarch support - just some groundwork
which might be useful later on.

N. B. 2: I don't get at all quilt patching we're using so I've added only dummy
README. Anyone who understands why those patches are not merged to master branch
welcomed to write an explanation.

cheers,
Max.

Re: [PATCH] Fix lintian errors, make .deb build multiarch-aware

On Wed, Jul 9, 2014 at 1:29 AM, Max Suraev wrote:

>  debian/...

If you would like any osmocom packages uploaded to Debian, I would be
happy to sponsor them.

Of course the usual Debian requirements apply; free licenses, source,
proper ABI tracking etc.

--

-- 
bye,
pabs

https://wiki.debian.org/PaulWise

Re: [PATCH] Fix lintian errors, make .deb build multiarch-aware

On Wed, Jul 9, 2014 at 12:09 PM, Paul Wise wrote:
> On Wed, Jul 9, 2014 at 1:29 AM, Max Suraev wrote:
>
>>  debian/...
>
> If you would like any osmocom packages uploaded to Debian, I would be
> happy to sponsor them.

I should mention that there are two source packages from OsmoSDR in
Debian, these were uploaded by the Debian Gnuradio package
maintainers:

https://packages.debian.org/source/sid/gr-osmosdr
https://packages.debian.org/source/sid/libosmosdr

--

-- 
bye,
pabs

http://wiki.debian.org/PaulWise

Re: [PATCH] Fix lintian errors, make .deb build multiarch-aware

On Wed, Jul 09, 2014 at 12:09:56PM +0800, Paul Wise wrote:

Hi,

> Of course the usual Debian requirements apply; free licenses, source,
> proper ABI tracking etc.

the debian maintainer guide is painful to read. Can you point me to
how ABI tracking should be implemented?

Re: [PATCH] Fix lintian errors, make .deb build multiarch-aware

On Wed, 2014-07-09 at 13:21 +0200, Holger Hans Peter Freyther wrote:

> the debian maintainer guide is painful to read. Can you point me to
> how ABI tracking should be implemented?

It is pretty simple; when library ABI is broken (when new code is
binary-incompatible with old code) the library SONAME (libc.so.6 for
example) should be bumped. The ABI Compliance Checker (ACC) can help
analyse the ABI and report incompatible changes but doesn't cover every
situation AFAIK. The libtool manual has a bunch of useful information
about maintaining shared libraries. 

http://ispras.linuxbase.org/index.php/ABI_compliance_checker
https://www.gnu.org/software/libtool/manual/libtool.html

For the Debian side of library packaging, maint-guide covers the very
basics, debian-policy covers requirements and the (quite outdated,
possibly still useful) libpkg-guide covers library packaging generally.

https://www.debian.org/doc/manuals/maint-guide/advanced.en.html#library
https://www.debian.org/doc/debian-policy/ch-sharedlibs.html
http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html

Two things I would like to highlight in particular:

Debian likes library upstreams who set their default symbol visibility
to hidden and then whitelist their public symbols.

Debian likes library upstreams who implement symbol versioning.

(Continue reading)