File: mac_install.pl

package info (click to toggle)
libjcode-pm-perl 0.88-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 1,224 kB
  • ctags: 90
  • sloc: perl: 14,431; ansic: 11,032; makefile: 54
file content (66 lines) | stat: -rw-r--r-- 1,139 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#
# Run this script once and you are all set!
#

use strict;
use File::Path;
use File::Basename;

my $install_dir = "";

for my $INC (@INC){
  	if ($INC =~ /site_perl/io){
      $install_dir = $INC;
	  last;
  }
}

unless ($install_dir) {
	die qq(Please create 'site_perl' folder in MacPerl App folder!\n);
}else{
	warn "Ok. I'll install files in $install_dir folder.\n";
}

my @files = qw(
Jcode.pm
);

# push all files in Jcode directory;

require "find.pl";
&find('Jcode');

sub wanted {
	no strict "vars";
    my ($dev,$ino,$mode,$nlink,$uid,$gid) = lstat($_);
    return unless -f _;
	push @files, $name;
}


for my $file (@files) {
	my $src = $file;
	open SRC, $src or die "$src:$!";
	my $buffer;
	
	my $dst = $install_dir . $file;
	$dst =~ s/:://og;
	warn "Installing $src to $dst.\n";
	
	my $dir = dirname($dst);
	mkpath([$dir], 0755, 1) or die "$dir:$!" unless -d $dir;
	open DST, ">$dst" or die "$dst:$!";
	
	while(read SRC, $buffer, 32768) {
		$buffer =~ s/\x0a/\x0d/og;
		print DST $buffer;
	}
	
	close SRC; close DST;
	MacPerl::SetFileInfo('McPL', 'TEXT', $dst);	

}

warn "All scripts are installed successfully\n";

__END__