diff options
author | Heiko Schlittermann (HS12-RIPE) <hs@schlittermann.de> | 2021-04-01 11:33:01 +0200 |
---|---|---|
committer | Heiko Schlittermann (HS12-RIPE) <hs@schlittermann.de> | 2021-04-01 11:34:20 +0200 |
commit | 47bc7a521803eaea0d6666c327f2e21e22eb920b (patch) | |
tree | 662c9f0ff9d22d1e3c3a7600baa1c107e5e6c87d /test/lib | |
parent | 701b5a89766772fe78539ea157eebe9f5687e1e4 (diff) | |
download | exim4-47bc7a521803eaea0d6666c327f2e21e22eb920b.tar.gz |
testsuite: provide cp() if File::Copy is too old.
Diffstat (limited to 'test/lib')
-rw-r--r-- | test/lib/Exim/Utils.pm | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/test/lib/Exim/Utils.pm b/test/lib/Exim/Utils.pm index b744b0b43..1dbd2d0da 100644 --- a/test/lib/Exim/Utils.pm +++ b/test/lib/Exim/Utils.pm @@ -2,8 +2,9 @@ package Exim::Utils; use v5.10.1; use strict; use warnings; +use File::Copy; use parent 'Exporter'; -our @EXPORT_OK = qw(uniq numerically); +our @EXPORT_OK = qw(uniq numerically cp); sub uniq { @@ -13,4 +14,14 @@ sub uniq { sub numerically { $::a <=> $::b } +sub cp { + if ($File::Copy::VERSION >= 2.15) { # since Perl 5.11 we should have >= 2.15 + return File::Copy::cp(@_); + } + copy(@_) or return undef; + my ($src, $dst) = @_; + my @st = stat $src or return undef; + chmod($st[2]&07777, $dst); +} + 1; |