]> code.ossystems Code Review - openembedded-core.git/commitdiff
python-native: fix for non /usr/lib libdir case
authorYu Ke <ke.yu@intel.com>
Mon, 11 Jul 2011 07:23:18 +0000 (15:23 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 12 Jul 2011 13:55:23 +0000 (14:55 +0100)
the get_python_lib() use hard code "lib". when other recipe
building use python-native, the STAGING_LIBDIR is non /usr/lib,
so the hard code "lib" will break the build

This patch replace the hardcoded "lib" with value from libdir
to fix this issue.

Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/python/python-native/12-distutils-prefix-is-inside-staging-area.patch
meta/recipes-devtools/python/python-native_2.6.6.bb

index 9532eb3ad907fb043484578d4187c509367d84ce..8e721fe002a523456e77cdb06774f4aa19acdb55 100644 (file)
@@ -30,19 +30,26 @@ Index: Python-2.6.6/Lib/distutils/sysconfig.py
  
      if os.name == "posix":
          if python_build:
-@@ -116,7 +119,10 @@ def get_python_lib(plat_specific=0, stan
+@@ -115,12 +118,16 @@ def get_python_lib(plat_specific=0, stan
+     If 'prefix' is supplied, use it instead of sys.prefix or
      sys.exec_prefix -- i.e., ignore 'plat_specific'.
      """
++    lib_basename = os.getenv("libdir").split('/')[-1]
      if prefix is None:
 -        prefix = plat_specific and EXEC_PREFIX or PREFIX
 +        if plat_specific:
-+            prefix = plat_specific and os.environ['STAGING_LIBDIR'].rstrip('lib')
++            prefix = plat_specific and os.environ['STAGING_LIBDIR'].rstrip(lib_basename)
 +        else:
 +            prefix = plat_specific and EXEC_PREFIX or PREFIX
  
      if os.name == "posix":
          libpython = os.path.join(prefix,
-@@ -216,7 +222,7 @@ def get_config_h_filename():
+-                                 "lib", "python" + get_python_version())
++                                 lib_basename, "python" + get_python_version())
+         if standard_lib:
+             return libpython
+         else:
+@@ -216,7 +223,7 @@ def get_config_h_filename():
      else:
          # The name of the config.h file changed in 2.2
          config_h = 'pyconfig.h'
@@ -51,7 +58,7 @@ Index: Python-2.6.6/Lib/distutils/sysconfig.py
  
  
  def get_makefile_filename():
-@@ -225,7 +231,7 @@ def get_makefile_filename():
+@@ -225,7 +232,7 @@ def get_makefile_filename():
          return os.path.join(os.path.dirname(os.path.realpath(sys.executable)),
                              "Makefile")
      lib_dir = get_python_lib(plat_specific=1, standard_lib=1)
index 0f9ae10e5a1d187e91dca24e4711eb5a26b4db28..fa943f4633449fc279ed5224a7293e478ffb8781 100644 (file)
@@ -1,6 +1,6 @@
 require python.inc
 DEPENDS = "openssl-native bzip2-full-native zlib-native readline-native sqlite3-native"
-PR = "${INC_PR}.1"
+PR = "${INC_PR}.2"
 
 LIC_FILES_CHKSUM = "file://LICENSE;md5=38fdd546420fab09ac6bd3d8a1c83eb6"