It complains about not being able to find a file +16c. tail +16c should be changed to tail -c +16, because tail no longer recognises all of the old options. And while it still recognises -1, it does this with a warning that this option will be removed in the future, so I changed that too. Reproducible: Always Steps to Reproduce:
Created attachment 40607 [details, diff] gcc-2.95.3-posixtail.patch
fixed in cvs, thanks
Hi, sorry to reopen this, but the current fix doesn't really work that well. It does install (thanks!), but very basic checks that gcc was compiled correctly are disabled now because tail fails differently (if I understand correctly), and a lot of error messages (all the same) are shown: tail: +16c: invalid number of lines The fixheadtails eclass only correctly changes [-+]# to -n [-+]#; it doesn't change [-+]#c to -c [-+]#. That means it changes +16c to -n +16c instead of -c +16. Could you replace -e 's/tail \([-+]\)\(.*\)/tail -n \1\2/' with -e 's/tail \([-+][0-9]\+\)c\(.*\)/tail -c \1\2/' \ -e 's/tail \([-+][0-9]\+\)\(.*\)/tail -n \1\2/' ? (The eclass may have similar problems with head, but I don't know if anything uses #c with head (assuming that was ever valid) - I know this version of gcc doesn't.)
this should now be fixed in cvs. please check.
Sorry, but it's still not working. Now the error message is tail: c: invalid number of lines The reason for that is that the first replacement changes tail +16c to tail -c +16, and the second then changes that to tail -n -c +16. That's also the reason I added [0-9] in my last comment. Also, the current solution 's/tail \([-+]\)\(.*\)c/tail -c \1\2/' causes errors whenever a filename following tail -# contains a c. tail -1 c-example is changed to tail -n -c 1 -example, for example, instead of tail -n -1 c-example.
The current eclass works. Thanks!