Mail Archives: djgpp/1997/06/04/02:55:08
On Tue, 3 Jun 1997, Paul Moore wrote:
> Is there support in djgpp for the "mount" command from Unix?
No.
> Bash, for
> example, needs the /tmp directory (hard coded) - I don't have a /tmp
> directory (and certainly not on all my drives), and what I'd like to
> do is mount C:\WINDOWS\TEMP as /tmp.
You shouldn't really need this. Any shell script that mentions "/tmp"
verbatim is IMHO broken and should be fixed (just change it to
${TMPDIR-/tmp}). Most scripts I saw lately are free of this problem.
Programs also look at $TMPDIR before they default to "/tmp". I'm
running both shell scripts and Unix-born programs a lot, and I don't
have /tmp either.
Bash has a feature that can help you if you still need literal "/tmp":
set SYSROOT=c:/windows, then /tmp will map to c:/windows/tmp. But
beware: /bin will then map to c:/windows/bin, etc.; and /dev/null
emulation won't work either (the latter is a bug that should be fixed
in the next release of the Bash port).
> Cygwin32 (the Cygnus Gnu for Win32 port) can do this. But it's so SLOW
> compared to djgpp :-(
IMHO, this Cygwin32 solution is a bad idea, since it only works for
Cygwin32 tools. If you invoke a non-Cygwin program with "/tmp", it
won't know about the `mount' magic, and will therefore fail. Thus the
DJGPP port of Bash converts the pathnames back to their DOS form when
it calls external programs, which is functionally the same as what
`mount' does, but works with non-DJGPP programs also. I think this is
a better solution, but it makes the ported Bash work harder. Cygnus
just took an easier way, but you pay the price.
- Raw text -