Fix FTBFS on certain older libstdc++ versions.
[quassel.git] / scripts / convert_mirc_servers_ini.pl
1 #!/usr/bin/perl
2
3 # Take mIRC's servers.ini and create a networks.ini suitable for Quassel.
4
5 use strict;
6
7 my $serverlist = {};
8
9 open SERVERS_INI, "<servers.ini" or die "Could not open servers.ini";
10 while(<SERVERS_INI>) {
11   my ($host, $portrange, $net) = /SERVER:(.+):(.+)GROUP:(.+)\r\n/;
12   if($host) {
13     foreach(split /,/, $portrange) {
14       s/(\d+)-\d+/$1/;
15       push @{$serverlist->{$net}}, { Host => $host, Port => $_};
16     }
17   }
18 }
19 close SERVERS_INI;
20
21 open NETWORKS_INI, ">networks.ini" or die "Could not open networks.ini for writing";
22 foreach(sort keys %$serverlist) {
23   print NETWORKS_INI "[$_]\n";
24   my @servers;
25   foreach(@{$serverlist->{$_}}) {
26     push @servers, "$_->{Host}:$_->{Port}";
27   }
28   print NETWORKS_INI "Servers=", join ',', @servers;
29   print NETWORKS_INI "\n\n";
30 }
31 close NETWORKS_INI;
32
33 print "Done.\n";