More fun building busybox under Red Hat 7.3.

Bertrand Mollinier Toublet bertrand at sdesigns.com
Mon Jan 23 18:26:36 UTC 2006


Rob Landley wrote:
> On Saturday 21 January 2006 19:58, Bertrand Mollinier Toublet wrote:
> 
>>
>>At the same time, I think it might actually more detrimental to BusyBox
>>(or any other project for that matter) to depend on make 3.80 and above
>>than if it allowed older (ok, I know, buggier) versions of make.
>>
>>I have, as much as the other coder. the natural urge to make my
>>Makefiles as advanced as I possibly can, but constraints of
>>distributability force me to dumb them down to the point they are
>>understood and usable with make 3.79 (and sometimes lower).
> 
> 
> So far the only think that's broken under the Red Hat 7.2 (once you've 
> upgraded sed, which I have a workaround for) is the e2fsprogs.  Everything 
> else works ok with older versions of make.
> 
> What other versions of make are there, anyway?  (What does bsd use?  Isn't 
> there some kind of make standard?)
> 
My (possibly limited) understanding is that the BusyBox Makefile system 
is targeted towards GNU make and will not be understood by any other makes.

Furthermore, GNU make is pretty hard to work with in that some advanced 
features of the GNU variant are extremely buggy in all but the very 
latest version of make.

Therefore, in the packages I produce and release, I strive for no more 
compatibility than with GNU make -and- I try to not use advanced 
features that will break with "older" version of GNU make.

Given the current state of distribution of GNU make, I think that 
support for GNU make 3.80 (most modern distributions) and 3.79 (legacy 
distributions such as RedHat 8 and 9) is a good compromise.

The only feature I have found unusable for compatibility with GNU make 
3.79 is the use of $(eval ) as described in section 8.8 of the GNU make 
manual.
-- 
Bertrand Mollinier Toublet | Sigma Designs, Inc.
bertrand at sdesigns.com      |     (408) 957 9847



More information about the busybox mailing list