On Mon, Jul 3, 2017 at 11:00 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Michael Paquier <michael.paquier@gmail.com> writes:
>> On Mon, Jul 3, 2017 at 9:25 PM, Greg Stark <stark@mit.edu> wrote:
>>> On 2 July 2017 at 18:33, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>>> system("cp -a ...") call in favor of something more portable.
>
>>> If we're ok with using Perl there's File::Copy::Recursive::dircopy()
>>> which does exactly that.
>
>> This stuff needs to support perl down to 5.8.0, and that's a reason
>> behind having src/test/perl/RecursiveCopy.pm. So I would suggest just
>> to use that. cp is not portable on Windows as well, that's a recipe
>> for non-portable code there.
This was under the assumption of "if we use perl" :)
> I can't see going this path in pg_regress, because then you would have
> exactly zero test functionality in a non-Perl build.
Indeed, release tarballs don't need perl to work. So that's a no-go.
> What I had in
> mind was a frontend-friendly version of backend/storage/file/copydir.c,
> either just dropped into pg_regress.c or put in src/common/.
+1 for src/common/.
--
Michael