about summary refs log tree commit diff stats
path: root/wrapperhelper/src/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'wrapperhelper/src/main.c')
-rw-r--r--wrapperhelper/src/main.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/wrapperhelper/src/main.c b/wrapperhelper/src/main.c
index ffe09146..1b5b2db2 100644
--- a/wrapperhelper/src/main.c
+++ b/wrapperhelper/src/main.c
@@ -12,12 +12,13 @@
 
 static void help(char *arg0) {
 	printf("Usage: %s --help\n"
-	       "       %s [--prepare|--preproc|--proc] <filename_in>\n"
-	       "       %s <filename_in> <filename_reqs> <filename_out>\n"
+	       "       %s {-I/path/to/include}* [--prepare|--preproc|--proc] <filename_in>\n"
+	       "       %s {-I/path/to/include}* <filename_in> <filename_reqs> <filename_out>\n"
 	       "\n"
 	       "  --prepare  Dump all preprocessor tokens (prepare phase)\n"
 	       "  --preproc  Dump all processor tokens (preprocessor phase)\n"
 	       "  --proc     Dump all typedefs, declarations and constants (processor phase)\n"
+	       "  -I         Add a path to the list of system includes\n"
 	       "\n"
 	       "  <filename_in>    Parsing file\n"
 	       "  <filename_reqs>  Reference file (example: wrappedlibc_private.h)\n"
@@ -53,11 +54,14 @@ int main(int argc, char **argv) {
 			ms = MAIN_PREPROC;
 		} else if (!strcmp(argv[i], "--proc")) {
 			ms = MAIN_PROC;
+		} else if (!strcmp(argv[i], "-pthread")) {
+			// Ignore
 		} else if (!strcmp(argv[i], "-I") && (i + 1 < argc)) {
 			if (!vector_push(charp, paths, argv[i + 1])) {
 				printf("Error: failed to add path to buffer\n");
 				return 2;
 			}
+			++i;
 		} else if ((argv[i][0] == '-') && (argv[i][1] == 'I') && (argv[i][2] != '\0')) {
 			if (!vector_push(charp, paths, argv[i] + 2)) {
 				printf("Error: failed to add path to buffer\n");
@@ -127,31 +131,31 @@ int main(int argc, char **argv) {
 			del_str2kw();
 			return 2;
 		}
-		VECTOR(requests) *reqs = requests_from_file(ref_file, ref);
+		VECTOR(references) *reqs = references_from_file(ref_file, ref);
 		if (!reqs) {
 			file_del(content);
 			del_machines();
 			del_str2kw();
 			return 2;
 		}
-		// vector_for(requests, req, reqs) request_print(req);
-		if (!solve_requests(reqs, content->decl_map)) {
+		// vector_for(references, req, reqs) request_print(req);
+		if (!solve_references(reqs, content->decl_map)) {
 			printf("Warning: failed to solve all default requests\n");
 		}
-		// vector_for(requests, req, reqs) request_print(req);
-		//vector_for(requests, req, reqs) request_print_check(req);
+		// vector_for(references, req, reqs) request_print(req);
+		//vector_for(references, req, reqs) request_print_check(req);
 		FILE *out = fopen(out_file, "w");
 		if (!out) {
 			err(2, "Error: failed to open %s", ref_file);
 			file_del(content);
-			vector_del(requests, reqs);
+			vector_del(references, reqs);
 			del_machines();
 			del_str2kw();
 			return 2;
 		}
-		output_from_requests(out, reqs);
+		output_from_references(out, reqs);
 		fclose(out);
-		vector_del(requests, reqs);
+		vector_del(references, reqs);
 		file_del(content);
 		del_machines();
 		del_str2kw();