| #! /usr/bin/perl | |
| # | |
| # Generate AUTHORS and dlls/shell32/authors.h | |
| # | |
| open(AUTHORS,"<AUTHORS") or die "Can't open AUTHORS"; | |
| open(NEWAUTHORS,">AUTHORS.new"); | |
| while(<AUTHORS>) | |
| { | |
| print NEWAUTHORS; | |
| last if /^Wine is/; | |
| } | |
| while(<AUTHORS>) | |
| { | |
| chop; | |
| s/^and //; | |
| s/[,.]$//; | |
| push @authors, $_; | |
| } | |
| # Sort them | |
| sub cmpnames | |
| { | |
| @anames = split(" ",$a); | |
| @bnames = split(" ",$b); | |
| $ret = $anames[-1] cmp $bnames[-1]; | |
| $ret = $anames[0] cmp $bnames[0] unless $ret; | |
| return $ret; | |
| } | |
| @authors = sort cmpnames @authors; | |
| # Print authors | |
| for ($i = 0; $i < $#authors; $i++) | |
| { | |
| print NEWAUTHORS "$authors[$i],\n"; | |
| } | |
| print NEWAUTHORS "and $authors[$#authors].\n"; | |
| print "Created AUTHORS.new\n"; | |
| # Build authors.h file | |
| open(NEWAUTHORS_H,">dlls/shell32/authors.h"); | |
| print NEWAUTHORS_H <<EOF; | |
| #ifndef __WINE_AUTHORS_H | |
| #define __WINE_AUTHORS_H | |
| static const char * const SHELL_People[] = | |
| { | |
| EOF | |
| # Print authors | |
| for ($i = 0; $i <= $#authors; $i++) | |
| { | |
| print NEWAUTHORS_H " \"$authors[$i]\",\n"; | |
| } | |
| print NEWAUTHORS_H " 0\n};\n"; | |
| print NEWAUTHORS_H "\n#endif /* __WINE_AUTHORS_H */\n"; | |
| print "Created dlls/shell32/authors.h\n"; |