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]

Re: SHELL on W2K (gmake 3.79.1) is cmd.exe not /bin/sh


Igor Pechtchanski wrote:
<http://cygwin.com/cygwin-ug-net/using-utils.html#MKGROUP>
<http://cygwin.com/cygwin-ug-net/using-utils.html#MKPASSWD>

I guess that you are saying that make uses /etc/passwd when setting SHELL?


I checked on my system and I do have /etc/passwd and /etc/group so I guess I must have run them (it's along time since I installed cygwin).

However, I did try renamimg them, starting a new cygwin shell and running make, and SHELL was still set to /bin/sh.exe

Regards,

Parish

Igor

On Wed, 12 Mar 2003, Parish wrote:

Drash, Jim [NCSUS] wrote:
> did you run a mkpasswd and mkgroup on this person's machine post install?

Not as far as I am aware. I certainly didn't on my system. What effect
does/should this have?

Regards,

Parish

> -----Original Message-----
> From: Parish [mailto:parish at ntlworld dot com]
> Sent: Wednesday, March 12, 2003 10:39 AM
> To: cygwin at cygwin dot com
> Subject: SHELL on W2K (gmake 3.79.1) is cmd.exe not /bin/sh
>
>
> I am trying to help someone get Mozilla building on W2K but we can't get
> it to work because, it appears, the value of SHELL is being set to
> cmd.exe (i.e. COMSPEC). It is being run from the cygwin bash shell.
>
> My setup works fine so I am looking for differences. I got him to run
> make with -p and send me the output. The relevant bits from this are:
>
> # GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
> # Built for i686-pc-cygwin
> # Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000
> #       Free Software Foundation, Inc.
>
> # environment
> COMSPEC = C:\WINNT\system32\cmd.exe
>
> # environment
> PATHEXT = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
>
> # makefile
> SHELL = C:/WINNT/system32/cmd.exe
>
> # makefile
> MAKEFLAGS =  --win32 -p
>
> # environment
> PATH = /usr/local/bin:/usr/bin:/bin:/cygdrive/c/WINNT/system32:
> /cygdrive/c/WINNT:/cygdrive/c/WINNT/System32/Wbem:
> /cygdrive/c/Progra~1/Microsoft SQL Server/80/Tools/BINN:
> /cygdrive/d/Projects/Perl/bin/:/cygdrive/d/projects/nasm:
> /cygdrive/d/Projects/MozTools/bin:/bin:/cygdrive/d/Projects/WinCvs:
> /cygdrive/c/util:/cygdrive/d/Progra~1/Resource Kit/:
> /cygdrive/d/Progra~1/Micros~1/Common/Tools/WinNT:
> /cygdrive/d/Progra~1/Micros~1/Common/MSDev98/Bin:
> /cygdrive/d/Progra~1/Micros~1/Common/Tools:
> /cygdrive/d/Progra~1/Micros~1/VC98/bin:/usr/X11R6/bin
>
> # environment
> MAKE_MODE = unix
>
> On my system SHELL=/bin/sh and MAKEFLAGS= --unix -p, which is correct.
>
> The following are in his environment (and matches mine):
>
> BASH=/bin/bash
> BASH_VERSINFO=([0]="2" [1]="05b" [2]="0" [3]="8" [4]="release"
> [5]="i686-pc-cygwin")
> BASH_VERSION='2.05b.0(8)-release'
> COMSPEC='C:\WINNT\system32\cmd.exe'
> HOME=/cygdrive/d/Projects
> HOSTTYPE=i686
> MACHTYPE=i686-pc-cygwin
> MAKE_MODE=unix
> OPTERR=1
> OPTIND=1
> OS=Windows_NT
> OSTYPE=cygwin
> PATH='/usr/local/bin:/usr/bin:/bin:/cygdrive/d/Projects/Perl/bin/:
> /cygdrive/c/WINNT/system32:/cygdrive/c/WINNT:
> /cygdrive/c/WINNT/System32/Wbem:/cygdrive/c/util:
> /cygdrive/d/Progra~1/Resource Kit/:
> /cygdrive/c/Progra~1/Microsoft SQL Server/80/Tools/BINN:
> /cygdrive/d/Projects/WinCvs:
> /cygdrive/d/Progra~1/Micros~1/Common/Tools/WinNT:
> /cygdrive/d/Progra~1/Micros~1/Common/MSDev98/Bin:
> /cygdrive/d/Progra~1/Micros~1/Common/Tools:
> /cygdrive/d/Progra~1/Micros~1/VC98/bin:/cygdrive/d/projects/nasm:
> /cygdrive/d/Projects/MozTools/bin:/bin:/usr/X11R6/bin'
> PATHEXT='.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH'
> PIPESTATUS=([0]="2")
> SHELL=/bin/bash
> SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
>
> SHLVL=1
>
> He has sh.exe in /bin (/cygdrive/d/Projects/cygwin/bin). I can reproduce
> the problem on my system by renaming sh.exe and he assures me that
> typing ''/bin/sh'' at the bash prompt works.
>
> I've read the section about SHELL in the GNU make manual at
> http://www.gnu.org/manual/make/html_chapter/make_5.html#SEC54 and
> everything seems to be correct.
>
> One other thing, probably as a result of SHELL being cmd.exe, is that
> some paths in the output from make -p are in quotes, e.g.:
>
> # makefile (from `client.mk', line 87)
> TOPSRCDIR := "/cygdrive/d/Projects/mozilla"
>
> line 87 in client.mk being:
>
> TOPSRCDIR := $(shell echo "$(TOPSRCDIR)" | sed -e 's%//%/%')
>
> I'm stumped. What have I/we missed? Can anyone suggest anything else to
> try?
>
> Thanks.
>
> Regards,
> Parish





--
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]