Messages in this thread | | | Date | Thu, 24 Jun 2004 14:35:16 -0600 | From | Andreas Dilger <> | Subject | Re: RFC: Testing for kernel features in external modules |
| |
On Jun 24, 2004 22:30 +0200, Sam Ravnborg wrote: > +if [ -f remap4.o ]; then > + echo "#define REMAP4 1" > $2 > +elif [ -f remap5.o ]; then > + echo "#define REMAP5 1" > $2 > +fi
I would prefer that these be called something like HAVE_REMAP5, or better yet something descriptive like HAVE_REMAP_PAGE_RANGE_VMA.
This obviously needs to be smarter also, to handle adding multiple #defines to a single .h file.
Ideally, when people make an incompatible kernel API change like this they would just #define HAVE_REMAP_PAGE_RANGE_VMA in the header that declares remap_page_range() directly (e.g. KERNEL_AS_O_DIRECT was added for this reason) instead of external builds having to figure this out themselves. Adding the check script is no less work than just adding the #define to the appropriate header directly.
Having something like "features.h" is only useful as far as it checks for features that applications care about. If it doesn't have checks for features, then the apps need to implement those checks anyways and different apps will name the script/#define differently so until they make it into the stock kernel it isn't terribly useful.
Cheers, Andreas -- Andreas Dilger http://sourceforge.net/projects/ext2resize/ http://members.shaw.ca/adilger/ http://members.shaw.ca/golinux/
[unhandled content-type:application/pgp-signature] | |