2010/1/27 David Tweed <david.tw...@gmail.com>: > On Wed, Jan 27, 2010 at 6:25 AM, Uriel <lost.gob...@gmail.com> wrote: >> Why the fucking hell should the fucking build tool know shit about the >> OS it is running on?!?!?! >> >> If you need to do OS guessing, that is a clear sign that you are doing >> things *wrong* 99% of the time. > > [In what follows by "OS" I mean kernel plus userspace libraries that > provide a higher level interface to the hardware than runs in the > kernel.] > > It would be great if "conceptual interfaces" that are a decade or more > old were universally standardised (so you don't have to worry about > whether mkstemp() is provided, etc) so that a lot of the configuration > processing could go away, and maybe that's the situation for most > "text and filesystem applications". But there are and are will be in > the future new interfaces that haven't solidified into a common form > yet, eg, webcam access, haptic input devices, accelerometers/GPS, > cloud computing APIs, etc, for which figuring out what is provided > will still necessary in meta-build/configuration systems for years to > come for any software that will be widely distributed.
In my observation one should stick to one platform, which is nowadays Linux+common libraries (most of the time) when packaging some source code. In >90% of all cases it will work fine, because the other 95% of users use Linux as well and the 5% remainder either uses some BSD where the likelihood is high that it'll just compile as well and some <<1% users will use some exotic platform where we shouldn't bother at all if it'll work or not. And if there is a problem, some user will report it and one can think of a change case by case. I applied this to most of the projects I'm working on (also commercial ones) and it works fine. I don't want to count the time I saved in not running configure ;) Cheers, Anselm