Re: wish: build time warning for missing MODULE_LICENSE

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

 



On Sun, Mar 30, 2008 at 09:04:30PM +0200, Sam Ravnborg wrote:
> On Sun, Mar 30, 2008 at 09:01:19PM +0300, Adrian Bunk wrote:
> > I just fixed a bug where I had accidentally removed a MODULE_LICENSE() 
> > from a file.
> > 
> > The problem is that such bugs are currently not discovered until someone 
> > actually runs a kernel with this module loaded.
> > 
> > Could we get a build time warning/error for a missing MODULE_LICENSE?
> 
> Is it something as simple as this you are after?
> [My dev box is dead atm so I have not done a kernel build
> with this, only a single module].

Thanks, it seems to work - and I'm currently working on fixing the bugs 
it catches.

Considering that these are trivial to fix I'd even suggest a fatal() 
instead of the warn() for making them obvious for everyone doing build 
testing.

> 	Sam
> 
> diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
> index 695b5d6..e8560a0 100644
> --- a/scripts/mod/modpost.c
> +++ b/scripts/mod/modpost.c
> @@ -1552,6 +1552,8 @@ static void read_symbols(char *modname)
>  	}
>  
>  	license = get_modinfo(info.modinfo, info.modinfo_len, "license");
> +	if (!license && !is_vmlinux(modname))
> +		warn("modpost: missing MODULE_LICENSE() in %s\n", modname);
>  	while (license) {
>  		if (license_is_gpl_compatible(license))
>  			mod->gpl_compatible = 1;

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed

--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux