Hello, Thanks for that patch. I must confess that I find it surprizingly complex, actually. I would expect that debhelper in recent version would only require me to give the name of the file to compile and install.
Those files debian/quilt-el.*-install smell like debhelper version 6 or below, not debhelper version 9 or higher. But it seems to be the way to go, actually. I will try to find the time to test your code soon, but I cannot really upload quilt before the end of the freeze (which should occure soon anyway). Thansk for your work, Mt. On Thu, Jan 15, 2015 at 10:10:42PM +0000, Jeremy Sowden wrote: > "how-can-i-help" suggested this bug as suitable for a newcomer. Would > the attached patch be of use? > > J. > From ba6ab2cbfa5a68d8fca99d43eda119d2a11f3c95 Mon Sep 17 00:00:00 2001 > From: Jeremy Sowden <jer...@azazel.net> > Date: Thu, 15 Jan 2015 16:29:22 +0000 > Subject: [PATCH] Create quilt-el package. > > --- > debian/control | 15 ++++++++++++++- > debian/quilt-el.emacsen-install | 37 +++++++++++++++++++++++++++++++++++++ > debian/quilt-el.emacsen-remove | 10 ++++++++++ > debian/quilt-el.emacsen-startup | 26 ++++++++++++++++++++++++++ > debian/rules | 8 ++++++++ > 5 files changed, 95 insertions(+), 1 deletion(-) > create mode 100644 debian/quilt-el.emacsen-install > create mode 100644 debian/quilt-el.emacsen-remove > create mode 100644 debian/quilt-el.emacsen-startup > > diff --git a/debian/control b/debian/control > index 7e0f9ed..da44698 100644 > --- a/debian/control > +++ b/debian/control > @@ -31,13 +31,26 @@ Description: Tool to work with series of patches > for Linux kernel hackers (Andrew Morton, from the -mm branch, is the > original author), and its main use by the current upstream maintainer is to > manage the (hundreds of) patches against the kernel made for the SUSE > - distribution. > + distribution. > . > This package provides seamless integration into Debhelper or CDBS, > allowing maintainers to easily add a quilt-based patch management system in > their packages. The package also provides some basic support for those not > using those tools. See README.Debian for more information. > > +Package: quilt-el > +Architecture: all > +Depends: emacs | emacsen, quilt (>= 0.48), ${misc:Depends} > +Description: simple Emacs interface of quilt > + This is an Emacs minor mode for quilt. By using this, > + it becomes easy to edit files controlled by quilt. > + The main features are as follows: > + . > + - Automatically detects files that are in a quilt hierarchy > + and enables itself. > + - Only files in topmost patch can be writable. > + - Some handy shortcut keys of quilt commands. > + > # Local Variables: > # Coding: utf-8 > # End: > diff --git a/debian/quilt-el.emacsen-install b/debian/quilt-el.emacsen-install > new file mode 100644 > index 0000000..7fafa87 > --- /dev/null > +++ b/debian/quilt-el.emacsen-install > @@ -0,0 +1,37 @@ > +#! /bin/sh -e > +# /usr/lib/emacsen-common/packages/install/quilt-el > + > +# Written by Jim Van Zandt <j...@debian.org>, borrowing heavily > +# from the install scripts for gettext by Santiago Vila > +# <sanv...@ctv.es> and octave by Dirk Eddelbuettel <e...@debian.org>. > + > +FLAVOR=$1 > +PACKAGE=quilt-el > + > +if [ ${FLAVOR} = emacs ]; then exit 0; fi > + > +echo install/${PACKAGE}: Handling install for emacsen flavor ${FLAVOR} > + > +SITEFLAG="-no-site-file" > +FLAGS="${SITEFLAG} -q -batch -l path.el -f batch-byte-compile" > + > +ELDIR=/usr/share/emacs/site-lisp/${PACKAGE} > +ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE} > + > +install -m 755 -d ${ELCDIR} > +cd ${ELDIR} > +rm -f ${ELCDIR}/*.el > +FILES=`echo *.el` > +cp ${FILES} ${ELCDIR} > +cd ${ELCDIR} > + > +cat << EOF > path.el > +(setq load-path (cons "." load-path) byte-compile-warnings nil) > +EOF > +${FLAVOR} ${FLAGS} ${FILES} > +rm -f *.el path.el > +for i in ${FILES}; do > + ln -fs ${ELDIR}/$i > +done > + > +exit 0 > diff --git a/debian/quilt-el.emacsen-remove b/debian/quilt-el.emacsen-remove > new file mode 100644 > index 0000000..b1b15d9 > --- /dev/null > +++ b/debian/quilt-el.emacsen-remove > @@ -0,0 +1,10 @@ > +#!/bin/sh -e > +# /usr/lib/emacsen-common/packages/remove/quilt-el > + > +FLAVOR=$1 > +PACKAGE=quilt-el > + > +if [ ${FLAVOR} != emacs ]; then > + echo remove/${PACKAGE}: purging byte-compiled files for ${FLAVOR} > + rm -rf /usr/share/${FLAVOR}/site-lisp/${PACKAGE} > +fi > diff --git a/debian/quilt-el.emacsen-startup b/debian/quilt-el.emacsen-startup > new file mode 100644 > index 0000000..30afb6a > --- /dev/null > +++ b/debian/quilt-el.emacsen-startup > @@ -0,0 +1,26 @@ > +;; -*-emacs-lisp-*- > +;; > +;; Emacs startup file, e.g. /etc/emacs/site-start.d/50quilt-el.el > +;; for the Debian quilt-el package > +;; > +;; Originally contributed by Nils Naumann <naum...@unileoben.ac.at> > +;; Modified by Dirk Eddelbuettel <e...@debian.org> > +;; Adapted for dh-make by Jim Van Zandt <j...@debian.org> > + > +;; The quilt-el package follows the Debian/GNU Linux 'emacsen' policy and > +;; byte-compiles its elisp files for each 'emacs flavor' (emacs19, > +;; xemacs19, emacs20, xemacs20...). The compiled code is then > +;; installed in a subdirectory of the respective site-lisp directory. > +;; We have to add this to the load-path: > +(let ((package-dir (concat "/usr/share/" > + (symbol-name flavor) > + "/site-lisp/quilt-el"))) > +;; If package-dir does not exist, the quilt-el package must have > +;; removed but not purged, and we should skip the setup. > + (when (file-directory-p package-dir) > + (if (fboundp 'debian-pkg-add-load-path-item) > + (debian-pkg-add-load-path-item package-dir) > + (setq load-path (cons package-dir load-path))) > + (autoload 'quilt-mode "quilt" > + "Minor mode for editing files on quilt hierarchy." > + t))) > diff --git a/debian/rules b/debian/rules > index b08cc75..07f7838 100755 > --- a/debian/rules > +++ b/debian/rules > @@ -35,6 +35,14 @@ endif > pod2man -c Debhelper debian/dh_quilt_patch debian/dh_quilt_patch.1 > pod2man -c Debhelper debian/dh_quilt_unpatch debian/dh_quilt_unpatch.1 > > +override_dh_auto_install: > + dh_auto_install > + install -d -m 0755 $(CURDIR)/debian/quilt-el/usr/share > + mv $(BUILD_ROOT)/usr/share/emacs $(CURDIR)/debian/quilt-el/usr/share > + > +override_dh_installdocs: > + dh_installdocs --link-doc=quilt > + > override_dh_installchangelogs: > dh_installchangelogs NEWS > > -- > 2.1.4 > -- The unavoidable price of reliability is simplicity. -- Hoare
signature.asc
Description: Digital signature