X-Spam-Check-By: sourceware.org Message-Id: <6.2.3.4.2.20060815084047.0cd61550@pop.nycap.rr.com> X-Mailer: QUALCOMM Windows Eudora Version 6.2.3.4 Date: Tue, 15 Aug 2006 08:43:13 -0400 To: cygwin AT cygwin DOT com From: "William A. Hoffman" Subject: RE: change in behavior of make from 3.80 to 3.81 In-Reply-To: References: <17632 DOT 65094 DOT 528377 DOT 623813 AT segfault DOT lan> <009a01c6bfff$934e8480$a501a8c0 AT CAM DOT ARTIMI DOT COM> <6 DOT 2 DOT 0 DOT 14 DOT 2 DOT 20060814213115 DOT 093f2a40 AT pop DOT nycap DOT rr DOT com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Unsubscribe: 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 At 10:40 PM 8/14/2006, Igor Peshansky wrote: >> MS cl can no longer be used with cygwin make as of 3.81. > >Incorrect. See below. > >> Perhaps something along the lines of /c/ that would be translated by >> gmake itself into c:, so that no special parsing would be required for >> the makefiles. > >Yuck! Maybe have them simply accept the --win32 option or recognize the >MAKE_MODE environment variable, like Cygwin make used to do? I was figuring this was off the table since it was not in the upstream make. Is this option still on the table? If so, what is the path to have it implemented? >> - The other option is to use mingw-make, and only use cygwin make >> for cygwin linked programs only. > >Incorrect. If you use Cygwin make, it's very easy to invoke Windows >programs by converting their arguments with "cygpath -w" (or, barring >that, with a perl or sed script). I've done that, others have done that. >If you are generating the code to invoke the Microsoft cl compiler, simply >use something like $(foreach f,$^,$(shell cygpath -w $f)) as the argument >to cl. I have to say yuck!, and performance hit. So, for every path that gets passed to the compiler you have to launch a process that does string allocation and conversion. I do not think this is a realistic solution for larger projects. I would not want CMake to generate makefiles with cygpath -w being invoked multiple times per compiler run. So, I will restate that there is no workable solution to use cl with cygwin make anymore. -Bill -- 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/