summaryrefslogtreecommitdiff
path: root/nasm.h
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2008-05-29 21:38:00 -0700
committerH. Peter Anvin <hpa@zytor.com>2008-05-29 21:38:00 -0700
commit9e1f528c3634af3ce3650c1784f20eeae62abe42 (patch)
tree5f3cf4ae0240b09c62548174f6584ca2b123c840 /nasm.h
parent46fe1eed76bbb4ede2ddc0265d6b5e6cc2389abf (diff)
downloadnasm-9e1f528c3634af3ce3650c1784f20eeae62abe42.tar.gz
Add the -MP option to emit phony targets
Add the -MP option to emit phony targets. Since this means each header file has to be visited more than once, change the implementation to use an internal list of all the dependencies, and centralize the emission of the dependency files.
Diffstat (limited to 'nasm.h')
-rw-r--r--nasm.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/nasm.h b/nasm.h
index 4c7b3386..384fb659 100644
--- a/nasm.h
+++ b/nasm.h
@@ -291,6 +291,14 @@ typedef expr *(*evalfunc) (scanner sc, void *scprivate,
#define EXPR_SEGBASE (EXPR_REG_END+4)
/*
+ * Linked list of strings...
+ */
+typedef struct string_list {
+ struct string_list *next;
+ char str[1];
+} StrList;
+
+/*
* preprocessors ought to look like this:
*/
typedef struct preproc_ops {
@@ -299,7 +307,7 @@ typedef struct preproc_ops {
* of the pass, an error reporting function, an evaluator
* function, and a listing generator to talk to.
*/
- void (*reset) (char *, int, efunc, evalfunc, ListGen *, FILE *);
+ void (*reset) (char *, int, efunc, evalfunc, ListGen *, StrList **);
/*
* Called to fetch a line of preprocessed source. The line