chiark / gitweb /
debian/rules: Refactor dgit-infrastructure perl arrangements
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 17 Jun 2018 14:44:49 +0000 (15:44 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 17 Jun 2018 15:23:18 +0000 (16:23 +0100)
We are going to want to do this for another package too.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
debian/rules

index 9249f88..e51f893 100755 (executable)
@@ -31,25 +31,30 @@ override_dh_gencontrol:
         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:
+override_dh_auto_install: specpkg_install_infra
        make install prefix=/usr DESTDIR=debian/dgit
-       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.
+
+specpkg_install_infra: p=dgit-infrastructure
+specpkg_install_infra: pm=Infra
+
+specpkg_install_%: tok=$*
+specpkg_install_%: specperl=/usr/share/dgit/$(tok)/perl5
+specpkg_install_%:
+       make install-$(tok) prefix=/usr DESTDIR=debian/$(p) perldir=$(specperl)
+#      # Most of the Perl modules in this package live in
+#      # $(specperl).  The exception is Debian::Dgit::Infra, which
+#      # lives in $(globalperl) and adds $(specperl) to @INC.
        set -ex; \
-        base=debian/dgit-infrastructure; \
-        mod=Debian/Dgit/Infra.pm; \
-        src=$${base}$(infraperl)/$${mod}; \
+        base=debian/$(p); \
+        mod=Debian/Dgit/$(pm).pm; \
+        src=$${base}$(specperl)/$${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)}};' \
+               -e 'die unless s{q\{\S+\}}{q{$(specperl)}};' \
                 $$dst
 
 debian/tests/control: tests/enumerate-tests debian/tests/control.in