]> git.eshelyaron.com Git - emacs.git/commitdiff
Add functions supported by GNU Make 4.3.
authorOla Nilsson <ola.nilsson@gmail.com>
Mon, 4 Nov 2024 22:33:09 +0000 (23:33 +0100)
committerEshel Yaron <me@eshelyaron.com>
Sat, 9 Nov 2024 15:50:10 +0000 (16:50 +0100)
* lisp/progmodes/make-mode.el (makefile-gnumake-functions-alist):
Add missing GNU Make functions, according to The GNU Make Manual
0.75 for GNU Make, and reorder the list of functions.  (Bug#74207)

(cherry picked from commit 0642d5f7da208e3237f17102858811c2d9c28990)

lisp/progmodes/make-mode.el

index 60b87142850e039600037f57c2312210ad72d473..5441903738d29241fc05ed4455d794ccebff9f7a 100644 (file)
@@ -704,7 +704,7 @@ The function must satisfy this calling convention:
 ;; Each "ARG" is used as a prompt for a required argument.
 (defconst makefile-gnumake-functions-alist
   '(
-    ;; Text functions
+    ;; Functions for String Substitution and Analysis
     ("subst" "From" "To" "In")
     ("patsubst" "Pattern" "Replacement" "In")
     ("strip" "Text")
@@ -712,22 +712,42 @@ The function must satisfy this calling convention:
     ("filter" "Pattern" "Text")
     ("filter-out" "Pattern" "Text")
     ("sort" "List")
-    ;; Filename functions
+    ("word" "Index" "Text")
+    ("wordlist" "S" "E" "Text")
+    ("words" "Text")
+    ("firstword" "Text")
+    ("lastword" "Names")
+    ;; Functions for File Names
     ("dir" "Names")
     ("notdir" "Names")
     ("suffix" "Names")
     ("basename" "Names")
-    ("addprefix" "Prefix" "Names")
     ("addsuffix" "Suffix" "Names")
+    ("addprefix" "Prefix" "Names")
     ("join" "List 1" "List 2")
-    ("word" "Index" "Text")
-    ("words" "Text")
-    ("firstword" "Text")
     ("wildcard" "Pattern")
+    ("realpath" "Names")
+    ("abspath" "Names")
+    ;; Functions for Conditionals
+    ("if" "Condition" "Then-part" "Else-part")
+    ("or"  "Condition 1" "Condition 2" "Condition 3" "Condition 4")
+    ("and" "Condition 1" "Condition 2" "Condition 3" "Condition 4")
     ;; Misc functions
     ("foreach" "Variable" "List" "Text")
+    ("file" "Op" "Filename" "Text")
+    ("call" "Variable" "Param 1" "Param 2" "Param 3" "Param 4" "Param 5")
+    ("value" "Variable")
+    ("eval" "statement")
     ("origin" "Variable")
-    ("shell" "Command")))
+    ("flavor" "Variable")
+    ("shell" "Command")
+    ("guile" "Program")
+    ;; Functions that control make
+    ("error" "Text")
+    ("warning" "Text")
+    ("info" "Text")
+    )
+  "Alist of GNU Make functions and their arguments.")
 
 
 ;;; ------------------------------------------------------------