Commit | Line | Data |
---|---|---|
151b83f8 PH |
1 | #! /usr/bin/perl -w |
2 | ||
151b83f8 PH |
3 | ############################################################################### |
4 | # This is an auxiliary script that is part of the Exim test suite. It must be # | |
5 | # run as root, and is normally called from the main controlling script. Its # | |
6 | # job is to make a copy of Exim, suitably patched so that it can run in the # | |
7 | # test harness. See further comments in the main script. # | |
8 | # # | |
9 | # The only argument to this script is the name of the Exim binary that is to # | |
10 | # be copied. The script must be run in the correct current directory. # | |
11 | ############################################################################### | |
12 | ||
13 | open(IN, "$ARGV[0]") || die "** Failed to open $ARGV[0]: $!\n"; | |
14 | open(OUT, ">eximdir/exim") || die "** Failed to open eximdir/exim: $!\n"; | |
15 | ||
16 | while(<IN>) | |
17 | { | |
18 | s/>>>running<<</<<<testing>>>/; | |
026d45f5 | 19 | s/(\d+\.\d+(?:[_.]\d+)?([_-]RC\d+|[_-]dev)?(?:[0-9a-fA-F-]*)(?:-XX)?\0<<eximversion>>)/"x.yz\0" . ("*" x (length($1) - 5))/e; |
151b83f8 PH |
20 | print OUT; |
21 | } | |
22 | ||
23 | close(IN); | |
24 | close(OUT); | |
25 | ||
26 | chmod 04755, "eximdir/exim"; | |
27 | ||
28 | # End of patchexim script |