static void write_option_names (void) { int i; char *ivar; buffer_t buffer; FILE *f; f = begin_file("option_names.h"); for (i = 0; i < num_options; i++) { if (!find_by_flag(options[i].flag, i)) fprintf(f, "#define %s %d\n", options[i].flag, i); if (options[i].toggle) { /* get var after "toggle(&" */ // Handle multiple toggles such as: // toggle(&var1,10);toggle(&var2,11) char *p = options[i].action; while ((p = strstr(p, "toggle(&")) != NULL) { p = p + 8; strcpy(buffer, p); ivar = strtok(buffer,COMMA); add_implicit_var(ivar); } } } fprintf(f, "#define LAST_PREDEFINED_OPTION %d\n", num_options); fprintf(f, "extern int max_options;\n\n"); for (i = 0; i < n_ivars; i++) { fprintf(f, "extern int %s;\n", implicit_vars[i]); } fclose(f); }
static void write_option_names (void) { int i; char *ivar; buffer_t buffer; FILE *f; f = begin_file("option_names.h"); for (i = 0; i < num_options; i++) { fprintf(f, "#define %s %d\n", options[i].flag, i); if (options[i].toggle) { /* get var after "toggle(&" */ strcpy(buffer, ((char*)options[i].action)+8); ivar = strtok(buffer,COMMA); add_implicit_var(ivar); } } fprintf(f, "#define LAST_PREDEFINED_OPTION %d\n", num_options); fprintf(f, "extern int max_options;\n\n"); for (i = 0; i < n_ivars; i++) { fprintf(f, "extern int %s;\n", implicit_vars[i]); } fclose(f); }