This is the mail archive of the cygwin@sources.redhat.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]

Cygpath, backslashes, and sh.exe


Hi all. Thanks for your help with cygpath (I *did* look in 
the FAQ, I just didn't know what to look for). :)

cygpath *seems* to be doing the right thing (it's hard
to tell), but there is some sort of problem with
backslashes. I have a rule like this:

%.obj : %.cpp
	$(CC) $(CPPFLAGS) $(shell cygpath -w $<)

The idea is that this will invoke sh.exe with something like:

 /c/VC98/bin/cl.exe /Fo:globref.obj c:\r7\jni\src\globref.cpp

But instead it seems to do:

 /c/VC98/bin/cl.exe /Fo:globref.obj c:r7jnisrcglobref.cpp

which causes the compiler to bomb out with:

 fatal error C1083: Cannot open source file: 'c:r7jnisrcglobref.cpp': No
such file or  directory

I figured I need to escape the backslashes before passing them
to a shell command. So I tried things like:

%.obj : %.cpp
	$(CC) $(CPPFLAGS) $(subst,\\,\\\\,$(shell cygpath -w $<))

but the subst function seems to just return an empty string (this
happens even when I use something without backslashes,
like $(subst,a,b,whatever).

Has anyone run into this?

Thanks,
	c

	c

At 05:50 PM 10/3/2000 -0500, you wrote:
>Chad:
>
>    Hey, no problem.  Let me know if you run into other problems.  My
>company uses it's own make system under cygwin as well.  We also use Visual
>C++ as the compiler.
>
>cheers,
>-Matt



--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


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