Am 27.11.2013 12:14, schrieb Daniel Borca: > > > Matthias Andree wrote: >> >> The whole #ifdef approach is massively broken and prone to mis-guess. >> >> It denies one of the most basic considerations, and that is: operating >> systems change over time, and add features missing from earlier >> versions. Looking at the operating system is insufficient. >> >> [snip] >> >> Note I am not saying you need to use a fully-fledged autoconf approach, >> lighter-weight alternatives have been seen in the wild, and possibly it >> suffices - for FreeBSD - to have a separate header (.h) file that checks >> the major FreeBSD version and #defines a few HAVE_SOMEFUNCTION or leaves >> it #undef'd, so the actual code can then > > That just means the cpp dancing is moved elsewhere. Someone needs to > maintain that header, because OSes <quote> change over time </quote>.
The point is to autodetect, somehow, what the OS features and what it is missing, and go with that. >> on his hands, so some concept similar to autoconf might work in more >> places with less human work and more machine work during the build. > > I agree, autoconf is the best approach. But *someone* needs to write > it. I have not claimed autoconf to be the best approach, nor would I. I am not writing such an autoconfiguration feature either, merely restating the recurring finding that guessing symbols from OS predefined macros is doomed. _______________________________________________ busybox mailing list [email protected] http://lists.busybox.net/mailman/listinfo/busybox
