summaryrefslogtreecommitdiff
path: root/dh-elpa.el
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2017-01-19 15:37:19 -0700
committerSean Whitton <spwhitton@spwhitton.name>2017-01-19 15:37:19 -0700
commit93b8fd46eba4711e2735e15dbe00859af51ce00d (patch)
tree64b604c16e27430f9f8316b82f0236dc6bee2289 /dh-elpa.el
parent9b2dced21adf738a10aa02edf34b4ce272d8f987 (diff)
parente26a74596105f702ba7fcbe15bdf41f59b75555f (diff)
Merge tag 'debian/1.6' into jessie-bpo
uploaded to unstable
Diffstat (limited to 'dh-elpa.el')
-rw-r--r--dh-elpa.el23
1 files changed, 18 insertions, 5 deletions
diff --git a/dh-elpa.el b/dh-elpa.el
index 094913e..8017851 100644
--- a/dh-elpa.el
+++ b/dh-elpa.el
@@ -172,11 +172,24 @@ such a case."
"Filter a list of package.el deps DEPS for Debian.
Remove packages that are maintained outside of the elpa-*
-namespace in Debian, plus Emacs itself."
- (let ((non-elpa (list 'emacs 's 'dash 'yasnippet)))
- (cl-remove-if (lambda (dep)
- (or (memq (car dep) non-elpa)
- (package-built-in-p (car dep))))
+namespace in Debian, plus Emacs itself.
+
+Also remove built-in packages, except those built-in packages
+that are also packaged separately in Debian.
+
+These are packaged separately for two reasons:
+
+- it allows us to provide newer versions than those in Emacs core
+
+- it permits use of addons with older versions of Emacs, for
+ which the dependency is not yet a built-in package."
+ (let ((non-elpa (list 'emacs 's 'dash 'yasnippet))
+ (packaged-separately (list 'let-alist 'seq)))
+ (cl-remove-if (lambda (dep) (let ((pkg (car dep)))
+ (or (memq pkg non-elpa)
+ (and
+ (package-built-in-p pkg)
+ (not (memq pkg packaged-separately))))))
deps)))
(defun dhelpa-filter-pkg-desc (desc)