comparison src/config/settings-get.pl @ 10177:d589d568a19d HEAD

Changed all settings related structs to const and changed APIs to make it work.
author Timo Sirainen <tss@iki.fi>
date Fri, 23 Oct 2009 20:10:17 -0400
parents dcda7c495eb6
children afe52d60989c
comparison
equal deleted inserted replaced
10176:9e0123366fc5 10177:d589d568a19d
29 if ($state == 0) { 29 if ($state == 0) {
30 if (/struct .*_settings {/ || 30 if (/struct .*_settings {/ ||
31 /struct setting_define.*{/ || 31 /struct setting_define.*{/ ||
32 /struct .*_default_settings = {/) { 32 /struct .*_default_settings = {/) {
33 $state++; 33 $state++;
34 } elsif (/^(static )?struct setting_parser_info (.*) = {/) { 34 } elsif (/^(static )?const struct setting_parser_info (.*) = {/) {
35 $state++;
36 $cur_name = $2; 35 $cur_name = $2;
37 } elsif (/^extern struct setting_parser_info (.*);/) { 36 $state++ if ($cur_name !~ /^\*default_/);
38 $externs .= "extern struct setting_parser_info $1;\n"; 37 } elsif (/^extern const struct setting_parser_info (.*);/) {
38 $externs .= "extern const struct setting_parser_info $1;\n";
39 } elsif (/\/\* <settings checks> \*\//) { 39 } elsif (/\/\* <settings checks> \*\//) {
40 $state = 4; 40 $state = 4;
41 $code .= $_; 41 $code .= $_;
42 } 42 }
43 43
60 } 60 }
61 if (/DEFLIST.*".*",(.*)$/) { 61 if (/DEFLIST.*".*",(.*)$/) {
62 my $value = $1; 62 my $value = $1;
63 if ($value =~ /.*&(.*)\)/) { 63 if ($value =~ /.*&(.*)\)/) {
64 $parsers{$1} = 0; 64 $parsers{$1} = 0;
65 $externs .= "extern struct setting_parser_info $1;\n"; 65 $externs .= "extern const struct setting_parser_info $1;\n";
66 } else { 66 } else {
67 $state = 3; 67 $state = 3;
68 } 68 }
69 } 69 }
70 } elsif ($state == 3) { 70 } elsif ($state == 3) {