This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Modify the common guard for the signal.h header, because
[perl5.git] / os2 / perl2cmd.pl
CommitLineData
82835e01 1# This will put installed perl files into some other location
2# Note that we cannot put hashbang to be extproc to make Configure work.
3
4use Config;
5
6$dir = shift;
7$dir =~ s|/|\\|g ;
8$nowarn = 1, $dir = shift if $dir eq '-n';
9
10die <<EOU unless defined $dir and -d $dir;
11usage: $^X $0 [-n] directory-to-install
12 -n do not check whether the directory is not on path
13EOU
14
15@path = split /;/, $ENV{PATH};
16$idir = $Config{installbin};
17$indir =~ s|\\|/|g ;
18
59ad941d
IZ
19my %seen;
20
760ac839 21foreach $file (<$idir/*>) {
59ad941d 22 next if $file =~ /\.(exe|bak)/i;
82835e01 23 $base = $file;
24 $base =~ s/\.$//; # just in case...
25 $base =~ s|.*/||;
59ad941d
IZ
26 $base =~ s|\.pl$||;
27 #$file =~ s|/|\\|g ;
28 warn "Clashing output name for $file, skipping" if $seen{$base}++;
82835e01 29 print "Processing $file => $dir\\$base.cmd\n";
59ad941d
IZ
30 open IN, '<', $file or warn, next;
31 open OUT, '>', "$dir/$base.cmd" or warn, next;
32 my $firstline = <IN>;
33 my $flags = '';
34 $flags = $2 if $firstline =~ /^#!\s*(\S+)\s+-([^#]+?)\s*(#|$)/;
35 print OUT "extproc perl -S$flags\n$firstline";
36 print OUT $_ while <IN>;
37 close IN or warn, next;
38 close OUT or warn, next;
82835e01 39}
40