Proper debian packaging.

This packaging requires all pgloader dependencies to be available as a
debian package within the distribution, which is an work-in-progress
happening concurrently to this patch.

The current situation allows to actually build the pgloader package the
proper way already, some more needs to happen before anybody can do that
from a public debian repository.
This commit is contained in:
Dimitri Fontaine 2014-04-30 00:30:44 +02:00
parent 182128775b
commit bce75fc4e5
7 changed files with 46 additions and 1 deletions

2
debian/cl-pgloader.dirs vendored Normal file
View File

@ -0,0 +1,2 @@
usr/share/common-lisp/source/pgloader
usr/share/common-lisp/systems

3
debian/cl-pgloader.docs vendored Normal file
View File

@ -0,0 +1,3 @@
INSTALL.md
README.md
pgloader.1.md

3
debian/cl-pgloader.install vendored Normal file
View File

@ -0,0 +1,3 @@
pgloader.asd usr/share/common-lisp/source/simple-date
pgloader.lisp usr/share/common-lisp/source/pgloader
src usr/share/common-lisp/source/pgloader

1
debian/cl-pgloader.links vendored Normal file
View File

@ -0,0 +1 @@
usr/share/common-lisp/source/pgloader/pgloader.asd usr/share/common-lisp/systems/pgloader.asd

19
debian/control vendored
View File

@ -2,7 +2,7 @@ Source: pgloader
Section: database
Priority: extra
Maintainer: Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Build-Depends: debhelper (>= 8.0.0), sbcl (>= 1.1.13), pandoc, ruby-ronn
Build-Depends: debhelper (>= 8.0.0), sbcl (>= 1.1.13), ruby-ronn, buildapp (>= 1.5), cl-asdf (>= 3.0.3), cl-log, cl-postmodern, cl-qmynd, cl-split-sequence, cl-csv, cl-fad, cl-lparallel, cl-esrap, cl-alexandria, cl-drakma, cl-zip, cl-flexi-streams, cl-usocket, cl-local-time, cl-command-line-arguments, cl-abnf, cl-db3, cl-py-configparser, cl-sqlite, cl-trivial-backtrace, cl-markdown, cl-md5, cl-asdf-finalizers, cl-asdf-system-connections, cl-cffi (>= 1:0.12.0)
Standards-Version: 3.9.3
Homepage: https://github.com/dimitri/pgloader
Vcs-Git: https://github.com/dimitri/pgloader.git
@ -24,3 +24,20 @@ Description: extract, transform and load data into PostgreSQL
is able to auto-discover the schema and create the tables and the indexes
in PostgreSQL. In the MySQL case it's possible to edit CASTing rules from
the pgloader command directly.
Package: cl-pgloader
Architecture: all
Depends: ${shlibs:Depends}, cl-asdf (>= 3.0.3), cl-log, cl-postmodern, cl-qmynd, cl-split-sequence, cl-csv, cl-fad, cl-lparallel, cl-esrap, cl-alexandria, cl-drakma, cl-zip, cl-flexi-streams, cl-usocket, cl-local-time, cl-command-line-arguments, cl-abnf, cl-db3, cl-py-configparser, cl-sqlite, cl-trivial-backtrace, cl-markdown, cl-md5, cl-asdf-finalizers, cl-asdf-system-connections, cl-cffi (>= 1:0.12.0)
Description: extract, transform and load data into PostgreSQL
pgloader imports data from different kind of sources and COPY it into
PostgreSQL.
.
The command language is described in the manual page and allows to describe
where to find the data source, its format, and to describe data processing
and transformation.
.
Supported source formats include CSV, fixed width flat files, dBase3 files
(DBF), and SQLite and MySQL databases. In most of those formats, pgloader
is able to auto-discover the schema and create the tables and the indexes
in PostgreSQL. In the MySQL case it's possible to edit CASTing rules from
the pgloader command directly.

2
debian/pgloader.docs vendored Normal file
View File

@ -0,0 +1,2 @@
README.md
pgloader.1.md

17
debian/rules vendored
View File

@ -15,6 +15,23 @@ EXCLUDE = --exclude-vcs --exclude=debian --exclude=build
orig: clean
cd .. && tar czf pgloader_$(PKGVERS).orig.tar.gz $(EXCLUDE) pgloader
override_dh_auto_build:
make docs
buildapp --logfile /tmp/pgloader-build.log \
--require sb-posix \
--require sb-bsd-sockets \
--asdf-path . \
--asdf-tree /usr/share/common-lisp/systems \
--load-system asdf \
--load-system asdf-finalizers \
--load-system asdf-system-connections \
--load-system pgloader \
--load src/hooks.lisp \
--entry pgloader:main \
--dynamic-space-size 4096 \
--compress-core \
--output build/bin/pgloader
override_dh_auto_test:
# do nothing