Re: [GIT PATCH] kbuild fixes for 2.6.18

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux