When doing 'make check' as root, the merge test fails on Solaris 10 x86 and SPARC (as well as Mac OS-X Leopard): rsync_bin=`pwd`/rsync /home/bfriesen/src/network/rsync/rsync-3.0.0/runtests.sh ============================================================ /home/bfriesen/src/network/rsync/rsync-3.0.0/runtests.sh running in /scratch/bfriesen/build/rsync-3.0.0 rsync_bin=/scratch/bfriesen/build/rsync-3.0.0/rsync srcdir=/home/bfriesen/src/network/rsync/rsync-3.0.0 testuser=root os=SunOS freddy 5.10 Generic_127112-10 i86pc i386 i86pc preserve_scratch=no /home/bfriesen/src/network/rsync/rsync-3.0.0/runtests.sh: setacl: not found scratchbase=/scratch/bfriesen/build/rsync-3.0.0/testtmp PASS 00-hello SKIP acls (I don't know how to use setfacl or chmod for ACLs) PASS backup PASS batch-mode PASS chgrp PASS chmod-option PASS chmod-temp-dir PASS chmod SKIP chown-fake (Rsync needs xattrs for fake device tests) PASS chown PASS compare-dest PASS daemon-gzip-download PASS daemon-gzip-upload PASS daemon SKIP default-acls (I don't know how to use your setfacl command) PASS delete SKIP devices-fake (Rsync needs xattrs for fake device tests) PASS devices SKIP dir-sgid (The directory setgid bit vanished!) PASS duplicates PASS exclude PASS executability PASS fuzzy PASS hands PASS hardlinks ----- itemize log follows Testing for symlinks using 'test -h' makepath /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/foo /scratch /scratch/bfriesen /scratch/bfriesen/build /scratch/bfriesen/build/rsync-3.0.0 /scratch/bfriesen/build/rsync-3.0.0/testtmp /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/foo makepath /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/bar/baz /scratch /scratch/bfriesen /scratch/bfriesen/build /scratch/bfriesen/build/rsync-3.0.0 /scratch/bfriesen/build/rsync-3.0.0/testtmp /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/bar /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/bar/baz cd+++++++++ ./ cd+++++++++ bar/ cd+++++++++ bar/baz/ >f+++++++++ bar/baz/rsync cd+++++++++ foo/ >f+++++++++ foo/config1 >f+++++++++ foo/config2 >f+++++++++ foo/extra cL+++++++++ foo/sym -> ../bar/baz/rsync No differences encountered >f..T...... bar/baz/rsync >f..T...... foo/config1 >f.sTp..... foo/config2 hf..T...... foo/extra => foo/config1 No differences encountered .f..tp..... bar/baz/rsync .d..t...... foo/ .f..t...... foo/config1 >fcstp..... foo/config2 cL..T...... foo/sym -> ../bar/baz/rsync No differences encountered sending incremental file list delta-transmission disabled for local transfer or --whole-file bar/baz/rsync is uptodate foo/config1 is uptodate foo/config2 foo/extra is uptodate foo/sym is uptodate total: matches=0 hash_hits=0 false_alarms=0 data=29047 sent 29289 bytes received 59 bytes 58696.00 bytes/sec total size is 117396 speedup is 4.00 No differences encountered sending incremental file list delta-transmission disabled for local transfer or --whole-file .d ./ .d bar/ .d bar/baz/ .f...p..... bar/baz/rsync .d foo/ .f foo/config1 >f..t...... foo/config2 hf foo/extra .L foo/sym -> ../bar/baz/rsync total: matches=0 hash_hits=0 false_alarms=0 data=29047 sent 29289 bytes received 59 bytes 58696.00 bytes/sec total size is 117396 speedup is 4.00 No differences encountered sending incremental file list foo/config2 sent 29267 bytes received 37 bytes 58608.00 bytes/sec total size is 117396 speedup is 4.01 No differences encountered .f...p..... foo/config1 >f..t...... foo/config2 No differences encountered sending incremental file list created directory /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/to2 delta-transmission disabled for local transfer or --whole-file cd ./ cd bar/ cd bar/baz/ cf bar/baz/rsync cd foo/ cf foo/config1 cf foo/config2 hf foo/extra => foo/config1 cL foo/sym -> ../bar/baz/rsync total: matches=0 hash_hits=0 false_alarms=0 data=0 sent 213 bytes received 54 bytes 534.00 bytes/sec total size is 117396 speedup is 439.69 No differences encountered hf foo/extra => foo/config1 No differences encountered sending incremental file list created directory /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/to2 delta-transmission disabled for local transfer or --whole-file ./ is uptodate bar/ is uptodate bar/baz/ is uptodate bar/baz/rsync is uptodate foo/ is uptodate foo/config1 is uptodate foo/config2 is uptodate foo/extra => foo/config1 foo/sym is uptodate total: matches=0 hash_hits=0 false_alarms=0 data=0 sent 198 bytes received 39 bytes 474.00 bytes/sec total size is 117396 speedup is 495.34 No differences encountered sending incremental file list created directory /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/to2 delta-transmission disabled for local transfer or --whole-file cd ./ cd bar/ cd bar/baz/ hf bar/baz/rsync cd foo/ hf foo/config1 hf foo/config2 hf foo/extra => foo/config1 hL foo/sym -> ../bar/baz/rsync total: matches=0 hash_hits=0 false_alarms=0 data=0 sent 217 bytes received 58 bytes 550.00 bytes/sec total size is 117396 speedup is 426.89 --- /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/rsync.chk Sat Mar 1 18:06:37 2008 +++ /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/rsync.out Sat Mar 1 18:06:37 2008 @@ -6,4 +6,4 @@ hf foo/config1 hf foo/config2 hf foo/extra => foo/config1 -cL foo/sym -> ../bar/baz/rsync +hL foo/sym -> ../bar/baz/rsync test 11 failed ----- itemize log ends FAIL itemize PASS longdir ----- merge log follows Testing for symlinks using 'test -h' sending incremental file list sent 61 bytes received 13 bytes 148.00 bytes/sec total size is 0 speedup is 0.00 sending incremental file list sent 50 bytes received 13 bytes 126.00 bytes/sec total size is 0 speedup is 0.00 sending incremental file list sent 61 bytes received 13 bytes 148.00 bytes/sec total size is 0 speedup is 0.00 sending incremental file list sent 61 bytes received 14 bytes 150.00 bytes/sec total size is 0 speedup is 0.00 Running: "/scratch/bfriesen/build/rsync-3.0.0/rsync -avv deep/arg-test shallow from1/ from2/ from3/ to/" sending incremental file list removing duplicate name . from file list (2) removing duplicate name . from file list (3) removing duplicate name one from file list (9) removing duplicate name one from file list (10) removing duplicate name dir-and-not-dir from file list (5) removing duplicate name sub1 from file list (17) created directory to delta-transmission disabled for local transfer or --whole-file ./ arg-test five four one shallow six three two dir-and-not-dir/ dir-and-not-dir/inside removing duplicate name sub1/uno from file list (25) sub1/ sub1/dos sub1/tres sub1/uno sub2/ sub2/subby total: matches=0 hash_hits=0 false_alarms=0 data=72 sent 975 bytes received 274 bytes 2498.00 bytes/sec total size is 93 speedup is 0.07 ------------- check how the directory listings compare with diff: --- /scratch/bfriesen/build/rsync-3.0.0/testtmp/merge/ls-from Sat Mar 1 18:06:39 2008 +++ /scratch/bfriesen/build/rsync-3.0.0/testtmp/merge/ls-to Sat Mar 1 18:06:39 2008 @@ -1,4 +1,4 @@ -/scratch/bfriesen/build/rsync-3.0.0/testtmp/merge/chk +/scratch/bfriesen/build/rsync-3.0.0/testtmp/merge/to drwxr-xr-x 0 0.1 5 2008-03-02 00:06:37 . -rw-r--r-- 9 0.1 1 2008-03-02 00:06:37 ./arg-test drwxr-xr-x 0 0.1 2 2008-03-02 00:06:37 ./dir-and-not-dir ------------- check how the files compare with diff: Common subdirectories: chk/dir-and-not-dir and to/dir-and-not-dir Common subdirectories: chk/sub1 and to/sub1 Common subdirectories: chk/sub2 and to/sub2 ------------- ----- merge log ends FAIL merge PASS relative PASS ssh-basic PASS symlink-ignore PASS trimslash PASS unsafe-byname PASS unsafe-links PASS wildmatch SKIP xattrs (Rsync is configured without xattr support) ------------------------------------------------------------ ----- overall results: 28 passed 2 failed 6 skipped ------------------------------------------------------------ overall result is 2 gmake: *** [check] Error 2
Notice this: /home/bfriesen/src/network/rsync/rsync-3.0.0/runtests.sh: setacl: not found SKIP acls (I don't know how to use setfacl or chmod for ACLs) It seems that runtests.sh used 'setacl' rather than 'setfacl'.
Test 11 chooses to anticipate either a hard-linked symlink ("hL") or a locally-copied symlink ("cL") depending on if it thinks that symlinks can be hard-linked or not. The test using "ln" on a dangling symlink should indicate if that is possible. It looks like that ln test reports the wrong result, so the itemize test is expecting "cL" when rsync returns "hL". Perhaps I should change that test to grep for CAN_HARDLINK_SYMLINK in the config.h file. As for the merge test, it appears that you have "cd reldir" output a path, and that output is causing the diff to fail. I'll code around such a possibility.
The git repository has this fixed now.