From a86cdfa58b6dfc99401877d1f11ea385b2ff0b7b Mon Sep 17 00:00:00 2001 From: Sergey Poznyakoff Date: Thu, 4 Sep 2003 14:00:25 +0000 Subject: [PATCH] Explicitly request GNU format. This will disappear when GNU extended header keywords are working. --- tests/incremen.sh | 26 ++++++++++++++++++++------ tests/multiv01.sh | 4 ++-- tests/volume.sh | 2 +- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/tests/incremen.sh b/tests/incremen.sh index c723e9c..40adbf8 100755 --- a/tests/incremen.sh +++ b/tests/incremen.sh @@ -6,14 +6,28 @@ set -e mkdir structure -touch structure/file -# FIXME: The sleep is necessary for the second tar to work. Exactly why? +echo x >structure/file + +# On Nextstep (and perhaps other 4.3BSD systems), +# a newly created file's ctime isn't updated +# until the next sync or stat operation on the file. +ls -l structure/file >/dev/null + +# If the time of an initial backup and the creation time of a file contained +# in that backup are the same, the file will be backed up again when an +# incremental backup is done, because the incremental backup backs up +# files created `on or after' the initial backup time. Without the sleep +# command, behaviour of tar becomes variable, depending whether the system +# clock ticked over to the next second between creating the file and +# backing it up. sleep 1 -tar cf archive --listed=list structure -tar cfv archive --listed=list structure + +tar cf archive --format=gnu --listed=list structure +tar cfv archive --format=gnu --listed=list structure echo ----- -touch structure/file -tar cfv archive --listed=list structure +sleep 1 +echo y >structure/file +tar cfv archive --format=gnu --listed=list structure out="\ structure/ diff --git a/tests/multiv01.sh b/tests/multiv01.sh index 1858acb..6801b91 100755 --- a/tests/multiv01.sh +++ b/tests/multiv01.sh @@ -19,13 +19,13 @@ for block in " 1" " 2" " 3" " 4" " 5" " 6" " 7" " 8" \ done done >file2 -tar -c --multi-volume --tape-length=10 \ +tar -c --format=gnu --multi-volume --tape-length=10 \ --listed-incremental=t.snar \ -f t1-pipe.tar -f t2-pipe.tar ./file1 ./file2 mkdir extract-dir-pipe dd bs=4096 count=10 if=t2-pipe.tar | -PATH=$PATH ${TRUSS} tar -f t1-pipe.tar -f - \ +PATH=$PATH ${TRUSS} tar --format=gnu -f t1-pipe.tar -f - \ -C extract-dir-pipe -x --multi-volume \ --tape-length=10 --read-full-records diff --git a/tests/volume.sh b/tests/volume.sh index b8dad19..37021e0 100755 --- a/tests/volume.sh +++ b/tests/volume.sh @@ -4,7 +4,7 @@ . ./preset . $srcdir/before -tar cfVT archive label /dev/null || exit 1 +tar -cf archive -V label -T /dev/null --format=gnu || exit 1 tar xfV archive label || exit 1 tar xfV archive 'la?el' || exit 1 -- 2.45.2