delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2003/01/23/16:26:11

Date: Thu, 23 Jan 2003 21:27:40 +0000
From: "Richard Dawe" <rich AT phekda DOT freeserve DOT co DOT uk>
Sender: rich AT phekda DOT freeserve DOT co DOT uk
To: djgpp-workers AT delorie DOT com
X-Mailer: Emacs 21.3.50 (via feedmail 8.3.emacs20_6 I) and Blat ver 1.8.6
Subject: symlinks: another failing test case - c://dev/env/DJDIR/...
Message-Id: <E18borK-0000Ze-00@phekda.freeserve.co.uk>
Reply-To: djgpp-workers AT delorie DOT com

Hello.

Below is a script that tries various tests and a log. A symlink
to c://dev/env/DJDIR/rdawe-test/symlink/d cannot be resolved.

Bye, Rich =]

---Start log---
create symbolic link `a' to `b'
create symbolic link `b' to `c'
create symbolic link `c' to `d'
foo
create symbolic link `t-dir/d' to `../d'
foo
create symbolic link `e' to `c:/../../../../../djgpp.204/rdawe-test/symlink/d'
c:/djgpp.204/bin/cat.exe: e: No such file or directory (ENOENT)
create symbolic link `f' to `/dev/env/DJDIR/rdawe-test/symlink/d'
foo
create symbolic link `g' to `c:/dev/env/DJDIR/rdawe-test/symlink/d'
foo
create symbolic link `h' to `c://dev/env/DJDIR/rdawe-test/symlink/d'
c:/djgpp.204/bin/cat.exe: h: No such file or directory (ENOENT)
---End log---

---Start test-sym.sh---
#!/bin/bash

CAT=${CAT-cat}
LN=${LN-ln}
MKDIR=${MKDIR-mkdir}

if [ "a$1" = "a-x" ]; then
    set -x
    shift
fi

# Chain of symlinks
$LN -fnsv b a
$LN -fnsv c b
$LN -fnsv d c
echo foo > d
$CAT d

# Relative symlink
$MKDIR -p t-dir
$LN -fnsv ../d t-dir/d
$CAT t-dir/d

# Too many dots
here=$(pwd)
dotty=$(echo $here | sed -e 's:/:/\.\./\.\./\.\./\.\./\.\./:')

$LN -fnsv ${dotty}/d e
$CAT e

# If this directory is under /dev/env/DJDIR, try putting that in a symlink.
drive=$(echo $here | sed -e 's!^\(.:\).*!\1!')
wibble=$(echo $here | sed -e "s!^$DJDIR!/dev/env/DJDIR!")

if [ "a$wibble" != "a" ]; then
    $LN -fnsv ${wibble}/d f
    $CAT f

    if [ "a$drive" != "a" ]; then
	$LN -fnsv ${drive}${wibble}/d g
	$CAT g

	# Chuck in an extra slash, to spice things up.
	$LN -fnsv ${drive}/${wibble}/d h
	$CAT h
    fi
fi
---End test-sym.sh---

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019