* [PATCH] Update poky-feed-config-opkg to generate a useful package setup
@ 2011-09-02 16:46 Gary Thomas
2011-09-02 17:04 ` Richard Purdie
0 siblings, 1 reply; 5+ messages in thread
From: Gary Thomas @ 2011-09-02 16:46 UTC (permalink / raw)
To: Poky Project
[-- Attachment #1: Type: text/plain, Size: 970 bytes --]
The current poky-feed-config-opkg package only generates a skeleton for the
opkg setups. In particular, the base configuration file /etc/opkg/base-files.conf
is not filled in at all.
The attached patch fills this file in, using variables set by the
user (local.conf, site.conf, etc). If left unset, the behaviour will
be the same as current.
One thing I found is that opkg is very noisy if there are databases
mentioned in base-files.conf that don't exist. For example, on ARM
platforms, there are a large number of possibilities (arm, armv5, armv6, ...)
that are never populated in .../tmp/deploy/ipk. The changes to this
recipe will prune the file to only include those ipk databases which
have actual files present.
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
[-- Attachment #2: 0001-Generate-useful-opkg-setup.patch --]
[-- Type: text/plain, Size: 1933 bytes --]
From 5f2702b306f5595e6d66b756776a8c8bcc905149 Mon Sep 17 00:00:00 2001
From: Gary Thomas <gary@mlbassoc.com>
Date: Fri, 2 Sep 2011 10:40:43 -0600
Subject: [PATCH] Generate useful opkg setup
Signed-off-by: Gary Thomas <gary@mlbassoc.com>
---
.../feed-config/poky-feed-config-opkg_1.0.bb | 20 ++++++++++++++------
1 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/meta/recipes-core/feed-config/poky-feed-config-opkg_1.0.bb b/meta/recipes-core/feed-config/poky-feed-config-opkg_1.0.bb
index fc223c9..30b5e2e 100644
--- a/meta/recipes-core/feed-config/poky-feed-config-opkg_1.0.bb
+++ b/meta/recipes-core/feed-config/poky-feed-config-opkg_1.0.bb
@@ -1,12 +1,12 @@
DESCRIPTION = "Poky example feed configuration"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PR = "r1"
+PR = "r2"
PACKAGE_ARCH = "${MACHINE_ARCH}"
INHIBIT_DEFAULT_DEPS = "1"
-#FEEDNAMEPREFIX ?= "INVALID"
-#FEEDURIPREFIX ?= "INVALID"
+FEEDNAMEPREFIX ?= "INVALID"
+FEEDURIPREFIX ?= "INVALID"
do_compile() {
mkdir -p ${S}/${sysconfdir}/opkg/
@@ -26,11 +26,19 @@ do_compile() {
rm -f $basefeedconf
touch $basefeedconf
- #for arch in $ipkgarchs; do
- # echo "src/gz ${FEEDNAMEPREFIX}-$arch http://pokylinux.org/${FEEDURIPREFIX}$arch" >> $basefeedconf
- #done
+ if [ "${FEEDNAMEPREFIX}" != "INVALID" ]; then
+ for arch in $ipkgarchs; do
+ # Only export real directories
+ if [ -d "${DEPLOY_DIR}/ipk/${arch}" ]; then
+ echo "src/gz ${FEEDNAMEPREFIX}-$arch ${FEEDURIPREFIX}/$arch" >> $basefeedconf
+ fi
+ done
+ fi
}
+# This should ensure that all active architectures are represented above
+do_compile[depends] += "base-files:do_package"
+do_compile[depends] += "virtual/kernel:do_package"
do_install () {
install -d ${D}${sysconfdir}/opkg
--
1.7.6
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] Update poky-feed-config-opkg to generate a useful package setup
2011-09-02 16:46 [PATCH] Update poky-feed-config-opkg to generate a useful package setup Gary Thomas
@ 2011-09-02 17:04 ` Richard Purdie
2011-09-02 17:10 ` Gary Thomas
0 siblings, 1 reply; 5+ messages in thread
From: Richard Purdie @ 2011-09-02 17:04 UTC (permalink / raw)
To: Gary Thomas; +Cc: Poky Project
On Fri, 2011-09-02 at 10:46 -0600, Gary Thomas wrote:
> The current poky-feed-config-opkg package only generates a skeleton for the
> opkg setups. In particular, the base configuration file /etc/opkg/base-files.conf
> is not filled in at all.
>
> The attached patch fills this file in, using variables set by the
> user (local.conf, site.conf, etc). If left unset, the behaviour will
> be the same as current.
>
> One thing I found is that opkg is very noisy if there are databases
> mentioned in base-files.conf that don't exist. For example, on ARM
> platforms, there are a large number of possibilities (arm, armv5, armv6, ...)
> that are never populated in .../tmp/deploy/ipk. The changes to this
> recipe will prune the file to only include those ipk databases which
> have actual files present.
Your code is one big race unfortunately since the actual file generated
will depend on whether any packaging task has run before it or not (and
what package type that was). I'm not sure how to fix that but it can't
go in as it stands due to that...
Cheers,
Richard
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Update poky-feed-config-opkg to generate a useful package setup
2011-09-02 17:04 ` Richard Purdie
@ 2011-09-02 17:10 ` Gary Thomas
2011-09-02 17:34 ` Richard Purdie
0 siblings, 1 reply; 5+ messages in thread
From: Gary Thomas @ 2011-09-02 17:10 UTC (permalink / raw)
To: Richard Purdie; +Cc: Poky Project
On 2011-09-02 11:04, Richard Purdie wrote:
> On Fri, 2011-09-02 at 10:46 -0600, Gary Thomas wrote:
>> The current poky-feed-config-opkg package only generates a skeleton for the
>> opkg setups. In particular, the base configuration file /etc/opkg/base-files.conf
>> is not filled in at all.
>>
>> The attached patch fills this file in, using variables set by the
>> user (local.conf, site.conf, etc). If left unset, the behaviour will
>> be the same as current.
>>
>> One thing I found is that opkg is very noisy if there are databases
>> mentioned in base-files.conf that don't exist. For example, on ARM
>> platforms, there are a large number of possibilities (arm, armv5, armv6, ...)
>> that are never populated in .../tmp/deploy/ipk. The changes to this
>> recipe will prune the file to only include those ipk databases which
>> have actual files present.
>
> Your code is one big race unfortunately since the actual file generated
> will depend on whether any packaging task has run before it or not (and
> what package type that was). I'm not sure how to fix that but it can't
> go in as it stands due to that...
I agree :-) That's what these lines are for:
do_compile[depends] += "base-files:do_package"
do_compile[depends] += "virtual/kernel:do_package"
They solve the problem for me, i.e. if I build an image which includes
this recipe from scratch, then the do_compile step is held off until
sufficient work has gone on to make the database useful.
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Update poky-feed-config-opkg to generate a useful package setup
2011-09-02 17:10 ` Gary Thomas
@ 2011-09-02 17:34 ` Richard Purdie
2011-09-02 19:52 ` Gary Thomas
0 siblings, 1 reply; 5+ messages in thread
From: Richard Purdie @ 2011-09-02 17:34 UTC (permalink / raw)
To: Gary Thomas; +Cc: Poky Project
On Fri, 2011-09-02 at 11:10 -0600, Gary Thomas wrote:
> On 2011-09-02 11:04, Richard Purdie wrote:
> > On Fri, 2011-09-02 at 10:46 -0600, Gary Thomas wrote:
> >> The current poky-feed-config-opkg package only generates a skeleton for the
> >> opkg setups. In particular, the base configuration file /etc/opkg/base-files.conf
> >> is not filled in at all.
> >>
> >> The attached patch fills this file in, using variables set by the
> >> user (local.conf, site.conf, etc). If left unset, the behaviour will
> >> be the same as current.
> >>
> >> One thing I found is that opkg is very noisy if there are databases
> >> mentioned in base-files.conf that don't exist. For example, on ARM
> >> platforms, there are a large number of possibilities (arm, armv5, armv6, ...)
> >> that are never populated in .../tmp/deploy/ipk. The changes to this
> >> recipe will prune the file to only include those ipk databases which
> >> have actual files present.
> >
> > Your code is one big race unfortunately since the actual file generated
> > will depend on whether any packaging task has run before it or not (and
> > what package type that was). I'm not sure how to fix that but it can't
> > go in as it stands due to that...
>
> I agree :-) That's what these lines are for:
> do_compile[depends] += "base-files:do_package"
> do_compile[depends] += "virtual/kernel:do_package"
>
> They solve the problem for me, i.e. if I build an image which includes
> this recipe from scratch, then the do_compile step is held off until
> sufficient work has gone on to make the database useful.
Sorry, I didn't see that on the bottom. I can't say I really like it. If
you're going to do that you might as well just hardcode the list as:
"all ${TUNE_PKGARCH} ${MACHINE}"
?
Cheers,
Richard
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Update poky-feed-config-opkg to generate a useful package setup
2011-09-02 17:34 ` Richard Purdie
@ 2011-09-02 19:52 ` Gary Thomas
0 siblings, 0 replies; 5+ messages in thread
From: Gary Thomas @ 2011-09-02 19:52 UTC (permalink / raw)
To: Richard Purdie; +Cc: Poky Project
On 2011-09-02 11:34, Richard Purdie wrote:
> On Fri, 2011-09-02 at 11:10 -0600, Gary Thomas wrote:
>> On 2011-09-02 11:04, Richard Purdie wrote:
>>> On Fri, 2011-09-02 at 10:46 -0600, Gary Thomas wrote:
>>>> The current poky-feed-config-opkg package only generates a skeleton for the
>>>> opkg setups. In particular, the base configuration file /etc/opkg/base-files.conf
>>>> is not filled in at all.
>>>>
>>>> The attached patch fills this file in, using variables set by the
>>>> user (local.conf, site.conf, etc). If left unset, the behaviour will
>>>> be the same as current.
>>>>
>>>> One thing I found is that opkg is very noisy if there are databases
>>>> mentioned in base-files.conf that don't exist. For example, on ARM
>>>> platforms, there are a large number of possibilities (arm, armv5, armv6, ...)
>>>> that are never populated in .../tmp/deploy/ipk. The changes to this
>>>> recipe will prune the file to only include those ipk databases which
>>>> have actual files present.
>>>
>>> Your code is one big race unfortunately since the actual file generated
>>> will depend on whether any packaging task has run before it or not (and
>>> what package type that was). I'm not sure how to fix that but it can't
>>> go in as it stands due to that...
>>
>> I agree :-) That's what these lines are for:
>> do_compile[depends] += "base-files:do_package"
>> do_compile[depends] += "virtual/kernel:do_package"
>>
>> They solve the problem for me, i.e. if I build an image which includes
>> this recipe from scratch, then the do_compile step is held off until
>> sufficient work has gone on to make the database useful.
>
> Sorry, I didn't see that on the bottom. I can't say I really like it. If
> you're going to do that you might as well just hardcode the list as:
>
> "all ${TUNE_PKGARCH} ${MACHINE}"
>
> ?
Yes, that would probably be equivalent. Would that be an acceptable change?
Bottom line though is that the recipe currently does nothing for the
end user and I was trying to make something that would work out of
the box for "Joe Average User"
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2011-09-02 19:52 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-02 16:46 [PATCH] Update poky-feed-config-opkg to generate a useful package setup Gary Thomas
2011-09-02 17:04 ` Richard Purdie
2011-09-02 17:10 ` Gary Thomas
2011-09-02 17:34 ` Richard Purdie
2011-09-02 19:52 ` Gary Thomas
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.