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]

Re: Optimizing away "ReadFile" calls when Make calls stat()


----- Original Message -----
From: "Egor Duda" <deo@logos-m.ru>
To: <cygwin@cygwin.com>
Sent: Wednesday, February 14, 2001 7:08 PM
Subject: Re: Optimizing away "ReadFile" calls when Make calls stat()


> Hi!
<SNIP>
> not  meaning to be too pushy ;), but i'd like to bring the thread
>
> http://sources.redhat.com/ml/cygwin-developers/2000-03/msg00077.html
>
> back to life. I have to say, that not only ReadFile() is slowing things
> up,  but  CreateFile()  too.  i tend to think that cygwin- (or win32-)
> specific  parts  in  ported  applications  are  unavoidable  evil (and
> "make"   sources   are   already   full   of them).
>
<snip>
> giving  porter  a single universal tool to be more specific about what
> he  wants  to  get from stat() has one more benefit. otherwise, porter
> will  tend  to use different native win32 calls such as GetFileTime(),
> GetFileAttributes(),  GetFileSize()  etc.  which are harder to find in
> large  source  tree  when needed. with stat_lite he had just to do the
> simple grep.
>
> the  only problem with this approach i can see is that if we introduce
> new  API  and applications start to use it we became "bound" to it and
> it'll  be  not too easy to deprecate ad remove it afterwards. OTOH, we
> can  always  make stat_lite() a simple wrapper to stat() if the latter
> become fast enough.
>

Perhaps a macro for each hint, that porters who have read up on cygwin can use? Rather than change the cygwin API, have a macro that
calls GetFileTime() etc as appropriate... that way cygwin itself is not altered or tied to anything ?

Rob


--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple


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