You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
900 B
33 lines
900 B
4 years ago
|
#!/usr/bin/perl -w
|
||
|
use strict;
|
||
|
|
||
|
# Use as $0
|
||
|
# Use as $0 -noname
|
||
|
|
||
|
my $did_library;
|
||
|
my $did_description;
|
||
|
my $do_exports;
|
||
|
my @imports;
|
||
|
my $noname = (@ARGV and $ARGV[0] eq '-noname' and shift);
|
||
|
while (<>) {
|
||
|
unless ($did_library) {
|
||
|
s/\b(cryptssl)\b/crypto/ and $did_library = $1 if /^LIBRARY\s+cryptssl\b/;
|
||
|
s/\b(open_ssl)\b/ssl/ and $did_library = $1 if /^LIBRARY\s+open_ssl\b/;
|
||
|
}
|
||
|
unless ($did_description) {
|
||
|
s&^(DESCRIPTION\s+(['"])).*&${1}\@#www.openssl.org/:#\@forwarder DLL for pre-0.9.7c+ OpenSSL to the new dll naming scheme$2& and $did_description++;
|
||
|
}
|
||
|
if ($do_exports) {{
|
||
|
last unless /\S/;
|
||
|
warn, last unless /^ \s* ( \w+ ) \s+ \@(\d+)\s*$/x;
|
||
|
push @imports, [$1, $2];
|
||
|
s/$/ NONAME/ if $noname;
|
||
|
}}
|
||
|
$do_exports++ if not $do_exports and /^EXPORTS/;
|
||
|
print $_;
|
||
|
}
|
||
|
print "IMPORTS\n";
|
||
|
for my $imp (@imports) {
|
||
|
print "\t$imp->[0]=$did_library.$imp->[1]\n";
|
||
|
}
|