AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
Jim Meyering wrote: Please run this command from your build directory cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } and tell us what it prints. somehow, my shell (/bin/ksh) doesn't like the { ... } syntax here: $ cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } it waits for the command to be continued ... I can't see why Replacing the { ... } by ( ... ), it prints this: $ cd src ( ./touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b ) removed `b' `a' - `b' Bye, Berny
AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
Jim Meyering wrote: sudo env PATH=$PATH NON_ROOT_USERNAME=$USER make -C tests \ TESTS=cp/preserve-gid VERBOSE=yes I think you meant sudo env PATH=$PATH NON_ROOT_USERNAME=$USER make -C tests check \ TESTS=cp/preserve-gid VERBOSE=yes BTW: I'm not sure but shouldn't the tests make more use of the binaries just built instead of relying e.g. on a working stat utility in PATH...? Here's the log: === GNU coreutils 7.4.127-d2510: tests/test-suite.log === 1 of 1 test failed. .. contents:: :depth: 2 FAIL: cp/preserve-gid (exit: 1) === + cp --version cp (GNU coreutils) 7.4.127-d2510 Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Torbjorn Granlund, David MacKenzie, and Jim Meyering. ++ perl -le 'foreach my $i (1000..16*1024-1) { getpwuid $i or (print $i), exit }' + nameless_uid=1000 ++ perl -le 'foreach my $i (1000..16*1024) { getgrgid $i or (print $i), exit }' + nameless_gid1=1000 ++ perl -le 'foreach my $i (1000+1..16*1024) { getgrgid $i or (print $i), exit }' + nameless_gid2=1001 + test -z 1000 + test -z 1000 + test -z 1001 + chown +1000:+0 . + create a0 0 0 + echo a0 + chown +0:+0 a0 + create b0 1000 1000 + echo b0 + chown +1000:+1000 b0 + create b1 1000 1001 + echo b1 + chown +1000:+1001 b1 + create c0 0 1000 + echo c0 + chown +0:+1000 c0 + create c1 0 1001 + echo c1 + chown +0:+1001 c1 + t0 a0 0 0 cp + f=a0 + shift + u=0 + shift + g=0 + shift + rm -f b + cp a0 b ++ stat -c '%u %g' b + s='0 0' + test 'x0 0' '!=' 'x0 0' + t0 b0 0 0 cp + f=b0 + shift + u=0 + shift + g=0 + shift + rm -f b + cp b0 b ++ stat -c '%u %g' b + s='0 0' + test 'x0 0' '!=' 'x0 0' + t0 b1 0 0 cp + f=b1 + shift + u=0 + shift + g=0 + shift + rm -f b + cp b1 b ++ stat -c '%u %g' b + s='0 0' + test 'x0 0' '!=' 'x0 0' + t0 c0 0 0 cp + f=c0 + shift + u=0 + shift + g=0 + shift + rm -f b + cp c0 b ++ stat -c '%u %g' b + s='0 0' + test 'x0 0' '!=' 'x0 0' + t0 c1 0 0 cp + f=c1 + shift + u=0 + shift + g=0 + shift + rm -f b + cp c1 b ++ stat -c '%u %g' b + s='0 0' + test 'x0 0' '!=' 'x0 0' + t0 a0 0 0 cp -p + f=a0 + shift + u=0 + shift + g=0 + shift + rm -f b + cp -p a0 b ++ stat -c '%u %g' b + s='0 0' + test 'x0 0' '!=' 'x0 0' + t0 b0 1000 1000 cp -p + f=b0 + shift + u=1000 + shift + g=1000 + shift + rm -f b + cp -p b0 b ++ stat -c '%u %g' b + s='1000 1000' + test 'x1000 1000' '!=' 'x1000 1000' + t0 b1 1000 1001 cp -p + f=b1 + shift + u=1000 + shift + g=1001 + shift + rm -f b + cp -p b1 b ++ stat -c '%u %g' b + s='1000 1001' + test 'x1000 1001' '!=' 'x1000 1001' + t0 c0 0 1000 cp -p + f=c0 + shift + u=0 + shift + g=1000 + shift + rm -f b + cp -p c0 b ++ stat -c '%u %g' b + s='0 1000' + test 'x0 1000' '!=' 'x0 1000' + t0 c1 0 1001 cp -p + f=c1 + shift + u=0 + shift + g=1001 + shift + rm -f b + cp -p c1 b ++ stat -c '%u %g' b + s='0 1001' + test 'x0 1001' '!=' 'x0 1001' + t1 a0 1000 1000 cp + f=a0 + shift + u=1000 + shift + g=1000 + shift + t0 a0 1000 1000 setuidgid -g 1000,1001 1000 cp + f=a0 + shift + u=1000 + shift + g=1000 + shift + rm -f b + setuidgid -g 1000,1001 1000 cp a0 b ++ stat -c '%u %g' b + s='1000 1000' + test 'x1000 1000' '!=' 'x1000 1000' + t1 b0 1000 1000 cp + f=b0 + shift + u=1000 + shift + g=1000 + shift + t0 b0 1000 1000 setuidgid -g 1000,1001 1000 cp + f=b0 + shift + u=1000 + shift + g=1000 + shift + rm -f b + setuidgid -g 1000,1001 1000 cp b0 b ++ stat -c '%u %g' b + s='1000 1000' + test 'x1000 1000' '!=' 'x1000 1000' + t1 b1 1000 1000 cp + f=b1 + shift + u=1000 + shift + g=1000 + shift + t0 b1 1000 1000 setuidgid -g 1000,1001 1000 cp + f=b1 + shift + u=1000 + shift + g=1000 + shift + rm -f b + setuidgid -g 1000,1001 1000 cp b1 b ++ stat -c '%u %g' b + s='1000 1000' + test 'x1000 1000' '!=' 'x1000 1000' + t1 c0 1000 1000 cp + f=c0 + shift + u=1000 + shift + g=1000 + shift + t0 c0 1000 1000 setuidgid -g 1000,1001 1000 cp + f=c0 + shift + u=1000 + shift + g=1000 + shift + rm -f b + setuidgid -g 1000,1001 1000 cp c0 b ++ stat -c '%u %g' b + s='1000 1000' + test 'x1000 1000' '!=' 'x1000 1000' + t1 c1 1000 1000 cp + f=c1 + shift + u=1000 + shift + g=1000 + shift + t0 c1 1000 1000 setuidgid -g 1000,1001 1000 cp + f=c1 + shift + u=1000 + shift + g=1000 + shift + rm -f b + setuidgid -g 1000,1001 1000 cp c1 b ++ stat -c '%u %g' b + s='1000 1000' + test 'x1000 1000' '!=' 'x1000 1000' + t1 a0 1000 1000 cp -p + f=a0 + shift + u=1000 + shift + g=1000 + shift + t0 a0 1000 1000 setuidgid -g 1000,1001 1000 cp -p + f=a0 + shift + u=1000 + shift + g=1000 + shift + rm -f b + setuidgid -g 1000,1001 1000 cp -p a0 b ++ stat -c '%u %g' b + s='1000 1000' + test 'x1000 1000' '!=' 'x1000 1000' + t1 b0 1000 1000 cp -p + f=b0 + shift + u=1000 + shift + g=1000 + shift + t0 b0 1000 1000
Re: AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
Voelker, Bernhard wrote: Jim Meyering wrote: Please run this command from your build directory cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } and tell us what it prints. somehow, my shell (/bin/ksh) doesn't like the { ... } syntax here: $ cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } it waits for the command to be continued ... I can't see why you need a trailing ; inside the {}
Re: AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
On Wed, 19 Aug 2009, Voelker, Bernhard wrote: somehow, my shell (/bin/ksh) doesn't like the { ... } syntax here: $ cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } it waits for the command to be continued ... I can't see why That's not quite valid (POSIX) sh, which requires a ; following every command. Replacing the { ... } by ( ... ), it prints this: $ cd src ( ./touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b ) removed `b' `a' - `b' This does the same thing but uses a subshell, which makes no difference in this example. Cheers, Phil
Re: AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
Voelker, Bernhard wrote: Jim Meyering wrote: Please run this command from your build directory cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } and tell us what it prints. somehow, my shell (/bin/ksh) doesn't like the { ... } syntax here: $ cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } it waits for the command to be continued ... I can't see why Replacing the { ... } by ( ... ), it prints this: $ cd src ( ./touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b ) removed `b' `a' - `b' Thanks. That's good, in that it produces the expected output. But it doesn't help me see why that test is failing for you. Long-term, best for you would be to install GNU diffutils. If you can do that now, that'd be best, because then when a test fails, it'll show us the actual diffs rather than having to resort to using cmp and simply saying the files differed. If you cannot install diffutils right now, please insert this line at the end of test-lib.sh: compare() { diff -c $@; } and rerun that failing install-C test. That should make it output useful diff output when the test fails.
AW: AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
Jim Meyering wrote: Long-term, best for you would be to install GNU diffutils. done: === GNU coreutils 7.4.127-d2510: tests/test-suite.log === 1 of 1 test failed. .. contents:: :depth: 2 FAIL: install/install-C (exit: 1) = + ginstall --version install (GNU coreutils) 7.4.127-d2510 Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by David MacKenzie. + . ./test-lib.sh ++ unset function_test ++ eval 'function_test() { return 11; }; function_test' +++ function_test +++ return 11 ++ test 11 '!=' 11 +++ pwd ++ test_dir_=/vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/tests +++ this_test_ +++ echo ././install/install-C +++ sed 's,.*/,,' ++ this_test=install-C +++ /vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/src/mktemp -d --tmp=/vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/tests cu-install-C.XX ++ t_=/vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/tests/cu-install-C.zJ5 O9yijiw ++ trap remove_tmp_ 0 ++ trap 'Exit $?' 1 2 13 15 ++ cd /vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/tests/cu-install-C.zJ5O9y ijiw ++ diff --version ++ grep GNU + skip_if_setgid_ + setgid_tmpdir=setgid-3612 + umask 77 + mkdir setgid-3612 ++ stat --printf %A setgid-3612 + perms=drwx-- + rmdir setgid-3612 + case $perms in + mode1=0644 + mode2=0755 + mode3=2755 + fail=0 + echo test + echo '`a'\'' - `b'\''' + echo 'removed `b'\'' `a'\'' - `b'\''' + ginstall -Cv -m0644 a b + compare out out_installed_first + diff -u out out_installed_first + ginstall -Cv -m0644 a b + compare out out_empty + diff -u out out_empty + ginstall -v --compare -m0644 a b + compare out out_empty + diff -u out out_empty + ginstall -v -m0644 a b + compare out out_installed_second + diff -u out out_installed_second + ginstall -Cv -m2755 a b + compare out out_installed_second + diff -u out out_installed_second + ginstall -Cv -m2755 a b + compare out out_installed_second + diff -u out out_installed_second --- out 2009-08-19 12:43:25.668663000 +0200 +++ out_installed_second2009-08-19 12:43:25.61945 +0200 @@ -0,0 +1,2 @@ +removed `b' +`a' - `b' + fail=1 + ln -s a c + ln -s b d + ginstall -Cv -m0644 c d + echo 'removed `d'\'' `c'\'' - `d'\''' + compare out out_installed_second_cd + diff -u out out_installed_second_cd + echo test1 + ginstall -Cv -m0644 a b + compare out out_installed_second + diff -u out out_installed_second + ginstall -Cv -m0644 a b + compare out out_empty + diff -u out out_empty + echo test2 + ginstall -Cv -m0644 a b + compare out out_installed_second + diff -u out out_installed_second + ginstall -Cv -m0644 a b + compare out out_empty + diff -u out out_empty + ginstall -Cv -m0755 a b + compare out out_installed_second + diff -u out out_installed_second + ginstall -Cv -m0755 a b + compare out out_empty + diff -u out out_empty + ginstall -C --preserve-timestamps a b ginstall: options --compare (-C) and --preserve-timestamps are mutually exclusive Try `ginstall --help' for more information. + ginstall -C --strip --strip-program=echo a b ginstall: options --compare (-C) and --strip are mutually exclusive Try `ginstall --help' for more information. + Exit 1 + set +e + exit 1 + exit 1 + remove_tmp_ + __st=1 + cleanup_ + : + cd /vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/tests + chmod -R u+rwx /vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/tests/cu-install-C.zJ5O9y ijiw + rm -rf /vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/tests/cu-install-C.zJ5O9y ijiw + exit 1
Re: AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
Voelker, Bernhard wrote: Jim Meyering wrote: Please run this command from your build directory cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } and tell us what it prints. somehow, my shell (/bin/ksh) doesn't like the { ... } syntax here: $ cd src { touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b } it waits for the command to be continued ... I can't see why Replacing the { ... } by ( ... ), it prints this: $ cd src ( ./touch a b; mode3=2755; ./ginstall -Cv -m$mode3 a b ) removed `b' `a' - `b' Thanks. Almost there. Your test output when using GNU diff gave a clue. The *second* time that command is run, it appears to print nothing. Do this in src/: ./touch a b; mode3=2755 ./ginstall -Cv -m$mode3 a b ./ginstall -Cv -m$mode3 a b If the second invocation of ginstall doesn't print anything, that indicates a problem and is why the test is failing. In that case, if you can step through it in gdb, that'd be nice. Otherwise, run it under truss: truss -o log ./ginstall -Cv -m$mode3 a b and send the resulting log file.
AW: AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
Jim Meyering wrote: The *second* time that command is run, it appears to print nothing. Do this in src/: ./touch a b; mode3=2755 ./ginstall -Cv -m$mode3 a b ./ginstall -Cv -m$mode3 a b Bingo! If the second invocation of ginstall doesn't print anything, that indicates a problem and is why the test is failing. In that case, if you can step through it in gdb, that'd be nice. no gdb here, sorry ;-( Otherwise, run it under truss: truss -o log ./ginstall -Cv -m$mode3 a b and send the resulting log file. here u are - hope that helps on this long search (thanx for your patience BTW): execve(ginstall, 0xFFBFFB84, 0xFFBFFB9C) argc = 5 resolvepath(/usr/lib/ld.so.1, /lib/ld.so.1, 1023) = 12 getcwd(/vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/src, 1014) = 0 resolvepath(/vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/src/ginstall , /vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/src/ginstall, 1023) = 59 stat(/vol1/home1/ecs2/depot/coreutils-7.4.127-d2510/src/ginstall, 0xFFBFF960) = 0 open(/var/ld/ld.config, O_RDONLY) Err#2 ENOENT stat(/lib/libgen.so.1, 0xFFBFF418)= 0 resolvepath(/lib/libgen.so.1, /lib/libgen.so.1, 1023) = 16 open(/lib/libgen.so.1, O_RDONLY) = 3 mmap(0x0001, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) = 0xFF3A mmap(0x0001, 98304, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF38 mmap(0xFF38, 22089, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFF38 mmap(0xFF396000, 2303, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 24576) = 0xFF396000 munmap(0xFF386000, 65536) = 0 memcntl(0xFF38, 5656, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 close(3)= 0 stat(/lib/libsec.so.1, 0xFFBFF418)= 0 resolvepath(/lib/libsec.so.1, /lib/libsec.so.1, 1023) = 16 open(/lib/libsec.so.1, O_RDONLY) = 3 mmap(0xFF3A, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF3A mmap(0x0001, 147456, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF35 mmap(0xFF35, 56009, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFF35 mmap(0xFF36E000, 13477, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 57344) = 0xFF36E000 mmap(0xFF372000, 5744, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFF372000 munmap(0xFF35E000, 65536) = 0 memcntl(0xFF35, 14220, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 close(3)= 0 stat(/lib/libc.so.1, 0xFFBFF418) = 0 resolvepath(/lib/libc.so.1, /lib/libc.so.1, 1023) = 14 open(/lib/libc.so.1, O_RDONLY)= 3 mmap(0xFF3A, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF3A mmap(0x0001, 1015808, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF20 mmap(0xFF20, 905381, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFF20 mmap(0xFF2EE000, 32401, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 909312) = 0xFF2EE000 mmap(0xFF2F6000, 6368, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFF2F6000 munmap(0xFF2DE000, 65536) = 0 mmap(0x, 8192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFF34 memcntl(0xFF20, 144020, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 close(3)= 0 stat(/lib/libavl.so.1, 0xFFBFF418)= 0 resolvepath(/lib/libavl.so.1, /lib/libavl.so.1, 1023) = 16 open(/lib/libavl.so.1, O_RDONLY) = 3 mmap(0xFF3A, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF3A mmap(0x0001, 81920, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF32 mmap(0xFF32, 3260, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFF32 mmap(0xFF332000, 296, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 8192) = 0xFF332000 munmap(0xFF322000, 65536) = 0 memcntl(0xFF32, 1096, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 close(3)= 0 mmap(0x0001, 24576, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF31 munmap(0xFF3A, 32768) = 0 getcontext(0xFFBFF650) getrlimit(RLIMIT_STACK, 0xFFBFF630) = 0 getpid()= 26801 [26800] setustack(0xFF312A88) brk(0x000655B0) = 0 brk(0x000675B0) = 0 stat(/platform/SUNW,SPARC-Enterprise/lib/libc_psr.so.1, 0xFFBFEF78) = 0 resolvepath(/platform/SUNW,SPARC-Enterprise/lib/libc_psr.so.1, /platform/sun4u-opl/lib/libc_psr.so.1, 1023) = 37 open(/platform/SUNW,SPARC-Enterprise/lib/libc_psr.so.1, O_RDONLY) = 3 mmap(0x0001, 32768,
bug in date command
date +%^B gives the month in capital letters but in french august is août, and the accentued letter is not capitalized date +%^B gives AOûT instead of AOÛT In addition, is there any option to have lowercase ? Thanks
Multi-character field separators in sort
Greetings I'm sure this question has come up, but I cannot find the answer in the archives. I have a make file generated by a third-party python script with the following line that I am trying to run in bash on CentOS 5.2: set -o pipefail; cat s_1_1_export.txt | \ awk -F$'\t' '$13 != $NF == Y {OFS=\t; --NF; $13 = sprintf(%011d, $13+1); print $0}' | \ sort -T . --field-separator= --buffer-size=500M -k11,13 | \ awk -F$'\t' '{OFS=\t; $13 = $13-1; print $0}' s_1_1_sorted.txt.tmp mv s_1_1_sorted.txt.tmp s_1_1_sorted.txt I am having two problems with the sort command. The first is that it reports sort: cannot create temporary file: ./sortdKFMLK: Permission denied. The directory permissions are wide open. I solved that by increasing the buffer to 1000M. The second problem persists. The 3- space field separator is generating an error, sort: multi-character tab ' . I've found a lot of discussion about how various shells treat escaped characters, but I'm looking for a definitive statement that sort can handle separators with more than one character (or not). I have v5.97 of the coreutils and b3.2.25(1) of bash. Thanks Mike
Re: bug in date command
Prog piR wrote: date +%^B gives the month in capital letters but in french august is août, and the accentued letter is not capitalized date +%^B gives AOûT instead of AOÛT Nor does tr '[:lower:]' '[:upper:]' support multibyte chars either, I'll add that to the list of multibyte stuff I need to look at. In addition, is there any option to have lowercase ? The ^ and # flags are GNU extensions. I guess for consistency we could add lower. cheers, Pádraig.
Multi-character tab problem in sort
Greetings I found a definition in the make file: # The quote marks below contain a tab character SORT_BY_TAB:=sort -T . --field-separator= which means it's back to a tab problem which I think I can sort out from the archives. Thanks Mike
Re: AW: AW: AW: AW: AW: AW: new snapshot available: coreutils-7.4.125-eca6
Voelker, Bernhard wrote: Jim Meyering wrote: The *second* time that command is run, it appears to print nothing. Do this in src/: ./touch a b; mode3=2755 ./ginstall -Cv -m$mode3 a b ./ginstall -Cv -m$mode3 a b Bingo! If the second invocation of ginstall doesn't print anything, that indicates a problem and is why the test is failing. In that case, if you can step through it in gdb, that'd be nice. no gdb here, sorry ;-( Otherwise, run it under truss: truss -o log ./ginstall -Cv -m$mode3 a b and send the resulting log file. here u are - hope that helps on this long search (thanx for your patience BTW): ... getppriv(PRIV_EFFECTIVE, {000400038800}) = 0 umask(0)= 027 stat64(b, 0xFFBFF8F8) = 0 lstat64(a, 0xFFBFF7A0)= 0 lstat64(b, 0xFFBFF708)= 0 getuid()= 26425 [26425] getgid()= 17307 [17307] open64(a, O_RDONLY) = 3 open64(b, O_RDONLY) = 4 read(3, 0x00063088, 4096) = 0 close(3)= 0 close(4)= 0 chmod(b, 02755) = 0 llseek(0, 0, SEEK_CUR) = 7984 close(0)= 0 close(1)= 0 close(2)= 0 _exit(0) I'm beginning to think there's a fundamental problem with your system. Here's the comparable part of truss output on a working Solaris 10 system: getppriv(PRIV_EFFECTIVE, {000400038800}) = 0 umask(0)= 022 stat64(b, 0xFFBFFB08) = 0 brk(0x0003AE60) = 0 brk(0x0003CE60) = 0 fcntl(1, F_GETFL) = 8194 fstat64(2, 0xFFBFEB38) = 0 write(2, . / g i n s t a l l, 10)= 10 write(2, : , 2) = 2 write(2, t h e - - c o m p a r.., 85) = 85 write(2, \n, 1) = 1 stat64(a, 0xFFBFF720) = 0 lstat64(b, 0xFFBFF688)= 0 unlink(b) = 0 ioctl(1, TCGETA, 0xFFBFE614)= 0 fstat64(1, 0xFFBFE530) = 0 write(1, r e m o v e d ` b '\n, 12)= 12 write(1, ` a ' -` b '\n, 11) = 11 open64(a, O_RDONLY) = 3 fstat64(3, 0xFFBFF550) = 0 open64(b, O_WRONLY|O_CREAT|O_EXCL, 0644) = 4 fstat64(4, 0xFFBFF5E8) = 0 sysconfig(_CONFIG_PAGESIZE) = 8192 brk(0x0003CE60) = 0 brk(0x00046E60) = 0 read(3, 0x0003E000, 32768) = 0 brk(0x00046E60) = 0 brk(0x00048E60) = 0 fstat64(4, 0xFFBFF200) = 0 fpathconf(4, 20)= 0 facl(4, SETACL, 4, 0x00046F28) Err#89 ENOSYS fchmod(4, 0600) = 0 close(4)= 0 close(3)= 0 chmod(b, 02755) = 0 llseek(0, 0, SEEK_CUR) = 365471 close(0)= 0 close(1)= 0 close(2)= 0 _exit(0) The simple fact that your run somehow fails to output the diagnostic from install.c: ./ginstall: the --compare (-C) option is ignored when you specify a mode with non-permission bits says something is very wrong. Remember, you did not compile with gcc. Unless someone can suggest an alternative explanation, I'll have to assume this is not a problem with coreutils.
[PATCH] tests: make install-C slightly less prone to confusion
FYI, a tiny test tweak: From a70ac4ef3236afdd1e23e30c1094a2c3557d7c70 Mon Sep 17 00:00:00 2001 From: Jim Meyering meyer...@redhat.com Date: Wed, 19 Aug 2009 17:10:23 +0200 Subject: [PATCH] tests: make install-C slightly less prone to confusion * tests/install/install-C: Invoke framework_failure, if necessary. --- tests/install/install-C |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/install/install-C b/tests/install/install-C index 959bee1..a1a9d68 100755 --- a/tests/install/install-C +++ b/tests/install/install-C @@ -31,10 +31,10 @@ mode3=2755 fail=0 echo test a || framework_failure -echo \`a' - \`b' out_installed_first +echo \`a' - \`b' out_installed_first || framework_failure echo removed \`b' -\`a' - \`b' out_installed_second - out_empty +\`a' - \`b' out_installed_second || framework_failure +: out_empty || framework_failure # destination file does not exist ginstall -Cv -m$mode1 a b out || fail=1 -- 1.6.4.378.g88f2f
Re: new snapshot available: coreutils-7.4.132-a70ac; 7.5 due out tomorrow
On Wed, 2009-08-19 at 22:28 +0200, Jim Meyering wrote: Have any of you found anything worth addressing for 7.5? Otherwise, I'll make the release tomorrow. make check and check-root passed. Ubuntu 9.10. signature.asc Description: This is a digitally signed message part