|
14 | 14 | (file-name-directory (nth 1 (member "-scriptload" command-line-args)))) |
15 | 15 | nil t) |
16 | 16 |
|
| 17 | +(defvar eask--pkg-filename) |
| 18 | + |
| 19 | +(defun eask--generate-from-pkg-desc () |
| 20 | + "Generate pkg-file from a package-descriptor." |
| 21 | + (let* ((name (package-desc-name eask-package-desc)) |
| 22 | + (pkg-file (expand-file-name (format "%s-pkg.el" name)))) |
| 23 | + (setq eask--pkg-filename pkg-file) |
| 24 | + (package-generate-description-file eask-package-desc pkg-file))) |
| 25 | + |
| 26 | +(defun eask--generate-from-eask-file () |
| 27 | + "Generate pkg-file from Eask file." |
| 28 | + (let* ((name (eask-guess-package-name)) |
| 29 | + (pkg-file (expand-file-name (concat name "-pkg.el"))) |
| 30 | + (version (eask-package-version)) |
| 31 | + (description (eask-package-description)) |
| 32 | + (reqs (mapcar (lambda (elm) |
| 33 | + (list (if (stringp (car elm)) (intern (car elm)) (car elm)) |
| 34 | + (if (= (length (cdr elm)) 1) |
| 35 | + (nth 0 (cdr elm)) |
| 36 | + "latest"))) |
| 37 | + (append eask-depends-on-emacs eask-depends-on)))) |
| 38 | + (setq eask--pkg-filename pkg-file) |
| 39 | + (write-region |
| 40 | + (pp-to-string `(define-package ,name ,version ,description ',reqs)) |
| 41 | + nil pkg-file))) |
| 42 | + |
17 | 43 | (eask-start |
18 | | - (let ((pkg-file (expand-file-name (concat name "-pkg.el")))) |
19 | | - (if eask-package-desc |
20 | | - (package-generate-description-file eask-package-desc pkg-file)) |
21 | | - (let* ((name (eask-guess-package-name)) |
22 | | - (version (eask-package-version)) |
23 | | - (description (eask-package-description)) |
24 | | - (reqs (package-desc-reqs eask-package-desc))) |
25 | | - (write-region |
26 | | - (pp-to-string `(define-package ,name ,version ,description ',reqs)) |
27 | | - nil pkg-file))) |
28 | | - (eask-info "(Generated pkg-file -> %s)" pkg-file)) |
| 44 | + (if eask-package-desc (eask--generate-from-pkg-desc) |
| 45 | + (eask--generate-from-eask-file)) |
| 46 | + (eask-info "(Generated pkg-file -> %s)" eask--pkg-filename)) |
29 | 47 |
|
30 | 48 | ;;; pkg-file.el ends here |
0 commit comments