Skip to main content
  • Home
  • login
  • Browse the archive

    swh mirror partner logo
swh logo
SoftwareHeritage
Software
Heritage
Mirror
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

  • be27401
  • /
  • os2
  • /
  • backwardify.pl
Raw File
Permalinks

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • content
  • directory
content badge Iframe embedding
swh:1:cnt:272423c8fa14bfb82ef82e688bc80e712f1e50de
directory badge Iframe embedding
swh:1:dir:1e1d0e3b680c050e69a743d08dec2744aaff899e
backwardify.pl
#!/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";
}

ENEA — Copyright (C), ENEA. License: GNU AGPLv3+.
Legal notes  ::  JavaScript license information ::  Web API

back to top