summaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2002-06-13 19:50:37 +0000
committerRichard Levitte <levitte@openssl.org>2002-06-13 19:50:37 +0000
commite888074bb479dc2e05659d1b252121faad04b5d9 (patch)
tree722716b0599ccb3d05dd5e5f69ff45dab644a61d /util
parent1ef5026ef984df8505f41b93a4c0deb0eb9d5b0e (diff)
Parse directory using both slashes and backslashes as separators.
Do file copying in term of perl statements instead of using cp. Part of PR: 75
Diffstat (limited to 'util')
-rwxr-xr-xutil/mklink.pl15
1 files changed, 12 insertions, 3 deletions
diff --git a/util/mklink.pl b/util/mklink.pl
index 9e9c9a5146..9386da7aa4 100755
--- a/util/mklink.pl
+++ b/util/mklink.pl
@@ -18,10 +18,10 @@
my $from = shift;
my @files = @ARGV;
-my @from_path = split(/\//, $from);
+my @from_path = split(/[\\\/]/, $from);
my $pwd = `pwd`;
chop($pwd);
-my @pwd_path = split(/\//, $pwd);
+my @pwd_path = split(/[\\\/]/, $pwd);
my @to_path = ();
@@ -54,7 +54,16 @@ foreach $file (@files) {
if ($symlink_exists) {
symlink("$to/$file", "$from/$file") or $err = " [$!]";
} else {
- system ("cp", "$file", "$from/$file") and $err = " [$!]";
+ unlink "$from/$file";
+ open (OLD, "<$file") or die "Can't open $file: $!";
+ open (NEW, ">$from/$file") or die "Can't open $from/$file: $!";
+ binmode(OLD);
+ binmode(NEW);
+ while (<OLD>) {
+ print NEW $_;
+ }
+ close (OLD) or die "Can't close $file: $!";
+ close (NEW) or die "Can't close $from/$file: $!";
}
print $file . " => $from/$file$err\n";
}