Pass argc pointer to parse_options()

This lets us keep argc up to date as the backend picks out arguments
from the argv array.
diff --git a/shared/option-parser.c b/shared/option-parser.c
index 600f110..a7e497f 100644
--- a/shared/option-parser.c
+++ b/shared/option-parser.c
@@ -51,11 +51,11 @@
 
 int
 parse_options(const struct weston_option *options,
-	      int count, int argc, char *argv[])
+	      int count, int *argc, char *argv[])
 {
 	int i, j, k, len = 0;
 
-	for (i = 1, j = 1; i < argc; i++) {
+	for (i = 1, j = 1; i < *argc; i++) {
 		for (k = 0; k < count; k++) {
 			if (options[k].name)
 				len = strlen(options[k].name);
@@ -77,6 +77,7 @@
 			argv[j++] = argv[i];
 	}
 	argv[j] = NULL;
+	*argc = j;
 
 	return j;
 }