]> mj.ucw.cz Git - libucw.git/commitdiff
Allow setting of default configuration file.
authorMartin Mares <mj@ucw.cz>
Mon, 26 Aug 2002 13:06:19 +0000 (13:06 +0000)
committerMartin Mares <mj@ucw.cz>
Mon, 26 Aug 2002 13:06:19 +0000 (13:06 +0000)
lib/perl/Config.pm

index bf013b731d6eb9a4087780ffee2c204b20b0d8af..6e59ca073b598cf1d71e21f1f5eb4f4e93c4a7af 100644 (file)
@@ -9,12 +9,18 @@ use Getopt::Long;
 
 our %Sections = ();
 
+our $DefaultConfigFile = "";
+
 sub Parse(@) {
        my @options = @_;
        my $defargs = "";
-       push @options, "config|C=s" => sub { my ($o,$a)=@_; $defargs .= " -C'$a'"; };
+       my $override_config = 0;
+       push @options, "config|C=s" => sub { my ($o,$a)=@_; $defargs .= " -C'$a'"; $override_config=1; };
        push @options, "set|S=s" => sub { my ($o,$a)=@_; $defargs .= " -S'$a'"; };
        Getopt::Long::GetOptions(@options) or return 0;
+       if (!$override_config && $DefaultConfigFile) {
+               $defargs = "-C'$DefaultConfigFile' $defargs";
+       }
        foreach my $section (keys %Sections) {
                my $opts = $Sections{$section};
                my $optlist = join(" ", keys %$opts);