Function: package-vc--make

package-vc--make is a byte-compiled function defined in package-vc.el.gz.

Signature

(package-vc--make PKG-SPEC PKG-DESC)

Documentation

Process :make and :shell-command in PKG-SPEC.

PKG-DESC is the package descriptor for the package that is being prepared.

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/package-vc.el.gz
(defun package-vc--make (pkg-spec pkg-desc)
  "Process :make and :shell-command in PKG-SPEC.
PKG-DESC is the package descriptor for the package that is being
prepared."
  (let ((default-directory (package-vc--checkout-dir pkg-desc))
        (target (plist-get pkg-spec :make))
        (cmd (plist-get pkg-spec :shell-command))
        (buf (format " *package-vc make: %s*" (package-desc-name pkg-desc)))
        (makexe (or package-vc-make-program
                    (seq-find #'executable-find '("gmake" "make")))))
    (when (or cmd target)
      (with-current-buffer (get-buffer-create buf)
        (erase-buffer)
        (when (and cmd (/= 0 (call-process shell-file-name nil t nil shell-command-switch cmd)))
          (warn "Failed to run %s, see buffer %S" cmd (buffer-name)))
        (when (and target (/= 0 (apply #'call-process makexe nil t nil (ensure-list target))))
          (warn "Failed to make %s, see buffer %S" target (buffer-name)))))))