summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorModestas Vainius <modax@debian.org>2013-11-03 14:28:43 +0200
committerModestas Vainius <modax@debian.org>2013-11-03 20:53:12 +0200
commit4d4cd67eff53dd8bba739d3f38e1ba38a9ba4f11 (patch)
tree03e71cc1d415ffd665c3381ee9b7659cdbf81d43
parent81cce9aebd34bfee91a217ed603f29fa29a5a998 (diff)
Update dh_installemacsen for emacsen-common 2.0.
Update dh_installemacsen and related scripts to follow /usr/share/doc/emacsen-common/debian-emacs-policy.gz as of emacsen-common package version 2.0.5. The changes include: * Install debian/package.emacsen-compat into usr/lib/emacsen-common/packages/compat/package if present * All maintainer scripts test for existance of /var/lib/emacsen-common/state/package/installed/emacsen-common as mandated by policy. * Generate and install preinst maintainer script if needed.
-rw-r--r--autoscripts/postinst-emacsen4
-rw-r--r--autoscripts/preinst-emacsen5
-rw-r--r--autoscripts/prerm-emacsen4
-rw-r--r--debian/changelog5
-rwxr-xr-xdh_installemacsen26
5 files changed, 35 insertions, 9 deletions
diff --git a/autoscripts/postinst-emacsen b/autoscripts/postinst-emacsen
index f80e1db..6a46d79 100644
--- a/autoscripts/postinst-emacsen
+++ b/autoscripts/postinst-emacsen
@@ -1,4 +1,4 @@
-if [ "$1" = "configure" ] && [ -x /usr/lib/emacsen-common/emacs-package-install ]
+if [ "$1" = "configure" ] && [ -e /var/lib/emacsen-common/state/package/installed/emacsen-common ]
then
- /usr/lib/emacsen-common/emacs-package-install #PACKAGE#
+ /usr/lib/emacsen-common/emacs-package-install --postinst #PACKAGE#
fi
diff --git a/autoscripts/preinst-emacsen b/autoscripts/preinst-emacsen
new file mode 100644
index 0000000..780fc69
--- /dev/null
+++ b/autoscripts/preinst-emacsen
@@ -0,0 +1,5 @@
+if ( [ "$1" = "install" ] || [ "$1" = "upgrade" ] ) \
+ && [ -e /var/lib/emacsen-common/state/package/installed/emacsen-common ]
+then
+ /usr/lib/emacsen-common/emacs-package-install --preinst #PACKAGE#
+fi
diff --git a/autoscripts/prerm-emacsen b/autoscripts/prerm-emacsen
index 8c3ca64..31ecfaa 100644
--- a/autoscripts/prerm-emacsen
+++ b/autoscripts/prerm-emacsen
@@ -1,3 +1,3 @@
-if [ -x /usr/lib/emacsen-common/emacs-package-remove ] ; then
- /usr/lib/emacsen-common/emacs-package-remove #PACKAGE#
+if [ -e /var/lib/emacsen-common/state/package/installed/emacsen-common ] ; then
+ /usr/lib/emacsen-common/emacs-package-remove --prerm #PACKAGE#
fi
diff --git a/debian/changelog b/debian/changelog
index a5e5a57..1c31ea3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,11 +1,16 @@
debhelper (9.20130922) UNRELEASED; urgency=low
+ [ Joey Hess ]
* Debhelper is now team maintained. There is a
debhelper-devel@lists.alioth.debian.org mailing list which
maintainers of other dh_ commands are encouraged to join also.
* dh_installchangelogs: Avoid installing binNMU changelog file
in --no-act mode. Closes: #726930
+ [ Modestas Vainius ]
+ * Update dh_installemacsen and related scripts to follow emacs
+ policy v2.0 (as of emacsen-common 2.0.5).
+
-- Joey Hess <joeyh@debian.org> Sun, 20 Oct 2013 19:18:44 -0400
debhelper (9.20130921) unstable; urgency=low
diff --git a/dh_installemacsen b/dh_installemacsen
index 92037f2..b2ee142 100755
--- a/dh_installemacsen
+++ b/dh_installemacsen
@@ -19,15 +19,20 @@ B<dh_installemacsen> is a debhelper program that is responsible for installing
files used by the Debian B<emacsen-common> package into package build
directories.
-It also automatically generates the F<postinst> and F<prerm> commands needed to
-register a package as an Emacs add on package. The commands are added to
-the maintainer scripts by B<dh_installdeb>. See L<dh_installdeb(1)>
-for an explanation of how this works.
+It also automatically generates the F<preinst> F<postinst> and F<prerm>
+commands needed to register a package as an Emacs add on package. The commands
+are added to the maintainer scripts by B<dh_installdeb>. See
+L<dh_installdeb(1)> for an explanation of how this works.
=head1 FILES
=over 4
+=item debian/I<package>.emacsen-compat
+
+Installed into F<usr/lib/emacsen-common/packages/compat/package> in the
+package build directory.
+
=item debian/I<package>.emacsen-install
Installed into F<usr/lib/emacsen-common/packages/install/package> in the
@@ -83,15 +88,23 @@ if (! defined $dh{FLAVOR}) {
$dh{FLAVOR}='emacs';
}
-# PROMISE: DH NOOP WITHOUT emacsen-install emacsen-remove emacsen-startup
+# PROMISE: DH NOOP WITHOUT emacsen-common emacsen-install emacsen-remove emacsen-startup
foreach my $package (@{$dh{DOPACKAGES}}) {
my $tmp=tmpdir($package);
+ my $emacsen_compat=pkgfile($package,"emacsen-compat");
my $emacsen_install=pkgfile($package,"emacsen-install");
my $emacsen_remove=pkgfile($package,"emacsen-remove");
my $emacsen_startup=pkgfile($package,"emacsen-startup");
+ if ($emacsen_compat ne '') {
+ if (! -d "$tmp/usr/lib/emacsen-common/packages/compat") {
+ doit("install","-d","$tmp/usr/lib/emacsen-common/packages/compat");
+ }
+ doit("install","-m0644",$emacsen_compat,"$tmp/usr/lib/emacsen-common/packages/compat/$package");
+ }
+
if ($emacsen_install ne '') {
if (! -d "$tmp/usr/lib/emacsen-common/packages/install") {
doit("install","-d","$tmp/usr/lib/emacsen-common/packages/install");
@@ -115,6 +128,8 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
if ($emacsen_install ne '' || $emacsen_remove ne '') {
if (! $dh{NOSCRIPTS}) {
+ autoscript($package,"preinst","preinst-emacsen",
+ "s/#PACKAGE#/$package/");
autoscript($package,"postinst","postinst-emacsen",
"s/#PACKAGE#/$package/");
autoscript($package,"prerm","prerm-emacsen",
@@ -126,6 +141,7 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
=head1 SEE ALSO
L<debhelper(7)>
+L</usr/share/doc/emacsen-common/debian-emacs-policy.gz>
This program is a part of debhelper.