;ELC ;;; compiled by kwzh@hill.gnu.ai.mit.edu on Thu Jun 15 22:08:34 1995 ;;; from file /gd/gnu/emacs/19.0/lisp/makefile.el ;;; emacs version 19.28.94.4. ;;; bytecomp version FSF 2.10 ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.28.90"))) (error "`makefile.el' was compiled for Emacs 19.29 or later")) (provide (quote makefile)) #@47 Name of the macro- and target browser buffer. (defvar makefile-browser-buffer-name "*Macros and Targets*" (#$ . 506)) #@107 String to append to all target names inserted by `makefile-insert-target'. ":" or "::" are common values. (defvar makefile-target-colon ":" (#$ . 631)) #@286 String to append to all macro names inserted by `makefile-insert-macro'. The normal value should be " = ", since this is what standard make expects. However, newer makes such as dmake allow a larger variety of different macro assignments, so you might prefer to use " += " or " := " . (defvar makefile-macro-assign " = " (#$ . 790)) #@59 If non-nil, install electric keybindings. Default is nil. (defvar makefile-electric-keys nil (#$ . 1129)) #@179 Controls the style of generated macro references. t (actually non-nil) means macro references should use curly braces, like `${this}'. nil means use parentheses, like `$(this)'. (defvar makefile-use-curly-braces-for-macros-p nil (#$ . 1242)) #@98 If non-nil, insert a TAB after a target colon. Otherwise, a space is inserted. The default is t. (defvar makefile-tab-after-target-colon t (#$ . 1490)) #@61 Number of blanks to the left of the browser selection mark. (defvar makefile-browser-leftmost-column 10 (#$ . 1648)) #@83 Column in which the cursor is positioned when it moves up or down in the browser. (defvar makefile-browser-cursor-column 10 (#$ . 1771)) #@67 *Column in which `makefile-backslash-region' inserts backslashes. (defvar makefile-backslash-column 48 (#$ . -1914)) #@54 String used to mark selected entries in the browser. (defvar makefile-browser-selected-mark "+ " (#$ . 2037)) #@56 String used to mark unselected entries in the browser. (defvar makefile-browser-unselected-mark " " (#$ . 2154)) #@65 If non-nil, cursor will move after item is selected in browser. (defvar makefile-browser-auto-advance-after-selection-p t (#$ . 2275)) #@160 If non-nil, `makefile-pickup-everything' picks up filenames as targets. (i.e. it calls `makefile-find-filenames-as-targets'). Otherwise filenames are omitted. (defvar makefile-pickup-everything-picks-up-filenames-p nil (#$ . 2417)) #@312 If non-nil, automatically clean up continuation lines when saving. A line is cleaned up by removing all whitespace following a trailing backslash. This is done silently. IMPORTANT: Please note that enabling this option causes makefile-mode to MODIFY A FILE WITHOUT YOUR CONFIRMATION when 'it seems necessary'. (defvar makefile-cleanup-continuations-p t (#$ . 2656)) (byte-code "! B‡" [boundp makefile-browser-hook nil current-load-list] 2) #@162 List of special targets. You will be offered to complete on one of those in the minibuffer whenever you enter a "." at the beginning of a line in makefile-mode. (defvar makefile-special-targets-list (quote (("DEFAULT") ("DONE") ("ERROR") ("EXPORT") ("FAILED") ("GROUPEPILOG") ("GROUPPROLOG") ("IGNORE") ("IMPORT") ("INCLUDE") ("INCLUDEDIRS") ("INIT") ("KEEP_STATE") ("MAKEFILES") ("MAKE_VERSION") ("NO_PARALLEL") ("PARALLEL") ("PHONY") ("PRECIOUS") ("REMOVE") ("SCCS_GET") ("SILENT") ("SOURCE") ("SUFFIXES") ("WAIT") ("c.o") ("C.o") ("m.o") ("el.elc") ("y.c") ("s.o"))) (#$ . 3114)) #@235 List of macros that are resolved by make at runtime. If you insert a macro reference using makefile-insert-macro-ref, the name of the macro is checked against this list. If it can be found its name will not be enclosed in { } or ( ). (defvar makefile-runtime-macros-list (quote (("@") ("&") (">") ("<") ("*") ("^") ("?") ("%") ("$"))) (#$ . 3704)) #@52 Regex used to find dependency lines in a makefile. (defconst makefile-dependency-regex "^\\([^ \n #:]+\\([ ]+[^ \n#:]+\\)*\\)[ ]*:\\([ ]*$\\|\\([^=\n].*$\\)\\)" (#$ . 4058)) #@58 Regex used to find macro assignment lines in a makefile. (defconst makefile-macroassign-regex "^\\([^ \n ][^:#= \n]*\\)[ ]*[*:+]?:?=" (#$ . 4242)) #@67 Regex for filenames that will NOT be included in the target list. (defconst makefile-ignored-files-in-pickup-regex "\\(^\\..*\\)\\|\\(.*~$\\)\\|\\(.*,v$\\)\\|\\(\\.[chy]\\)" (#$ . 4397)) #@62 Face to use for highlighting leading tabs in font-lock-mode. (defvar makefile-tab-face (byte-code "!!!\"‡" [fboundp make-face makefile-tab-face face-differs-from-default-p set-face-background "hotpink"] 3) (#$ . 4590)) (byte-code "E\fEFB" [makefile-macroassign-regex 1 font-lock-variable-name-face ("\\$[({]\\([a-zA-Z0-9_]+\\)[})]" 1 font-lock-reference-face t) makefile-dependency-regex font-lock-function-name-face ("^ " . makefile-tab-face) makefile-font-lock-keywords current-load-list] 5) #@41 A make that can handle the '-q' option. (defvar makefile-brave-make "make" (#$ . 5124)) #@557 A function symbol [one that can be used as the first argument to funcall] that provides a function that must conform to the following interface: * As its first argument, it must accept the name of the target to be checked, as a string. * As its second argument, it may accept the name of a makefile as a string. Depending on what you're going to do you may not need this. * It must return the integer value 0 (zero) if the given target should be considered up-to-date in the context of the given makefile, any nonzero integer value otherwise. (defvar makefile-query-one-target-method (quote makefile-query-by-make-minus-q) (#$ . 5219)) #@41 Name of the Up-to-date overview buffer. (defvar makefile-up-to-date-buffer-name "*Makefile Up-to-date overview*" (#$ . 5874)) #@43 The keymap that is used in makefile-mode. (defvar makefile-mode-map nil (#$ . 6006)) (byte-code " # )#############!B######" [makefile-mode-map make-sparse-keymap define-key ":" makefile-insert-target-ref makefile-electric-keys "$" makefile-insert-macro-ref ":" makefile-electric-colon "=" makefile-electric-equal "." makefile-electric-dot "" makefile-pickup-filenames-as-targets "" makefile-switch-to-browser "" makefile-pickup-everything "" makefile-create-up-to-date-overview " " makefile-insert-gmake-function "" makefile-backslash-region "" makefile-previous-dependency "" makefile-next-dependency " " makefile-complete [menu-bar makefile-mode] "Makefile" [menu-bar makefile-mode browse] ("Pop up Makefile Browser" . makefile-switch-to-browser) [menu-bar makefile-mode complete] ("Complete Target or Macro" . makefile-complete) [menu-bar makefile-mode pickup] ("Find Targets and Macros" . makefile-pickup-everything) [menu-bar makefile-mode prev] ("Move to Previous Dependency" . makefile-previous-dependency) [menu-bar makefile-mode next] ("Move to Next Dependency" . makefile-next-dependency)] 6) #@59 The keymap that is used in the macro- and target browser. (defvar makefile-browser-map nil (#$ . 7242)) (byte-code "I ###########!RB ##########؇" [makefile-browser-map make-sparse-keymap define-key "n" makefile-browser-next-line "" "p" makefile-browser-previous-line "" " " makefile-browser-toggle "i" makefile-browser-insert-selection "I" makefile-browser-insert-selection-and-quit " " makefile-browser-insert-continuation "q" makefile-browser-quit "" undefined "" boundp makefile-mode-syntax-table nil current-load-list make-syntax-table modify-syntax-entry 40 "() " 41 ")( " 91 "(] " 93 "([ " 123 "(} " 125 "){ " 39 "\" " 96 35 "< " 10 "> "] 4) #@50 Table of all target names known for this buffer. (defvar makefile-target-table nil (#$ . 8072)) #@49 Table of all macro names known for this buffer. (defvar makefile-macro-table nil (#$ . 8174)) (byte-code "! B! B!! B!. B!; B!H\n B\f BŇ" [boundp makefile-browser-client "A buffer in makefile-mode that is currently using the browser." current-load-list makefile-browser-selection-vector nil makefile-has-prereqs makefile-need-target-pickup t makefile-need-macro-pickup makefile-mode-hook (("subst" "From" "To" "In") ("patsubst" "Pattern" "Replacement" "In") ("strip" "Text") ("findstring" "Find what" "In") ("filter" "Pattern" "Text") ("filter-out" "Pattern" "Text") ("sort" "List") ("dir" "Names") ("notdir" "Names") ("suffix" "Names") ("basename" "Names") ("addsuffix" "Suffix" "Names") ("join" "List 1" "List 2") ("word" "Index" "Text") ("words" "Text") ("firstword" "Text") ("wildcard" "Pattern") ("foreach" "Variable" "List" "Text") ("origin" "Variable") ("shell" "Command")) makefile-gnumake-functions-alist] 2) #@2706 Major mode for editing Makefiles. Calling this function invokes the function(s) "makefile-mode-hook" before doing anything else. \{makefile-mode-map} In the browser, use the following keys: \{makefile-browser-map} makefile-mode can be configured by modifying the following variables: makefile-browser-buffer-name: Name of the macro- and target browser buffer. makefile-target-colon: The string that gets appended to all target names inserted by makefile-insert-target. ":" or "::" are quite common values. makefile-macro-assign: The string that gets appended to all macro names inserted by makefile-insert-macro. The normal value should be " = ", since this is what standard make expects. However, newer makes such as dmake allow a larger variety of different macro assignments, so you might prefer to use " += " or " := " . makefile-tab-after-target-colon: If you want a TAB (instead of a space) to be appended after the target colon, then set this to a non-nil value. makefile-browser-leftmost-column: Number of blanks to the left of the browser selection mark. makefile-browser-cursor-column: Column in which the cursor is positioned when it moves up or down in the browser. makefile-browser-selected-mark: String used to mark selected entries in the browser. makefile-browser-unselected-mark: String used to mark unselected entries in the browser. makefile-browser-auto-advance-after-selection-p: If this variable is set to a non-nil value the cursor will automagically advance to the next line after an item has been selected in the browser. makefile-pickup-everything-picks-up-filenames-p: If this variable is set to a non-nil value then makefile-pickup-everything also picks up filenames as targets (i.e. it calls makefile-find-filenames-as-targets), otherwise filenames are omitted. makefile-cleanup-continuations-p: If this variable is set to a non-nil value then makefile-mode will assure that no line in the file ends with a backslash (the continuation character) followed by any whitespace. This is done by silently removing the trailing whitespace, leaving the backslash itself intact. IMPORTANT: Please note that enabling this option causes makefile-mode to MODIFY A FILE WITHOUT YOUR CONFIRMATION when 'it seems necessary'. makefile-browser-hook: A function or list of functions to be called just before the browser is entered. This is executed in the makefile buffer. makefile-special-targets-list: List of special targets. You will be offered to complete on one of those in the minibuffer whenever you enter a "." at the beginning of a line in makefile-mode. (defalias 'makefile-mode #[nil " !!!!!!! ! ! !!!!!! !" [kill-all-local-variables make-local-variable local-write-file-hooks (makefile-cleanup-continuations makefile-warn-suspicious-lines) makefile-target-table makefile-macro-table makefile-has-prereqs makefile-need-target-pickup makefile-need-macro-pickup font-lock-defaults (makefile-font-lock-keywords) add-log-current-defun-function makefile-add-log-defun imenu-create-index-function makefile-menu-index-function dabbrev-abbrev-skip-leading-regexp "\\$" comment-start "#" comment-end "" comment-start-skip "#+[ ]*" makefile-mode major-mode "Makefile" mode-name use-local-map makefile-mode-map set-syntax-table makefile-mode-syntax-table t indent-tabs-mode run-hooks makefile-mode-hook] 2 (#$ . 9157) nil]) #@74 Move (point) to the beginning of the next dependency line below (point). (defalias 'makefile-next-dependency #[nil "` d#yĂb)" [here nil re-search-forward makefile-dependency-regex t 0] 4 (#$ . 12709) nil]) #@74 Move (point) to the beginning of the next dependency line above (point). (defalias 'makefile-previous-dependency #[nil "`y e#yĂb)" [here 0 re-search-backward makefile-dependency-regex t nil] 4 (#$ . 12939) nil]) #@136 Prompt for the name of a special target to insert. Only does electric insertion at beginning of line. Anywhere else just self-inserts. (defalias 'makefile-electric-dot #[(arg) "n \n!" [makefile-insert-special-target self-insert-command arg] 2 (#$ . 13175) "p"]) #@84 Propmt for and insert a special target name. Uses `makefile-special-targets' list. (defalias 'makefile-insert-special-target #[nil " ĉ%GU? ȱ )" [makefile-pickup-targets completing-read "Special target: " makefile-special-targets-list nil special-target 0 "." ":" makefile-forward-after-target-colon] 7 (#$ . 13450) nil]) #@126 Prompt for name of a macro to insert. Only does prompting if point is at beginning of line. Anywhere else just self-inserts. (defalias 'makefile-electric-equal #[(arg) " n !\f!" [makefile-pickup-macros call-interactively makefile-insert-macro self-insert-command arg] 2 (#$ . 13797) "p"]) #@36 Prepare definition of a new macro. (defalias 'makefile-insert-macro #[(macro-name) " GU?y  !" [makefile-pickup-macros macro-name 0 makefile-macro-assign t makefile-need-macro-pickup makefile-remember-macro] 2 (#$ . 14101) "sMacro Name: "]) #@74 Complete on a list of known macros, then insert complete ref at (point). (defalias 'makefile-insert-macro-ref #[(macro-name) " !" [makefile-do-macro-insertion macro-name] 2 (#$ . 14364) (list (progn (makefile-pickup-macros) (completing-read "Refer to macro: " makefile-macro-table nil nil nil)))]) #@55 Prepare definition of a new target (dependency line). (defalias 'makefile-insert-target #[(target-name) "GU?y\n !" [target-name 0 makefile-target-colon makefile-forward-after-target-colon nil t makefile-need-target-pickup makefile-remember-target] 2 (#$ . 14670) "sTarget: "]) #@74 Complete on a list of known targets, then insert target-ref at (point) . (defalias 'makefile-insert-target-ref #[(target-name) "GU?\f±" [target-name 0 " "] 2 (#$ . 14975) (list (progn (makefile-pickup-targets) (completing-read "Refer to target: " makefile-target-table nil nil nil)))]) #@110 Prompt for name of new target. Prompting only happens at beginning of line. Anywhere else just self-inserts. (defalias 'makefile-electric-colon #[(arg) "n! !" [call-interactively makefile-insert-target self-insert-command arg] 2 (#$ . 15276) "p"]) #@53 Notice names of all target definitions in Makefile. (defalias 'makefile-pickup-targets #[nil "??\"eb d# )!" [makefile-need-target-pickup nil makefile-target-table makefile-has-prereqs re-search-forward makefile-dependency-regex t makefile-add-this-line-targets message "Read targets OK."] 4 (#$ . 15538) nil]) (defalias 'makefile-add-this-line-targets #[nil "ye`\"T\f?Jwl`f\"\f`w`{\n!? \n \"F\n #+\f+" [0 nil count-lines line-number done-with-line " " char-equal 58 start-of-target-name "^ :#" target-name looking-at ":[ ]*$" has-prereqs makefile-remember-target message "Picked up target \"%s\" from line %d"] 4]) #@52 Notice names of all macro definitions in Makefile. (defalias 'makefile-pickup-macros #[nil "??#eb\fd# y)!" [makefile-need-macro-pickup nil makefile-macro-table re-search-forward makefile-macroassign-regex t makefile-add-this-line-macro 1 message "Read macros OK."] 4 (#$ . 16230) nil]) (defalias 'makefile-add-this-line-macro #[nil "ywl?,`e`\"Tw `{!+ #+)" [0 " " nil start-of-macro-name count-lines line-number "^ :#=*" macro-name makefile-remember-macro message "Picked up macro \"%s\" from line %d"] 4]) #@98 Notice names of all macros and targets in Makefile. Prefix arg means force pickups to be redone. (defalias 'makefile-pickup-everything #[(arg) "  " [arg t makefile-need-target-pickup makefile-need-macro-pickup makefile-pickup-macros makefile-pickup-targets makefile-pickup-everything-picks-up-filenames-p makefile-pickup-filenames-as-targets] 1 (#$ . 16794) "P"]) #@191 Scan the current directory for filenames to use as targets. Checks each filename against `makefile-ignored-files-in-pickup-regex' and adds all qualifying names to the list of known targets. (defalias 'makefile-pickup-filenames-as-targets #[nil " !\n\"ĉ\" \"*" [file-name-directory buffer-file-name dir file-name-all-completions "" raw-filename-list mapcar #[(name) " !? \"? ! \"" [file-directory-p name string-match makefile-ignored-files-in-pickup-regex makefile-remember-target message "Picked up file \"%s\" as target"] 3]] 4 (#$ . 17185) nil]) #@144 Perform completion on Makefile construct preceding point. Can complete variable and target names. The context determines which are considered. (defalias 'makefile-complete #[nil "x`)`{\nbhnGU'GU5UG nGhUG*\f?P \" \"=\ft =p҂ӂ\nbn)Ԃc \" \n`|\f\" =!!!)c! \"!!!)!." ["^$(){}:#= \n" nil beg try do-macros paren pc 36 t 123 40 backward-char append makefile-target-table makefile-macro-table table try-completion completion 125 41 ":" " " message "Can't find completion for \"%s\"" ding assoc makefile-use-curly-braces-for-macros-p delete-backward-char 2 makefile-do-macro-insertion 1 "Making completion list..." all-completions list "*Completions*" display-completion-list "Making completion list...done"] 4 (#$ . 17774) nil]) (defalias 'makefile-backslashify-current-line #[(doit) " Bu`f)=?bi\fYci\fX,c!i\fW?c0cn?bu`f=b`)\nx`\n|)" [nil doit -1 92 makefile-backslash-column " \\" " " delete-char " " "\\" saved " "] 2]) #@157 Insert backslashes at end of every line in region. Useful for defining multi-line rules. If called with a prefix argument, trailing backslahes are removed. (defalias 'makefile-backslash-region #[(beg end arg) "bn?\n}ebym)# ?!y) /b ?!*" [end do-lastline-p beg 1 makefile-backslashify-current-line arg] 2 (#$ . 18915) "r\nP"]) (defalias 'makefile-browser-format-target-line #[(target selected) "\n\"\f Q #" [format make-string makefile-browser-leftmost-column 32 selected makefile-browser-selected-mark makefile-browser-unselected-mark "%s%s" target makefile-target-colon] 4]) (defalias 'makefile-browser-format-macro-line #[(macro selected) "\n\"\f !Q!" [format make-string makefile-browser-leftmost-column 32 selected makefile-browser-selected-mark makefile-browser-unselected-mark makefile-format-macro-ref macro] 5]) (defalias 'makefile-browser-fill #[(targets macros) "eb ##ed#dSb!eb u)" [t inhibit-read-only erase-buffer mapconcat #[(item) " @\"ñ" [makefile-browser-format-target-line item nil "\n"] 3] targets "" #[(item) " @\"ñ" [makefile-browser-format-macro-line item nil "\n"] 3] macros sort-lines nil delete-char 1 makefile-browser-cursor-column] 4]) #@53 Move the browser selection cursor to the next line. (defalias 'makefile-browser-next-line #[nil " ? y\nu" [makefile-last-line-p 1 makefile-browser-cursor-column] 1 (#$ . 20175) nil]) #@57 Move the browser selection cursor to the previous line. (defalias 'makefile-browser-previous-line #[nil " ? y\nu" [makefile-first-line-p -1 makefile-browser-cursor-column] 1 (#$ . 20370) nil]) #@54 Leave the browser and return to the makefile buffer. (defalias 'makefile-browser-quit #[nil "!p! !)" [makefile-browser-client my-client nil set-buffer-modified-p kill-buffer pop-to-buffer] 2 (#$ . 20575) nil]) #@72 Toggle the selection state of the browser item at the cursor position. (defalias 'makefile-browser-toggle #[nil "e`\" ] ! !y 0 \n \n !\"c)A   !\"c))yuP )" [count-lines this-line 1 makefile-browser-toggle-state-for-line goto-line t inhibit-read-only 0 makefile-browser-on-macro-line-p makefile-browser-this-line-macro-name macro-name kill-line makefile-browser-format-macro-line makefile-browser-get-state-for-line makefile-browser-this-line-target-name target-name makefile-browser-format-target-line makefile-browser-cursor-column makefile-browser-auto-advance-after-selection-p makefile-browser-next-line] 4 (#$ . 20802) nil]) #@351 Insert a makefile continuation. In the makefile buffer, go to (end-of-line), insert a '\' character, insert a new blank line, go to that line and indent by one TAB. This is most useful in the process of creating continued lines when copying large dependencies from the browser to the client buffer. (point) advances accordingly in the client buffer. (defalias 'makefile-browser-insert-continuation #[nil "qc)" [makefile-browser-client nil "\\\n "] 1 (#$ . 21485) nil]) #@101 Insert all selected targets and/or macros in the makefile buffer. Insertion takes place at (point). (defalias 'makefile-browser-insert-selection #[nil "!m?\n! y\nT*" [goto-line 1 current-line makefile-browser-get-state-for-line makefile-browser-send-this-line-item] 2 (#$ . 21969) nil]) (defalias 'makefile-browser-insert-selection-and-quit #[nil " " [makefile-browser-insert-selection makefile-browser-quit] 1 nil nil]) (defalias 'makefile-browser-send-this-line-item #[nil "   q\n!ű*  qű*" [makefile-browser-on-macro-line-p makefile-browser-this-line-macro-name macro-name makefile-browser-client makefile-format-macro-ref " " makefile-browser-this-line-target-name target-name] 2]) (defalias 'makefile-browser-start-interaction #[nil " !‰" [use-local-map makefile-browser-map t buffer-read-only] 2]) (defalias 'makefile-browse #[(targets macros) "G G\\U !!!! \" G G\\\" )" [targets macros 0 beep message "No macros or targets to browse! Consider running 'makefile-pickup-everything'" get-buffer-create makefile-browser-buffer-name browser-buffer pop-to-buffer make-variable-buffer-local makefile-browser-selection-vector makefile-browser-fill shrink-window-if-larger-than-buffer make-vector nil makefile-browser-start-interaction] 3 nil nil]) (defalias 'makefile-switch-to-browser #[nil "!p \"" [run-hooks makefile-browser-hook makefile-browser-client makefile-pickup-targets makefile-pickup-macros makefile-browse makefile-target-table makefile-macro-table] 3 nil nil]) #@242 Create a buffer containing an overview of the state of all known targets. Known targets are targets that are explicitly defined in that makefile; in other words, all targets that appear on the left hand side of a dependency in the makefile. (defalias 'makefile-create-up-to-date-overview #[nil "!c\np\f! \n \n \f  q \n # UAp!!\fq \f!a\f!! ed#ۉ." [y-or-n-p "Are you sure that the makefile being edited is consistent? " makefile-target-table get-buffer-create makefile-up-to-date-buffer-name makefile-save-temporary makefile-pickup-targets makefile-has-prereqs prereqs real-targets filename makefile-up-to-date-buffer this-buffer saved-target-table nil buffer-read-only erase-buffer makefile-query-targets buffer-size 0 kill-buffer message "No overview created!" get-buffer pop-to-buffer shrink-window-if-larger-than-buffer sort-lines t] 6 (#$ . 23553) nil]) #@59 Create a temporary file from the current makefile buffer. (defalias 'makefile-save-temporary #[nil " ed % )" [makefile-generate-temporary-filename filename write-region nil 0] 6 (#$ . 24476)]) #@159 Create a filename suitable for use in `makefile-save-temporary'. Be careful to allow brain-dead file systems (DOS, SYSV ...) to cope with the generated name! (defalias 'makefile-generate-temporary-filename #[nil " !\fGV\fO\f GV' O( R*" [user-login-name int-to-string user-uid my-uid my-name "mktmp" 3 0 "."] 6 (#$ . 24683)]) #@168 Fill the up-to-date-overview-buffer. Checks each target in TARGET-TABLE using `makefile-query-one-target-method' and generates the overview, one line per target name. (defalias 'makefile-query-targets #[(filename target-table prereq-list) "\n#ceb !" [mapconcat #[(item) "@\n?\f \" ɂ'&ʂ'#+" [item target-name prereq-list no-prereqs makefile-query-one-target-method filename needs-rebuild format " %s%s" " .. has no prerequisites" " .. NEEDS REBUILD" " .. is up to date"] 5] target-table "\n" delete-file filename] 4 (#$ . 25040)]) (defalias 'makefile-query-by-make-minus-q #[(target &optional filename) " ‰\f&U?" [call-process makefile-brave-make nil "-f" filename "-q" target 0] 9]) (defalias 'makefile-cleanup-continuations #[nil "=%\n% ?%ebd#$Ɖ#)" [major-mode makefile-mode makefile-cleanup-continuations-p buffer-read-only re-search-forward "\\\\[ ]+$" t replace-match "\\"] 4]) (defalias 'makefile-warn-suspicious-lines #[nil "\n=*ebd#))e\"  \"!?)) )" [nil dont-save major-mode makefile-mode re-search-forward "\\(^[ ]+$\\)\\|\\(^[ ]+[ ]\\)" t suspicious count-lines line-nr y-or-n-p format "Suspicious line %d. Save anyway "] 5]) #@136 Insert a GNU make function call. Asks for the name of the function to use (with completion). Then prompts for all required parameters. (defalias 'makefile-insert-gmake-function #[nil "\n% \n\"A GU?$ \"Q!ʱ*" [completing-read "Function: " makefile-gnumake-functions-alist nil t gm-function-name assoc gm-function-prompts 0 makefile-format-macro-ref " " makefile-prompt-for-gmake-funargs] 6 (#$ . 26279) nil]) (defalias 'makefile-prompt-for-gmake-funargs #[(function-name prompt-list) "\n#" [mapconcat #[(one-prompt) " \f#\"" [read-string format "[%s] %s: " function-name one-prompt nil] 5] prompt-list ","] 4]) #@27 Insert a macro reference. (defalias 'makefile-do-macro-insertion #[(macro-name) "GU? \"!c" [macro-name 0 assoc makefile-runtime-macros-list "$" makefile-format-macro-ref] 3 (#$ . 26924)]) #@74 Remember a given target if it is not already remembered for this buffer. (defalias 'makefile-remember-target #[(target-name &optional has-prereqs) "GU? \"C B\f B" [target-name 0 assoc makefile-target-table has-prereqs makefile-has-prereqs] 3 (#$ . 27136)]) #@73 Remember a given macro if it is not already remembered for this buffer. (defalias 'makefile-remember-macro #[(macro-name) "GU? \"?C B" [macro-name 0 assoc makefile-macro-table] 3 (#$ . 27418)]) #@142 Move point forward after inserting the terminating colon of a target. This acts according to the value of `makefile-tab-after-target-colon'. (defalias 'makefile-forward-after-target-colon #[nil "cc" [makefile-tab-after-target-colon " " " "] 1 (#$ . 27633)]) #@55 Determine if point is on a macro line in the browser. (defalias 'makefile-browser-on-macro-line-p #[nil "y #)" [0 re-search-forward "\\$[{(]" makefile-end-of-line-point t] 4 (#$ . 27905)]) #@53 Extract the target name from a line in the browser. (defalias 'makefile-browser-this-line-target-name #[nil "x` S{)" [nil "^ " makefile-end-of-line-point] 2 (#$ . 28108)]) #@52 Extract the macro name from a line in the browser. (defalias 'makefile-browser-this-line-macro-name #[nil "y #`w `{*" [0 re-search-forward "\\$[{(]" makefile-end-of-line-point t macro-start "^})" nil] 4 (#$ . 28296)]) #@74 Format a macro reference. Uses `makefile-use-curly-braces-for-macros-p'. (defalias 'makefile-format-macro-ref #[(macro-name) " !\" !\" \"! \" \"" [char-equal 40 string-to-char macro-name 123 format "$%s" makefile-use-curly-braces-for-macros-p "${%s}" "$(%s)"] 4 (#$ . 28533)]) (defalias 'makefile-browser-get-state-for-line #[(n) " SH" [makefile-browser-selection-vector n] 2]) (defalias 'makefile-browser-set-state-for-line #[(n to-state) " S\nI" [makefile-browser-selection-vector n to-state] 3]) (defalias 'makefile-browser-toggle-state-for-line #[(n) " !?\"" [makefile-browser-set-state-for-line n makefile-browser-get-state-for-line] 4]) (defalias 'makefile-beginning-of-line-point #[nil "y`)" [0] 1]) (defalias 'makefile-end-of-line-point #[nil "`)" [nil] 1]) (defalias 'makefile-last-line-p #[nil " dU" [makefile-end-of-line-point] 2]) (defalias 'makefile-first-line-p #[nil " eU" [makefile-beginning-of-line-point] 2]) (defalias 'makefile-add-log-defun #[nil "y\n!ÔÕ{'u#&ÔÕ{')" [0 looking-at makefile-macroassign-regex 1 nil re-search-backward makefile-dependency-regex t] 4]) (defalias 'makefile-menu-index-function #[nil " Q  \" )eb\f#dE! \\VD \" )ϔNςOΉ{BB) w  \" )+" [nil makefile-dependency-regex "\\|" makefile-macroassign-regex re stupid alist imenu-scanning-message 0 pos message re-search-forward t imenu--relative-position 5 1 n 100] 6])