Skip to content

Commit

Permalink
added files for debian packaging (#26)
Browse files Browse the repository at this point in the history
* added files for debian packaging

  - the directory debian was added
  - it can be used for proper packaging, building two binary packages:
    libsearpc and libsearpc-dev (the latter is used for building the
    other seafile related packages)

* renamed library package

  - debian library packages should include the SONAME

* added conflict info

  - don't allow this package to be installed alongside the official seafile package

* fixed dependency

* repackaging with cleaned up orig.tar.xz archives

* added symbol file

  - bumping version number

* fixing some linitan issues

* fixed python dependencies

  - ${python:Depends} somehow doesn't work for the libsearpc-dev package
  - lintian demands depending on python2

* emptying  the dependency_libs field in .la files

* minor changes to the debian/control file

* changed license to GPL-2
  • Loading branch information
unDocUMeantIt authored and lins05 committed Jul 27, 2016
1 parent 41dd1c9 commit b9234ae
Show file tree
Hide file tree
Showing 12 changed files with 180 additions and 0 deletions.
6 changes: 6 additions & 0 deletions debian/README.Debian
@@ -0,0 +1,6 @@
Seafile
-------

For more information about Seafile, please visit http://seafile.com

-- plt <freeplant@gmail.com> Fri, 30 March 2012 16:43:10 +0800
15 changes: 15 additions & 0 deletions debian/changelog
@@ -0,0 +1,15 @@
libsearpc1 (3.0.7-5ubuntu1) UNRELEASED; urgency=medium

* repackaging with cleaned up orig.tar.xz archives
* added symbol file

-- m.eik michalke <meik.michalke@hhu.de> Fri, 17 Jun 2016 12:09:14 +0200

libsearpc1 (3.0.7-4) unstable; urgency=medium

* split package libsearpc1 and libsearpc-dev
* updated the debian/copyright notice so people know who's responisble for the packaging
* rewrote the rules file, much simpler now
* prep for release on github

-- m.eik michalke <meik.michalke@hhu.de> Wed, 15 Jun 2016 22:16:03 +0200
1 change: 1 addition & 0 deletions debian/compat
@@ -0,0 +1 @@
7
39 changes: 39 additions & 0 deletions debian/control
@@ -0,0 +1,39 @@
Source: libsearpc1
Section: net
Priority: extra
Maintainer: m.eik michalke <meik.michalke@hhu.de>
Build-Depends:
debhelper (>= 7),
autotools-dev,
intltool,
libglib2.0-dev,
python,
libtool,
libjansson-dev
Standards-Version: 3.9.5
Homepage: http://seafile.com

Package: libsearpc1
Section: libs
Architecture: any
Depends:
${shlibs:Depends},
${misc:Depends},
${python:Depends}
Conflicts: seafile
Description: SeaRPC library for Seafile client
SeaRPC is a simple C language RPC framework based on GObject system.
SeaRPC handles the serialization/deserialization part of RPC, the transport
part is left to users.

Package: libsearpc-dev
Section: libdevel
Architecture: any
Depends:
${misc:Depends},
python2 (>= 2.7) | python (>= 2.7),
python2 (<< 2.8) | python (<< 2.8),
libsearpc1 (= ${binary:Version})
Conflicts: seafile
Description: Development files for the libsearpc1 package.
This package contains the development files for the libsearpc1 package.
38 changes: 38 additions & 0 deletions debian/copyright
@@ -0,0 +1,38 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: libsearpc
Upstream-Contact: Lingtao Pan <freeplant@gmail.com>
Source: https://github.com/haiwen/libsearpc

Files: *
Copyright: 2016 plt
License: LGPL-3 + Apache
This program is free software; you can redistribute it
and/or modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later
version.
.
This software is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE.
.
You should have received a copy of the license with your Debian system,
in the file /usr/share/common-licenses/LGPL-3, or with the
source package as the file COPYING or LICENSE.

Files: debian/*
Copyright: 2016 m.eik michalke
License: GPL-2
This program is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later
version.
.
This software is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE.
.
You should have received a copy of the license with your Debian system,
in the file /usr/share/common-licenses/GPL-2, or with the
source package as the file COPYING or LICENSE.
6 changes: 6 additions & 0 deletions debian/libsearpc-dev.install
@@ -0,0 +1,6 @@
usr/include
usr/lib/pkgconfig
usr/lib/libsearpc.a
usr/lib/libsearpc.la
usr/lib/libsearpc.so
usr/bin/searpc-codegen.py
2 changes: 2 additions & 0 deletions debian/libsearpc1.install
@@ -0,0 +1,2 @@
usr/lib/*.so.*
usr/lib/python2.7/dist-packages/pysearpc/*.py
33 changes: 33 additions & 0 deletions debian/libsearpc1.symbols
@@ -0,0 +1,33 @@
libsearpc.so.1 libsearpc1 #MINVER#
error_to_json@Base 3.0.7
json_gobject_deserialize@Base 3.0.7
json_gobject_serialize@Base 3.0.7
searpc_client_async_call__int64@Base 3.0.7
searpc_client_async_call__int@Base 3.0.7
searpc_client_async_call__object@Base 3.0.7
searpc_client_async_call__objlist@Base 3.0.7
searpc_client_async_call__string@Base 3.0.7
searpc_client_async_call_v@Base 3.0.7
searpc_client_call@Base 3.0.7
searpc_client_call__int64@Base 3.0.7
searpc_client_call__int@Base 3.0.7
searpc_client_call__object@Base 3.0.7
searpc_client_call__objlist@Base 3.0.7
searpc_client_call__string@Base 3.0.7
searpc_client_free@Base 3.0.7
searpc_client_generic_callback@Base 3.0.7
searpc_client_new@Base 3.0.7
searpc_client_transport_send@Base 3.0.7
searpc_compute_signature@Base 3.0.7
searpc_create_service@Base 3.0.7
searpc_marshal_set_ret_common@Base 3.0.7
searpc_remove_service@Base 3.0.7
searpc_server_call_function@Base 3.0.7
searpc_server_final@Base 3.0.7
searpc_server_init@Base 3.0.7
searpc_server_register_function@Base 3.0.7
searpc_server_register_marshal@Base 3.0.7
searpc_set_int_to_ret_object@Base 3.0.7
searpc_set_object_to_ret_object@Base 3.0.7
searpc_set_objlist_to_ret_object@Base 3.0.7
searpc_set_string_to_ret_object@Base 3.0.7
24 changes: 24 additions & 0 deletions debian/patches/fix-pkgconfig-paths.patch
@@ -0,0 +1,24 @@
The original packaging script installed relative to itself, not needed here.
--- a/libsearpc.pc.in
+++ b/libsearpc.pc.in
@@ -1,4 +1,4 @@
-prefix=(DESTDIR)@prefix@
+prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
--- a/Makefile.am
+++ b/Makefile.am
@@ -18,12 +18,5 @@

SUBDIRS = lib pysearpc ${MAKE_DEMO} tests

-install-data-local:
-if MACOS
- sed -i '' -e "s|(DESTDIR)|${DESTDIR}|g" $(pcfiles)
-else
- ${SED} -i "s|(DESTDIR)|${DESTDIR}|g" $(pcfiles)
-endif
-
dist-hook:
git log -1 > $(distdir)/latest_commit
1 change: 1 addition & 0 deletions debian/patches/series
@@ -0,0 +1 @@
fix-pkgconfig-paths.patch
14 changes: 14 additions & 0 deletions debian/rules
@@ -0,0 +1,14 @@
#!/usr/bin/make -f
# -*- makefile -*-

%:
dh $@ --with python2 --with autotools_dev --builddirectory=build

override_dh_auto_configure:
./autogen.sh
dh_auto_configure -- --disable-compile-demo

override_dh_strip:
# emptying the dependency_libs field in .la files
sed -i "/dependency_libs/ s/'.*'/''/" `find debian/ -name '*.la'`
dh_strip
1 change: 1 addition & 0 deletions debian/source/format
@@ -0,0 +1 @@
3.0 (quilt)

0 comments on commit b9234ae

Please sign in to comment.