Bug 2993

Summary: python-curl and python-images fail QA tests
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Ross Burton <ross.burton>
Component: devtools / tool chainAssignee: Matthew McClintock <msm-oss>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: Medium+ CC: laurentiu.serban, meta.mr.watcher, meta.watcher, msm-oss, sgw
Version: 1.4   
Target Milestone: 1.3 M4   
Hardware: x86   
OS: Multiple   
Whiteboard: (autobuilder)
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---

Description Ross Burton 2012-08-22 17:04:31 UTC
On the autobuilder: http://autobuilder.yoctoproject.org:8010/builders/nightly-world/builds/242/steps/shell_34/logs/stdio


ERROR: QA Issue: non debug package contains .debug directory: python-pycurl path /work/i586-poky-linux/python-pycurl-7.19.0-r3/packages-split/python-pycurl/usr/lib/python2.7/.debug/pycurl.so
ERROR: QA run found fatal errors. Please consider fixing them.
ERROR: Function failed: do_package_qa
ERROR: Logfile of failure stored in: /srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-world/build/build/tmp/work/i586-poky-linux/python-pycurl-7.19.0-r3/temp/log.do_package.25979
NOTE: recipe python-pycurl-7.19.0-r3: task do_package: Failed


ERROR: QA Issue: non debug package contains .debug directory: python-imaging path /work/i586-poky-linux/python-imaging-1.1.7-r4/packages-split/python-imaging/usr/lib/python2.7/PIL/.debug/_imagingft.so
ERROR: QA Issue: non debug package contains .debug directory: python-imaging path /work/i586-poky-linux/python-imaging-1.1.7-r4/packages-split/python-imaging/usr/lib/python2.7/PIL/.debug/_imagingmath.so
ERROR: QA Issue: non debug package contains .debug directory: python-imaging path /work/i586-poky-linux/python-imaging-1.1.7-r4/packages-split/python-imaging/usr/lib/python2.7/PIL/.debug/_imaging.so
ERROR: QA run found fatal errors. Please consider fixing them.
ERROR: Function failed: do_package_qa
ERROR: Logfile of failure stored in: /srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-world/build/build/tmp/work/i586-poky-linux/python-imaging-1.1.7-r4/temp/log.do_package.28092
NOTE: recipe python-imaging-1.1.7-r4: task do_package: Failed
ERROR: Task 7139 (/srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-world/build/meta/recipes-devtools/python/python-imaging_1.1.7.bb, do_package) failed with exit code '1'

Could this be caused by the recent distutils changes?
Comment 1 Ross Burton 2012-08-22 17:05:37 UTC
CCing Matthew McClintock who wrote the distutils patches.
Comment 2 Matthew McClintock 2012-08-23 04:34:35 UTC
These should be picking up these .debug and putting them in the right package.

meta/classes/distutils-common-base.bbclass:  ${PYTHON_SITEPACKAGES_DIR}/.debug \
meta/classes/distutils-common-base.bbclass:  ${PYTHON_SITEPACKAGES_DIR}/*/.debug \
meta/classes/distutils-common-base.bbclass:  ${PYTHON_SITEPACKAGES_DIR}/*/*/.debug \

Still looking for more possibilities...
Comment 3 Matthew McClintock 2012-08-23 04:53:16 UTC
(In reply to comment #2)
> These should be picking up these .debug and putting them in the right
> package.
> 
> meta/classes/distutils-common-base.bbclass: 
> ${PYTHON_SITEPACKAGES_DIR}/.debug \
> meta/classes/distutils-common-base.bbclass: 
> ${PYTHON_SITEPACKAGES_DIR}/*/.debug \
> meta/classes/distutils-common-base.bbclass: 
> ${PYTHON_SITEPACKAGES_DIR}/*/*/.debug \
> 
> Still looking for more possibilities...

Actually, I'm wrong... I think it's possible my previous change to install-lib should be using ${PYTHON_SITEPACKAGES_DIR}

I'm really sort of at a loss for the correct installation location for these python modules. Is there another person we can check with on this?

All I am sure of is that certain python modules were installed in /usr/lib instead of /usr/lib64.
Comment 4 Matthew McClintock 2012-08-23 05:56:16 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > These should be picking up these .debug and putting them in the right
> > package.
> > 
> > meta/classes/distutils-common-base.bbclass: 
> > ${PYTHON_SITEPACKAGES_DIR}/.debug \
> > meta/classes/distutils-common-base.bbclass: 
> > ${PYTHON_SITEPACKAGES_DIR}/*/.debug \
> > meta/classes/distutils-common-base.bbclass: 
> > ${PYTHON_SITEPACKAGES_DIR}/*/*/.debug \
> > 
> > Still looking for more possibilities...
> 
> Actually, I'm wrong... I think it's possible my previous change to
> install-lib should be using ${PYTHON_SITEPACKAGES_DIR}
> 
> I'm really sort of at a loss for the correct installation location for these
> python modules. Is there another person we can check with on this?
> 
> All I am sure of is that certain python modules were installed in /usr/lib
> instead of /usr/lib64.

Rather:

diff --git a/meta/classes/distutils-common-base.bbclass b/meta/classes/distutils-common-base.bbclass
index f66a5cd..e650d93 100644
--- a/meta/classes/distutils-common-base.bbclass
+++ b/meta/classes/distutils-common-base.bbclass
@@ -18,4 +18,7 @@ FILES_${PN}-dbg += "\
   ${PYTHON_SITEPACKAGES_DIR}/.debug \
   ${PYTHON_SITEPACKAGES_DIR}/*/.debug \
   ${PYTHON_SITEPACKAGES_DIR}/*/*/.debug \
+  ${libdir}/${PYTHON_DIR}/.debug \
+  ${libdir}/${PYTHON_DIR}/*/.debug \
+  ${libdir}/${PYTHON_DIR}/*/*/.debug \
 "

I'm just not sure if this is correct...

-M
Comment 5 Matthew McClintock 2012-08-23 06:20:21 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > (In reply to comment #2)
> > > These should be picking up these .debug and putting them in the right
> > > package.
> > > 
> > > meta/classes/distutils-common-base.bbclass: 
> > > ${PYTHON_SITEPACKAGES_DIR}/.debug \
> > > meta/classes/distutils-common-base.bbclass: 
> > > ${PYTHON_SITEPACKAGES_DIR}/*/.debug \
> > > meta/classes/distutils-common-base.bbclass: 
> > > ${PYTHON_SITEPACKAGES_DIR}/*/*/.debug \
> > > 
> > > Still looking for more possibilities...
> > 
> > Actually, I'm wrong... I think it's possible my previous change to
> > install-lib should be using ${PYTHON_SITEPACKAGES_DIR}
> > 
> > I'm really sort of at a loss for the correct installation location for these
> > python modules. Is there another person we can check with on this?
> > 
> > All I am sure of is that certain python modules were installed in /usr/lib
> > instead of /usr/lib64.
> 
> Rather:
> 
> diff --git a/meta/classes/distutils-common-base.bbclass
> b/meta/classes/distutils-common-base.bbclass
> index f66a5cd..e650d93 100644
> --- a/meta/classes/distutils-common-base.bbclass
> +++ b/meta/classes/distutils-common-base.bbclass
> @@ -18,4 +18,7 @@ FILES_${PN}-dbg += "\
>    ${PYTHON_SITEPACKAGES_DIR}/.debug \
>    ${PYTHON_SITEPACKAGES_DIR}/*/.debug \
>    ${PYTHON_SITEPACKAGES_DIR}/*/*/.debug \
> +  ${libdir}/${PYTHON_DIR}/.debug \
> +  ${libdir}/${PYTHON_DIR}/*/.debug \
> +  ${libdir}/${PYTHON_DIR}/*/*/.debug \
>  "
> 
> I'm just not sure if this is correct...
> 
> -M

We should also bump the PR on all these recipes to check for issues:

meta/recipes-devtools/python/python-dbus_1.1.1.bb:inherit distutils-base autotools pkgconfig
meta/recipes-devtools/python/python-gst_0.10.22.bb:inherit autotools distutils-base pkgconfig
meta/recipes-devtools/python/python-imaging_1.1.7.bb:inherit distutils
meta/recipes-devtools/python/python-pycairo_1.10.0.bb:inherit distutils pkgconfig
meta/recipes-devtools/python/python-pycurl_7.19.0.bb:inherit distutils
meta/recipes-devtools/python/python-pygobject_2.27.91.bb:inherit autotools distutils-base pkgconfig
meta/recipes-devtools/python/python-pygtk_2.17.0.bb:inherit autotools pkgconfig distutils-base
meta/recipes-devtools/python/python-pyrex_0.9.9.bb:inherit distutils
meta/recipes-devtools/python/python-scons_2.1.0.bb:inherit distutils
meta/recipes-devtools/python/python-setuptools_0.6c11.bb:inherit distutils
Comment 6 Matthew McClintock 2012-08-23 18:47:41 UTC
Sent patch to fix issue:

http://patches.openembedded.org/patch/35239/

-M
Comment 7 Ross Burton 2012-08-23 21:57:11 UTC
I always thought that everything using distutils would be installing into site-packages, and not /usr/lib/python/ toplevel directly because that's for the python install itself and not modules.
Comment 8 Matthew McClintock 2012-08-24 18:11:04 UTC
RP supplied this patch: http://patches.openembedded.org/patch/35319/
Comment 9 Matthew McClintock 2012-09-20 18:20:47 UTC
This has been fixed buy Richard's patches
Comment 10 Laurentiu Serban 2012-09-25 21:03:50 UTC
Verified in 52850f0fc6f801298413ee779834b346ef7f48d6