Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Dexuan Cui <dexuan.cui@intel.com>
To: openembedded-core@lists.openembedded.org
Subject: [RFC v1 PATCH 00/16] populate perl-native into its own directory
Date: Wed,  1 Jun 2011 21:18:31 +0800	[thread overview]
Message-ID: <cover.1306931844.git.dexuan.cui@intel.com> (raw)

Currently both perl-native (a.k.a. ${STAGING_BINDIR_NATIVE}/perl )and
perl-native-runtime(a.k.a. the system perl, or /usr/bin/perl) appear in
the PATH when bitbake is running.
This can cause some race conditions: many places detecting perl from PATH
can't make sure which path will be used as this depends on when perl-native's
populate_sysroot is finished, e.g., automake-native and autoconf-native could
use perl-native-runtime while gnu-config-native could use perl-native and
this inconsistent usages can cause trouble, e.g., bug 941.

And, as RP suggested, "the time to use perl-native instead of
perl-native-runtime is where any perl module is being built, perl itself is
being built or anything that has an explicit dependency on the perl version
present".

So I made the following changes to try to address the aboves issues:
1) populate perl-native into its own directory so it won't appear in PATH
by default, and add perlnative.bbclass for these recipes that really depend
on perl-native;
2) check all perl-native references and correct the ones that should be
perl-native-runtime;
3) fix any building issues due to the new location of perl-native,
especially cpan and cpan-base .bbclass.

With the changes, bug 941 doesn't appear.

Tests I did are:
I tried "bitbale core-image-sato-sdk and meta-toolchain-gmae" in x86_32 and
x86_64 Ubuntu hosts and everything seems building fine.


Please review the changes and comment on them. Thanks!

--------------------------

The following changes since commit 0736b136efac283449c9218c01740eba4a7bc8cc:

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

Dexuan Cui (16):
  native.bbclass: allow a native package to be populated into its own
    dir
  perl-native: populate into its own dir
  perlnative.bbclass: add the file
  gnu-config-native: should depend on perl-native-runtime rather than
    perl-native
  libcap: should depend on perl-native-runtime rather than perl-native
  openssl: should depend on perl-native-runtime rather than perl-native
  git: should depend on perl-native-runtime rather than perl-native
  coreutils: remove unnecessary dependency on perl
  dpkg: should depend on perl-native-runtime rather than perl-native
  webkit-gtk: should depend on perl-native-runtime rather than
    perl-native
  perl: inherit perlnative
  cpan.bbclass, cpan-base.bbclas: update them for the perlnative change
  libxml-parser-perl: inherit perlnative
  libconvert-asn1-perl: fix EXTRA_PERLFLAGS due to the perl-native
    change
  libxml-simple-perl: fix EXTRA_PERLFLAGS due the the perlnative change
  icon-naming-utils-native: inherit perlnative

 meta/classes/cpan-base.bbclass                     |   10 +++++++---
 meta/classes/cpan.bbclass                          |   12 ++++++------
 meta/classes/native.bbclass                        |    5 +++++
 meta/classes/perlnative.bbclass                    |    2 ++
 meta/recipes-connectivity/openssl/openssl.inc      |    2 +-
 .../recipes-connectivity/openssl/openssl_0.9.8r.bb |    2 +-
 meta/recipes-core/coreutils/coreutils_6.9.bb       |    6 +++---
 meta/recipes-core/coreutils/coreutils_8.9.bb       |    6 +++---
 meta/recipes-devtools/dpkg/dpkg.inc                |    2 +-
 meta/recipes-devtools/dpkg/dpkg_1.15.8.7.bb        |    2 +-
 meta/recipes-devtools/git/git.inc                  |    4 ++--
 meta/recipes-devtools/git/git_1.7.5.1.bb           |    2 +-
 .../gnu-config/gnu-config_20080123.bb              |    4 ++--
 .../icon-naming-utils-native_0.8.7.bb              |    4 ++--
 .../perl/libxml-parser-perl-native_2.40.bb         |    2 +-
 .../perl/libxml-parser-perl_2.40.bb                |    2 +-
 .../perl/libxml-simple-perl-native_2.18.bb         |    2 +-
 .../perl/libxml-simple-perl_2.18.bb                |    4 ++--
 meta/recipes-devtools/perl/perl-native_5.12.3.bb   |    5 ++++-
 meta/recipes-devtools/perl/perl_5.12.3.bb          |   10 +++++-----
 .../perl/libconvert-asn1-perl_0.22.bb              |    4 ++--
 meta/recipes-sato/webkit/webkit-gtk_svn.bb         |    6 +++---
 meta/recipes-support/libcap/libcap.inc             |    4 ++--
 meta/recipes-support/libcap/libcap_2.20.bb         |    2 +-
 24 files changed, 59 insertions(+), 45 deletions(-)
 create mode 100644 meta/classes/perlnative.bbclass

-- 
1.7.2




             reply	other threads:[~2011-06-01 13:22 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-01 13:18 Dexuan Cui [this message]
2011-06-01 13:18 ` [RFC v1 PATCH 01/16] native.bbclass: allow a native package to be populated into its own dir Dexuan Cui
2011-06-01 13:40   ` Phil Blundell
2011-06-02  6:04     ` Cui, Dexuan
2011-06-02 13:50       ` Cui, Dexuan
2011-06-01 13:18 ` [RFC v1 PATCH 02/16] perl-native: populate " Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 03/16] perlnative.bbclass: add the file Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 04/16] gnu-config-native: should depend on perl-native-runtime rather than perl-native Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 05/16] libcap: " Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 06/16] openssl: " Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 07/16] git: " Dexuan Cui
2011-06-10  0:10   ` Joshua Lock
2011-06-10  7:28     ` Cui, Dexuan
2011-06-01 13:18 ` [RFC v1 PATCH 08/16] coreutils: remove unnecessary dependency on perl Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 09/16] dpkg: should depend on perl-native-runtime rather than perl-native Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 10/16] webkit-gtk: " Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 11/16] perl: inherit perlnative Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 12/16] cpan.bbclass, cpan-base.bbclas: update them for the perlnative change Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 13/16] libxml-parser-perl: inherit perlnative Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 14/16] libconvert-asn1-perl: fix EXTRA_PERLFLAGS due to the perl-native change Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 15/16] libxml-simple-perl: fix EXTRA_PERLFLAGS due the the perlnative change Dexuan Cui
2011-06-01 13:18 ` [RFC v1 PATCH 16/16] icon-naming-utils-native: inherit perlnative Dexuan Cui
2011-06-01 13:38 ` [RFC v1 PATCH 00/16] populate perl-native into its own directory Richard Purdie
2011-06-01 17:17 ` Tom Rini
2011-06-01 17:56   ` Richard Purdie
2011-06-01 19:39     ` Tom Rini
2011-06-01 20:05       ` Phil Blundell
2011-06-01 20:42         ` Tom Rini
2011-06-01 20:45           ` Phil Blundell
2011-06-01 20:59             ` Tom Rini
2011-06-02 14:06               ` Richard Purdie
2011-06-02 14:25                 ` Tom Rini
2011-06-02 14:37                   ` Phil Blundell
2011-06-02 16:28                     ` Tom Rini
2011-06-02 16:35                       ` Richard Purdie
2011-06-02 16:55                         ` Tom Rini
2011-06-09  8:04                           ` Richard Purdie
2011-06-09  8:08                             ` Richard Purdie
2011-06-09 13:51                               ` Cui, Dexuan
2011-06-09 13:56                                 ` Richard Purdie
2011-06-10  6:13                                   ` Cui, Dexuan
2011-06-10 14:23                               ` Tom Rini
2011-06-10 14:26                             ` Tom Rini
2011-06-02 13:46           ` Cui, Dexuan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1306931844.git.dexuan.cui@intel.com \
    --to=dexuan.cui@intel.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox