branch: elpa-admin commit 303f2c9803ffccb85661442041d2599b97d53991 Author: Stefan Monnier <monn...@iro.umontreal.ca> Commit: Stefan Monnier <monn...@iro.umontreal.ca>
* admin/archive-contents.el (batch-make-site-package): New function. * Makefile (site/%): Use it. --- admin/archive-contents.el | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/admin/archive-contents.el b/admin/archive-contents.el index 92c592e..6c388a9 100644 --- a/admin/archive-contents.el +++ b/admin/archive-contents.el @@ -1,6 +1,6 @@ ;;; archive-contents.el --- Auto-generate an Emacs Lisp package archive. -;; Copyright (C) 2011 Free Software Foundation, Inc +;; Copyright (C) 2011, 2012 Free Software Foundation, Inc ;; Author: Stefan Monnier <monn...@iro.umontreal.ca> @@ -22,6 +22,7 @@ ;;; Code: (require 'lisp-mnt) +(require 'package) (defconst archive-contents-subdirectory-regexp "\\([^.].*?\\)-\\([0-9]+\\(?:[.][0-9]+\\|\\(?:pre\\|beta\\|alpha\\)[0-9]+\\)*\\)") @@ -187,7 +188,7 @@ PKG-readme.txt. Return the descriptor." (setq package-dir (expand-file-name package-dir default-directory)) (setq site-dir (expand-file-name site-dir default-directory)) (dolist (dir (directory-files package-dir t archive-re-no-dot)) - (condition-case v + (condition-case v (if (not (file-directory-p dir)) (error "Skipping non-package file %s" dir) (let* ((pkg (file-name-nondirectory dir)) @@ -218,6 +219,16 @@ PKG-readme.txt. Return the descriptor." ;; Error handler (error (message "%s" (cadr v)))))) +(defun batch-make-site-package (sdir) + (let* ((dest (car (file-attributes sdir))) + (pkg (file-name-nondirectory (directory-file-name (or dest sdir)))) + (dir (or dest sdir))) + (let ((make-backup-files nil)) + (package-generate-autoloads pkg dir)) + (let ((load-path (cons dir load-path))) + ;; FIXME: Don't compile the -pkg.el files! + (byte-recompile-directory dir 0)))) + (defun archive--write-pkg-file (pkg-dir name version desc requires &rest ignored) (let ((pkg-file (expand-file-name (concat name "-pkg.el") pkg-dir)) (print-level nil)