12 |
Util => q<http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/>, |
Util => q<http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/>, |
13 |
}; |
}; |
14 |
|
|
15 |
|
our$VERSION=do{my @r=(q$Revision$=~/\d+/g);sprintf "%d."."%02d" x $#r,@r}; |
16 |
use Cwd; |
use Cwd; |
17 |
use Getopt::Long; |
use Getopt::Long; |
18 |
use Pod::Usage; |
use Pod::Usage; |
19 |
my %Opt = (create_module => []); |
our %Opt = (create_module => []); |
20 |
|
my @target_modules; |
21 |
GetOptions ( |
GetOptions ( |
22 |
|
'create-dtd-driver=s' => sub { |
23 |
|
shift; |
24 |
|
my $i = [split /\s+/, shift, 3]; |
25 |
|
$i->[3] = 'dtd-driver'; |
26 |
|
push @{$Opt{create_module}}, $i; |
27 |
|
}, |
28 |
|
'create-dtd-modules=s' => sub { |
29 |
|
shift; |
30 |
|
my $i = [split /\s+/, shift, 3]; |
31 |
|
$i->[3] = 'dtd-modules'; |
32 |
|
push @{$Opt{create_module}}, $i; |
33 |
|
}, |
34 |
'create-perl-module=s' => sub { |
'create-perl-module=s' => sub { |
35 |
shift; |
shift; |
36 |
my $i = [split /\s+/, shift, 3]; |
my $i = [split /\s+/, shift, 3]; |
37 |
$i->[3] = 'perl-pm'; |
$i->[3] = 'perl-pm'; |
38 |
push @{$Opt{create_module}}, $i; |
push @{$Opt{create_module}}, $i; |
39 |
|
push @target_modules, [$i->[0], $i->[2]]; |
40 |
}, |
}, |
41 |
'create-perl-test=s' => sub { |
'create-perl-test=s' => sub { |
42 |
shift; |
shift; |
43 |
my $i = [split /\s+/, shift, 3]; |
my $i = [split /\s+/, shift, 3]; |
44 |
$i->[3] = 'perl-t'; |
$i->[3] = 'perl-t'; |
45 |
push @{$Opt{create_module}}, $i; |
push @{$Opt{create_module}}, $i; |
46 |
|
push @target_modules, [$i->[0], $i->[2]]; |
47 |
}, |
}, |
48 |
'debug' => \$Opt{debug}, |
'debug' => \$Opt{debug}, |
49 |
'dis-file-suffix=s' => \$Opt{dis_suffix}, |
'dis-file-suffix=s' => \$Opt{dis_suffix}, |
50 |
'daem-file-suffix=s' => \$Opt{daem_suffix}, |
'daem-file-suffix=s' => \$Opt{daem_suffix}, |
51 |
'dafs-file-suffix=s' => \$Opt{dafs_suffix}, |
'dafs-file-suffix=s' => \$Opt{dafs_suffix}, |
52 |
'dafx-file-suffix=s' => \$Opt{dafx_suffix}, |
'dafx-file-suffix=s' => \$Opt{dafx_suffix}, |
53 |
|
'dtd-file-suffix=s' => \$Opt{dtd_suffix}, |
54 |
'help' => \$Opt{help}, |
'help' => \$Opt{help}, |
55 |
|
'load-module=s' => sub { |
56 |
|
shift; |
57 |
|
my $i = [split /\s+/, shift, 2]; |
58 |
|
push @target_modules, [$i->[0], $i->[1]]; |
59 |
|
}, |
60 |
|
'mod-file-suffix=s' => \$Opt{mod_suffix}, |
61 |
'search-path|I=s' => sub { |
'search-path|I=s' => sub { |
62 |
shift; |
shift; |
63 |
my @value = split /\s+/, shift; |
my @value = split /\s+/, shift; |
105 |
$Opt{daem_suffix} = '.dafm' unless defined $Opt{daem_suffix}; |
$Opt{daem_suffix} = '.dafm' unless defined $Opt{daem_suffix}; |
106 |
$Opt{dafx_suffix} = '.dafx' unless defined $Opt{dafx_suffix}; |
$Opt{dafx_suffix} = '.dafx' unless defined $Opt{dafx_suffix}; |
107 |
$Opt{dafs_suffix} = '.dafs' unless defined $Opt{dafs_suffix}; |
$Opt{dafs_suffix} = '.dafs' unless defined $Opt{dafs_suffix}; |
108 |
$Message::DOM::DOMFeature::DEBUG = 1 if $Opt{debug}; |
$Opt{dtd_suffix} = '.dtd' unless defined $Opt{dtd_suffix}; |
109 |
|
$Opt{mod_suffix} = '.mod' unless defined $Opt{mod_suffix}; |
110 |
require Error; |
require Error; |
111 |
$Error::Debug = 1 if $Opt{debug}; |
$Error::Debug = 1 if $Opt{debug}; |
112 |
$Message::Util::Error::VERBOSE = 1 if $Opt{verbose}; |
$Message::Util::Error::VERBOSE = 1 if $Opt{verbose}; |
153 |
$feature{ExpandedURI q<fe:GenericLS>} = '3.0'; |
$feature{ExpandedURI q<fe:GenericLS>} = '3.0'; |
154 |
$feature{'+' . ExpandedURI q<DIS:TDT>} = '1.0'; |
$feature{'+' . ExpandedURI q<DIS:TDT>} = '1.0'; |
155 |
$feature{'+' . ExpandedURI q<Util:PerlCode>} = '1.0'; |
$feature{'+' . ExpandedURI q<Util:PerlCode>} = '1.0'; |
156 |
|
} elsif ($out_type eq 'dtd-modules') { |
157 |
|
require 'manakai/daf-dtd-modules.pl'; |
158 |
|
$feature{ExpandedURI q<fe:GenericLS>} = '3.0'; |
159 |
|
$feature{'+' . ExpandedURI q<fe:XDP>} = '3.0'; |
160 |
|
} elsif ($out_type eq 'dtd-driver') { |
161 |
|
require 'manakai/daf-dtd-modules.pl'; |
162 |
|
$feature{ExpandedURI q<fe:GenericLS>} = '3.0'; |
163 |
|
$feature{'+' . ExpandedURI q<fe:XDP>} = '3.0'; |
164 |
} |
} |
165 |
} |
} |
166 |
|
|
190 |
## property. |
## property. |
191 |
); |
); |
192 |
|
|
|
my @target_modules; |
|
|
for (@{$Opt{create_module}}) { |
|
|
my ($mod_uri, $out_path, $mod_for, $out_type) = @$_; |
|
|
push @target_modules, [$mod_uri, $mod_for]; |
|
|
} |
|
|
|
|
193 |
my $ResourceCount = 0; |
my $ResourceCount = 0; |
194 |
$db->pl_update_module (\@target_modules, |
$db->pl_update_module (\@target_modules, |
195 |
get_module_index_file_name => sub { |
get_module_index_file_name => sub { |
273 |
status_msg_ " " if ($ResourceCount % (10 * 10)) == 0; |
status_msg_ " " if ($ResourceCount % (10 * 10)) == 0; |
274 |
status_msg '' if ($ResourceCount % (10 * 50)) == 0; |
status_msg '' if ($ResourceCount % (10 * 50)) == 0; |
275 |
} |
} |
276 |
}); |
}, implementation => $impl); |
277 |
status_msg ''; |
status_msg ''; |
278 |
status_msg "done"; |
status_msg "done"; |
279 |
|
|
320 |
daf_perl_pm ($mod_uri, $out_file_path, $mod_for); |
daf_perl_pm ($mod_uri, $out_file_path, $mod_for); |
321 |
} elsif ($out_type eq 'perl-t') { |
} elsif ($out_type eq 'perl-t') { |
322 |
daf_perl_t ($mod_uri, $out_file_path, $mod_for); |
daf_perl_t ($mod_uri, $out_file_path, $mod_for); |
323 |
|
} elsif ($out_type eq 'dtd-modules') { |
324 |
|
daf_dtd_modules ($mod_uri, $out_file_path, $mod_for); |
325 |
|
} elsif ($out_type eq 'dtd-driver') { |
326 |
|
daf_dtd_driver ($mod_uri, $out_file_path, $mod_for); |
327 |
} |
} |
328 |
} |
} |
329 |
|
|