[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
scratch/package-vc-fixes 05fcad3a20 2/3: ; Revert changes to 'package-ge
From: |
Philip Kaludercic |
Subject: |
scratch/package-vc-fixes 05fcad3a20 2/3: ; Revert changes to 'package-generate-autoloads' signature |
Date: |
Thu, 17 Nov 2022 11:40:57 -0500 (EST) |
branch: scratch/package-vc-fixes
commit 05fcad3a20182d32b284c5636babe2ac2941f222
Author: Philip Kaludercic <philipk@posteo.net>
Commit: Philip Kaludercic <philipk@posteo.net>
; Revert changes to 'package-generate-autoloads' signature
* lisp/emacs-lisp/package-vc.el (package-vc--unpack-1): Generate an
indirection autoload file and generate autoloads for :lisp-dir.
* lisp/emacs-lisp/package.el (package-generate-autoloads): Revert
changes.
(package--make-autoloads-and-stuff): Pass the package name to
'package-generate-autoloads'.
---
lisp/emacs-lisp/package-vc.el | 19 ++++++++++++++++++-
lisp/emacs-lisp/package.el | 25 ++++++++-----------------
2 files changed, 26 insertions(+), 18 deletions(-)
diff --git a/lisp/emacs-lisp/package-vc.el b/lisp/emacs-lisp/package-vc.el
index eaa2dcc248..b8a192a2c5 100644
--- a/lisp/emacs-lisp/package-vc.el
+++ b/lisp/emacs-lisp/package-vc.el
@@ -416,7 +416,24 @@ documentation and marking the package as installed."
(let ((default-directory (file-name-as-directory pkg-dir))
(pkg-file (expand-file-name (package--description-file pkg-dir)
pkg-dir)))
;; Generate autoloads
- (package-generate-autoloads pkg-desc pkg-dir)
+ (let* ((name (package-desc-name pkg-desc))
+ (auto-name (format "%s-autoloads.el" name))
+ (extras (package-desc-extras pkg-desc))
+ (lisp-dir (alist-get :lisp-dir extras)))
+ (package-generate-autoloads
+ name (file-name-concat pkg-dir lisp-dir))
+ (when lisp-dir
+ (write-region
+ (with-temp-buffer
+ (insert ";; Autoload indirection for package-vc\n\n")
+ (prin1 `(load (expand-file-name
+ ,(file-name-concat lisp-dir auto-name)
+ (or (and load-file-name
+ (file-name-directory load-file-name))
+ (car load-path))))
+ (current-buffer))
+ (buffer-string))
+ nil (expand-file-name auto-name pkg-dir))))
;; Generate package file
(package-vc--generate-description-file pkg-desc pkg-file)
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index cae0531e4d..f9786febf4 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -1080,41 +1080,32 @@ untar into a directory named DIR; otherwise, signal an
error."
(defvar autoload-timestamps)
(defvar version-control)
-(defun package-generate-autoloads (pkg-desc pkg-dir)
- "Generate autoloads for PKG-DESC in PKG-DIR."
- (let* ((name (package-desc-name pkg-desc))
- (auto-name (format "%s-autoloads.el" name))
+(defun package-generate-autoloads (name pkg-dir)
+ "Generate autoloads in PKG-DIR for package named NAME."
+ (let* ((auto-name (format "%s-autoloads.el" name))
;;(ignore-name (concat name "-pkg.el"))
(output-file (expand-file-name auto-name pkg-dir))
- (extras (package-desc-extras pkg-desc))
- (lisp-dir (alist-get :lisp-dir extras))
;; We don't need 'em, and this makes the output reproducible.
(autoload-timestamps nil)
(backup-inhibited t)
(version-control 'never))
(loaddefs-generate
- (file-name-concat pkg-dir lisp-dir)
- output-file nil
+ pkg-dir output-file nil
(prin1-to-string
- `(add-to-list
+ '(add-to-list
'load-path
;; Add the directory that will contain the autoload file to
;; the load path. We don't hard-code `pkg-dir', to avoid
;; issues if the package directory is moved around.
- ,(let ((base '(or (and load-file-name (file-name-directory
load-file-name))
- (car load-path))))
- (if lisp-dir
- ;; In case the package specification indicates that the lisp
- ;; files are found in a subdirectory, append that directory.
- `(expand-file-name ,lisp-dir ,base)
- base)))))
+ (or (and load-file-name (file-name-directory load-file-name))
+ (car load-path)))))
(let ((buf (find-buffer-visiting output-file)))
(when buf (kill-buffer buf)))
auto-name))
(defun package--make-autoloads-and-stuff (pkg-desc pkg-dir)
"Generate autoloads, description file, etc., for PKG-DESC installed at
PKG-DIR."
- (package-generate-autoloads pkg-desc pkg-dir)
+ (package-generate-autoloads (package-desc-name pkg-desc) pkg-dir)
(let ((desc-file (expand-file-name (package--description-file pkg-dir)
pkg-dir)))
(unless (file-exists-p desc-file)