This is the mail archive of the cygwin@sourceware.cygnus.com 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]

Port of BASH-1.14.2 to WINNT


I've found a port of BASH to native WINNT at this URL:

http://wwwhost.cc.utexas.edu/ftp/microlab/nt/new

This port is by Paul Budnik of Mountain Math Software.  I've included 
his description of the port below.

I know that this port runs and executes simple commands.  I haven't yet 
given it a good configure script test.  I haven't tried in on W95.

-        \\||//
---o0O0--Earnie--0O0o----
-earnie_boyd@hotmail.com-
------ooo0O--O0ooo-------


-------------- microlab/nt/new/bash_nt-1.14.2.txt -------------------
I have uploaded the file `bash_nt-1.14.2.tar' to
//microlib.cc.utexas.edu/microlib/nt/incoming
This is Mountain Math Software's port of GNU Bash to
Windows NT. If you dearchive this file it will create the
following files under directory `bash_nt-1.14.2'.

      420 Dec 17 21:18 00index.txt
     1061 Dec 17 21:11 IAFA-bash_nt-1.14.2
   172280 Dec 17 21:12 bash_nt-1.14.2-bin.tar.gz
   248250 Dec 17 21:12 bash_nt-1.14.2-doc.tar.gz
  1360312 Dec 17 21:11 bash_nt-1.14.2-src.tar.gz

I assume the plase to put it would be under
`microlib/nt/gnu/bash_nt-1.14.2'.

I am posting the attached announcement which describes the
package. I would appreciate it if you could send me a message
saying in what directories you placed the files.

Thanks,

Paul Budnik

______________________________

Mountain Math Software announces the Beta site release of a port of 
`bash'
the `born again shell' to Windows NT 3.5. This port is based on GNU code
and uses some of the Downhill Project code but it is solely the
responsibility of Mountain Math Software. 

Although this is a somewhat crippled and not fully compatible `bash' it
is still immensely superior to `cmd.exe'. There are many things one
needs to do, especially in working with large software projects, that
require a fully functioning command line shell. This port of `bash'
is a freely distributable (under the GNU General Public License) shell
that meets that need.

I have uploaded the code to `SunSITE.unc.edu' and 
`microlib.cc.utexas.edu'

I will post a second message when I know exactly where the files will
be located. There are three archives:

    bash_nt-1.14.2_bin_tar.gz -- executables and installation 
instructions
    bash_nt-1.14.2_src_tar.gz -- source code
    bash_nt-1.14.2_doc_tar.gz -- postscript format documentation




    Porting issues and limitations

If GNU is not Unix Windows NT is not even remotely close. The biggest
problem in porting bash is the lack of a fork on Windows NT. There
is no way to replace forks with threads and spawns in the existing
code without an extensive rewrite. I did not do this and as a result
this port is not a full implementation and some of what has
been implemented is not fully compatible with standard bash.
There remains a high level of compatibility and many existing scripts
should work with little or no modification.

    Known limitations and incompatibilities

1. Job control is not implemented. This is not so serious a
limitation on a windows system. If you execute a disk command
with no pipes in background mode (using &) it will execute in
a separate window. This provides some of the advantages of job
control.

2. Internal commands that get input from a pipe are converted
to disk commands (bash -c string) and thus operate in a different
environment then they do in standard bash. I am not sure
how much difference this makes. Note `history | more' works
as you would expect because you are not piping the *input*
of history.

3. Executing commands in parenthesis is not implemented. You will
get an error message saying this is not supported in this
implementation.

4. There is no support for signals other than to catch and
ignore ^C. (You cannot do a longjmp inside a Window NT signal
handler and the existing bash code makes heavy use of this.)

5. If a shell has its input redirected to a file and it invokes
a disk command or subshell the invoked command cannot read from
the same file at the point the calling shell stopped reading.
(I do not know how or if this can be made to work on Windows NT.
If you know how to make it work please let me know.)

6. There are certainly others. I would appreciate feedback on what
is missing and what you consider important.


        Motivation

I am doing this because I want to port a large application that
is in part a development environment from Linux to Windows 95. Bash
is essential to make this practical.

In a broader context I would like to see bridges developed so much of
the software that will be developed for Window 95 will not be tied
to Microsoft's way of doing things or to their operating systems.
Providing the GNU tools on windows NT is one way of doing this. The
port of other GNU tools provided by Congruent combined with bash makes
Windows NT much closer to Unix. The Hamilton C shell is a commercial
alternative that also makes the NT environment Unix like.

Anyone interested in making applications portable between Windows 95
and Unix should also look into Fresco. This tool can provide GUI 
portability
between Windows NT (and presumably Windows 95)  and Unix.

        NO WARRANTY

BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
MOUNTAIN MATH SOFTWARE AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS"
WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY
AND PERFORMANCE OF THE PROGRAM IS WITH THE USER. SHOULD THE PROGRAM 
PROVE
DEFECTIVE, THE USER ASSUMES THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.


Paul Budnik
support@mtnmath.com
Mountain Math Software
P. O. Box 2124
Saratoga, CA 95070


______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".


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