From patchwork Thu Dec 8 01:03:25 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Openembedded-core Digest, Vol 11, Issue 66 Date: Thu, 08 Dec 2011 01:03:25 -0000 From: Ma, NingX X-Patchwork-Id: 16433 Message-Id: <789F9655DD1B8F43B48D77C5D306597312D5997F48@shsmsx501.ccr.corp.intel.com> To: "openembedded-core@lists.openembedded.org" -----Original Message----- From: openembedded-core-bounces@lists.openembedded.org [mailto:openembedded-core-bounces@lists.openembedded.org] On Behalf Of openembedded-core-request@lists.openembedded.org Sent: Thursday, December 08, 2011 8:51 AM To: openembedded-core@lists.openembedded.org Subject: Openembedded-core Digest, Vol 11, Issue 66 Send Openembedded-core mailing list submissions to openembedded-core@lists.openembedded.org To subscribe or unsubscribe via the World Wide Web, visit http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core or, via email, send a message with subject or body 'help' to openembedded-core-request@lists.openembedded.org You can reach the person managing the list at openembedded-core-owner@lists.openembedded.org When replying, please edit your Subject line so it is more specific than "Re: Contents of Openembedded-core digest..." Today's Topics: 1. Re: connman-gnome_0.5.bb fails: connman-gnome.git is empty (Ulf Samuelsson) 2. Re: [PATCH] bitbake.conf/image.bbclass: Ensure images use the correct passwd/group files (Andreas M?ller) 3. Re: [PATCH] bitbake.conf/image.bbclass: Ensure images use the correct passwd/group files (Richard Purdie) 4. Re: [PATCH] ppl: fix libgmp paths (Richard Purdie) 5. Re: Coordinating inter-layer dependencies (Richard Purdie) 6. Re: Openembedded-core Digest, Vol 11, Issue 64 (Ma, NingX) ---------------------------------------------------------------------- Message: 1 Date: Thu, 08 Dec 2011 00:48:23 +0100 From: Ulf Samuelsson Subject: Re: [OE-core] connman-gnome_0.5.bb fails: connman-gnome.git is empty To: openembedded-core@lists.openembedded.org Message-ID: <4EDFFB47.9080605@emagii.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed On 2011-12-07 17:43, Richard Purdie wrote: > On Wed, 2011-12-07 at 16:36 +0100, Ulf Samuelsson wrote: >> On 2011-12-07 15:36, Ulf Samuelsson wrote: >>> git://git.kernel.org/pub/scm/network/connman/connman-gnome.git;protocol=git >>> >>> is empty. The repo exists, but no content. >>> >>> Building "connman-gnome_0.5.bb" thus fails. >>> Needed by "core-image-sato" >>> >>> There is a "connman-gnome-m" project on gitorious. >>> This seems to be based on the above source package. >>> >>> Will try it out, but if anyone already tried this? >>> >>> Any other recommended sources for connman-gnome? >>> >> Found: >> http://autobuilder.yoctoproject.org/pub/sources/git2_git.kernel.org.pub.scm.network.connman.connman-gnome.git.tar.gz >> >> in an old email to the list from Richard Purdie (before I started >> subscribing). >> >> so I think I am going to download this and set up a git on github so the >> build does >> not require a manual download. > This is a real source of frustration to me. The TSC voted against having > any mirror sources in its out the box configuration for OE-Core itself. > If you use angstrom or Poky you wouldn't see this since they configure > source mirrors out the box. > > I stated at the time I thought this was crazy and making life > unnecessarily hard for users. I was outvoted. I still think having more > default mirrors in OE-Core might be a good idea but its going to take > representation to the TSC to change that. BTW: Mirrors of the empty git repo at kernel.org won't help of course. > Cheers, > > Richard > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core --- Best Regards Ulf Samuelsson eMagii ------------------------------ Message: 2 Date: Thu, 8 Dec 2011 00:53:11 +0100 From: Andreas M?ller Subject: Re: [OE-core] [PATCH] bitbake.conf/image.bbclass: Ensure images use the correct passwd/group files To: "Patches and discussions about the oe-core layer" Message-ID: <201112080053.11966.schnitzeltony@gmx.de> Content-Type: Text/Plain; charset="iso-8859-1" On Wednesday, December 07, 2011 06:34:07 PM Richard Purdie wrote: > We need pseudo to use the rootfs passwd/group files belonging to the > rootfs when building images. This patch ensures that we use the rootfs > files instead of those in the sysroot which can lead to incorrect file > ownership issues. > > Signed-off-by: Richard Purdie > > diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass > index 4642fa6..865d430 100644 > --- a/meta/classes/image.bbclass > +++ b/meta/classes/image.bbclass > @@ -121,6 +121,8 @@ IMAGE_LINGUAS ?= "de-de fr-fr en-gb" > > LINGUAS_INSTALL = "${@" ".join(map(lambda s: "locale-base-%s" % s, > d.getVar('IMAGE_LINGUAS', 1).split()))}" > > +PSEUDO_PASSWD = "${IMAGE_ROOTFS}" > + > do_rootfs[nostamp] = "1" > do_rootfs[dirs] = "${TOPDIR}" > do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock" > diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf > index e80cc32..eeb1fc4 100644 > --- a/meta/conf/bitbake.conf > +++ b/meta/conf/bitbake.conf > @@ -580,11 +580,12 @@ SRC_URI = "file://${FILE}" > > # Use pseudo as the fakeroot implementation > PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/" > +PSEUDO_PASSWD ?= "${STAGING_DIR_TARGET}" > export PSEUDO_DISABLED = "1" > #export PSEUDO_PREFIX = "${STAGING_DIR_NATIVE}${prefix_native}" > #export PSEUDO_BINDIR = "${STAGING_DIR_NATIVE}${bindir_native}" > #export PSEUDO_LIBDIR = > "${STAGING_DIR_NATIVE}$PSEUDOBINDIR/../lib/pseudo/lib -FAKEROOTENV = > "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} > PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} > PSEUDO_PASSWD=${STAGING_DIR_TARGET} PSEUDO_NOSYMLINKEXP=1 > PSEUDO_DISABLED=0" +FAKEROOTENV = > "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} > PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} > PSEUDO_PASSWD=${PSEUDO_PASSWD} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DISABLED=0" > FAKEROOTNOENV = "PSEUDO_UNLOAD=1" > FAKEROOTDIRS = "${PSEUDO_LOCALSTATEDIR}" > PREFERRED_PROVIDER_virtual/fakeroot-native ?= "pseudo-native" dbus still needs manual call of chown messagebus:messagebus /var/run/dbus /var/lib/dbus ( it is root:root on my image) and chown root:messagebus /usr/libexec/dbus-daemon-launch-helper ( it is avahi:netdev on my image ) Does this one fix it? To test: Is it enough to rebuild dbus? Andreas ------------------------------ Message: 3 Date: Thu, 08 Dec 2011 00:01:48 +0000 From: Richard Purdie Subject: Re: [OE-core] [PATCH] bitbake.conf/image.bbclass: Ensure images use the correct passwd/group files To: Patches and discussions about the oe-core layer Message-ID: <1323302508.971.0.camel@ted> Content-Type: text/plain; charset="UTF-8" On Thu, 2011-12-08 at 00:53 +0100, Andreas M?ller wrote: > On Wednesday, December 07, 2011 06:34:07 PM Richard Purdie wrote: > > We need pseudo to use the rootfs passwd/group files belonging to the > > rootfs when building images. This patch ensures that we use the rootfs > > files instead of those in the sysroot which can lead to incorrect file > > ownership issues. > > > > Signed-off-by: Richard Purdie > > > > diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass > > index 4642fa6..865d430 100644 > > --- a/meta/classes/image.bbclass > > +++ b/meta/classes/image.bbclass > > @@ -121,6 +121,8 @@ IMAGE_LINGUAS ?= "de-de fr-fr en-gb" > > > > LINGUAS_INSTALL = "${@" ".join(map(lambda s: "locale-base-%s" % s, > > d.getVar('IMAGE_LINGUAS', 1).split()))}" > > > > +PSEUDO_PASSWD = "${IMAGE_ROOTFS}" > > + > > do_rootfs[nostamp] = "1" > > do_rootfs[dirs] = "${TOPDIR}" > > do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock" > > diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf > > index e80cc32..eeb1fc4 100644 > > --- a/meta/conf/bitbake.conf > > +++ b/meta/conf/bitbake.conf > > @@ -580,11 +580,12 @@ SRC_URI = "file://${FILE}" > > > > # Use pseudo as the fakeroot implementation > > PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/" > > +PSEUDO_PASSWD ?= "${STAGING_DIR_TARGET}" > > export PSEUDO_DISABLED = "1" > > #export PSEUDO_PREFIX = "${STAGING_DIR_NATIVE}${prefix_native}" > > #export PSEUDO_BINDIR = "${STAGING_DIR_NATIVE}${bindir_native}" > > #export PSEUDO_LIBDIR = > > "${STAGING_DIR_NATIVE}$PSEUDOBINDIR/../lib/pseudo/lib -FAKEROOTENV = > > "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} > > PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} > > PSEUDO_PASSWD=${STAGING_DIR_TARGET} PSEUDO_NOSYMLINKEXP=1 > > PSEUDO_DISABLED=0" +FAKEROOTENV = > > "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} > > PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} > > PSEUDO_PASSWD=${PSEUDO_PASSWD} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DISABLED=0" > > FAKEROOTNOENV = "PSEUDO_UNLOAD=1" > > FAKEROOTDIRS = "${PSEUDO_LOCALSTATEDIR}" > > PREFERRED_PROVIDER_virtual/fakeroot-native ?= "pseudo-native" > dbus still needs manual call of > > chown messagebus:messagebus /var/run/dbus /var/lib/dbus > > ( it is root:root on my image) and > > chown root:messagebus /usr/libexec/dbus-daemon-launch-helper > > ( it is avahi:netdev on my image ) > > Does this one fix it? > To test: Is it enough to rebuild dbus? It could well do. You just need to apply the patch and rebuild the image. Cheers, Richard ------------------------------ Message: 4 Date: Thu, 08 Dec 2011 00:12:04 +0000 From: Richard Purdie Subject: Re: [OE-core] [PATCH] ppl: fix libgmp paths To: Patches and discussions about the oe-core layer Message-ID: <1323303124.971.2.camel@ted> Content-Type: text/plain; charset="UTF-8" On Wed, 2011-12-07 at 13:19 -0800, Khem Raj wrote: > On (06/12/11 13:27), Martin Jansa wrote: > > configure:10654: checking how to link with libgmpxx > > configure:11127: result: /OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/lib/libgmpxx.so /OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/lib/libgmp.so -Wl,-rpath -Wl,/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/lib -Wl,-rpath -Wl,/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/lib > > > > Signed-off-by: Martin Jansa > > --- > > meta/recipes-support/ppl/ppl_0.11.2.bb | 6 +++++- > > 1 files changed, 5 insertions(+), 1 deletions(-) > > > > diff --git a/meta/recipes-support/ppl/ppl_0.11.2.bb b/meta/recipes-support/ppl/ppl_0.11.2.bb > > index 7536364..b31fc4d 100644 > > --- a/meta/recipes-support/ppl/ppl_0.11.2.bb > > +++ b/meta/recipes-support/ppl/ppl_0.11.2.bb > > @@ -11,6 +11,10 @@ SRC_URI[sha256sum] = "e3fbd1c19ef44c6f020951807cdb6fc6a8153cd3a5c53b0ab9cf4c4f6e > > S = "${WORKDIR}/ppl-${PV}" > > BBCLASSEXTEND = "native nativesdk" > > > > -EXTRA_OECONF = "--enable-watchdog --disable-debugging --disable-assertions --disable-ppl_lcdd --disable-ppl_lpsol --disable-ppl_pips --enable-interfaces='c cxx'" > > +# do we have something shorter then this? or can native.bbclass overwrite STAGING_DIR_HOST like nativesdk does? > > +GMP_PREFIX = "${STAGING_DIR_HOST}" > > +GMP_PREFIX_virtclass-native = "${STAGING_DIR_NATIVE}" > > + > > I think we should override STAGING_DIR_HOST in native class as well. > Since we do install native packages into local sysroot before populating > the global native sysroot. The comment in class code seems that since > we installed the native packages in position it was needed to be unset > that may not be the case now. > > RP thoughts ? native.bbclass already sets STAGING_DIR_HOST correctly to be empty. It looks wrong but its correct when you think about it since the installed binaries are at their final location where we intent to execute them (in ${prefix}). Cheers, Richard ------------------------------ Message: 5 Date: Thu, 08 Dec 2011 00:17:37 +0000 From: Richard Purdie Subject: Re: [OE-core] Coordinating inter-layer dependencies To: Patches and discussions about the oe-core layer Message-ID: <1323303457.971.5.camel@ted> Content-Type: text/plain; charset="UTF-8" On Thu, 2011-12-01 at 12:23 +0100, Koen Kooi wrote: > During the past month there have been a number of updates to OE-core > recipes that triggered parsing errors due to bbappend in other layers. > A small seleciton: > > * netbase > * libdrm > * xserver-xorg > * clutter > > My view is that layer maintainers need to keep an eye on potential > breakage and have updates ready when patches land into OE-core. > Looking back I can see that while the situation is improving a bit, > it's still not working. The problem with slow updates to layers is > that (with my angstrom hat on) users (and with my TI hat on) customers > and coworkers can't do builds without rm'ing the bbappends or > disabling the layer. I've been thinking about this. I wondered if the notion of wildcards for .bbappend might help, e.g. a file called: netbase_%.bbappend would match all versions of the netbase recipe. The % is consistent with PREFERRED_VERSION, I'm a little reluctant to use * since its a shell quoting mess. It wouldn't be hard to allow bitbake to support this and would solve some of the issues we've been having... Cheers, Richard ------------------------------ Message: 6 Date: Thu, 8 Dec 2011 08:42:18 +0800 From: "Ma, NingX" Subject: Re: [OE-core] Openembedded-core Digest, Vol 11, Issue 64 To: "openembedded-core@lists.openembedded.org" Message-ID: <789F9655DD1B8F43B48D77C5D306597312D5997F11@shsmsx501.ccr.corp.intel.com> Content-Type: text/plain; charset="us-ascii" -----Original Message----- From: openembedded-core-bounces@lists.openembedded.org [mailto:openembedded-core-bounces@lists.openembedded.org] On Behalf Of openembedded-core-request@lists.openembedded.org Sent: Thursday, December 08, 2011 5:30 AM To: openembedded-core@lists.openembedded.org Subject: Openembedded-core Digest, Vol 11, Issue 64 Send Openembedded-core mailing list submissions to openembedded-core@lists.openembedded.org To subscribe or unsubscribe via the World Wide Web, visit http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core or, via email, send a message with subject or body 'help' to openembedded-core-request@lists.openembedded.org You can reach the person managing the list at openembedded-core-owner@lists.openembedded.org When replying, please edit your Subject line so it is more specific than "Re: Contents of Openembedded-core digest..." Today's Topics: 1. [PATCH 0/8] License Consolidated Pull (Beth Flanagan) 2. Abbreviation of OpenEmbedded-Core (was: [PATCH 7/8] OECore license fixes: meta/*) (Paul Menzel) 3. Re: [PATCH] ppl: fix libgmp paths (Khem Raj) 4. [PATCH 1/1] initramfs-framework: provides a modular initramfs (Otavio Salvador) ---------------------------------------------------------------------- Message: 1 Date: Wed, 7 Dec 2011 11:34:31 -0800 From: Beth Flanagan Subject: [OE-core] [PATCH 0/8] License Consolidated Pull To: openembedded-core@lists.openembedded.org Message-ID: These are the changes from the RFCs Chris Larson and I sent out this weekend merged into one branch along with a gettext minimal fix from RP. I've trimmed the diffs in the PULL down some as there are a number of license text diffs that cause send-patch-request to choke. The following changes since commit f17e0ae38b2e6c4cbe7f0f9d76c3e1a386335fd1: conf/machine: Don't poke around providers which aren't machine specific/safe (2011-12-06 22:47:09 +0000) are available in the git repository at: git://git.yoctoproject.org/poky-contrib eflanagan/consolidated_license http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=eflanagan/consolidated_license Christopher Larson (4): oe.test_types: move into an oe.tests package license: split license parsing into oe.license oe.license: add license flattening code Add copyleft compliance class Elizabeth Flanagan (3): [YOCTO #1776] license: manifest and license path OECore license fixes: meta/* package.bbclass: Adding license collection Richard Purdie (1): gettext-minimal-native: Fix License meta/classes/copyleft_compliance.bbclass | 94 +++ meta/classes/license.bbclass | 258 +++++--- meta/classes/package.bbclass | 1 + meta/conf/licenses.conf | 54 ++- meta/files/common-licenses/AFL-1 | 92 --- meta/files/common-licenses/AFL-2 | 155 ----- meta/files/common-licenses/AGPL-3 | 213 ------ meta/files/common-licenses/APL-1 | 327 ---------- meta/files/common-licenses/APSL-1 | 334 ---------- meta/files/common-licenses/APSL-2 | 337 ---------- meta/files/common-licenses/Adobe | 14 + meta/files/common-licenses/Apache-1 | 59 -- meta/files/common-licenses/Apache-2 | 203 ------ meta/files/common-licenses/Artistic | 131 ---- meta/files/common-licenses/Artistic-1 | 97 --- meta/files/common-licenses/Artistic-2 | 202 ------ meta/files/common-licenses/BSL-1 | 25 - meta/files/common-licenses/BitstreamVera | 160 +++++ meta/files/common-licenses/CATOSL-1 | 335 ---------- meta/files/common-licenses/CC-BY-1 | 185 ------ meta/files/common-licenses/CC-BY-2 | 205 ------ meta/files/common-licenses/CC-BY-3 | 283 -------- meta/files/common-licenses/CC-BY-NC-1 | 194 ------ meta/files/common-licenses/CC-BY-NC-2 | 220 ------- meta/files/common-licenses/CC-BY-NC-3 | 297 --------- meta/files/common-licenses/CC-BY-NC-ND-1 | 146 ----- meta/files/common-licenses/CC-BY-NC-ND-2 | 209 ------ meta/files/common-licenses/CC-BY-NC-ND-3 | 272 -------- meta/files/common-licenses/CC-BY-NC-SA-1 | 209 ------ meta/files/common-licenses/CC-BY-NC-SA-2 | 242 ------- meta/files/common-licenses/CC-BY-NC-SA-3 | 320 --------- meta/files/common-licenses/CC-BY-ND-2 | 194 ------ meta/files/common-licenses/CC-BY-ND-3 | 259 -------- meta/files/common-licenses/CC-BY-SA-1 | 201 ------ meta/files/common-licenses/CC-BY-SA-2 | 227 ------- meta/files/common-licenses/CC-BY-SA-3 | 319 --------- meta/files/common-licenses/CDDL-1 | 313 --------- meta/files/common-licenses/CECILL-1 | 462 ------------- meta/files/common-licenses/CECILL-2 | 451 ------------- meta/files/common-licenses/CPAL-1 | 435 ------------- meta/files/common-licenses/CPL-1 | 250 ------- meta/files/common-licenses/CUA-OPL-1 | 482 -------------- meta/files/common-licenses/DSSSL | 49 ++ meta/files/common-licenses/ECL-1 | 61 -- meta/files/common-licenses/ECL-2 | 218 ------- meta/files/common-licenses/EDL-1.0 | 13 + meta/files/common-licenses/EFL-1 | 30 - meta/files/common-licenses/EFL-2 | 27 - meta/files/common-licenses/EPL-1 | 204 ------ meta/files/common-licenses/EUPL-1 | 302 --------- meta/files/common-licenses/Elfutils-Exception | 12 + meta/files/common-licenses/ErlPL-1 | 293 --------- meta/files/common-licenses/FSF-Unlimited | 4 + meta/files/common-licenses/Frameworx-1 | 181 ------ meta/files/common-licenses/FreeType | 170 +++++ meta/files/common-licenses/GPL-1 | 259 -------- meta/files/common-licenses/GPL-1.0+ | 252 -------- meta/files/common-licenses/GPL-2 | 23 - .../common-licenses/GPL-2,0-with-GCC-exception | 17 - .../common-licenses/GPL-2,0-with-font-exception | 18 - meta/files/common-licenses/GPL-2.0+ | 132 ---- .../common-licenses/GPL-2.0-with-GCC-exception | 13 +- .../common-licenses/GPL-2.0-with-font-exception | 14 +- meta/files/common-licenses/GPL-3 | 70 -- meta/files/common-licenses/GPL-3.0 | 224 +++++++- meta/files/common-licenses/GPL-3.0+ | 3 - meta/files/common-licenses/IPL-1 | 222 ------- meta/files/common-licenses/LGPL-2 | 461 ------------- meta/files/common-licenses/LGPL-2.0 | 189 +++++- meta/files/common-licenses/LGPL-2.0+ | 173 ----- meta/files/common-licenses/LGPL-2.1+ | 176 ----- meta/files/common-licenses/LGPL-3 | 147 ----- meta/files/common-licenses/LGPL-3.0 | 53 +- meta/files/common-licenses/LGPL-3.0+ | 66 -- meta/files/common-licenses/LPL-1 | 213 ------ meta/files/common-licenses/LPPL-1 | 422 ------------ meta/files/common-licenses/MIT-style | 1 - meta/files/common-licenses/MPL-1 | 433 ------------- meta/files/common-licenses/NASA-1 | 246 ------- meta/files/common-licenses/NPOSL-3 | 206 ------ meta/files/common-licenses/OASIS | 13 + meta/files/common-licenses/OCLC-2 | 207 ------ meta/files/common-licenses/OFL-1 | 96 --- meta/files/common-licenses/OLDAP-2 | 54 -- meta/files/common-licenses/OSL-1 | 172 ----- meta/files/common-licenses/OSL-1.0 | 2 +- meta/files/common-licenses/OSL-2 | 171 ----- meta/files/common-licenses/OSL-3 | 157 ----- meta/files/common-licenses/PHP-3 | 70 -- meta/files/common-licenses/Proprietary | 1 + meta/files/common-licenses/Python-2 | 192 ------ meta/files/common-licenses/QPL-1 | 96 --- meta/files/common-licenses/RPL-1 | 582 ----------------- meta/files/common-licenses/RPSL-1 | 535 --------------- meta/files/common-licenses/SPL | 519 --------------- meta/files/common-licenses/Simple-2 | 53 -- meta/files/common-licenses/UCB | 26 + meta/files/common-licenses/VSL-1 | 54 -- meta/files/common-licenses/Watcom-1 | 389 ----------- meta/files/common-licenses/XFree86-1 | 50 -- meta/files/common-licenses/YPL-1 | 140 ---- meta/files/common-licenses/ZPL-1 | 60 -- meta/files/common-licenses/ZPL-2 | 44 -- meta/files/common-licenses/Zimbra-1 | 140 ---- meta/files/common-licenses/eCos-2 | 38 -- meta/lib/oe/license.py | 62 ++ .../CC-BY-ND-1 => lib/oe/tests/__init__.py} | 0 meta/lib/oe/tests/test_license.py | 68 ++ meta/lib/oe/{ => tests}/test_types.py | 0 .../base-files/base-files/licenses/Artistic | 131 ---- .../base-files/base-files/licenses/BSD | 26 - .../base-files/base-files/licenses/GFDL-1.2 | 397 ------------ .../base-files/base-files/licenses/GPL-3 | 676 ------------------- .../base-files/base-files/licenses/LGPL-2 | 481 -------------- .../base-files/base-files/licenses/LGPL-2.1 | 510 --------------- .../base-files/base-files/licenses/LGPL-3 | 165 ----- meta/recipes-core/base-files/base-files_3.0.14.bb | 20 +- meta/recipes-core/busybox/busybox.inc | 3 +- meta/recipes-core/busybox/busybox_1.19.3.bb | 2 +- .../gettext/gettext-minimal-0.18.1.1/COPYING | 678 +------------------- .../gettext/gettext-minimal-native_0.18.1.1.bb | 4 +- meta/recipes-core/gettext/gettext_0.18.1.1.bb | 4 +- meta/recipes-core/jpeg/jpeg_8c.bb | 4 +- meta/recipes-devtools/elfutils/elfutils_0.148.bb | 4 +- meta/recipes-devtools/python/python-pyrex_0.9.9.bb | 4 +- .../squashfs-tools/squashfs-tools_4.2.bb | 4 +- meta/recipes-devtools/tcf-agent/tcf-agent_svn.bb | 4 +- meta/recipes-devtools/tcltk/tcl_8.5.11.bb | 4 +- .../transfig/transfig-native_3.2.5d.bb | 4 +- meta/recipes-extended/byacc/byacc_20110908.bb | 10 +- meta/recipes-extended/bzip2/bzip2_1.0.6.bb | 4 +- meta/recipes-extended/less/less_444.bb | 7 +- .../tcp-wrappers/tcp-wrappers_7.6.bb | 4 +- meta/recipes-extended/unzip/unzip_6.0.bb | 4 +- meta/recipes-extended/xinetd/xinetd_2.3.14.bb | 5 +- meta/recipes-extended/zip/zip.inc | 2 +- meta/recipes-extended/zip/zip_3.0.bb | 2 +- .../recipes-gnome/gnome/gnome-icon-theme_2.31.0.bb | 4 +- meta/recipes-graphics/clutter/clutter-box2d.inc | 2 +- meta/recipes-graphics/clutter/clutter-box2d_git.bb | 2 +- meta/recipes-graphics/freetype/freetype_2.4.6.bb | 4 +- .../ttf-fonts/ttf-bitstream-vera_1.10.bb | 4 +- meta/recipes-graphics/xorg-app/xrandr_1.3.5.bb | 4 +- .../recipes-graphics/xorg-font/font-alias_1.0.3.bb | 4 +- meta/recipes-graphics/xorg-font/font-util_1.2.0.bb | 5 +- .../linux-firmware/linux-firmware_git.bb | 5 + meta/recipes-multimedia/libtiff/tiff_3.9.5.bb | 4 +- .../matchbox-theme-sato/matchbox-theme-sato.inc | 2 +- .../matchbox-theme-sato/matchbox-theme-sato_0.1.bb | 2 +- .../sato-icon-theme/sato-icon-theme.inc | 2 +- .../sato-icon-theme/sato-icon-theme_0.4.1.bb | 2 +- meta/recipes-support/boost/boost.inc | 4 +- 152 files changed, 1439 insertions(+), 20828 deletions(-) create mode 100644 meta/classes/copyleft_compliance.bbclass delete mode 100644 meta/files/common-licenses/AFL-1 delete mode 100644 meta/files/common-licenses/AFL-2 delete mode 100644 meta/files/common-licenses/AGPL-3 delete mode 100644 meta/files/common-licenses/APL-1 delete mode 100644 meta/files/common-licenses/APSL-1 delete mode 100644 meta/files/common-licenses/APSL-2 create mode 100644 meta/files/common-licenses/Adobe delete mode 100644 meta/files/common-licenses/Apache-1 delete mode 100644 meta/files/common-licenses/Apache-2 delete mode 100644 meta/files/common-licenses/Artistic delete mode 100644 meta/files/common-licenses/Artistic-1 delete mode 100644 meta/files/common-licenses/Artistic-2 delete mode 100644 meta/files/common-licenses/BSL-1 create mode 100644 meta/files/common-licenses/BitstreamVera delete mode 100644 meta/files/common-licenses/CATOSL-1 delete mode 100644 meta/files/common-licenses/CC-BY-1 delete mode 100644 meta/files/common-licenses/CC-BY-2 delete mode 100644 meta/files/common-licenses/CC-BY-3 delete mode 100644 meta/files/common-licenses/CC-BY-NC-1 delete mode 100644 meta/files/common-licenses/CC-BY-NC-2 delete mode 100644 meta/files/common-licenses/CC-BY-NC-3 delete mode 100644 meta/files/common-licenses/CC-BY-NC-ND-1 delete mode 100644 meta/files/common-licenses/CC-BY-NC-ND-2 delete mode 100644 meta/files/common-licenses/CC-BY-NC-ND-3 delete mode 100644 meta/files/common-licenses/CC-BY-NC-SA-1 delete mode 100644 meta/files/common-licenses/CC-BY-NC-SA-2 delete mode 100644 meta/files/common-licenses/CC-BY-NC-SA-3 delete mode 100644 meta/files/common-licenses/CC-BY-ND-2 delete mode 100644 meta/files/common-licenses/CC-BY-ND-3 delete mode 100644 meta/files/common-licenses/CC-BY-SA-1 delete mode 100644 meta/files/common-licenses/CC-BY-SA-2 delete mode 100644 meta/files/common-licenses/CC-BY-SA-3 delete mode 100644 meta/files/common-licenses/CDDL-1 delete mode 100644 meta/files/common-licenses/CECILL-1 delete mode 100644 meta/files/common-licenses/CECILL-2 delete mode 100644 meta/files/common-licenses/CPAL-1 delete mode 100644 meta/files/common-licenses/CPL-1 delete mode 100644 meta/files/common-licenses/CUA-OPL-1 create mode 100644 meta/files/common-licenses/DSSSL delete mode 100644 meta/files/common-licenses/ECL-1 delete mode 100644 meta/files/common-licenses/ECL-2 create mode 100644 meta/files/common-licenses/EDL-1.0 delete mode 100644 meta/files/common-licenses/EFL-1 delete mode 100644 meta/files/common-licenses/EFL-2 delete mode 100644 meta/files/common-licenses/EPL-1 delete mode 100644 meta/files/common-licenses/EUPL-1 create mode 100644 meta/files/common-licenses/Elfutils-Exception delete mode 100644 meta/files/common-licenses/ErlPL-1 create mode 100644 meta/files/common-licenses/FSF-Unlimited delete mode 100644 meta/files/common-licenses/Frameworx-1 create mode 100644 meta/files/common-licenses/FreeType delete mode 100644 meta/files/common-licenses/GPL-1 delete mode 100644 meta/files/common-licenses/GPL-1.0+ delete mode 100644 meta/files/common-licenses/GPL-2 delete mode 100644 meta/files/common-licenses/GPL-2,0-with-GCC-exception delete mode 100644 meta/files/common-licenses/GPL-2,0-with-font-exception delete mode 100644 meta/files/common-licenses/GPL-2.0+ delete mode 100644 meta/files/common-licenses/GPL-3 delete mode 100644 meta/files/common-licenses/GPL-3.0+ delete mode 100644 meta/files/common-licenses/IPL-1 delete mode 100644 meta/files/common-licenses/LGPL-2 delete mode 100644 meta/files/common-licenses/LGPL-2.0+ delete mode 100644 meta/files/common-licenses/LGPL-2.1+ delete mode 100644 meta/files/common-licenses/LGPL-3 delete mode 100644 meta/files/common-licenses/LGPL-3.0+ delete mode 100644 meta/files/common-licenses/LPL-1 delete mode 100644 meta/files/common-licenses/LPPL-1 delete mode 120000 meta/files/common-licenses/MIT-style delete mode 100644 meta/files/common-licenses/MPL-1 delete mode 100644 meta/files/common-licenses/NASA-1 delete mode 100644 meta/files/common-licenses/NPOSL-3 create mode 100644 meta/files/common-licenses/OASIS delete mode 100644 meta/files/common-licenses/OCLC-2 delete mode 100644 meta/files/common-licenses/OFL-1 delete mode 100644 meta/files/common-licenses/OLDAP-2 delete mode 100644 meta/files/common-licenses/OSL-1 delete mode 100644 meta/files/common-licenses/OSL-2 delete mode 100644 meta/files/common-licenses/OSL-3 delete mode 100644 meta/files/common-licenses/PHP-3 create mode 100644 meta/files/common-licenses/Proprietary delete mode 100644 meta/files/common-licenses/Python-2 delete mode 100644 meta/files/common-licenses/QPL-1 delete mode 100644 meta/files/common-licenses/RPL-1 delete mode 100644 meta/files/common-licenses/RPSL-1 delete mode 100644 meta/files/common-licenses/SPL delete mode 100644 meta/files/common-licenses/Simple-2 create mode 100644 meta/files/common-licenses/UCB delete mode 100644 meta/files/common-licenses/VSL-1 delete mode 100644 meta/files/common-licenses/Watcom-1 delete mode 100644 meta/files/common-licenses/XFree86-1 delete mode 100644 meta/files/common-licenses/YPL-1 delete mode 100644 meta/files/common-licenses/ZPL-1 delete mode 100644 meta/files/common-licenses/ZPL-2 delete mode 100644 meta/files/common-licenses/Zimbra-1 delete mode 100644 meta/files/common-licenses/eCos-2 create mode 100644 meta/lib/oe/license.py rename meta/{files/common-licenses/CC-BY-ND-1 => lib/oe/tests/__init__.py} (100%) create mode 100644 meta/lib/oe/tests/test_license.py rename meta/lib/oe/{ => tests}/test_types.py (100%) delete mode 100644 meta/recipes-core/base-files/base-files/licenses/Artistic delete mode 100644 meta/recipes-core/base-files/base-files/licenses/BSD delete mode 100644 meta/recipes-core/base-files/base-files/licenses/GFDL-1.2 delete mode 100644 meta/recipes-core/base-files/base-files/licenses/GPL-3 delete mode 100644 meta/recipes-core/base-files/base-files/licenses/LGPL-2 delete mode 100644 meta/recipes-core/base-files/base-files/licenses/LGPL-2.1 delete mode 100644 meta/recipes-core/base-files/base-files/licenses/LGPL-3 ------------------------------ Message: 2 Date: Wed, 07 Dec 2011 22:16:49 +0100 From: Paul Menzel Subject: [OE-core] Abbreviation of OpenEmbedded-Core (was: [PATCH 7/8] OECore license fixes: meta/*) To: openembedded-core@lists.openembedded.org Message-ID: <1323292609.4065.42.camel@mattotaupa> Content-Type: text/plain; charset="utf-8" Dear OE folks, Am Mittwoch, den 07.12.2011, 11:34 -0800 schrieb Beth Flanagan: > From: Elizabeth Flanagan > > This is a quick audit of only the most obviously wrong licenses > found within OECore. These fixes fall into four areas: could we agree on the spelling of the abbreviation of OpenEmbedded-Core? In the files in the repository everything is spelled OE-Core so I guess that should be it. The Wiki uses OE-Core [1] and Elisabeth?s commit message uses OECore. [?] Thanks, Paul [1] http://www.openembedded.org/wiki/Oe-core -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: This is a digitally signed message part URL: ------------------------------ Message: 3 Date: Wed, 7 Dec 2011 13:19:56 -0800 From: Khem Raj Subject: Re: [OE-core] [PATCH] ppl: fix libgmp paths To: Patches and discussions about the oe-core layer Message-ID: <20111207211956.GA6351@sakrah.homelinux.org> Content-Type: text/plain; charset=us-ascii On (06/12/11 13:27), Martin Jansa wrote: > configure:10654: checking how to link with libgmpxx > configure:11127: result: /OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/lib/libgmpxx.so /OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/lib/libgmp.so -Wl,-rpath -Wl,/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/lib -Wl,-rpath -Wl,/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/lib > > Signed-off-by: Martin Jansa > --- > meta/recipes-support/ppl/ppl_0.11.2.bb | 6 +++++- > 1 files changed, 5 insertions(+), 1 deletions(-) > > diff --git a/meta/recipes-support/ppl/ppl_0.11.2.bb b/meta/recipes-support/ppl/ppl_0.11.2.bb > index 7536364..b31fc4d 100644 > --- a/meta/recipes-support/ppl/ppl_0.11.2.bb > +++ b/meta/recipes-support/ppl/ppl_0.11.2.bb > @@ -11,6 +11,10 @@ SRC_URI[sha256sum] = "e3fbd1c19ef44c6f020951807cdb6fc6a8153cd3a5c53b0ab9cf4c4f6e > S = "${WORKDIR}/ppl-${PV}" > BBCLASSEXTEND = "native nativesdk" > > -EXTRA_OECONF = "--enable-watchdog --disable-debugging --disable-assertions --disable-ppl_lcdd --disable-ppl_lpsol --disable-ppl_pips --enable-interfaces='c cxx'" > +# do we have something shorter then this? or can native.bbclass overwrite STAGING_DIR_HOST like nativesdk does? > +GMP_PREFIX = "${STAGING_DIR_HOST}" > +GMP_PREFIX_virtclass-native = "${STAGING_DIR_NATIVE}" > + I think we should override STAGING_DIR_HOST in native class as well. Since we do install native packages into local sysroot before populating the global native sysroot. The comment in class code seems that since we installed the native packages in position it was needed to be unset that may not be the case now. RP thoughts ? -- -Khem ------------------------------ Message: 4 Date: Wed, 7 Dec 2011 21:23:00 +0000 From: Otavio Salvador Subject: [OE-core] [PATCH 1/1] initramfs-framework: provides a modular initramfs To: openembedded-core@lists.openembedded.org Message-ID: <0ab4225dfaee3c59d5200f9d73d75e4b44f3a498.1323292966.git.otavio@ossystems.com.br> Provides the API and modules for a modular initramfs. The currently included modules are: * initramfs-module-debug adds support to dynamic debugging of initramfs using bootparams * initramfs-module-udev: enables udev usage * initramfs-module-mdev: enables mdev usage * initramfs-module-e2fs: adds support for ext4, ext3 and ext2 filesystems Signed-off-by: Otavio Salvador --- .../initrdscripts/initramfs-framework/debug | 82 ++++++++++++ .../initrdscripts/initramfs-framework/e2fs | 28 ++++ .../initrdscripts/initramfs-framework/finish | 46 +++++++ .../initrdscripts/initramfs-framework/init | 136 ++++++++++++++++++++ .../initrdscripts/initramfs-framework/mdev | 30 +++++ .../initrdscripts/initramfs-framework/udev | 22 +++ .../initrdscripts/initramfs-framework_1.0.bb | 57 ++++++++ 7 files changed, 401 insertions(+), 0 deletions(-) create mode 100644 meta/recipes-core/initrdscripts/initramfs-framework/debug create mode 100755 meta/recipes-core/initrdscripts/initramfs-framework/e2fs create mode 100755 meta/recipes-core/initrdscripts/initramfs-framework/finish create mode 100755 meta/recipes-core/initrdscripts/initramfs-framework/init create mode 100644 meta/recipes-core/initrdscripts/initramfs-framework/mdev create mode 100644 meta/recipes-core/initrdscripts/initramfs-framework/udev create mode 100644 meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb -- 1.7.2.5 ------------------------------ diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/debug b/meta/recipes-core/initrdscripts/initramfs-framework/debug new file mode 100644 index 0000000..00bfd7d --- /dev/null +++ b/meta/recipes-core/initrdscripts/initramfs-framework/debug @@ -0,0 +1,82 @@ +#!/bin/sh +# Copyright (C) 2011 O.S. Systems Software LTDA. +# Licensed on MIT + +# Adds support to dynamic debugging of initramfs using bootparam in +# following format: +# shell : starts a shell before and after each module +# shell=before: : starts a shell before is loaded and run +# shell=after: : starts a shell after is loaded and run +# +# shell-debug : run set -x as soon as possible +# shell-debug=before: : run set -x before is loaded and run +# shell-debug=after: : run set -x after is loaded and run + +DEBUG_SHELL="false" + +debug_hook_handler() { + status=$1 + module=$2 + + if [ -n "$bootparam_shell" ] && [ "$bootparam_shell" != "true" ]; then + shell_wanted_status=`expr $bootparam_shell : '\(.*\):.*'` + shell_wanted_module=`expr $bootparam_shell : '.*:\(.*\)'` + + if [ "$shell_wanted_status" = "before" ]; then + shell_wanted_status=pre + else + shell_wanted_status=post + fi + fi + + if [ "$bootparam_shell" = "true" ] || + ( [ "$status" = "$shell_wanted_status" ] && + [ "$module" = "$shell_wanted_module" ] ); then + if [ "$status" = "pre" ]; then + status_msg="before" + else + status_msg="after" + fi + + msg "Starting shell $status_msg $module..." + sh + fi + + if [ -n "$bootparam_shell_debug" ] && [ "$bootparam_shell_debug" != "true" ]; then + shell_debug_wanted_status=`expr $bootparam_shell_debug : '\(.*\):.*'` + shell_debug_wanted_module=`expr $bootparam_shell_debug : '.*:\(.*\)'` + + if [ "$shell_debug_wanted_status" = "before" ]; then + shell_debug_wanted_status=pre + else + shell_debug_wanted_status=post + fi + fi + + if [ "$bootparam_shell_debug" = "true" ] || + ( [ "$status" = "$shell_debug_wanted_status" ] && + [ "$module" = "$shell_debug_wanted_module" ] ); then + if [ "$DEBUG_SHELL" = "true" ]; then + return 0 + fi + + if [ "$status" = "pre" ]; then + status_msg="before" + else + status_msg="after" + fi + + msg "Starting shell debugging $status_msg $module..." + DEBUG_SHELL="true" + set -x + fi +} + +debug_enabled() { + return 0 +} + +debug_run() { + add_module_pre_hook "debug_hook_handler" + add_module_post_hook "debug_hook_handler" +} diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/e2fs b/meta/recipes-core/initrdscripts/initramfs-framework/e2fs new file mode 100755 index 0000000..29f801a --- /dev/null +++ b/meta/recipes-core/initrdscripts/initramfs-framework/e2fs @@ -0,0 +1,28 @@ +#!/bin/sh +# Copyright (C) 2011 O.S. Systems Software LTDA. +# Licensed on MIT + +e2fs_enabled() { + return 0 +} + +e2fs_run() { + filesystems="ext4 ext3 ext2" + + # load modules + for fs in $filesystems; do + load_kernel_module $fs + done + + for fs in $filesystems; do + eval "fs_options=\$bootparam_${fs}" + if [ -n "$fs_options" ]; then + dev=`expr "$fs_options" : '\([^:]*\).*'` + path=`expr "$fs_options" : '[^:]*:\([^:]*\).*'` + + info "Mounting $dev as $fs on $path as $fs..." + mkdir -p $path + mount -t $fs $dev $path + fi + done +} diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/finish b/meta/recipes-core/initrdscripts/initramfs-framework/finish new file mode 100755 index 0000000..bedd803 --- /dev/null +++ b/meta/recipes-core/initrdscripts/initramfs-framework/finish @@ -0,0 +1,46 @@ +#!/bin/sh +# Copyright (C) 2011 O.S. Systems Software LTDA. +# Licensed on MIT + +finish_enabled() { + return 0 +} + +finish_run() { + if [ -n "$ROOTFS_DIR" ]; then + if [ -n "$bootparam_rootdelay" ]; then + debug "Sleeping for $rootdelay second(s) to wait root to settle..." + sleep $bootparam_rootdelay + fi + + if [ -n "$bootparam_root" ]; then + debug "No e2fs compatible filesystem has been mounted, mounting $bootparam_root..." + + if [ "${bootparam_root:0:5}" = "UUID=" ]; then + bootparam_root="/dev/disk/by-uuid/${bootparam_root/UUID=/}" + fi + + if [ -e "$bootparam_root" ]; then + mount $bootparam_root $ROOTFS_DIR + else + debug "root '$bootparam_root' doesn't exist." + fi + fi + + if [ ! -d $ROOTFS_DIR/dev ]; then + fatal "ERROR: There's no '/dev' on rootfs." + fi + + info "Switching root to '$ROOTFS_DIR'..." + + debug "Moving /dev, /proc and /sys onto rootfs..." + mount --move /dev $ROOTFS_DIR/dev + mount --move /proc $ROOTFS_DIR/proc + mount --move /sys $ROOTFS_DIR/sys + + cd $ROOTFS_DIR + exec switch_root -c /dev/console $ROOTFS_DIR /sbin/init + else + debug "No rootfs has been set" + fi +} diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/init b/meta/recipes-core/initrdscripts/initramfs-framework/init new file mode 100755 index 0000000..fc4b0db --- /dev/null +++ b/meta/recipes-core/initrdscripts/initramfs-framework/init @@ -0,0 +1,136 @@ +#!/bin/sh +# Copyright (C) 2011 O.S. Systems Software LTDA. +# Licensed on MIT +# +# Provides the API to be used by the initramfs modules +# +# Modules need to provide the following functions: +# +# _enabled : check if the module ought to run (return 1 to skip) +# _run : do what is need +# +# Boot parameters are available on environment in the as: +# +# 'foo=value' as 'bootparam_foo=value' +# 'foo' as 'bootparam_foo=true' + +# Register a function to be called before running a module +# The hook is called as: +# pre +add_module_pre_hook() { + MODULE_PRE_HOOKS="$MODULE_PRE_HOOKS $1" +} + +# Register a function to be called after running a module +# The hook is called as: +# post +add_module_post_hook() { + MODULE_POST_HOOKS="$MODULE_POST_HOOKS $1" +} + +# Load kernel module +load_kernel_module() { + if modprobe $1 >/dev/null 2>&1; then + info "Loaded module $1" + else + debug "Failed to load module $1" + fi +} + +# Prints information +msg() { + echo "$@" >/dev/console +} + +# Prints information if verbose bootparam is used +info() { + [ -n "$bootparam_verbose" ] && echo "$@" >/dev/console +} + +# Prints information if debug bootparam is used +debug() { + [ -n "$bootparam_debug" ] && echo "DEBUG: $@" >/dev/console +} + +# Prints a message and start a endless loop +fatal() { + echo $1 >/dev/console + echo >/dev/console + + while [ "true" ]; do + sleep 3600 + done +} + +# Variables shared amoung modules +ROOTFS_DIR="/rootfs" # where to do the switch root +MODULE_PRE_HOOKS="" # functions to call before running each module +MODULE_POST_HOOKS="" # functions to call after running each module +MODULES_DIR=/init.d # place to look for modules + +# initialize /proc and /sys +mkdir -p /proc /sys +mount -t proc proc /proc +mount -t sysfs sysfs /sys + +# populate bootparam environment +for p in `cat /proc/cmdline`; do + opt="${p%%=*}" + opt=${opt/-/_} + if [ "${p/=/}" = "$p" ]; then + eval "bootparam_${opt}=true" + else + eval "bootparam_${opt}=\"${p#*=}\"" + fi +done + +# use /dev with devtmpfs +if grep -q devtmpfs /proc/filesystems; then + mkdir -p /dev + mount -t devtmpfs devtmpfs /dev +else + if [ ! -d /dev ]; then + fatal "ERROR: /dev doesn't exist and kernel doesn't has devtmpfs enabled." + fi +fi + +mkdir $ROOTFS_DIR + +# Load and run modules +for m in $MODULES_DIR/*; do + # Skip backup files + if [ "${m/\~/}" != "$m" ]; then + continue + fi + + module=`basename $m | cut -d'-' -f 2` + debug "Loading module $module" + + # pre hooks + for h in $MODULE_PRE_HOOKS; do + debug "Calling module hook (pre): $h" + eval "$h pre $module" + debug "Finished module hook (pre): $h" + done + + # process module + source $m + + if ! eval "${module}_enabled"; then + debug "Skipping module $module" + continue + fi + + debug "Running ${module}_run" + eval "${module}_run" + + # post hooks + for h in $MODULE_POST_HOOKS; do + debug "Calling module hook (post): $h" + eval "$h post $module" + debug "Finished module hook (post): $h" + done +done + +# Catch all +fatal "ERROR: Initramfs failed to initialize the system." diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/mdev b/meta/recipes-core/initrdscripts/initramfs-framework/mdev new file mode 100644 index 0000000..a5df1d7 --- /dev/null +++ b/meta/recipes-core/initrdscripts/initramfs-framework/mdev @@ -0,0 +1,30 @@ +#!/bin/sh +# Copyright (C) 2011 O.S. Systems Software LTDA. +# Licensed on MIT + +mdev_enabled() { + if [ ! -e /sbin/mdev ]; then + debug "/sbin/mdev doesn't exist" + return 1 + fi + + return 0 +} + +mdev_run() { + # setup the environment + mount -t tmpfs tmpfs /dev + + mkdir -m 1777 /dev/shm + + mkdir -m 0755 /dev/pts + mount -t devpts devpts /dev/pts + + echo /sbin/mdev > /proc/sys/kernel/hotplug + mdev -s + + # load modules for devices + find /sys -name modalias | while read m; do + load_kernel_module $(cat $m) + done +} diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/udev b/meta/recipes-core/initrdscripts/initramfs-framework/udev new file mode 100644 index 0000000..9ea8aa3 --- /dev/null +++ b/meta/recipes-core/initrdscripts/initramfs-framework/udev @@ -0,0 +1,22 @@ +#!/bin/sh +# Copyright (C) 2011 O.S. Systems Software LTDA. +# Licensed on MIT + +udev_enabled() { + if [ ! -e /sbin/udevd ]; then + debug "/sbin/udev doesn't exist" + return 1 + fi + + return 0 +} + +udev_run() { + mkdir -p /run + + udevd --daemon > /dev/null + udevadm trigger --action=add + udevadm settle + + killall udevd 2>/dev/null +} diff --git a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb new file mode 100644 index 0000000..58e41d4 --- /dev/null +++ b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb @@ -0,0 +1,57 @@ +DESCRIPTION = "initramfs modular system" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" +RDEPENDS = "busybox" + +inherit allarch + +SRC_URI = "file://init \ + file://finish \ + file://mdev \ + file://udev \ + file://e2fs \ + file://debug" + +do_install() { + install -d ${D}/init.d + + # base + install -m 0755 ${WORKDIR}/init ${D}/init + install -m 0755 ${WORKDIR}/finish ${D}/init.d/99-finish + + # mdev + install -m 0755 ${WORKDIR}/mdev ${D}/init.d/01-mdev + + # udev + install -m 0755 ${WORKDIR}/udev ${D}/init.d/01-udev + + # e2fs + install -m 0755 ${WORKDIR}/e2fs ${D}/init.d/10-e2fs + + # debug + install -m 0755 ${WORKDIR}/debug ${D}/init.d/00-debug +} + +PACKAGES = "${PN}-base \ + initramfs-module-mdev \ + initramfs-module-udev \ + initramfs-module-e2fs \ + initramfs-module-debug" + +FILES_${PN}-base = "/init /init.d/99-finish" + +DESCRIPTION_initramfs-module-mdev = "initramfs support for mdev" +RDEPENDS_initramfs-module-mdev = "${PN}-base" +FILES_initramfs-module-mdev = "/init.d/01-mdev" + +DESCRIPTION_initramfs-module-udev = "initramfs support for udev" +RDEPENDS_initramfs-module-udev = "${PN}-base udev udev-utils" +FILES_initramfs-module-udev = "/init.d/01-udev" + +DESCRIPTION_initramfs-module-e2fs = "initramfs support for ext4/ext3/ext2 filesystems" +RDEPENDS_initramfs-module-e2fs = "${PN}-base" +FILES_initramfs-module-e2fs = "/init.d/10-e2fs" + +DESCRIPTION_initramfs-module-debug = "initramfs dynamic debug support" +RDEPENDS_initramfs-module-debug = "${PN}-base" +FILES_initramfs-module-debug = "/init.d/00-debug"