Initial commit
This commit is contained in:
114
elpa/auctex-11.91.0/prv-install.el
Normal file
114
elpa/auctex-11.91.0/prv-install.el
Normal file
@@ -0,0 +1,114 @@
|
||||
;;; prv-install.el --- Complicated install-time magic for preview-latex.
|
||||
|
||||
;; Copyright (C) 2002, 2005, 2014 Free Software Foundation, Inc.
|
||||
|
||||
;; Author: David Kastrup
|
||||
;; Keywords: convenience, tex, wp
|
||||
|
||||
;; This file is free software; you can redistribute it and/or modify
|
||||
;; it under the terms of the GNU General Public License as published by
|
||||
;; the Free Software Foundation; either version 3, or (at your option)
|
||||
;; any later version.
|
||||
|
||||
;; This file is distributed in the hope that it will be useful,
|
||||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;; GNU General Public License for more details.
|
||||
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with GNU Emacs; see the file COPYING. If not, write to
|
||||
;; the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
|
||||
;; Boston, MA 02110-1301, USA.
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
;; This contains package-building stuff and other install-time magic.
|
||||
;; It may well contain Emacs-version-specific code, but certain
|
||||
;; functions here should be *callable* from any Emacs version.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(defun preview-make-package ()
|
||||
"Do anything required to make a package in this version of Emacs,
|
||||
other than actually copying the Lisp files.
|
||||
|
||||
Takes arguments on the comamnd line: the package directory and any
|
||||
number of Lisp files to generate autoloads from.
|
||||
|
||||
Does nothing in Emacsen that do not support a package system."
|
||||
(if (featurep 'xemacs)
|
||||
(preview-make-package-xemacs))
|
||||
(setq command-line-args-left nil))
|
||||
|
||||
(defun preview-make-package-xemacs ()
|
||||
"Do anything required to make a package in XEmacs,
|
||||
other than actually copying the Lisp files.
|
||||
|
||||
Generates auto-autoloads, custom-loads, and package metadata file
|
||||
in the right locations. Takes from the command line the package directory,
|
||||
package name, and version (to be evaluated), followed by a file to append."
|
||||
(let* ((package-dir (pop command-line-args-left))
|
||||
(package-name (pop command-line-args-left))
|
||||
(release-version (eval (read (pop command-line-args-left))))
|
||||
(author-version (eval (read (pop command-line-args-left))))
|
||||
append-file
|
||||
(lisp-dir (expand-file-name (format "lisp/%s/" package-name)
|
||||
package-dir))
|
||||
(metadata (expand-file-name "_pkg.el" lisp-dir))
|
||||
(custom-load (expand-file-name "custom-load.el" lisp-dir))
|
||||
(generated-autoload-file (expand-file-name "auto-autoloads.el"
|
||||
lisp-dir))
|
||||
(si:message (symbol-function 'message))
|
||||
make-backup-files noninteractive)
|
||||
;; Delete and regenerate the custom-load file.
|
||||
(when (file-exists-p custom-load)
|
||||
(delete-file custom-load))
|
||||
(when (file-exists-p (concat custom-load "c"))
|
||||
(delete-file (concat custom-load "c")))
|
||||
(Custom-make-dependencies lisp-dir)
|
||||
(when (file-exists-p custom-load)
|
||||
(require 'cus-load)
|
||||
(byte-compile-file custom-load))
|
||||
; Delete and regenerate the package metadata file.
|
||||
; There is no compiled form of this file.
|
||||
(message "Updating metadata for the directory %s..." lisp-dir)
|
||||
(with-temp-file metadata
|
||||
(insert
|
||||
(concat ";;;###autoload\n"
|
||||
"(package-provide '" package-name "\n"
|
||||
" :version "
|
||||
release-version "\n"
|
||||
" :author-version "
|
||||
"\"" author-version "\"\n"
|
||||
" :type 'regular)\n")))
|
||||
; Delete and regenerate the auto-autoloads file.
|
||||
(message "Updating autoloads for the directory %s..." lisp-dir)
|
||||
(when (file-exists-p generated-autoload-file)
|
||||
(delete-file generated-autoload-file))
|
||||
(when (file-exists-p (concat generated-autoload-file "c"))
|
||||
(delete-file (concat generated-autoload-file "c")))
|
||||
(defun message (fmt &rest args)
|
||||
"Ignore useless messages while generating autoloads."
|
||||
(cond ((and (string-equal "Generating autoloads for %s..." fmt)
|
||||
(file-exists-p (file-name-nondirectory (car args))))
|
||||
(funcall si:message
|
||||
fmt (file-name-nondirectory (car args))))
|
||||
((string-equal "No autoloads found in %s" fmt))
|
||||
((string-equal "Generating autoloads for %s...done" fmt))
|
||||
(t (apply si:message fmt args))))
|
||||
(unwind-protect
|
||||
(cond ((fboundp 'update-autoloads-from-directory)
|
||||
(update-autoloads-from-directory lisp-dir))
|
||||
((fboundp 'update-autoload-files)
|
||||
(update-autoload-files (list lisp-dir) "auctex"))
|
||||
(t (error "Failed to generate autoloads.")))
|
||||
(fset 'message si:message))
|
||||
(while (setq append-file (pop command-line-args-left))
|
||||
(when (file-exists-p generated-autoload-file)
|
||||
(with-temp-buffer (insert-file-contents append-file)
|
||||
(append-to-file (point-min) (point-max)
|
||||
generated-autoload-file))))
|
||||
(byte-compile-file generated-autoload-file)))
|
||||
|
||||
|
||||
;;; prv-install.el ends here
|
||||
Reference in New Issue
Block a user