Messages in this thread | | | Date | Tue, 08 Aug 2006 10:45:33 +0200 | From | Takashi Iwai <> | Subject | Re: [GIT PATCH] kbuild fixes for 2.6.18 |
| |
At Mon, 7 Aug 2006 23:02:09 +0200, Sam Ravnborg wrote: > > On Mon, Aug 07, 2006 at 01:42:41PM -0700, Greg KH wrote: > > On Mon, Aug 07, 2006 at 09:27:09PM +0200, Sam Ravnborg wrote: > > > Hi Greg. > > > Please apply to 2.6.18. > > > > > > Pull from: > > > > > > git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-2.6.18.git > > > > Thanks, pulled and pushed out. > > > > Oh, I just got a few reports of 2.6.18-rc3 not building with external > > trees very well, and something like the following would be required: > > > > --- linux-2.6.17/arch/sh/Makefile-dist 2006-08-07 20:42:33.000000000 +0200 > > +++ linux-2.6.17/arch/sh/Makefile 2006-08-07 21:08:26.000000000 +0200 > > @@ -173,7 +173,7 @@ > > archprepare: maketools include/asm-sh/.cpu include/asm-sh/.mach > > > > PHONY += maketools FORCE > > -maketools: include/linux/version.h FORCE > > +maketools: $(objtree)/include/linux/version.h FORCE > > > > for all instances of the version.h file. > This looks bogus. > Current directory is $(objtree) so prefixing with $(objtree) should not > be needed and doing so will confuse make. make will not know that > $(objtree)/include/linux/version.h and include/linux/version.h is the > same file.
OK now I'm awake ;)
Actually, this part wasn't tested at all. I just blindly applied the patch for 2.6.16. Simply discard it.
> And the version.h dependency is anyway not needed. kbuild guarantee the > version.h is created when the commands for archprepare are executed. > > So for sh I would expect the following is a better fix: > > diff --git a/arch/sh/Makefile b/arch/sh/Makefile > index e467a45..ed1c865 100644 > --- a/arch/sh/Makefile > +++ b/arch/sh/Makefile > @@ -172,8 +172,8 @@ include/asm-sh/.mach: $(wildcard include > > archprepare: maketools include/asm-sh/.cpu include/asm-sh/.mach > > -PHONY += maketools FORCE > -maketools: include/linux/version.h FORCE > +PHONY += maketools > +maketools: FORCE > $(Q)$(MAKE) $(build)=arch/sh/tools include/asm-sh/machtypes.h > > all: zImage > > > arm should have a similar fix - thats the only other archtecture that > reference version.h in the arch specific kbuild (Makefile) files.
Yes, that looks better anyway.
> > Was this fixed in -rc4 and I should update the SuSE kernel to it (well, > > I'll do that anyway later today...), or is this something that you did > > not know about? > Have not seen the reports - may have overlookd them at lkml. > Been on vacation a few days so ctrl-d was used to read most of my > lkml mails.
I believe your patch fixes the problem we had -- the compilation of external modules with extra headers (created via "make prepare") outside the kernel source root. At least, I can build external alsa-driver modules now.
Of course, each package must be fixed to adapt somes changes in 2.6.18 (implicit inclusion of linux/config.h and linux/utsrelease.h)...
Thanks,
Takashi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |