public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Warren Young <warren@etr-usa.com>
To: Cygwin-L <cygwin@cygwin.com>
Subject: Re: best way to prevent a cygwin build?
Date: Fri, 02 Dec 2011 17:39:00 -0000	[thread overview]
Message-ID: <4ED90D35.6070306@etr-usa.com> (raw)
In-Reply-To: <4ED88260.8010004@cs.cmu.edu>

On 12/2/2011 12:46 AM, Paul Allen Newell wrote:
>
> I am not happy with having to run two separate source trees and would
> like a way (as in "best standard") to add something to any Maya makefile
> which will prevent execution if it is being compiled on Cygwin.

You might get better answers if you give an example of what you mean by 
"prevent execution".  Not because we don't know what that means in 
general, but because it *is* too general.

For example, if what you were after is to have some programs in a system 
compiled conditionally, Automake + Autoconf makes that easy:

https://www.gnu.org/s/hello/manual/automake/Conditional-Programs.html

If you want something else suppressed, the answer might be different.

Generally speaking, any time you want to do some up-front tests for 
platform compatibility issues that affect how a program gets built, 
Autoconf is probably a good answer.  It is not a pretty tool, but it's 
one of those tools that keeps getting reinvented poorly, so it remains 
the most popular out of lack of better alternatives.

On one of my projects, I use another Automake competitor, Bakefile. 
Bakefile builds Autoconf Makefile.in files, generic GNU Makefiles, 
Visual C++ project files, Xcode project files, etc., all from a single 
high-level description of what you want built.  You can include things 
conditionally based on platform or pretty much any criterion you can 
code up in a Python extension to Bakefile.  Bakefile is not in the 
Cygwin package repo, however, partly because it doesn't build cleanly on 
Cygwin.  The native Windows port works just fine with Cygwin, though.

You might also look at cmake, which competes with the Autotools and 
Bakefile, and *is* in the Cygwin package repo.  I can't tell you 
anything more about it.

--
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

      parent reply	other threads:[~2011-12-02 17:39 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-02  7:46 Paul Allen Newell
2011-12-02  9:47 ` Csaba Raduly
2011-12-02 18:50   ` Dave Korn
2011-12-03  0:34     ` [SOLVED:] " Paul Allen Newell
2011-12-02 17:39 ` Warren Young [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4ED90D35.6070306@etr-usa.com \
    --to=warren@etr-usa.com \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).