summaryrefslogtreecommitdiff
path: root/debian/rules
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2016-10-15 17:50:26 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2016-10-15 19:38:09 +0100
commita69af4ad7b2a029fd9902df6e4b7ee824151020a (patch)
tree67876f54e402e2aa69f7e33924c54f6313da76d7 /debian/rules
parent02bc0d2ca13bda7484c72b30cd20a7e36097da34 (diff)
Infra: dgit-infrastructure has, and uses, its own copies of the perl modules
This avoids introducing a versioned dependency between dgit and dgit-infrastructure (and also makes it easier to test cross-version compatibility). Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Diffstat (limited to 'debian/rules')
-rwxr-xr-xdebian/rules20
1 files changed, 19 insertions, 1 deletions
diff --git a/debian/rules b/debian/rules
index 6580f96..9249f88 100755
--- a/debian/rules
+++ b/debian/rules
@@ -30,9 +30,27 @@ override_dh_gencontrol:
v=$$(perl -ne 'print if s/^version:\s+//i' DEBIAN/control); \
perl -i -pe "s/UNRELEASED/$$v/g if m/###substituted###/" usr/bin/dgit
+globalperl=/usr/share/perl5
+infraperl=/usr/share/dgit/infra/perl5
+
override_dh_auto_install:
make install prefix=/usr DESTDIR=debian/dgit
- make install-infra prefix=/usr DESTDIR=debian/dgit-infrastructure
+ make install-infra prefix=/usr DESTDIR=debian/dgit-infrastructure \
+ perldir=$(infraperl)
+# # Most of the Perl modules in dgit-infrastructure live in
+# # $(infraperl). The exception is Debian::Dgit::Infra, which
+# # lives in $(globalperl) and adds $(infraperl) to @INC.
+ set -ex; \
+ base=debian/dgit-infrastructure; \
+ mod=Debian/Dgit/Infra.pm; \
+ src=$${base}$(infraperl)/$${mod}; \
+ dst=$${base}$(globalperl)/$${mod}; \
+ mkdir -p $${dst%/*}; \
+ mv -f $$src $$dst; \
+ perl -i -p -e 'next unless m/###substituted###/;' \
+ -e 'next unless s/^# (?=unshift \@INC,)//;' \
+ -e 'die unless s{q\{\S+\}}{q{$(infraperl)}};' \
+ $$dst
debian/tests/control: tests/enumerate-tests debian/tests/control.in
$< gencontrol >$@.new && mv -f $@.new $@