X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,SPF_PASS X-Spam-Check-By: sourceware.org Message-ID: <4A3FF0E9.6040203@gmail.com> Date: Mon, 22 Jun 2009 22:00:25 +0100 From: Dave Korn User-Agent: Thunderbird 2.0.0.17 (Windows/20080914) MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: weird feature References: <890c978b4ab3063f3d602834a99501f1 AT mail DOT smartmobili DOT com> <5bbe440b12fc56489f671909ca240bc3 AT mail DOT smartmobili DOT com> <4A3FAC26 DOT 7030402 AT cygwin DOT com> <4A3FD3BE DOT 20601 AT gmail DOT com> <4A3FD71B DOT 4080405 AT sidefx DOT com> In-Reply-To: <4A3FD71B.4080405@sidefx.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Edward Lam wrote: > Dave Korn wrote: >> Larry Hall (Cygwin) wrote: >> >>> 2. Use 'cygpath' to convert from DOS to Cygwin path forms and back as >>> needed. This can get tricky/cumbersome in some cases. >> >> It can be a lot easier if you have a Makefile-based build system, where >> you can do the conversion on things that you know need converting like >> $(SRC) and $(OBJS) and $(INCLUDEPATH) but not things like $(CFLAGS), >> rather than if you try and write shell scripts to wrap the compiler and >> parse the options. That can also be a good approach, but more work to get >> it completely right. > > In my experience, adding cygcheck does slow down a large build system > *significantly* when adding cygpath's though. Makefile variable caching can be done(*). And make very sure you use ":=" not "=" when assigning a variable that might contain a $(shell)! There's still bound to be some overhead, but you can do a lot to optimise it away. cheers, DaveK -- (*) - http://www.cmcrossroads.com/content/view/7382/264/ -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple