X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=util%2Fcopy.pl;h=4da4a5fcc48388cc0d7502e4b8dbabee4545a980;hp=c4bcccdee6b318ed8cc6701c9a67c4bf21d8f607;hb=a67203a19d379a8cc8b369587c60c46eb4e19014;hpb=e0a651945cb5a70a2abd9902c0fd3e9759d35867 diff --git a/util/copy.pl b/util/copy.pl index c4bcccdee6..4da4a5fcc4 100644 --- a/util/copy.pl +++ b/util/copy.pl @@ -1,7 +1,7 @@ #! /usr/bin/env perl -# Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2005-2018 The OpenSSL Project Authors. All Rights Reserved. # -# Licensed under the OpenSSL license (the "License"). You may not use +# Licensed under the Apache License 2.0 (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy # in the file LICENSE in the source distribution or at # https://www.openssl.org/source/license.html @@ -18,6 +18,7 @@ use Fcntl; my $stripcr = 0; my $arg; +my @excludes = (); foreach $arg (@ARGV) { if ($arg eq "-stripcr") @@ -25,10 +26,16 @@ foreach $arg (@ARGV) { $stripcr = 1; next; } + if ($arg =~ /^-exclude_re=(.*)$/) + { + push @excludes, $1; + next; + } $arg =~ s|\\|/|g; # compensate for bug/feature in cygwin glob... - foreach (glob $arg) + $arg = qq("$arg") if ($arg =~ /\s/); # compensate for bug in 5.10... + foreach my $f (glob $arg) { - push @filelist, $_; + push @filelist, $f unless grep { $f =~ /$_/ } @excludes; } } @@ -40,7 +47,7 @@ if ($fnum <= 1) } $dest = pop @filelist; - + if ($fnum > 2 && ! -d $dest) { die "Destination must be a directory"; @@ -73,5 +80,5 @@ foreach (@filelist) close(OUT); print "Copying: $_ to $dfile\n"; } - +