From: Torsten Bögershausen Date: Tue, 31 May 2016 05:06:50 GMT Subject: Re: [PATCH] t7800 readlink not found Message-ID: <574D1BEA.5020409@web.de> In-Reply-To: <574CDA24.1020906@googlemail.com> On 05/31/2016 02:26 AM, Armin Kunaschik wrote: > On 05/27/2016 06:19 AM, David Aguilar wrote: >> On Wed, May 25, 2016 at 11:33:33AM +0200, Armin Kunaschik wrote: >> >> Would you mind submitting a patch so that we can support these >> tests when running on AIX/HP-UX? > I don't feel comfortable to submit patches for tests I can't verify. I > don't have valgrind and python/p4 here. Looking to the code I'd say, > patching the p4 tests with "ls -ld | sed" looks quite save. > But I'm not sure about the test-lib.sh. When you are really super > paranoid, as written in the comment, you should probably use perl like > > perl -e 'print readlink $ARGV[0]' $name > > as a replacement. > > So, as suggested by Junio, here the readlink workaround for t7800 only. > (hopefully whitespace clean this time) > > --- 8< --- 8< --- > From: Armin Kunaschik > Subject: t7800: readlink is not portable > > The readlink(1) command is not available on all platforms (notably not > on AIX and HP-UX) and can be replaced in this test with the "workaround" > > ls -ld | sed -e 's/.* -> //' > > This is no universal readlink replacement but works in the controlled > test environment good enough. > > Signed-off-by: Armin Kunaschik > --- > > diff --git a/t/t7800-difftool.sh b/t/t7800-difftool.sh > index 7ce4cd7..905035c 100755 > --- a/t/t7800-difftool.sh > +++ b/t/t7800-difftool.sh > @@ -446,7 +446,7 @@ write_script .git/CHECK_SYMLINKS <<\EOF > for f in file file2 sub/sub > do > echo "$f" > - readlink "$2/$f" > + ls -ld "$2/$f" | sed -e 's/.* -> //' > done >actual > EOF > I don't know how portable #ls -ld" really is. If there is one platform, that doesn't support readlink, would it make sense to implement readlink() in test-lib.sh, similar to what we have for MINGW, e.g. sort() or find() ? And keep t7800 as it is ?