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
commit49cc211819851b76c58fb37eeb579bd88a5ac65a (patch)
tree7846b379f1444f31458313bc97b2acf24c8a2a87 /variable.h
parent4e2e5eb199b5fbaf7cfdb203c64099b514fba5d0 (diff)
downloadgunmake-49cc211819851b76c58fb37eeb579bd88a5ac65a.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 d695287..1fd1b66 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);