Skip to contentSkip to conversation

libxml2: fix python path and add libxml2-python

PATCH In review Robert Yang 2 participants 4 messages Apr 29, 2015 – May 4, 2015

lore
Share & tools
lore
#0 lore raw

cover libxml2: fix python path and add libxml2-python

The following changes since commit 4dd4b96b6d60246338bb30ede9f3ab1b2e757be9:

libxfont: Security Advisory - libxfont - CVE-2015-1804 (2015-04-28 07:56:01 +0100)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib rbt/libxml2
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/libxml2

Robert Yang (1):
libxml2: fix python path and add libxml2-python

 meta/recipes-core/libxml/libxml2.inc |   18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH 1/1 libxml2: fix python path and add libxml2-python

We have libxml2-python for native and nativesdk, but don't have it for target, and can't find the reason from the git log, libxml2-python is widely used, after looked into it's configure.in, we can add it by PACKAGECONFIG.

The previous --with-python=${STAGING_BINDIR}/python is incorrect, it acted as work becase it's conigure can check automatically, python is in ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}, as known as ${PYTHON}.

Add python to PACKAGECONFIG, since createrepo rdepends on libxml2-python, otherwise the target createrepo can't work.

---
 meta/recipes-core/libxml/libxml2.inc |   18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)
meta/recipes-core/libxml/libxml2.inc +8 -10
index 1314bbf..4886705 100644
@@ -9,8 +9,6 @@ LIC_FILES_CHKSUM = "file://Copyright;md5=2044417e2e5006b65a8b9067b683fcf1 \
                     file://list.c;beginline=4;endline=13;md5=cdbfa3dee51c099edb04e39f762ee907 \
                     file://trio.c;beginline=5;endline=14;md5=6c025753c86d958722ec76e94cae932e"
 
-DEPENDS_class-nativesdk = "nativesdk-python"
-DEPENDS_class-native = "python-native"
 DEPENDS =+ "zlib"
 
 SRC_URI = "ftp://xmlsoft.org/libxml2/libxml2-${PV}.tar.gz;name=libtar \
@@ -37,16 +35,16 @@ do_configure_prepend () {
 	sed -i -e '/.*ansidecl.h.*/d' ${S}/configure.ac
 }
 
-do_configure_prepend_class-nativesdk () {
-	# Ensure we get the correct site-packages path
-	export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
-}
+export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
+
+PACKAGECONFIG ??= "python"
 
+PACKAGECONFIG[python] = "--with-python=${PYTHON},--without-python,python,python-core"
 # WARNING: zlib is require for RPM use
-EXTRA_OECONF = "--without-python --without-debug --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma --with-fexceptions"
-EXTRA_OECONF_class-native = "--with-python=${STAGING_BINDIR}/python --without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
-EXTRA_OECONF_class-nativesdk = "--with-python=${STAGING_BINDIR}/python --without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
-EXTRA_OECONF_linuxstdbase = "--without-python --with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF = "--without-debug --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma --with-fexceptions"
+EXTRA_OECONF_class-native = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF_class-nativesdk = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF_linuxstdbase = "--with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib"
 
 # required for pythong binding
 export HOST_SYS
Signature · 1 line
1.7.9.5
#2 lore raw

buildhistory says:

packages/corei7-64-poky-linux/libxml2/libxml2: RDEPENDS: added "python-core"

Why does the library package gain a dependency on python?

Ross

Quoted 79 lines · Robert Yang

We have libxml2-python for native and nativesdk, but don't have it for target, and can't find the reason from the git log, libxml2-python is widely used, after looked into it's configure.in, we can add it by PACKAGECONFIG.

The previous --with-python=${STAGING_BINDIR}/python is incorrect, it acted as work becase it's conigure can check automatically, python is in ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}, as known as ${PYTHON}.

Add python to PACKAGECONFIG, since createrepo rdepends on libxml2-python, otherwise the target createrepo can't work.

---
 meta/recipes-core/libxml/libxml2.inc |   18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)
meta/recipes-core/libxml/libxml2.inc +0 -2
index 1314bbf..4886705 100644
@@ -9,8 +9,6 @@ LIC_FILES_CHKSUM =
 "file://Copyright;md5=2044417e2e5006b65a8b9067b683fcf1 \
 
 file://list.c;beginline=4;endline=13;md5=cdbfa3dee51c099edb04e39f762ee907 \
 
 file://trio.c;beginline=5;endline=14;md5=6c025753c86d958722ec76e94cae932e"
 
-DEPENDS_class-nativesdk = "nativesdk-python"
-DEPENDS_class-native = "python-native"

DEPENDS =+ "zlib"

SRC_URI = "ftp://xmlsoft.org/libxml2/libxml2-${PV}.tar.gz;name=libtar \

meta/recipes-core/libxml/libxml2.inc +4 -4
@@ -37,16 +35,16 @@ do_configure_prepend () {
        sed -i -e '/.*ansidecl.h.*/d' ${S}/configure.ac
 }
 
-do_configure_prepend_class-nativesdk () {
-       # Ensure we get the correct site-packages path
-       export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
-}
+export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
+
+PACKAGECONFIG ??= "python"
 
+PACKAGECONFIG[python] =

"--with-python=${PYTHON},--without-python,python,python-core"
# WARNING: zlib is require for RPM use

meta/recipes-core/libxml/libxml2.inc +4 -14
-EXTRA_OECONF = "--without-python --without-debug --without-legacy
--with-catalog --without-docbook --with-c14n --without-lzma
--with-fexceptions"
-EXTRA_OECONF_class-native = "--with-python=${STAGING_BINDIR}/python
--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
-EXTRA_OECONF_class-nativesdk = "--with-python=${STAGING_BINDIR}/python
--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
-EXTRA_OECONF_linuxstdbase = "--without-python --with-debug --with-legacy
--with-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF = "--without-debug --without-legacy --with-catalog
--without-docbook --with-c14n --without-lzma --with-fexceptions"
+EXTRA_OECONF_class-native = "--without-legacy --without-docbook
--with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF_class-nativesdk = "--without-legacy --without-docbook
--with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF_linuxstdbase = "--with-debug --with-legacy --with-docbook
--with-c14n --without-lzma --with-zlib"
 
 # required for pythong binding
 export HOST_SYS
--

1.7.9.5

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

#3 lore raw
Quoted 5 lines · Ross

buildhistory says:

packages/corei7-64-poky-linux/libxml2/libxml2: RDEPENDS: added "python-core"

Why does the library package gain a dependency on python?

Sorry, I updated the patch a little, it was because of this line:

PACKAGECONFIG[python] = "--with-python=${PYTHON},--without-python,python,python-core"

The python-core should not be there, but should be:

RDEPENDS_${PN}-python += "python-core".

I updated it in the repo:

git://git.openembedded.org/openembedded-core-contrib rbt/libxml2

meta/recipes-core/libxml/libxml2.inc +0 -0
index 1314bbf..d337bec 100644
@@ -9,8 +9,6 @@ LIC_FILES_CHKSUM = "file://Copyright;md5=2044417e2e5006b65a8b9067b683fcf1 \
 

file://list.c;beginline=4;endline=13;md5=cdbfa3dee51c099edb04e39f762ee907 \

file://trio.c;beginline=5;endline=14;md5=6c025753c86d958722ec76e94cae932e"

-DEPENDS_class-nativesdk = "nativesdk-python"
-DEPENDS_class-native = "python-native"
DEPENDS =+ "zlib"

SRC_URI = "ftp://xmlsoft.org/libxml2/libxml2-${PV}.tar.gz;name=libtar \
@@ -30,6 +28,8 @@ inherit autotools pkgconfig binconfig-disabled pythonnative ptest

RDEPENDS_${PN}-ptest += "python-core"

+RDEPENDS_${PN}-python += "python-core"
+
RDEPENDS_${PN}-ptest_append_libc-glibc += "glibc-gconv-ebcdic-us
glibc-gconv-ibm1141"

# We don't DEPEND on binutils for ansidecl.h so ensure we don't use the header

@@ -37,16 +37,16 @@ do_configure_prepend () {
        sed -i -e '/.*ansidecl.h.*/d' ${S}/configure.ac

}
-do_configure_prepend_class-nativesdk () {
- # Ensure we get the correct site-packages path
- export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
-}
+export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}" +
+PACKAGECONFIG ??= "python"

+PACKAGECONFIG[python] = "--with-python=${PYTHON},--without-python,python"
# WARNING: zlib is require for RPM use
-EXTRA_OECONF = "--without-python --without-debug --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma --with-fexceptions" -EXTRA_OECONF_class-native = "--with-python=${STAGING_BINDIR}/python --without-legacy --without-docbook --with-c14n --without-lzma --with-zlib" -EXTRA_OECONF_class-nativesdk = "--with-python=${STAGING_BINDIR}/python --without-legacy --without-docbook --with-c14n --without-lzma --with-zlib" -EXTRA_OECONF_linuxstdbase = "--without-python --with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib" +EXTRA_OECONF = "--without-debug --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma --with-fexceptions" +EXTRA_OECONF_class-native = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib" +EXTRA_OECONF_class-nativesdk = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib" +EXTRA_OECONF_linuxstdbase = "--with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib"

 # required for pythong binding
 export HOST_SYS

// Robert

Quoted 88 lines

Ross

On 29 April 2015 at 08:26, Robert Yang <[email protected] <mailto:[email protected]>> wrote:

    We have libxml2-python for native and nativesdk, but don't have it for
    target, and can't find the reason from the git log, libxml2-python is
    widely used, after looked into it's configure.in <http://configure.in>, we
    can add it
    by PACKAGECONFIG.

    The previous --with-python=${STAGING_BINDIR}/python is incorrect, it
    acted as work becase it's conigure can check automatically, python is in
    ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}, as known as
    ${PYTHON}.

    Add python to PACKAGECONFIG, since createrepo rdepends on
    libxml2-python, otherwise the target createrepo can't work.

    Signed-off-by: Robert Yang <[email protected]
    <mailto:[email protected]>>
    ---
      meta/recipes-core/libxml/libxml2.inc |   18 ++++++++----------
      1 file changed, 8 insertions(+), 10 deletions(-)

    diff --git a/meta/recipes-core/libxml/libxml2.inc
    b/meta/recipes-core/libxml/libxml2.inc
    index 1314bbf..4886705 100644
    --- a/meta/recipes-core/libxml/libxml2.inc
    +++ b/meta/recipes-core/libxml/libxml2.inc
    @@ -9,8 +9,6 @@ LIC_FILES_CHKSUM =
    "file://Copyright;md5=2044417e2e5006b65a8b9067b683fcf1 \

      file://list.c;beginline=4;endline=13;md5=cdbfa3dee51c099edb04e39f762ee907 \

      file://trio.c;beginline=5;endline=14;md5=6c025753c86d958722ec76e94cae932e"

    -DEPENDS_class-nativesdk = "nativesdk-python"
    -DEPENDS_class-native = "python-native"
      DEPENDS =+ "zlib"

      SRC_URI = "ftp://xmlsoft.org/libxml2/libxml2-${PV}.tar.gz;name=libtar \
    @@ -37,16 +35,16 @@ do_configure_prepend () {
             sed -i -e '/.*ansidecl.h.*/d' ${S}/configure.ac <http://configure.ac>
      }

    -do_configure_prepend_class-nativesdk () {
    -       # Ensure we get the correct site-packages path
    -       export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
    -}
    +export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
    +
    +PACKAGECONFIG ??= "python"

    +PACKAGECONFIG[python] =
    "--with-python=${PYTHON},--without-python,python,python-core"
      # WARNING: zlib is require for RPM use
    -EXTRA_OECONF = "--without-python --without-debug --without-legacy
    --with-catalog --without-docbook --with-c14n --without-lzma --with-fexceptions"
    -EXTRA_OECONF_class-native = "--with-python=${STAGING_BINDIR}/python
    --without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
    -EXTRA_OECONF_class-nativesdk = "--with-python=${STAGING_BINDIR}/python
    --without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
    -EXTRA_OECONF_linuxstdbase = "--without-python --with-debug --with-legacy
    --with-docbook --with-c14n --without-lzma --with-zlib"
    +EXTRA_OECONF = "--without-debug --without-legacy --with-catalog
    --without-docbook --with-c14n --without-lzma --with-fexceptions"
    +EXTRA_OECONF_class-native = "--without-legacy --without-docbook --with-c14n
    --without-lzma --with-zlib"
    +EXTRA_OECONF_class-nativesdk = "--without-legacy --without-docbook
    --with-c14n --without-lzma --with-zlib"
    +EXTRA_OECONF_linuxstdbase = "--with-debug --with-legacy --with-docbook
    --with-c14n --without-lzma --with-zlib"

      # required for pythong binding
      export HOST_SYS
    --
    1.7.9.5

    --
    _______________________________________________
    Openembedded-core mailing list
    [email protected]
    <mailto:[email protected]>
    http://lists.openembedded.org/mailman/listinfo/openembedded-core