On 4/5/2011 12:50 PM, Arnaud Charlet wrote: >> This: >> $(LN_S) $(fsrcpfx)ada/$(f) $(RTSDIR) >> fits that non-portable pattern > > That's wrong. The above is > > $(LN_S) /full/path/to/a_file a_dir > > which is quite different from > > $(LN_S) a_file a_dir > > and will work equally well with ln or ln -s or cp -p.
A-HA! That's what I was missing; $a_file was an absolute path. But...that works on MSYS too, with LN_S equal to all of those possibilities: $ echo "test data" > /tmp/foo $ ls -li /tmp/foo 3625195 -rw-r--r-- 1 owner group 10 Apr 5 12:53 /tmp/foo $ mkdir bar $ ln -s /tmp/foo bar $ ls -li bar total 1 2969862 -rw-r--r-- 1 owner group 10 Apr 5 12:53 foo (Note that foo is NOT actually a symlink here, because of MSys's fake behavior. It's a copy) $ rm -rf bar $ mkdir bar $ ln /tmp/foo bar $ ls -li bar 3625195 -rw-r--r-- 2 owner group 10 Apr 5 12:53 bar (Note: in this case it is actually a hardlink -- and the link count has increased. MSys supports hardlinks on NTFS file systems, with all the usual caveats -- same device, etc) $ rm -rf bar $ mkdir bar $ cp -p /tmp/foo bar $ ls -li bar total 1 1397010 -rw-r--r-- 1 owner group 10 Apr 5 12:53 foo So, we really really need more info from Kai about WHAT exactly is failing here. >> Ralf recommends that, for >> portability, it should be changed to something like > > And I recommend that we do nothing here because there's nothing broken. Ack. -- Chuck