[OE-core] [oe-core][PATCH 1/6] kernel.bbclass: populate /etc/modules-load.d/ with module_autoload entries too

Andreas Oberritter obi at opendreambox.org
Fri Mar 23 23:00:04 UTC 2012


On 23.03.2012 13:56, Martin Jansa wrote:
> * /etc/modules-load.d/foo.conf is used by systemd like /etc/modutils/foo was with sysvinit

Martin,

the man-page[1] for modules-load.d says that packages should install
.conf files to /usr/lib/modules-load.d, because /etc/modules-load.d is
reserved for the system administrator. Did you take this into account
when you decided to support /etc/modules-load.d?

Regards,
Andreas

[1] http://0pointer.de/public/systemd-man/modules-load.d.html

> 
> Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
> ---
>  meta/classes/kernel.bbclass |   10 ++++++++--
>  1 files changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
> index 169df33..975ae13 100644
> --- a/meta/classes/kernel.bbclass
> +++ b/meta/classes/kernel.bbclass
> @@ -122,6 +122,7 @@ kernel_do_install() {
>  	install -m 0644 vmlinux ${D}/boot/vmlinux-${KERNEL_VERSION}
>  	[ -e Module.symvers ] && install -m 0644 Module.symvers ${D}/boot/Module.symvers-${KERNEL_VERSION}
>  	install -d ${D}/etc/modutils
> +	install -d ${D}/etc/modules-load.d
>  	install -d ${D}/etc/modprobe.d
>  
>  	#
> @@ -411,6 +412,11 @@ python populate_packages_prepend () {
>  			for m in autoload.split():
>  				f.write('%s\n' % m)
>  			f.close()
> +			name = '%s/etc/modules-load.d/%s.conf' % (dvar, basename)
> +			f = open(name, 'w')
> +			for m in autoload.split():
> +				f.write('%s\n' % m)
> +			f.close()
>  			postinst = d.getVar('pkg_postinst_%s' % pkg, True)
>  			if not postinst:
>  				bb.fatal("pkg_postinst_%s not defined" % pkg)
> @@ -426,7 +432,7 @@ python populate_packages_prepend () {
>  			f.close()
>  
>  		files = d.getVar('FILES_%s' % pkg, True)
> -		files = "%s /etc/modutils/%s /etc/modutils/%s.conf /etc/modprobe.d/%s.conf" % (files, basename, basename, basename)
> +		files = "%s /etc/modutils/%s /etc/modutils/%s.conf /etc/modules-load.d/%s.conf /etc/modprobe.d/%s.conf" % (files, basename, basename, basename, basename)
>  		d.setVar('FILES_%s' % pkg, files)
>  
>  		if vals.has_key("description"):
> @@ -456,7 +462,7 @@ python populate_packages_prepend () {
>  	# avoid warnings. removedirs only raises an OSError if an empty
>  	# directory cannot be removed.
>  	dvar = d.getVar('PKGD', True)
> -	for dir in ["%s/etc/modutils" % (dvar), "%s/etc/modprobe.d" % (dvar)]:
> +	for dir in ["%s/etc/modutils" % (dvar), "%s/etc/modprobe.d" % (dvar), "%s/etc/modules-load.d" % (dvar)]:
>  		if len(os.listdir(dir)) == 0:
>  			os.rmdir(dir)
>  





More information about the Openembedded-core mailing list