Function: makefile-pickup-targets

makefile-pickup-targets is an interactive and byte-compiled function defined in make-mode.el.gz.

Signature

(makefile-pickup-targets)

Documentation

Notice names of all target definitions in Makefile.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/make-mode.el.gz
;;; ------------------------------------------------------------
;;; Extracting targets and macros from an existing makefile
;;; ------------------------------------------------------------

(defun makefile-pickup-targets ()
  "Notice names of all target definitions in Makefile."
  (interactive)
  (when makefile-need-target-pickup
    (setq makefile-need-target-pickup nil
	  makefile-target-table nil
	  makefile-has-prereqs nil)
    (save-excursion
      (goto-char (point-min))
      (while (makefile-match-dependency nil)
	(goto-char (match-beginning 1))
	(while (let ((target-name
		      (buffer-substring-no-properties (point)
						      (progn
							(skip-chars-forward "^ \t:#")
							(point))))
		     (has-prereqs
		      (not (looking-at ":[ \t]*$"))))
		 (if (makefile-remember-target target-name has-prereqs)
		     (message "Picked up target \"%s\" from line %d"
			      target-name (line-number-at-pos)))
		 (skip-chars-forward " \t")
		 (not (or (eolp) (eq (char-after) ?:)))))
	(forward-line)))
    (message "Read targets OK")))