Commit 
252dcb32 used cp -a, but apparently Solaris doesn't like that.  Use cp
-RPp instead.
Author: Thomas Munro <thomas.munro@gmail.com>
Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
Discussion: https://postgr.es/m/CA+hUKGL10AoQVMMqgOJ8CTjoz9MLidD8ik2e8PibzLNMz0+aRg@mail.gmail.com
 
                }
                else
                {
-                       @copycmd = qw(cp -a);
+                       @copycmd = qw(cp -RPp);
                        $expected_exitcode = 0;
                }
 
 
                else
                {
 #ifndef WIN32
-                       const char *copycmd = "cp -a \"%s\" \"%s/data\"";
+                       const char *copycmd = "cp -RPp \"%s\" \"%s/data\"";
                        int                     expected_exitcode = 0;
 #else
                        const char *copycmd = "robocopy /E /NJS /NJH /NFL /NDL /NP \"%s\" \"%s/data\"";