mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-30 05:56:12 +00:00
update to get all subdirs
This commit is contained in:
parent
d56a0fb198
commit
6073d3b139
40
scripts/perl/timezone-gen.pl
Normal file → Executable file
40
scripts/perl/timezone-gen.pl
Normal file → Executable file
@ -18,31 +18,35 @@ my $res = GetOptions(
|
|||||||
"output" => \$output
|
"output" => \$output
|
||||||
);
|
);
|
||||||
if ( !$res || $help ) {
|
if ( !$res || $help ) {
|
||||||
print "$0 [--base=/usr/share/zoneinfo] [--output=timezones.conf] [--debug] [--help]\n";
|
print "$0 [--base=/usr/share/zoneinfo] [--output=timezones.conf.xml] [--debug] [--help]\n";
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
opendir( my $top, $base );
|
my @dirs = ($base);
|
||||||
while ( my $file = readdir($top) ) {
|
|
||||||
next if ( $file eq "." || $file eq "." );
|
|
||||||
|
|
||||||
if ( -f "$base/$file" ) {
|
while ( @dirs )
|
||||||
$debug && print "Found $base/$file\n";
|
{
|
||||||
$name_to_file{$file} = "$base/$file";
|
my $dir = shift @dirs;
|
||||||
|
|
||||||
|
opendir( my $top, $dir );
|
||||||
|
while ( my $file = readdir($top) ) {
|
||||||
|
next if ( $file eq "." || $file eq ".." );
|
||||||
|
|
||||||
|
if ( -f "$dir/$file" ) {
|
||||||
|
$debug && print "Found $dir/$file\n";
|
||||||
|
|
||||||
|
my $name = "$dir/$file";
|
||||||
|
$name =~ s|^${base}/||o;
|
||||||
|
|
||||||
|
$name_to_file{$name} = "$dir/$file";
|
||||||
}
|
}
|
||||||
elsif ( -d "$base/$file" ) {
|
elsif ( -d "$dir/$file" ) {
|
||||||
opendir( my $sdir, "$base/$file" );
|
$debug && print "Found subdir $dir/$file\n";
|
||||||
while ( my $subfile = readdir($sdir) ) {
|
push(@dirs, "$dir/$file");
|
||||||
next if ( $subfile eq "." || $subfile eq "." );
|
|
||||||
if ( -f "$base/$file/$subfile" ) {
|
|
||||||
$debug && print "Found $base/$file/$subfile...\n";
|
|
||||||
$name_to_file{"$file/$subfile"} = "$base/$file/$subfile";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
closedir($sdir);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
closedir($top);
|
closedir($top);
|
||||||
|
}
|
||||||
|
|
||||||
foreach my $name ( sort( keys(%name_to_file) ) ) {
|
foreach my $name ( sort( keys(%name_to_file) ) ) {
|
||||||
my $file = $name_to_file{$name};
|
my $file = $name_to_file{$name};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user