diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2015-12-17 11:03:13 -0700 |
---|---|---|
committer | David Bremner <bremner@debian.org> | 2016-01-03 19:19:13 -0400 |
commit | 18cd13596e560a06ccb3a6f808f83d12106fe1f9 (patch) | |
tree | 20fe5d609a9b582aa478374b62f41c2f5c6d2145 /dh-elpa.el | |
parent | 983e60fd072e78483f22541daf1befda32e50930 (diff) |
dhelpa-write-desc also writes package dependencies
Diffstat (limited to 'dh-elpa.el')
-rw-r--r-- | dh-elpa.el | 15 |
1 files changed, 13 insertions, 2 deletions
@@ -1,6 +1,6 @@ ;;; dh-elpa.el --- package.el style packages for Debian -*- lexical-binding:t -*- -;; Copyright (C) 2015 David Bremner +;; Copyright (C) 2015 David Bremner & contributors ;; Portions Copyright 2007-2015 The Free Software Foundation ;; Author: David Bremner <bremner@debian.org> @@ -59,15 +59,26 @@ current time is used." #'dhelpa-autoload-insert-section-header) pkg-dir)) +(defun dhelpa-debianise-deps (deps) + "Convert a list of package.el deps DEPS to debian/control format." + (mapconcat + (lambda (dep) + (let ((pkg-name (format "elpa-%s" (car dep))) + (pkg-ver (mapconcat 'number-to-string (car (cdr dep)) "."))) + (concat pkg-name " (>= " pkg-ver ")"))) + deps ", ")) + ;; Write out (partial) package description in a form easily parsed by ;; non-lisp tools. (defun dhelpa-write-desc (desc dest) (let* ((name (package-desc-name desc)) (version (package-version-join (package-desc-version desc))) + (deps (dhelpa-debianise-deps (package-desc-reqs desc))) (desc-file (expand-file-name (format "%s.desc" name) dest))) (with-temp-file desc-file (insert (format "ELPA-Name: %s\n" name)) - (insert (format "ELPA-Version: %s\n" version))))) + (insert (format "ELPA-Version: %s\n" version)) + (insert (format "ELPA-Requires: %s\n" deps))))) ;;;###autoload (defun dhelpa-install-from-buffer (destdir &optional epoch-time) |