X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org From: Phil Smith To: "cygwin AT cygwin DOT com" Date: Fri, 29 Aug 2008 14:35:36 -0700 Subject: RE: Probably stupid make question Message-ID: References: <48B706FB DOT 4CAE7693 AT dessent DOT net> <20080828203234 DOT GB17369 AT ednor DOT casa DOT cgf DOT cx> In-Reply-To: <20080828203234.GB17369@ednor.casa.cgf.cx> Accept-Language: en-US Content-Language: en-US acceptlanguage: en-US Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=4.65.7161:2.4.4,1.2.40,4.0.164 definitions=2008-08-29_14:2008-08-28,2008-08-29,2008-08-29 signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 ipscore=0 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx engine=3.1.0-0805090000 definitions=main-0808290137 X-IsSubscribed: yes 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 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id m7TLcYdo006641 Well, this is just ducky. I'm posting this so it goes in the archives and maybe saves someone else a LOT of heartache. Batch files treat incoming, unquoted equals signs as spaces! For the cross-compiling I'm doing, I have to use a .BAT file (or equivalent), because the cross-compiler is two-stage -- it generates assembler from C, then must assemble that. Thus my batch file to do the compiles gets invoked correctly as (say): -DSOMETHING=AVALUE Banana.c but the batch file sees this as: -DSOMETHING AVALUE Banana.c Quick, someone build me a time machine so I can go back and kill whoever implemented THAT (I know, get in line...)! ...phsiii -----Original Message----- From: cygwin-owner AT cygwin DOT com [mailto:cygwin-owner AT cygwin DOT com] On Behalf Of Christopher Faylor Sent: Thursday, August 28, 2008 4:33 PM To: cygwin AT cygwin DOT com Subject: Re: Probably stupid make question On Thu, Aug 28, 2008 at 01:13:47PM -0700, Brian Dessent wrote: >Phil Smith wrote: >>We're perverting CMake and Cygwin make to use a cross-compiler for z/OS >>(IBM mainframe). We've beaten it mostly into submission, but are >>hitting an issue with definitions being passed. Cygwin make seems to >>be passing them in the format: >> >> -Dvarname value >> >> rather than: >> >> -Dvarname=value >> >>and the cross-compiler doesn't like that much. Some discussion with >>more *IX-savvy friends suggests that the "blank" format is older, and >>is deprecated due to ambiguity (does "-Dvarname abc.c xyz.c" mean "set >>varname to abc.c and compile xyz.c", or "set varname to 1 and compile >>abc.c and xyz.c"?). > >I think you're going to have to be more specific, such as providing a >testcase that reproduces the problem. This must be due to some aspect >of cmake, because there's nothing in plain make (AFAIK) that has >anything to do with how -D or any other parameter is passed to any tool >-- make executes commands exactly as written in the Makefile, no more >no less. As the make maintainer, let me say: What he said. cgf -- 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/ -- 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/