Fix generation of config.h.
[wine] / tools / winapi / winapi_extract_options.pm
1 #
2 # Copyright 1999, 2000, 2001 Patrik Stridvall
3 #
4 # This library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2.1 of the License, or (at your option) any later version.
8 #
9 # This library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 # Lesser General Public License for more details.
13 #
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with this library; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17 #
18
19 package winapi_extract_options;
20 use base qw(options);
21
22 use strict;
23
24 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
25 require Exporter;
26
27 @ISA = qw(Exporter);
28 @EXPORT = qw();
29 @EXPORT_OK = qw($options);
30
31 use options qw($options &parse_comma_list);
32
33 my %options_long = (
34     "debug" => { default => 0, description => "debug mode" },
35     "help" => { default => 0, description => "help mode" },
36     "verbose" => { default => 0, description => "verbose mode" },
37
38     "progress" => { default => 1, description => "show progress" },
39
40     "win16" => { default => 1, description => "Win16 extraction" },
41     "win32" => { default => 1, description => "Win32 extraction" },
42
43     "old" => { default => 0, description => "use the old parser" },
44     "headers" => { default => 0, description => "parse the .h files as well" },
45
46     "implemented" => { default => 0, parent => "old", description => "implemented functions extraction" },
47     "pseudo-implemented" => { default => 0, parent => "implemented", description => "pseudo implemented functions extraction" },
48     "struct" => { default => 0, parent => "headers", description => "struct extraction" },
49     "spec-files" => { default => 0, parent => "old", description => "spec files extraction" },
50     "stub-statistics" => { default => 0, parent => "old", description => "stub statistics" },
51     "pseudo-stub-statistics" => { default => 0, parent => "stub-statistics", description => "pseudo stub statistics" },
52     "winetest" => { default => 0, parent => "old", description => "winetest extraction" },
53 );
54
55 my %options_short = (
56     "d" => "debug",
57     "?" => "help",
58     "v" => "verbose"
59 );
60
61 my $options_usage = "usage: winapi_extract [--help] [<files>]\n";
62
63 $options = '_options'->new(\%options_long, \%options_short, $options_usage);
64
65 1;