From owner-freebsd-hackers@FreeBSD.ORG Tue Nov 6 16:17:57 2007 Return-Path: Delivered-To: hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E170116A421 for ; Tue, 6 Nov 2007 16:17:57 +0000 (UTC) (envelope-from jhs@berklix.org) Received: from thin.berklix.org (thin.berklix.org [194.246.123.68]) by mx1.freebsd.org (Postfix) with ESMTP id 64D9113C4B5 for ; Tue, 6 Nov 2007 16:17:57 +0000 (UTC) (envelope-from jhs@berklix.org) Received: from js.berklix.net (p549A5915.dip.t-dialin.net [84.154.89.21]) (authenticated bits=128) by thin.berklix.org (8.12.11/8.12.11) with ESMTP id lA6GHrKL047985; Tue, 6 Nov 2007 17:17:54 +0100 (CET) (envelope-from jhs@berklix.org) Received: from fire.js.berklix.net (fire.js.berklix.net [192.168.91.41]) by js.berklix.net (8.13.8/8.13.8) with ESMTP id lA6GKE44020001; Tue, 6 Nov 2007 17:20:14 +0100 (CET) (envelope-from jhs@berklix.org) Received: from fire.js.berklix.net (localhost.js.berklix.net [127.0.0.1]) by fire.js.berklix.net (8.13.8/8.13.8) with ESMTP id lA6GKE8L090019; Tue, 6 Nov 2007 17:20:14 +0100 (CET) (envelope-from jhs@fire.js.berklix.net) Message-Id: <200711061620.lA6GKE8L090019@fire.js.berklix.net> To: Harti Brandt In-reply-to: <20071105085259.A39496@knop-beagle.kn.op.dlr.de> References: <200711050002.lA502KUe064392@fire.js.berklix.net> <20071105085259.A39496@knop-beagle.kn.op.dlr.de> Comments: In-reply-to Harti Brandt message dated "Mon, 05 Nov 2007 08:58:52 +0100." Date: Tue, 06 Nov 2007 17:20:14 +0100 From: "Julian H. Stacey" Cc: hackers@freebsd.org Subject: Re: make: evaluation of symbolic link with ../ fails X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Nov 2007 16:17:58 -0000 Hi Harti cc Hackers, Thanks for answer. > Are you sure that this is not a problem with /bin/sh? Good question ! I think you'r right. I tested several shells with [ Effectively: ln -s /usra/jhs/xtra/pics /usra/home/jhs/pics ] + source `which unsetenv.csh` [ sh, bash, csh, ksh, zsh ] cd /usra/home/jhs ; cd pics/.. ; pwd ; /bin/pwd & got these results: sh: /usra/home/jhs /usra/home/jhs bash: /usra/home/jhs /usra/home/jhs csh: /usra/jhs/xtra /usra/jhs/xtra ksh: /usra/home/jhs /usra/home/jhs zsh: /usr/home/jhs /usra/home/jhs > Make always execs a > shell if it finds special symbols like ';' in the line. It does not > interprete the cd. > > What shell are you using (I mean in which shell did you do the successful > tests above)? Csh > Try something like: > > SHELL: name="sh" path="/path/to/your/shell" > > in the Makefile (given that you're not using a c-shell). If it works then > the problem is in /bin/sh. My Makefile specifies no shell (so I assume it uses /bin/sh) My Makefile did have a .include but I have just hashed it out & I have no other include line that might include specification elsewhere of shell. FreeBSD includes leave shell unchanged: cd /usr/share/mk ; grep -i SHELL * sys.mk:SHELL ?= sh It seems to me that all except csh (including bourne shell !) are broken !! Amazing ! None of them cope properly actually following symbolic links, they all make false premise the /some_path/.. == /some_path ! -- Julian Stacey. Munich Computer Consultant, BSD Unix C Linux. http://berklix.com Ihr Rauch=mein allergischer Kopfschmerz. Dump cigs 4 snuff. Q: Global warming,pollution,water,fish,fuel shortages etc. A: Contraception.