rpcrt4: Correctly align the buffer before reading/writing structure data.
[wine] / tools / make_authors
1 #! /usr/bin/perl -w
2 #
3 # Generate AUTHORS
4 #
5 # Copyright 1998 Alexandre Julliard
6 #
7 # This library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2.1 of the License, or (at your option) any later version.
11 #
12 # This library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 # Lesser General Public License for more details.
16 #
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with this library; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20 #
21 use strict;
22
23 my @authors;
24 open(AUTHORS,"<AUTHORS") or die "Can't open AUTHORS";
25 open(NEWAUTHORS,">AUTHORS.new");
26 while(<AUTHORS>)
27   {
28     print NEWAUTHORS;
29     last if /^$/;
30   }
31 while(<AUTHORS>)
32   {
33     chop;
34     push @authors, $_;
35   }
36
37 # Sort them
38 sub cmpnames()
39   {
40     my @anames = split(" ",$a);
41     my @bnames = split(" ",$b);
42     my $ret;
43     $ret = $anames[-1] cmp $bnames[-1];
44     $ret = $anames[0] cmp $bnames[0] unless $ret;
45     return $ret;
46   }
47 @authors = sort cmpnames @authors;
48
49 # Print authors
50 print NEWAUTHORS (join "\n", @authors) . "\n";
51 print "Created AUTHORS.new\n";