summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2014-11-08 22:21:27 +0000
committerIan Jackson <ijackson@chiark.greenend.org.uk>2014-11-09 11:58:19 +0000
commit1b2c10f57b0257aac61a696378e9c8c05df8bf4f (patch)
treee958be79fec81a1f82679e57aebbcaf0894682d2
parent6fb4b888dd654e78fb263e69147de9d9df4a532b (diff)
New dgit-infrastructure binary package containing dgit-repos-server et al. Client users probably don't want this stuff. Also, it provides a convenient way to publish the dependencies.
-rw-r--r--.gitignore1
-rw-r--r--Makefile15
-rw-r--r--debian/changelog4
-rw-r--r--debian/control10
-rwxr-xr-xdebian/rules4
-rw-r--r--debian/tests/control2
-rwxr-xr-xinfra/dgit-repos-server (renamed from dgit-repos-server)0
-rwxr-xr-xinfra/dgit-ssh-dispatch2
-rw-r--r--tests/lib2
9 files changed, 36 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index 737875f..c25efea 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,7 @@
*~
tests/tmp
debian/dgit
+debian/dgit-infrastructure
debian/files
debian/*.substvars
debian/*.log
diff --git a/Makefile b/Makefile
index f456d93..caac3d9 100644
--- a/Makefile
+++ b/Makefile
@@ -26,10 +26,14 @@ prefix?=/usr/local
bindir=$(prefix)/bin
mandir=$(prefix)/share/man
man1dir=$(mandir)/man1
+infraexamplesdir=$(prefix)/share/doc/dgit-infrastructure/examples
-PROGRAMS=dgit dgit-repos-server
+PROGRAMS=dgit
MAN1PAGES=dgit.1
+INFRA_PROGRAMS=dgit-repos-server dgit-ssh-dispatch
+INFRA_EXAMPLES=get-dm-txt ssh-wrap
+
all:
install: installdirs
@@ -39,6 +43,15 @@ install: installdirs
installdirs:
$(INSTALL_DIR) $(DESTDIR)$(bindir) $(DESTDIR)$(man1dir)
+install-infra: installdirs-infra
+ $(INSTALL_PROGRAM) $(addprefix infra/, $(INFRA_PROGRAMS)) \
+ $(DESTDIR)$(bindir)
+ $(INSTALL_PROGRAM) $(addprefix infra/, $(INFRA_EXAMPLES)) \
+ $(DESTDIR)$(infraexamplesdir)
+
+installdirs-infra:
+ $(INSTALL_DIR) $(DESTDIR)$(bindir) $(DESTDIR)$(infraexamplesdir)
+
check installcheck:
clean distclean mostlyclean maintainer-clean:
diff --git a/debian/changelog b/debian/changelog
index 775be6c..6629b0b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -31,6 +31,10 @@ dgit (0.23~) unstable; urgency=low
* Add missing `gpgv' to test dependencies in debian/tests/control.
+ * New dgit-infrastructure binary package containing dgit-repos-server et
+ al. Client users probably don't want this stuff. Also, it provides a
+ convenient way to publish the dependencies.
+
--
dgit (0.22.1) unstable; urgency=high
diff --git a/debian/control b/debian/control
index 798465b..cc26c04 100644
--- a/debian/control
+++ b/debian/control
@@ -21,3 +21,13 @@ Description: git interoperability with the Debian archive
dgit push constructs uploads from git commits
.
dgit clone and dgit fetch construct git commits from uploads.
+
+Package: dgit-infrastructure
+Depends: ${misc:Depends}
+Recommends: perl, git-core, gpgv, chiark-utils-bin, wget,
+ libdigest-sha-perl
+Architecture: all
+Priority: extra
+Description: dgit server backend infrastructure
+ This package contains tools which are useful for setting up a dgit
+ git repository server. You probably want dgit, the client package.
diff --git a/debian/rules b/debian/rules
index fece672..e02ea90 100755
--- a/debian/rules
+++ b/debian/rules
@@ -29,3 +29,7 @@ override_dh_gencontrol:
cd debian/dgit; \
v=$$(perl -ne 'print if s/^version:\s+//i' DEBIAN/control); \
perl -i -pe "s/UNRELEASED/$$v/g if m/###substituted###/" usr/bin/dgit
+
+override_dh_auto_install:
+ make install prefix=/usr DESTDIR=debian/dgit
+ make install-infra prefix=/usr DESTDIR=debian/dgit-infrastructure
diff --git a/debian/tests/control b/debian/tests/control
index aca24c4..37124e6 100644
--- a/debian/tests/control
+++ b/debian/tests/control
@@ -1,3 +1,3 @@
Tests: clone-nogit fetch-localgitonly fetch-somegit-notlast push-newpackage push-nextdgit quilt push-buildproductsdir
Tests-Directory: tests/tests
-Depends: @, devscripts, gpgv
+Depends: dgit, dgit-infrastructure, devscripts, gpgv
diff --git a/dgit-repos-server b/infra/dgit-repos-server
index c70bc27..c70bc27 100755
--- a/dgit-repos-server
+++ b/infra/dgit-repos-server
diff --git a/infra/dgit-ssh-dispatch b/infra/dgit-ssh-dispatch
index bd8582a..b515eda 100755
--- a/infra/dgit-ssh-dispatch
+++ b/infra/dgit-ssh-dispatch
@@ -120,7 +120,7 @@ sub dispatch () {
my $cmd=$1;
selectpackage $2,$3;
if ($cmd eq 'receive-pack') {
- my $s = "$dgitlive/dgit-repos-server";
+ my $s = "$dgitlive/infra/dgit-repos-server";
exec $s, $suites, $authrune, $repos, qw(--ssh);
die "exec $s: $!";
} elsif ($cmd eq 'upload-pack') {
diff --git a/tests/lib b/tests/lib
index 019a998..adbd79f 100644
--- a/tests/lib
+++ b/tests/lib
@@ -5,7 +5,7 @@ set -x
if [ "x$DGIT_TEST_INTREE" != x ]; then
: ${DGIT_TEST:=$DGIT_TEST_INTREE/dgit}
- : ${DGIT_REPOS_SERVER_TEST:=$DGIT_TEST_INTREE/dgit-repos-server}
+ : ${DGIT_REPOS_SERVER_TEST:=$DGIT_TEST_INTREE/infra/dgit-repos-server}
: ${DGIT_SSH_DISPATCH_TEST:=$DGIT_TEST_INTREE/infra/dgit-ssh-dispatch}
export DGIT_TEST DGIT_REPOS_SERVER_TEST DGIT_SSH_DISPATCH_TEST
fi