git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Work around broken ln on solaris as used in t8006

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 21, 2011, 01:02 UTC
Message-ID
<7vd3lluvze.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1300665586-24512-1-git-send-email-bwalton@artsci.utoronto.ca>
Ben Walton <bwalton@artsci.utoronto.ca> writes:
> The test setup in t8006-blame-textconv.sh used ln -sf to overwrite an
> existing symlink.  Unfortunately, both /usr/bin/ln and
> /usr/xpg4/bin/ln on solaris 9 don't properly handle -f when -s is
> used.

Thanks for reporting. I recall "ln -s -f" traditionally has been a pain point not just on Solaris.

Show 5 quoted lines
> This caused the test setup to fail which caused subsequent
> checks to also fail.
>
> This patch uses changes the first check in the test to rm the symlink
> and then create the new symlink using only -s.
s/uses //; I think.

It is curious why "rm symlink.bin" is not inside the test-have-prereq part, iow, immediately before the problematic "ln -s", where it logically belongs to, though. What does the updated code do on systems without symbolic link support?

Show 23 quoted lines
> The upstream Solaris bug (fixed in 10, but not 9) is documented here:
> http://bugs.opensolaris.org/view_bug.do?bug_id=4372462
>
> Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
> ---
>  t/t8006-blame-textconv.sh |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/t/t8006-blame-textconv.sh b/t/t8006-blame-textconv.sh
> index ea64cd8..c5362d9 100755
> --- a/t/t8006-blame-textconv.sh
> +++ b/t/t8006-blame-textconv.sh
> @@ -24,8 +24,9 @@ test_expect_success 'setup ' '
>  	GIT_AUTHOR_NAME=Number1 git commit -a -m First --date="2010-01-01 18:00:00" &&
>  	echo "bin: test 1 version 2" >one.bin &&
>  	echo "bin: test number 2 version 2" >>two.bin &&
> +	rm symlink.bin &&
>  	if test_have_prereq SYMLINKS; then
> -		ln -sf two.bin symlink.bin
> +		ln -s two.bin symlink.bin
>  	fi &&
>  	GIT_AUTHOR_NAME=Number2 git commit -a -m Second --date="2010-01-01 20:00:00"
>  '
Previous: Ben WaltonNext: Ben Walton
Message 3 of 6 in “Work around broken ln on solaris as used in t8006”
  1. Work around broken ln on solaris as used in t8006Ben Walton, Mar 20, 2011
  2. Work around broken ln on solaris as used in t8006Ben Walton, Mar 21, 2011
  3. Junio C HamanoMar 21, 2011
  4. Ben WaltonMar 21, 2011
  5. Work around broken ln on solaris as used in t8006Ben Walton, Mar 21, 2011
  6. Junio C HamanoMar 21, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.