Patchwork [v2] bzip2-native: handling native path issue

login
register
mail settings
Submitter Yao Zhao
Date July 26, 2012, 7:01 p.m.
Message ID <1343329298-29586-1-git-send-email-yao.zhao@windriver.com>
Download mbox | patch
Permalink /patch/33159/
State New
Headers show

Comments

Yao Zhao - July 26, 2012, 7:01 p.m.
follow Richard's approach, modify bzip2-native recipe to install bzip2 package
binaries to STAGING_BINDIR_NATIVE/bzip2-native to avoid problems when other
package is doing upack to reference bzip2. libbz2.so* still installs to
STAGING_LIBDIR_NATIVE.

add bzip2native.bbclass to let other packages to inherit and add dependency
to bzip2-replacement-native.

change python-native to inherit bzip2native class and remove the old
bzip2-full-native dependency.

Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
---
 meta/classes/bzip2native.bbclass                   |    2 ++
 .../recipes-devtools/python/python-native_2.7.3.bb |    4 ++--
 meta/recipes-extended/bzip2/bzip2_1.0.6.bb         |    4 +++-
 3 files changed, 7 insertions(+), 3 deletions(-)
 create mode 100644 meta/classes/bzip2native.bbclass
Richard Purdie - July 26, 2012, 7:36 p.m.
On Thu, 2012-07-26 at 15:01 -0400, Yao Zhao wrote:
> follow Richard's approach, modify bzip2-native recipe to install bzip2 package
> binaries to STAGING_BINDIR_NATIVE/bzip2-native to avoid problems when other
> package is doing upack to reference bzip2. libbz2.so* still installs to
> STAGING_LIBDIR_NATIVE.
> 
> add bzip2native.bbclass to let other packages to inherit and add dependency
> to bzip2-replacement-native.
> 
> change python-native to inherit bzip2native class and remove the old
> bzip2-full-native dependency.
> 
> Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
> ---
>  meta/classes/bzip2native.bbclass                   |    2 ++
>  .../recipes-devtools/python/python-native_2.7.3.bb |    4 ++--
>  meta/recipes-extended/bzip2/bzip2_1.0.6.bb         |    4 +++-
>  3 files changed, 7 insertions(+), 3 deletions(-)
>  create mode 100644 meta/classes/bzip2native.bbclass
> 
> diff --git a/meta/classes/bzip2native.bbclass b/meta/classes/bzip2native.bbclass
> new file mode 100644
> index 0000000..a2a7b31
> --- /dev/null
> +++ b/meta/classes/bzip2native.bbclass
> @@ -0,0 +1,2 @@
> +EXTRANATIVEPATH += "bzip2-native"
> +DEPENDS += "bzip2-replacement-native"
> diff --git a/meta/recipes-devtools/python/python-native_2.7.3.bb b/meta/recipes-devtools/python/python-native_2.7.3.bb
> index c89f9f9..904dc80 100644
> --- a/meta/recipes-devtools/python/python-native_2.7.3.bb
> +++ b/meta/recipes-devtools/python/python-native_2.7.3.bb
> @@ -1,5 +1,5 @@
>  require python.inc
> -DEPENDS = "openssl-native bzip2-full-native zlib-native readline-native sqlite3-native"
> +DEPENDS = "openssl-native zlib-native readline-native sqlite3-native"
>  PR = "${INC_PR}.1"
>  
>  SRC_URI += "file://04-default-is-optimized.patch \
> @@ -16,7 +16,7 @@ SRC_URI += "file://04-default-is-optimized.patch \
>             "
>  S = "${WORKDIR}/Python-${PV}"
>  
> -inherit native
> +inherit native bzip2native
>  
>  RPROVIDES += "python-distutils-native python-compression-native python-textutils-native python-core-native"

In this case, since we have a single user I'd just add:

EXTRANATIVEPATH += "bzip2-native"

to the python-native recipe and no need for the bbclass and change
DEPENDS to include bzip2-replacement-native instead of
bzip2-full-native. So nearly there, just one more tweak needed.

Cheers,

Richard


> diff --git a/meta/recipes-extended/bzip2/bzip2_1.0.6.bb b/meta/recipes-extended/bzip2/bzip2_1.0.6.bb
> index 43b462a..e0c710b 100644
> --- a/meta/recipes-extended/bzip2/bzip2_1.0.6.bb
> +++ b/meta/recipes-extended/bzip2/bzip2_1.0.6.bb
> @@ -24,6 +24,8 @@ inherit autotools update-alternatives
>  ALTERNATIVE_PRIORITY = "100"
>  ALTERNATIVE_${PN} = "bunzip2 bzcat"
>  
> +#install binaries to bzip2-native under sysroot for replacement-native
> +EXTRA_OECONF_virtclass-native += "--bindir=${STAGING_BINDIR_NATIVE}/${PN}"
>  do_configure_prepend () {
>  	cp ${WORKDIR}/configure.ac ${S}/
>  	cp ${WORKDIR}/Makefile.am ${S}/
> @@ -40,5 +42,5 @@ FILES_libbz2-staticdev = "${libdir}/*.a"
>  SECTION_libbz2-staticdev = "devel"
>  RDEPENDS_libbz2-staticdev = "libbz2-dev (= ${EXTENDPKGV})"
>  
> -PROVIDES_append_virtclass-native = " bzip2-full-native"
> +PROVIDES_append_virtclass-native = " bzip2-replacement-native"
>  BBCLASSEXTEND = "native"

Patch

diff --git a/meta/classes/bzip2native.bbclass b/meta/classes/bzip2native.bbclass
new file mode 100644
index 0000000..a2a7b31
--- /dev/null
+++ b/meta/classes/bzip2native.bbclass
@@ -0,0 +1,2 @@ 
+EXTRANATIVEPATH += "bzip2-native"
+DEPENDS += "bzip2-replacement-native"
diff --git a/meta/recipes-devtools/python/python-native_2.7.3.bb b/meta/recipes-devtools/python/python-native_2.7.3.bb
index c89f9f9..904dc80 100644
--- a/meta/recipes-devtools/python/python-native_2.7.3.bb
+++ b/meta/recipes-devtools/python/python-native_2.7.3.bb
@@ -1,5 +1,5 @@ 
 require python.inc
-DEPENDS = "openssl-native bzip2-full-native zlib-native readline-native sqlite3-native"
+DEPENDS = "openssl-native zlib-native readline-native sqlite3-native"
 PR = "${INC_PR}.1"
 
 SRC_URI += "file://04-default-is-optimized.patch \
@@ -16,7 +16,7 @@  SRC_URI += "file://04-default-is-optimized.patch \
            "
 S = "${WORKDIR}/Python-${PV}"
 
-inherit native
+inherit native bzip2native
 
 RPROVIDES += "python-distutils-native python-compression-native python-textutils-native python-core-native"
 
diff --git a/meta/recipes-extended/bzip2/bzip2_1.0.6.bb b/meta/recipes-extended/bzip2/bzip2_1.0.6.bb
index 43b462a..e0c710b 100644
--- a/meta/recipes-extended/bzip2/bzip2_1.0.6.bb
+++ b/meta/recipes-extended/bzip2/bzip2_1.0.6.bb
@@ -24,6 +24,8 @@  inherit autotools update-alternatives
 ALTERNATIVE_PRIORITY = "100"
 ALTERNATIVE_${PN} = "bunzip2 bzcat"
 
+#install binaries to bzip2-native under sysroot for replacement-native
+EXTRA_OECONF_virtclass-native += "--bindir=${STAGING_BINDIR_NATIVE}/${PN}"
 do_configure_prepend () {
 	cp ${WORKDIR}/configure.ac ${S}/
 	cp ${WORKDIR}/Makefile.am ${S}/
@@ -40,5 +42,5 @@  FILES_libbz2-staticdev = "${libdir}/*.a"
 SECTION_libbz2-staticdev = "devel"
 RDEPENDS_libbz2-staticdev = "libbz2-dev (= ${EXTENDPKGV})"
 
-PROVIDES_append_virtclass-native = " bzip2-full-native"
+PROVIDES_append_virtclass-native = " bzip2-replacement-native"
 BBCLASSEXTEND = "native"