Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Saul Wold <sgw@linux.intel.com>
To: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Cc: Martin Jansa <martin.jansa@gmail.com>
Subject: Re: [PATCH 1/3] kmod: Add recipes
Date: Mon, 07 May 2012 09:14:15 -0700	[thread overview]
Message-ID: <4FA7F4D7.20603@linux.intel.com> (raw)
In-Reply-To: <907b74f1035fcd569920630c6fc68751cfb8ca14.1335992192.git.raj.khem@gmail.com>

On 05/02/2012 01:58 PM, Khem Raj wrote:
> kmod is replacement for module-init-tools
>
> Signed-off-by: Khem Raj<raj.khem@gmail.com>
> ---
>   meta/recipes-kernel/kmod/kmod-native_git.bb      |   14 +++++
>   meta/recipes-kernel/kmod/kmod.inc                |   31 +++++++++++
>   meta/recipes-kernel/kmod/kmod/depmod-search.conf |    6 ++
>   meta/recipes-kernel/kmod/kmod_git.bb             |   62 ++++++++++++++++++++++
>   4 files changed, 113 insertions(+), 0 deletions(-)
>   create mode 100644 meta/recipes-kernel/kmod/kmod-native_git.bb
>   create mode 100644 meta/recipes-kernel/kmod/kmod.inc
>   create mode 100644 meta/recipes-kernel/kmod/kmod/depmod-search.conf
>   create mode 100644 meta/recipes-kernel/kmod/kmod_git.bb
>
> diff --git a/meta/recipes-kernel/kmod/kmod-native_git.bb b/meta/recipes-kernel/kmod/kmod-native_git.bb
> new file mode 100644
> index 0000000..96de8b8
> --- /dev/null
> +++ b/meta/recipes-kernel/kmod/kmod-native_git.bb
> @@ -0,0 +1,14 @@
> +# Copyright (C) 2012 Khem Raj<raj.khem@gmail.com>
> +# Released under the MIT license (see COPYING.MIT for the terms)
> +
> +require kmod.inc
> +inherit native
> +
> +PR = "${INC_PR}.0"
> +
> +do_install_append (){
> +	for tool in depmod insmod lsmod modinfo modprobe rmmod
> +	do
> +		ln -s kmod ${D}${bindir}/$tool
> +	done
> +}
> diff --git a/meta/recipes-kernel/kmod/kmod.inc b/meta/recipes-kernel/kmod/kmod.inc
> new file mode 100644
> index 0000000..940a317
> --- /dev/null
> +++ b/meta/recipes-kernel/kmod/kmod.inc
> @@ -0,0 +1,31 @@
> +# Copyright (C) 2012 Khem Raj<raj.khem@gmail.com>
> +# Released under the MIT license (see COPYING.MIT for the terms)
> +
> +DESCRIPTION = "kmod is a set of tools to handle common tasks with Linux kernel modules like \
> +               insert, remove, list, check properties, resolve dependencies and aliases."
> +HOMEPAGE = "http://packages.profusion.mobi/kmod/"
> +LICENSE = "GPL-2.0+&  LGPL-2.1+"
> +LICENSE_libkmod = "LGPL-2.1+"
> +SECTION = "base"
> +PV = "7+git${SRCREV}"
> +INC_PR = "r0"
> +DEPENDS += "gnome-doc-utils-native"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
> +                    file://libkmod/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
> +                   "
> +inherit autotools
> +
> +SRC_URI = "git://git.profusion.mobi/kmod.git;protocol=git;branch=master \
> +           file://depmod-search.conf \
> +          "
> +
> +SRCREV = "02629fa02e96763db7460a930239cc93649a52f8"
> +
> +S = "${WORKDIR}/git"
> +
> +EXTRA_AUTORECONF += "--install --symlink"
> +EXTRA_OECONF +="--enable-debug --enable-logging --enable-tools"
> +
> +do_configure_prepend () {
> +        gtkdocize --docdir ${S}/libkmod/docs || touch ${S}/libkmod/docs/gtk-doc.make
> +}
> diff --git a/meta/recipes-kernel/kmod/kmod/depmod-search.conf b/meta/recipes-kernel/kmod/kmod/depmod-search.conf
> new file mode 100644
> index 0000000..527c0bb
> --- /dev/null
> +++ b/meta/recipes-kernel/kmod/kmod/depmod-search.conf
> @@ -0,0 +1,6 @@
> +#
> +# /etc/depmod.d/depmod.conf
> +#
> +
> +search updates extramodules built-in
> +
> diff --git a/meta/recipes-kernel/kmod/kmod_git.bb b/meta/recipes-kernel/kmod/kmod_git.bb
> new file mode 100644
> index 0000000..928fa88
> --- /dev/null
> +++ b/meta/recipes-kernel/kmod/kmod_git.bb
> @@ -0,0 +1,62 @@
> +# Copyright (C) 2012 Khem Raj<raj.khem@gmail.com>
> +# Released under the MIT license (see COPYING.MIT for the terms)
> +
> +require kmod.inc
> +
> +PR = "${INC_PR}.0"
> +
> +PROVIDES_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
> +RPROVIDES_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
> +CONFLICTS_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
> +
> +# autotools set prefix to /usr, however we want them in /bin and /sbin
> +bindir = "${base_bindir}"
> +sbindir = "${base_sbindir}"
> +# libdir = "${base_libdir}"
> +
> +SRC_URI += " \
> +            file://depmod-search.conf \
> +           "
> +
> +do_install_append () {
> +        install -dm755 ${D}${base_bindir}
> +        install -dm755 ${D}${base_sbindir}
> +        # add symlinks to kmod
> +        ln -s ..${base_bindir}/kmod ${D}${base_bindir}/lsmod.kmod
> +        for tool in {ins,rm,dep}mod mod{info,probe}; do
> +                ln -s ..${base_bindir}/kmod ${D}${base_sbindir}/${tool}.kmod
> +        done
> +        # configuration directories
> +        install -dm755 ${D}${base_libdir}/depmod.d
> +        install -dm755 ${D}${base_libdir}/modprobe.d
> +        install -dm755 ${D}${sysconfdir}/depmod.d
> +        install -dm755 ${D}${sysconfdir}/modprobe.d
> +
> +        # install depmod.d file for search/ dir
> +        install -Dm644 "${WORKDIR}/depmod-search.conf" "${D}${base_libdir}/depmod.d/search.conf"
> +}
> +
> +pkg_postinst_kmod() {
> +        for f in sbin/insmod sbin/modprobe sbin/rmmod sbin/modinfo; do
> +                bn=`basename $f`
> +                update-alternatives --install /$f $bn /$f.kmod 60
> +        done
> +        update-alternatives --install /bin/lsmod bin-lsmod /bin/lsmod.kmod 60
> +        update-alternatives --install /sbin/lsmod lsmod /bin/lsmod.kmod 60
> +        update-alternatives --install /sbin/depmod depmod /sbin/depmod.kmod 60
> +}
> +
> +pkg_prerm_kmod() {
> +        for f in sbin/insmod sbin/modprobe sbin/rmmod sbin/modinfo; do
> +                bn=`basename $f`
> +                update-alternatives --remove $bn /$f.kmod
> +        done
> +        update-alternatives --remove bin-lsmod /bin/lsmod.kmod
> +        update-alternatives --remove lsmod /bin/lsmod.kmod
> +        update-alternatives --remove depmod /sbin/depmod.kmod
> +}
> +
> +PACKAGES =+ "libkmod"
> +
> +FILES_libkmod = "${base_libdir}/libkmod*${SOLIBS}"
> +FILES_${PN} += "${base_libdir}/depmod.d ${base_libdir}/modprobe.d"


Merged into OE-Core with Martin's patch

Thanks
	Sau!



  parent reply	other threads:[~2012-05-07 16:24 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-02 20:58 [PATCH 0/3] Add and use kmod Khem Raj
2012-05-02 20:58 ` [PATCH 1/3] kmod: Add recipes Khem Raj
2012-05-04  0:49   ` Saul Wold
2012-05-04  5:32     ` Martin Jansa
2012-05-04  5:36       ` Khem Raj
2012-05-04  6:08         ` Khem Raj
2012-05-04  6:09       ` Martin Jansa
2012-05-04 23:11         ` Saul Wold
2012-05-05  0:07           ` Khem Raj
2012-05-07 16:14   ` Saul Wold [this message]
2012-05-07 19:46   ` Martin Jansa
2012-05-07 21:12     ` [PATCH 1/2] kmod: include libkmod also from libdir Martin Jansa
2012-05-07 21:12       ` [PATCH 2/2] kmod: fix upgrade path from module-init-tools Martin Jansa
2012-05-02 20:58 ` [PATCH 2/3] module-init-tools: Delete Khem Raj
2012-05-02 20:58 ` [PATCH 3/3] image.bbclass, kernel.bbclass: Use kmod-native instead of module-init-tools-cross Khem Raj

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4FA7F4D7.20603@linux.intel.com \
    --to=sgw@linux.intel.com \
    --cc=martin.jansa@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox