This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: request for /dev/stdin and friends


On Nov 15 06:40, Eric Blake wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> I know it is possible to create /dev/std{in,out,err} myself, simply making
> symlinks to /proc/self/fd/{0,1,2}, once I create an underlying physical
> /dev directory.  But by doing so, I have made it so that the version of
> bash that I compile detects their existence, and assumes it can use
> /dev/stdin without problems, and then running that version of bash on
> other machines fails because /dev/stdin is not standard in cygwin.  I
> suppose I could try to make the bash postinstall script create a physical
> /dev/ drive, and populate it with std{in,out,err}, but it seems like it
> might be nicer if cygwin/devices.in were to provide them natively for all
> users.

Dunno about that.  On Linux, /dev/std{in,out,err} are just symbolic
links to fd/{0,1,2} and fd is just a symlink to /proc/self/fd.

So what we should do here IMO is to augment the base-files package
to create a /dev directory and create a couple of standard symlinks
in it, which are not covered automatically by the Cygwin DLL.
For a start:

  fd -> /proc/self/fd
  stdin -> fd/0
  stdout -> fd/1
  stderr -> fd/2
  dvd -> scd0
  cdrom -> scd0
  rmt0 -> st0
  nrmt0 -> nst0
  tape -> nst0


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]