diff options
Diffstat (limited to 'scripts/config.pl')
| -rwxr-xr-x | scripts/config.pl | 75 |
1 files changed, 43 insertions, 32 deletions
diff --git a/scripts/config.pl b/scripts/config.pl index 73b3ae5..79b1c49 100755 --- a/scripts/config.pl +++ b/scripts/config.pl @@ -18,14 +18,17 @@ END my $sep = "================================================================\n"; my $stdin; -for (;;) { +for (;;) +{ print "$sep Do you want to use the default before-compile options?\n"; print " (yes/no) [default is NO] "; $stdin = <STDIN>; chomp $stdin; + prove_if_default(\$stdin); print "\n"; - if ( $stdin eq "yes") { + if ( $stdin eq "yes") + { print " You chose to use all the default before-compile options. Exiti-\n"; print " ng the configurator now!\n"; print $sep; @@ -41,37 +44,46 @@ for (;;) { my @glob = fopen("src/glob.h.org"); my $flag = 0; -for (@glob) { - if ( $flag == 0 && /- CONFIG -/ ) { +for (@glob) +{ + if ( $flag == 0 && /- CONFIG -/ ) + { print $sep; $flag = 1; next; + } - } elsif ( $flag == 1 ) { - if ( /\*\// ) { + elsif ( $flag == 1 ) + { + if ( /\*\// ) + { $flag = 2; + } - } else { + else + { print; } next; + } - } elsif ( $flag == 2 ) { - if ( /#define (.+) (.+)/ ) { + elsif ( $flag == 2 ) + { + if ( /#define (.+) (.+)/ ) + { my $def = $1; my $val = $2; my $flg = 0; $flg = 1 if $val =~ s/"//g; - print " [Press enter to use default value: $val or q to quit] "; + print " [Press enter to use default value: $val] "; $stdin = <STDIN>; chomp $stdin; - finish() if $stdin eq "q" or $stdin eq "quit"; - - unless ( parse_input_value(\$stdin,\$val) ) { + unless ( prove_if_default(\$stdin) ) + { $stdin = "\"$stdin\"" if $flg == 1; $_ = "#define $def $stdin\n"; } @@ -81,28 +93,33 @@ for (@glob) { next; } - elsif ( /#define .+/ ) { + elsif ( /#define .+/ ) + { my $default = "true"; my $stdin; - for (;;) { + for (;;) + { $default = "false" if /\/\/#define/; - print " [Press enter to use default value: $default or q to quit] "; + print " [Press enter to use default value: $default] "; $stdin = <STDIN>; chomp $stdin; - finish() if $stdin eq "q" or $stdin eq "quit"; last if $stdin eq "" || $stdin eq "true" || $stdin eq "false"; print " Wrong input: You need to specify true or false!\n"; } - if ( $default eq "true" ) { - $_ = "//$_" unless parse_input_value(\$stdin,\$default); + if ( $default eq "true" ) + { + $_ = "//$_" + unless prove_if_default(\$stdin); } - else { - s/^\/\/// unless parse_input_value(\$stdin,\$default); + else + { + s/^\/\/// + unless prove_if_default(\$stdin); } print "\n"; @@ -112,22 +129,16 @@ for (@glob) { } } // for -finish(); - -sub finish() { - fwrite("src/glob.h", @glob); - exit 0; -} + fwrite("src/glob.h", @glob); -sub parse_input_value { +sub prove_if_default +{ my $val = shift; - my $def = shift; - - if ( $$val eq "" || $$val eq $$def) { + if ( $$val eq "" ) + { print " -> Using default option!\n"; return 1; } - print " -> Using new option $$val!\n"; return 0; } |
