*~
tests/tmp
debian/dgit
+debian/git-debrebase
debian/dgit-infrastructure
debian/files
debian/*.substvars
--- /dev/null
+# -*- perl -*-
+
+package Debian::Dgit::GDR;
+
+use strict;
+use warnings;
+
+# Scripts and programs which are going to `use Debian::Dgit' but which
+# live in git-debrebase (ie are installed with install-gdr)
+# should `use Debian::Dgit::GDR' first. All this module does is
+# adjust @INC so that the script gets the version of the script from
+# the git-debrebase package (which is installed in a different
+# location and may be a different version).
+
+# To use this with ExitStatus, put at the top (before use strict, even):
+#
+# END { $? = $Debian::Dgit::ExitStatus::desired // -1; };
+# use Debian::Dgit::GDR;
+# use Debian::Dgit::ExitStatus;
+#
+# and then replace every call to `exit' with `finish'.
+# Add a `finish 0' to the end of the program.
+
+# unshift @INC, q{/usr/share/dgit/gdr/perl5}; ###substituted###
+
+1;
txtdocdir=$(prefix)/share/doc/dgit
absurddir=$(prefix)/share/dgit/absurd
-PROGRAMS=dgit dgit-badcommit-fixup git-debrebase
-MAN1PAGES=dgit.1 \
- git-debrebase.1
-
-MAN5PAGES=git-debrebase.5
+PROGRAMS=dgit dgit-badcommit-fixup
+MAN1PAGES=dgit.1
MAN7PAGES=dgit.7 \
dgit-user.7 dgit-nmu-simple.7 \
PERLMODULES=Debian/Dgit.pm Debian/Dgit/ExitStatus.pm
ABSURDITIES=git
+GDR_PROGRAMS=git-debrebase
+GDR_PERLMODULES= \
+ Debian/Dgit.pm \
+ Debian/Dgit/GDR.pm \
+ Debian/Dgit/ExitStatus.pm
+GDR_MAN1PAGES=git-debrebase.1
+GDR_MAN5PAGES=git-debrebase.5
+
INFRA_PROGRAMS=dgit-repos-server dgit-ssh-dispatch \
dgit-repos-policy-debian dgit-repos-admin-debian \
dgit-repos-policy-trusting dgit-mirror-rsync
Debian/Dgit/Infra.pm \
Debian/Dgit/Policy/Debian.pm
-MANPAGES=$(MAN1PAGES) $(MAN5PAGES) $(MAN7PAGES)
+MANPAGES=$(MAN1PAGES) $(MAN5PAGES) $(MAN7PAGES) \
+ $(GDR_MAN1PAGES) $(GDR_MAN5PAGES)
all: $(MANPAGES) $(addprefix substituted/,$(PROGRAMS))
$(INSTALL_PROGRAM) $(addprefix absurd/,$(ABSURDITIES)) \
$(DESTDIR)$(absurddir)
$(INSTALL_DATA) $(MAN1PAGES) $(DESTDIR)$(man1dir)
- $(INSTALL_DATA) $(MAN5PAGES) $(DESTDIR)$(man5dir)
$(INSTALL_DATA) $(MAN7PAGES) $(DESTDIR)$(man7dir)
$(INSTALL_DATA) $(TXTDOCS) $(DESTDIR)$(txtdocdir)
set -e; for m in $(PERLMODULES); do \
$(DESTDIR)$(txtdocdir) $(DESTDIR)$(absurddir) \
$(addprefix $(DESTDIR)$(perldir)/, $(dir $(PERLMODULES)))
+install-gdr: installdirs-gdr
+ $(INSTALL_PROGRAM) $(GDR_PROGRAMS) $(DESTDIR)$(bindir)
+ $(INSTALL_DATA) $(GDR_MAN1PAGES) $(DESTDIR)$(man1dir)
+ $(INSTALL_DATA) $(GDR_MAN5PAGES) $(DESTDIR)$(man5dir)
+ set -e; for m in $(GDR_PERLMODULES); do \
+ $(INSTALL_DATA) $$m $(DESTDIR)$(perldir)/$${m%/*}; \
+ done
+
install-infra: installdirs-infra
$(INSTALL_PROGRAM) $(addprefix infra/, $(INFRA_PROGRAMS)) \
$(DESTDIR)$(bindir)
$(INSTALL_DATA) $$m $(DESTDIR)$(perldir)/$${m%/*}; \
done
+installdirs-gdr:
+ $(INSTALL_DIR) $(DESTDIR)$(bindir) \
+ $(DESTDIR)$(man1dir) $(DESTDIR)$(man5dir) \
+ $(addprefix $(DESTDIR)$(perldir)/, $(dir $(GDR_PERLMODULES)))
+
installdirs-infra:
$(INSTALL_DIR) $(DESTDIR)$(bindir) $(DESTDIR)$(infraexamplesdir) \
$(addprefix $(DESTDIR)$(perldir)/, $(dir $(INFRA_PERLMODULES)))
libdigest-sha-perl, dput, curl, apt,
libjson-perl, ca-certificates,
libtext-iconv-perl, libtext-glob-perl
-Recommends: ssh-client, libfile-fnmatch-perl
+Recommends: ssh-client
Suggests: sbuild
Architecture: all
Description: git interoperability with the Debian archive
.
dgit clone and dgit fetch construct git commits from uploads.
+Package: git-debrebase
+Depends: perl, git-core, libdpkg-perl, libfile-fnmatch-perl
+ ${misc:Depends}
+Recommends: dgit, git-buildpackage
+Architecture: all
+Description: rebasing git workflow tool for Debian packaging
+ git-debrebase is a tool for representing in git, and manpulating,
+ Debian packages based on upstream source code.
+
Package: dgit-infrastructure
Depends: ${misc:Depends}, perl, git-core, gpgv, chiark-utils-bin,
libjson-perl, libdigest-sha-perl, libdbd-sqlite3-perl, sqlite3,
globalperl=/usr/share/perl5
-override_dh_auto_install: specpkg_install_infra
+override_dh_auto_install: specpkg_install_gdr specpkg_install_infra
make install prefix=/usr DESTDIR=debian/dgit
+specpkg_install_gdr: p=git-debrebase
+specpkg_install_gdr: pm=GDR
+
specpkg_install_infra: p=dgit-infrastructure
specpkg_install_infra: pm=Infra
Tests: gdr-diverge-nmu gdr-diverge-nmu-dgit gdr-edits gdr-import-dgit gdr-newupstream-v0 gdr-subcommands gdr-viagit
Tests-Directory: tests/tests
-Depends: dgit, dgit-infrastructure, devscripts, debhelper (>=8), fakeroot, build-essential, chiark-utils-bin, git-buildpackage, libfile-fnmatch-perl, faketime
+Depends: dgit, dgit-infrastructure, devscripts, debhelper (>=8), fakeroot, build-essential, chiark-utils-bin, git-debrebase, git-buildpackage, faketime
Tests: gitattributes
Tests-Directory: tests/tests
# along with this program. If not, see <http://www.gnu.org/licenses/>.
END { $? = $Debian::Dgit::ExitStatus::desired // -1; };
+use Debian::Dgit::GDR;
use Debian::Dgit::ExitStatus;
use strict;
case "$dep" in
NO-DEFAULT) dependencies='' ;;
GDR) gencontrol-add-deps \
- git-buildpackage libfile-fnmatch-perl faketime
+ git-debrebase git-buildpackage faketime
;;
*) gencontrol-add-deps "$dep" ;;
esac