From: Charles Duffy <cduffy@spamcop.net>
Subject: OT: cross compilation and autoconf [was: Re: runit not ready for cross-compilation]
Date: Fri, 06 Jan 2006 07:54:53 -0600 [thread overview]
Message-ID: <dplsre$h80$1@sea.gmane.org> (raw)
In-Reply-To: <43BDEA01.1000600@geeks.cl>
My apologies for dragging this thread on further. I've changed the
subject so as to not interfere with more topical discussion.
Alejandro Mery wrote:
> what?? noone needs something like autoconf, just using simple sh scripts
> and a simple Makefile (instead of .c helpers) is _enough_ to make
> software cross compilable. and of course you wont run make test when
> cross compiling, and there is no need to do that.
The software in question here may not need autoconf -- but there are
cases where its more esoteric functionalities do indeed come in handy.
I'm not arguing that autoconf makes sense here -- I'm just disputing
that "no one needs something like autoconf".
In a former life I spent 2-3 years porting and packaging 3rd-party
(mostly Free) software to be cross compiled to the 5 or 6 target
architectures and 2 host platforms my employer supported, and in that
time I ran across a *lot* of different compile-time tests. The strong
majority of them could be resolved by attempting target compile and link
steps (to validate headers and library contents) without actually
needing to run anything on the target, but there were a few more obscure
tests which did inded care about things that weren't really available
without access to the target. (For instance: Are you on one of the buggy
platforms where ferror() returns -1 instead of 0 on a file handle which
does not in fact have its error flag set? How can you tell without
actually trying?) [1]
Additionally, it's better to have something that's *consistent* and
written to make cross compilation reasonably straightforward than for
every package to have its own custom configure/build system (in which
case maybe 10% of them have had ample thought put into allowing cross
compilation, and fewer than that have actually had such functionality
actually *tested* by the maintainers). To be sure, autoconf is a beast
-- but it's a beast which has picked up much of its size in satisfying
esoteric requirements. Every once in a while, someone *needs* those
capabilities, and having them around is darned handy.
[1] - Okay, this isn't a great example -- one can just treat negative
return values from ferror() the same way as one treats zero values, and
it becomes moot. There are similar cases, however, where a method may be
defined the same way in the headers of two platforms but have material
behavioral differences between them such that a runtime test is
necessary. No, I don't remember any -- this was 5 or 6 years ago.
next prev parent reply other threads:[~2006-01-06 13:54 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-12 0:50 runit not ready for cross-compilation Radek Podgorny
2005-12-12 2:21 ` Alejandro Mery
2005-12-16 15:33 ` Charlie Brady
2005-12-17 22:58 ` Radek Podgorny
2005-12-17 23:06 ` Charlie Brady
2005-12-18 10:30 ` Radek Podgorny
2006-01-03 14:12 ` Gerrit Pape
2006-01-03 19:49 ` Radek Podgorny
2006-01-03 20:16 ` Charlie Brady
2006-01-05 15:01 ` Charles Duffy
2006-01-05 15:17 ` Charlie Brady
2006-01-06 3:54 ` Alejandro Mery
2006-01-06 11:07 ` Radek Podgorny
2006-01-06 12:51 ` Charles Duffy
2006-01-06 13:54 ` Charles Duffy [this message]
2006-01-06 16:54 ` OT: cross compilation and autoconf [was: Re: runit not ready for cross-compilation] Laurent Bercot
2006-01-06 18:42 ` Charlie Brady
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='dplsre$h80$1@sea.gmane.org' \
--to=cduffy@spamcop.net \
/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 NNTP newsgroup(s).