summaryrefslogtreecommitdiff
path: root/variable.h
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2012-01-16 03:32:49 +0000
committerPaul Smith <psmith@gnu.org>2012-01-16 03:32:49 +0000
commit103a9f2d5cde2b115421985d0e7c9f23787eda73 (patch)
tree7846b379f1444f31458313bc97b2acf24c8a2a87 /variable.h
parent787c204f3c21c9d865a00812c19c4cba0654729f (diff)
downloadmake-103a9f2d5cde2b115421985d0e7c9f23787eda73.tar.gz
Create a new internal interface for defining new make functions.
This allows us to create new functions without changing function.c. You still have to modify the GNU make code (for now) though: this is simply a preliminary step to possibly allowing make to load modules. Modify the Guile integration to use this method rather than ifdefs in function.c.
Diffstat (limited to 'variable.h')
-rw-r--r--variable.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/variable.h b/variable.h
index d6952875..1fd1b668 100644
--- a/variable.h
+++ b/variable.h
@@ -167,6 +167,9 @@ struct variable *try_variable_definition (const struct floc *flocp, char *line,
int target_var);
void init_hash_global_variable_set (void);
void hash_init_function_table (void);
+void define_new_function(const struct floc *flocp,
+ const char *name, int min, int max, int expand,
+ char *(*func)(char *, char **, const char *));
struct variable *lookup_variable (const char *name, unsigned int length);
struct variable *lookup_variable_in_set (const char *name, unsigned int length,
const struct variable_set *set);