Skip to contentSkip to conversation

createrepo 0.4.11: create wrapper for python script

PATCH Applied Robert Yang 3 participants 7 messages Aug 1, 2012 – Aug 4, 2012

lore
Share & tools
lore
#0 lore raw

cover createrepo 0.4.11: create wrapper for python script

This is used for fixing the rpm-createsolvedb.py error:

'import site' failed; use -v for traceback
Traceback (most recent call last):
File "/srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly/build/scripts/rpm-createsolvedb.py", line 14, in import sys, os
ImportError: No module named os

// Robert

The following changes since commit 4f31d21bcb1c8c744e9abb33248715afe4a40af0:

lib/oe/lsb.py: Map unknown distributions to 'Unknown' (2012-07-31 08:02:11 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib robert/createrepo
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/createrepo

Robert Yang (2):
createrepo 0.4.11: add rpm-createsolvedb.py createrepo 0.4.11: create wrapper for python script

 meta/classes/rootfs_rpm.bbclass                    |    2 +-
 .../createrepo/createrepo}/rpm-createsolvedb.py    |    0
 .../createrepo/createrepo_0.4.11.bb                |   17 ++++++++++++++++-
 3 files changed, 17 insertions(+), 2 deletions(-)
 rename {scripts => meta/recipes-support/createrepo/createrepo}/rpm-createsolvedb.py (100%)
#1 lore raw

PATCH 1/2 createrepo 0.4.11: add rpm-createsolvedb.py

Move scripts/rpm-createsolvedb.py to meta/recipes-support/createrepo/createrepo/ since we should wrap it to use the native python.

[YOCTO #2822]

---
 meta/classes/rootfs_rpm.bbclass                    |    2 +-
 .../createrepo/createrepo}/rpm-createsolvedb.py    |    0
 .../createrepo/createrepo_0.4.11.bb                |    4 +++-
 3 files changed, 4 insertions(+), 2 deletions(-)
 rename {scripts => meta/recipes-support/createrepo/createrepo}/rpm-createsolvedb.py (100%)
meta/classes/rootfs_rpm.bbclass +1 -1
index c9258df..a03e9f3 100644
@@ -17,7 +17,7 @@ do_rootfs[depends] += "rpmresolve-native:do_populate_sysroot"
 do_rootfs[depends] += "opkg-native:do_populate_sysroot"
 
 # Creating the repo info in do_rootfs
-#do_rootfs[depends] += "createrepo-native:do_populate_sysroot"
+do_rootfs[depends] += "createrepo-native:do_populate_sysroot"
 
 do_rootfs[recrdeptask] += "do_package_write_rpm"
 
meta/recipes-support/createrepo/createrepo/rpm-createsolvedb.py renamed from scripts/rpm-createsolvedb.py +0 -0
similarity index 100%
rename from scripts/rpm-createsolvedb.py
rename to meta/recipes-support/createrepo/createrepo/rpm-createsolvedb.py
meta/recipes-support/createrepo/createrepo_0.4.11.bb +3 -1
index 7a4d059..dcddcf8 100644
@@ -6,12 +6,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760"
 
 RDEPENDS_${PN}_virtclass-native += "libxml2-native rpm-native"
 
-PR = "r4"
+PR = "r5"
 
 SRC_URI= "http://createrepo.baseurl.org/download/${BP}.tar.gz \
           file://fix-native-install.patch \
           file://python-scripts-should-use-interpreter-from-env.patch \
 	  file://createrepo-rpm549.patch \
+	  file://rpm-createsolvedb.py \
          "
 
 SRC_URI[md5sum] = "3e9ccf4abcffe3f49af078c83611eda2"
@@ -21,4 +22,5 @@ BBCLASSEXTEND = "native"
 
 do_install () {
 	oe_runmake -e 'DESTDIR=${D}' install
+	install -m 0755 ${WORKDIR}/rpm-createsolvedb.py ${D}${bindir}/
 }
Signature · 1 line
1.7.1
#2 lore raw

PATCH 2/2 createrepo 0.4.11: create wrapper for python script

In reply to Robert Yang

The native python is installed to ${STAGING_BINDIR_NATIVE}/python-native/python, so we should use wrapper for the python script.

[YOCTO #2822]

---
 .../createrepo/createrepo_0.4.11.bb                |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)
meta/recipes-support/createrepo/createrepo_0.4.11.bb +14 -1
index dcddcf8..42c7214 100644
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760"
 
 RDEPENDS_${PN}_virtclass-native += "libxml2-native rpm-native"
 
-PR = "r5"
+PR = "r6"
 
 SRC_URI= "http://createrepo.baseurl.org/download/${BP}.tar.gz \
           file://fix-native-install.patch \
@@ -24,3 +24,16 @@ do_install () {
 	oe_runmake -e 'DESTDIR=${D}' install
 	install -m 0755 ${WORKDIR}/rpm-createsolvedb.py ${D}${bindir}/
 }
+
+# Wrap the python script since the native python is
+# ${bindir}/python-native/python, and the "#! /usr/bin/env python" can't
+# find it since it is not in PATH.
+do_install_append_virtclass-native () {
+	# Not all the python scripts should be wrapped since some of
+	# them are modules (be imported).
+	for i in ${D}${datadir}/createrepo/genpkgmetadata.py \
+		 ${D}${datadir}/createrepo/modifyrepo.py \
+		 ${D}${bindir}/rpm-createsolvedb.py ; do
+		create_wrapper $i ${STAGING_BINDIR_NATIVE}/python-native/python
+	done
+}
Signature · 1 line
1.7.1
#3 lore raw
In reply to Robert Yang
Quoted 14 lines · Robert Yang

This is used for fixing the rpm-createsolvedb.py error:

'import site' failed; use -v for traceback
Traceback (most recent call last):
File "/srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly/build/scripts/rpm-createsolvedb.py", line 14, in import sys, os
ImportError: No module named os

// Robert

The following changes since commit 4f31d21bcb1c8c744e9abb33248715afe4a40af0:

lib/oe/lsb.py: Map unknown distributions to 'Unknown' (2012-07-31 08:02:11 +0100)

Quoted 7 lines

are available in the git repository at:
git://git.pokylinux.org/poky-contrib robert/createrepo
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/createrepo

Robert Yang (2):
createrepo 0.4.11: add rpm-createsolvedb.py createrepo 0.4.11: create wrapper for python script

Merged to master, thanks.

Richard

#4 lore raw
In reply to Robert Yang
Quoted 8 lines · Robert Yang

This is used for fixing the rpm-createsolvedb.py error:

'import site' failed; use -v for traceback
Traceback (most recent call last):
File "/srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly/build/scripts/rpm-createsolvedb.py", line 14, in import sys, os
ImportError: No module named os

this series has problem I think now bitbake meta-toolchain fails for me

run.populate_sdk_image.6792: line 610: rpm-createsolvedb.py: command not found

did you try bitbake meta-toolchain target from scratch with this change ?

Quoted 25 lines

// Robert

The following changes since commit 4f31d21bcb1c8c744e9abb33248715afe4a40af0:

lib/oe/lsb.py: Map unknown distributions to 'Unknown' (2012-07-31 08:02:11 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib robert/createrepo
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/createrepo

Robert Yang (2):
createrepo 0.4.11: add rpm-createsolvedb.py createrepo 0.4.11: create wrapper for python script

 meta/classes/rootfs_rpm.bbclass                    |    2 +-
 .../createrepo/createrepo}/rpm-createsolvedb.py    |    0
 .../createrepo/createrepo_0.4.11.bb                |   17 ++++++++++++++++-
 3 files changed, 17 insertions(+), 2 deletions(-)
 rename {scripts => meta/recipes-support/createrepo/createrepo}/rpm-createsolvedb.py (100%)

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#5 lore raw
Quoted 10 lines · Khem Raj
Quoted 8 lines · Robert Yang

This is used for fixing the rpm-createsolvedb.py error:

'import site' failed; use -v for traceback
Traceback (most recent call last):
File "/srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly/build/scripts/rpm-createsolvedb.py", line 14, in import sys, os
ImportError: No module named os

Quoted 6 lines

this series has problem I think now bitbake meta-toolchain fails for me

run.populate_sdk_image.6792: line 610: rpm-createsolvedb.py: command not found

did you try bitbake meta-toolchain target from scratch with this change ?

Hi Khem,

I'm sorry for this, this is because I hadn't fixed the depends of populate_sdk_image, "bitbake createrepo-native" firstly can be a workaround, I will send a official fix sooner.

// Robert

Quoted 34 lines
Quoted 20 lines

// Robert

The following changes since commit 4f31d21bcb1c8c744e9abb33248715afe4a40af0:

   lib/oe/lsb.py: Map unknown distributions to 'Unknown' (2012-07-31 08:02:11 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib robert/createrepo
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/createrepo

Robert Yang (2):
createrepo 0.4.11: add rpm-createsolvedb.py createrepo 0.4.11: create wrapper for python script

  meta/classes/rootfs_rpm.bbclass                    |    2 +-
  .../createrepo/createrepo}/rpm-createsolvedb.py    |    0
  .../createrepo/createrepo_0.4.11.bb                |   17 ++++++++++++++++-
  3 files changed, 17 insertions(+), 2 deletions(-)
Quoted 7 lines

rename {scripts => meta/recipes-support/createrepo/createrepo}/rpm-createsolvedb.py (100%)

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#6 lore raw

Hi Khem,

I just noticed that you had sent a pull request for it, thank you very much:-)

// Robert

Quoted 67 lines · Robert Yang
Quoted 12 lines · Khem Raj
Quoted 10 lines · Robert Yang

This is used for fixing the rpm-createsolvedb.py error:

'import site' failed; use -v for traceback
Traceback (most recent call last):
File "/srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly/build/scripts/rpm-createsolvedb.py", line 14, in
import sys, os
ImportError: No module named os

Quoted 6 lines

this series has problem I think now bitbake meta-toolchain fails for me

run.populate_sdk_image.6792: line 610: rpm-createsolvedb.py: command not found

did you try bitbake meta-toolchain target from scratch with this change ?

Hi Khem,

I'm sorry for this, this is because I hadn't fixed the depends of populate_sdk_image, "bitbake createrepo-native" firstly can be a workaround, I will send a official fix sooner.

// Robert

Quoted 36 lines
Quoted 21 lines

// Robert

The following changes since commit 4f31d21bcb1c8c744e9abb33248715afe4a40af0:

lib/oe/lsb.py: Map unknown distributions to 'Unknown' (2012-07-31 08:02:11
+0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib robert/createrepo
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=robert/createrepo

Robert Yang (2):
createrepo 0.4.11: add rpm-createsolvedb.py createrepo 0.4.11: create wrapper for python script

  meta/classes/rootfs_rpm.bbclass                    |    2 +-
  .../createrepo/createrepo}/rpm-createsolvedb.py    |    0
  .../createrepo/createrepo_0.4.11.bb                |   17 ++++++++++++++++-
  3 files changed, 17 insertions(+), 2 deletions(-)
Quoted 8 lines

rename {scripts =>
meta/recipes-support/createrepo/createrepo}/rpm-createsolvedb.py (100%)

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core