On Tue, Jun 03, 2003 at 11:52:42AM -0700, Linus Torvalds wrote: > >On Tue, 3 Jun 2003, David Dawes wrote: >> >> Does this go any way towards explaining why it seems to be getting harder >> and harder to build modules outside of the kernel source tree while >> still leveraging the kernel build mechanism? > >No. That is explained by the inevitable lack of testing, I think. > >Modules outside of the kernel can (by definition) not be tested by people >who work on the kernel. It's not made any better by the fact that the >outside modules tend to do horribly bad things because they try to be >compatible across different configuration managers etc, so they tend to be >quite fragile in the first place. > >> Is the ability to build modules located outside of the kernel source >> tree a consideration at all in the kernel module build process, or am I >> going down the wrong path with this? > >It's certainly never been a consideration for the kernel proper, partly >because the outside projects have never even tried to make it a >consideration. And some outside projects have been totally misguided and >seriously broken wrt kernel coding styles, making them actively disliked >by the regular kernel people.
I'm sorry if this wasn't clear, but I'm just focusing on the actual build mechanism right now, not internal interface or other code-related issues. I changed the DRI Makefiles so that they will invoke the kernel's top-level Makefile with SUBDIRS set to the external directory containing the module source. Various other stuff is done to provide a suitable environment for a wide range of kernels, both stock, and distro supplied. The goal here is that a single tarball with, say, DRM module source can be unpacked and easily built for as wide a range of kernel versions as possible. For example, this approach handles the difference in build details between 2.4.x modules (mod.o) and recent 2.5.x modules (mod.ko) fairly transparently, and ensures that the modules are complied with the correct compiler flags for the matching kernel. It works moderately well up until recent 2.5.x versions, where calling the top level Makefile with SUBDIRS overriden (as in 'make -C $(LINUXDIR) SUBDIRS=`pwd` modules') is getting harder to make work. So, my question is whether the new kernel build mechanism is intended to allow this type of thing, or did it work before more by accident than design? David -- David Dawes Founder/committer/developer The XFree86 Project www.XFree86.org/~dawes ------------------------------------------------------- This SF.net email is sponsored by: Etnus, makers of TotalView, The best thread debugger on the planet. Designed with thread debugging features you've never dreamed of, try TotalView 6 free at www.etnus.com. _______________________________________________ Dri-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dri-devel