From 18cd13596e560a06ccb3a6f808f83d12106fe1f9 Mon Sep 17 00:00:00 2001 From: Sean Whitton Date: Thu, 17 Dec 2015 11:03:13 -0700 Subject: dhelpa-write-desc also writes package dependencies --- dh-elpa.el | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/dh-elpa.el b/dh-elpa.el index 2ec58fc..84cb3fe 100644 --- a/dh-elpa.el +++ b/dh-elpa.el @@ -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 @@ -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) -- cgit v1.2.3