This is the mail archive of the cygwin@cygwin.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]
Other format: [Raw text]

idea for a new project, libntcmd


Currently there is a fundamental divide between the cmd.exe shell and a
unix shell, even on windows with Cygwin.

A source project can of course support a native windows build using a
makefile with make --win32, or using dmake
(http://search.cpan.org/author/GSAR/dmake-4.1pl1-win32). Or configure
and build itself using MSYS in mingw or cygwin with gcc -mno-cygwin.

What would be more convenient though, is having a set of modules for
bash and zsh to

1) recognize obvious windows file names rather than escape sequences, so
you could write C:\foo\bar instead of C:\\foo\\bar, or
\windows\system32\... This is not as difficult or ugly as it may sound.

2) support cmd.exe builtins like del/copy/exists/etc, and execute dos
batch files. Things like if and goto, because they're only useful in
batch, would present little problem as well.

This would allow better interaction between the windows and cygwin
worlds, and also be convenient for windows users new to unix. It would
also remove most of the reasons a user might have to use cmd instead of
a cygwin shell. It should also allow for running windows makefiles
as-is.

Much of what would be needed for this project is already provided in the
ReactOS cmd.exe clone:

http://sources.redhat.com/ml/cygwin/2001-05/msg00585.html

I've just built it using the patch above (most of which fails, look at
makefile.rej and add the -mno-cygwin option to $(CC)) and a React OS
apps snapshot from here:

http://www.reactos.com/index.php?tab=software&section=applications

The rest would be creating a library and making an interface to the
library using bash's loadable module support (also for zsh and tcsh
perhaps).

Thoughts? Is this interesting/crazy/impossible?

-- 
Rafael

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.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]