I can't build in Windows, failing in NSPR's now.c. See the description at <http://tersesystems.com/post/1100056.jhtml>, copied below for archiving. I see the same problem. My source lives in e.g. /mozsrc/beonex/mozilla/. Building in src dir (because the installer broke objdir the past). mount says e.g. [...] s:\src\mozsrc\ on /mozsrc type system (binmode) [...] s: on /cygdrive/s type user (binmode,noumount) [...] The error I get is e.g. (cutted and translated)... sh /mozsrc/beonex/mozilla/nsprpub/cygwin-wrapper cl .... /mozsrc/beonex/mozilla/nsprpub/config/now.c command line warning D4002: unknown option '/mozsrc/beonex/mozilla/nsprpub/config/now.c' will be ignored command line error D2003: name of the source file missing make ... Error 2 Filing bug under Mozilla build system, not NSPR, because the webpage suggests that cygwin-wrpaaer is at fault and that's identical between Mozilla and NSPR. Quote <http://tersesystems.com/post/1100056.jhtml>: Still trying to get Mozilla 1.4b to compile properly. After I type 'make -f client.mk build_all', everything goes through a configure stage, and then tries to build with the following: make: Entering directory `/home/wsargent/mozilla/nsprpub/config' sh /home/wsargent/mozilla/nsprpub/build/cygwin-wrapper cl -Fonow.obj -c -W3 -nologo -GF -Gy -MDd -Od -Z7 -UNDEBUG -DDEBUG_wsargent -UWINNT -DMOZILLA_CLIENT=1 -DDEBUG=1 -DXP_PC=1 -DWIN32=1 -D_DEBUG=1 -DWIN95=1 -D_PR_GLOBAL_THREADS_ONLY=1 -D_X86_=1 -DFORCE_PR_LOG /home/wsargent/mozilla/nsprpub/config/now.c Command line warning D4002 : ignoring unknown option '/home/wsargent/mozilla/nsprpub/config/now.c' Command line error D2003 : missing source filename make: *** [now.obj] Error 2 make: Leaving directory `/home/wsargent/mozilla/nsprpub/config' make: *** [export] Error 2 make: Leaving directory `/home/wsargent/mozilla/nsprpub' make: *** [nspr] Error 2 make: Leaving directory `/home/wsargent/mozilla' make: *** [default] Error 2 make: Leaving directory `/home/wsargent/mozilla' make: *** [build] Error 2 I'm pretty sure that's not supposed to happen. Update: well, apparently cl is stupid. Cygwin is smart enough to know that if HOME=d:\home\wsargent and mount -s /home is set, then the appropriate path is /home/wsargent. But cl expects d:/home/wsargent, and cygwin-wrapper will only strip the /cygdrive/ header off of a non-mounted /home. How sucky. Update the second: And it's not like this is a hard problem either. 'cygpath -m $DIR' was designed for exactly this purpose. Grrr.
Not too surprisingly, umounting /mozsrc/ works as a workaround.
Those are 2 separate known issues. See bug 158920#c11 & bug 207521 .
Severity: normal → enhancement
Summary: error D2003 : missing source filename → cannot build on random cygwin mountpoints
What are separate issues? Isn't this is a direct dup of bug 207521?
No, it's not a direct dupe. If it were a direct dupe, then unmounting /mozsrc would not have "fixed" the problem. Bug 207521 is about the specific issue of building under the cygwin / mount point. The problem reported here is about the general problem of not being able to build under a mount point that's not the default mount point (as reported by `mount -p`). Both issues may have become moot now that we always use the cygwin-wrapper when calling cl & friends (bug 210393) but that's not verified. See bug 141834 for the background information on why just blindly calling cygpath would not have worked. See bug 206643 for speed enhancements regarding translating cygdrive paths to dos paths. Oh, and just fyi, we don't use the -m option of cygpath because it was only added around cygwin 1.3.11 and we, for historical reasons, still support cygwin 1.3.x releases prior to that.
Mass reassign of Build/Config bugs to Leaf.
Assignee: mozbugs-build → leaf
"Don't do that"
Status: NEW → RESOLVED
Last Resolved: 13 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.