Compiling from folders with VC - problems with paths

Added by David Cowan over 2 years ago

I've been re-organizing my jam project to avoid making modifications to any of the jam files in the jam source tree - and I came across an odd problem - and I'm not sure why it's happening.

When I first started doing jam stuff, I was mucking around and changing stuff in the default c-compilers folder -- but now I've restored that folder back to the repo copy - I'm having problems with VC 2008 not dealing with '/' forward slashes in files.

The error is...

@ C.C++ <Core>COR_CalcHash.obj

        PATH=C:/Program Files (x86)/Microsoft Visual Studio 10.0/Common7/IDE;%PATH%
        SET INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio 10.0\vc\include;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\\Include
        "C:\Program Files (x86)\Microsoft Visual Studio 10.0\vc\bin\cl" /nologo @C:\Users\Hexland\AppData\Local\Temp\jam3 "/Projects/Engine/Core/COR_CalcHash.cpp" 

======================================================================
contents of response file C:\Users\Hexland\AppData\Local\Temp\jam3
/TP /nologo /W3 /GF /TP /Oi /MP /c /Gy /EHsc /Gd /Od /EHsc /W3 /RTC1 /Od /MTd /RTC1 /RTCs /Zi /I"." /I"/Projects/Engine/Core" /I"/Projects/engine" /I"/Projects/tools/
Libraries" /I"C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include" /I"C:/Program Files (x86)/Microsoft Visual Studio 10.0/vc/include" /I"C:\Program
 Files (x86)\Microsoft SDKs\Windows\v7.0A\/Include" /DMACHINE_PC32 /DWIN32 /D_WIN32 /DMACHINE_TYPE=PC32 /DMACHINE_WINDOWS /D_DEBUG /DDEBUG /DCONFIG_DEBUG /DCONF
IG_DEBUG /D_CRT_SECURE_NO_DEPRECATE /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_DEPRECATE /DWIN32 /DWINDOWS /c /Fo"\Projects\engine\Lib\win32\debug\Obj\Core\\" /F
d"/Projects/engine/Lib/win32/debug/Obj/Core/vc.pdb" 
----------------------------------------------------------------------
cl : Command line error D8021 : invalid numeric argument '/Projects/Engine/Core/COR_CalcHash.cpp'
*** failed C.C++ <Core>COR_CalcHash.obj ...

If I change the C.C++ action in c-vc.jam to use the path fixup notation
from

    $(C.C++:\\C) /nologo @@($(MFLAGS)) $(>:C)

to
    $(C.C++:\\C) /nologo @@($(MFLAGS)) $(>:C:\\)

-- it works great!

Any idea what could be going wrong?

I can just change it in c-vc.jam for now - but the whole point of my cleanup exercise was to go through and remove my hacks and changes, and override the rules and defines properly.

Thanks

Dave


Replies (1)

RE: Compiling from folders with VC - problems with paths - Added by Joshua Jensen over 2 years ago

You're missing the drive letter in front of the paths, and for absolute paths on Windows, that is expected. Why is it missing? I can't think of any way one could pull that off...?

(1-1/1)