This is the mail archive of the cygwin 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: May g++ output windows-style paths instead of cygwin-style one?


On Tue, 16 Aug 2005, Angel Tsankov wrote:

----- Original Message -----
From: "Angel Tsankov" <fn42551@XXX.XXX-XXXXX.XX>
To: <cygwin@XXXXXX.XXX>
Sent: Tuesday, August 16, 2005 12:11 PM
Subject: Re: May g++ output windows-style paths instead of cygwin-style one?


> ----- Original Message -----
> From: "Brian Dessent" <brian@XXXXXXX.XXX>
> To: "cygwin mailing list" <cygwin@XXXXXX.XXX>
> Sent: Tuesday, August 16, 2005 12:00 PM
> Subject: Re: May g++ output windows-style paths instead of > cygwin-style one?

<http://cygwin.com/acronyms/#PCYMTNQREAIYR>. Let's not feed the spammers.
Thanks. Incidentally, what kind of mailer quotes full headers like this?


> > Angel Tsankov wrote:
> >
> > > I have this problem, 'cause I use a windows build of make > > > 3.81beta3
> > > and it does not recognize cygwin style paths.
> > > The latest cygwin build of make is 3.80, which has some bugs, > > > and I
> > > cannot use it.
> >
> > I think it would be more productive for you to get Cygwin make > > working
> > than to try to jerry-rig a windows make into a posix > > environment. If
> > you are running into a specific bug in the current packaged > > version that
> > is fixed upstream, then you should document it here and the > > Cygwin
> > package maintainer might release an updated package.
>
> Well, how do I document the bug?


OK, here's something like a test case. Since a couple of my previous attempts
to post a reply with a zip file attachment were unsuccessful, I've put the
test case here:
http://debian.fmi.uni-sofia.bg/~angel/test_case_make_3.80.zip

To summarize, for those who'd rather not download the full zip:


------------ BEGIN makefile ------------
GetAllFiles = \
$(eval AllFiles := $(wildcard $(addsuffix /*,$(strip $(1))))) \
$(AllFiles) \
$(if $(strip $(AllFiles)),$(call GetAllFiles,$(AllFiles)))

AllFiles := $(call GetAllFiles,Source)

all:
@echo $(AllFiles)
------------- END makefile -------------

The "Source" directory contains 2 files, File1.h and File2.h.

The result I get when running (the cygwin version of) make on my system is:
Source/File1.h Source/File2.h h


And the expected result is:
Source/File1.h Source/File2.h

There are a bunch of things wrong with the code above (in particular, the
variable AllFiles is overridden), but it does look like a genuine make bug
(in the expansion of a $(call) function).

Could you point out other wrong things with the code above so that I try to avoid them in the future?


Regards,
Angel Tsankov
fn42551@fmi.uni-sofia.bg



-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.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]