diff options
Diffstat (limited to 'meta/recipes-devtools/python')
| -rw-r--r-- | meta/recipes-devtools/python/python3/create_manifest3.py | 10 | ||||
| -rw-r--r-- | meta/recipes-devtools/python/python3_3.5.5.bb | 2 |
2 files changed, 10 insertions, 2 deletions
diff --git a/meta/recipes-devtools/python/python3/create_manifest3.py b/meta/recipes-devtools/python/python3/create_manifest3.py index 2f944f9b13..41a6bb071a 100644 --- a/meta/recipes-devtools/python/python3/create_manifest3.py +++ b/meta/recipes-devtools/python/python3/create_manifest3.py | |||
| @@ -44,6 +44,9 @@ import subprocess | |||
| 44 | import json | 44 | import json |
| 45 | import os | 45 | import os |
| 46 | 46 | ||
| 47 | # Get python version from ${PYTHON_MAJMIN} | ||
| 48 | pyversion = str(sys.argv[1]) | ||
| 49 | |||
| 47 | # Hack to get native python search path (for folders), not fond of it but it works for now | 50 | # Hack to get native python search path (for folders), not fond of it but it works for now |
| 48 | pivot='recipe-sysroot-native' | 51 | pivot='recipe-sysroot-native' |
| 49 | for p in sys.path: | 52 | for p in sys.path: |
| @@ -62,6 +65,7 @@ hasfolders=[] | |||
| 62 | allfolders=[] | 65 | allfolders=[] |
| 63 | 66 | ||
| 64 | def isFolder(value): | 67 | def isFolder(value): |
| 68 | value = value.replace('${PYTHON_MAJMIN}',pyversion) | ||
| 65 | if os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib')) or os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib64')) or os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib32')): | 69 | if os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib')) or os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib64')) or os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib32')): |
| 66 | return True | 70 | return True |
| 67 | else: | 71 | else: |
| @@ -85,6 +89,7 @@ print ('Getting dependencies for package: core') | |||
| 85 | # Special call to check for core package | 89 | # Special call to check for core package |
| 86 | output = subprocess.check_output([sys.executable, 'get_module_deps3.py', 'python-core-package']).decode('utf8') | 90 | output = subprocess.check_output([sys.executable, 'get_module_deps3.py', 'python-core-package']).decode('utf8') |
| 87 | for item in output.split(): | 91 | for item in output.split(): |
| 92 | item = item.replace(pyversion,'${PYTHON_MAJMIN}') | ||
| 88 | # We append it so it doesnt hurt what we currently have: | 93 | # We append it so it doesnt hurt what we currently have: |
| 89 | if isCached(item): | 94 | if isCached(item): |
| 90 | if item not in old_manifest['core']['cached']: | 95 | if item not in old_manifest['core']['cached']: |
| @@ -98,6 +103,7 @@ for item in output.split(): | |||
| 98 | old_manifest['core']['files'].append(item) | 103 | old_manifest['core']['files'].append(item) |
| 99 | 104 | ||
| 100 | for value in old_manifest['core']['files']: | 105 | for value in old_manifest['core']['files']: |
| 106 | value = value.replace(pyversion,'${PYTHON_MAJMIN}') | ||
| 101 | # Ignore folders, since we don't import those, difficult to handle multilib | 107 | # Ignore folders, since we don't import those, difficult to handle multilib |
| 102 | if isFolder(value): | 108 | if isFolder(value): |
| 103 | # Pass it directly | 109 | # Pass it directly |
| @@ -131,6 +137,8 @@ for value in old_manifest['core']['files']: | |||
| 131 | print ('The following dependencies were found for module %s:\n' % value) | 137 | print ('The following dependencies were found for module %s:\n' % value) |
| 132 | print (output) | 138 | print (output) |
| 133 | for item in output.split(): | 139 | for item in output.split(): |
| 140 | item = item.replace(pyversion,'${PYTHON_MAJMIN}') | ||
| 141 | |||
| 134 | # We append it so it doesnt hurt what we currently have: | 142 | # We append it so it doesnt hurt what we currently have: |
| 135 | if isCached(item): | 143 | if isCached(item): |
| 136 | if item not in old_manifest['core']['cached']: | 144 | if item not in old_manifest['core']['cached']: |
| @@ -250,6 +258,7 @@ for key in old_manifest: | |||
| 250 | # is folder_string inside path/folder1/folder2/filename?, | 258 | # is folder_string inside path/folder1/folder2/filename?, |
| 251 | # Yes, it works, but we waste a couple of milliseconds. | 259 | # Yes, it works, but we waste a couple of milliseconds. |
| 252 | 260 | ||
| 261 | item = item.replace(pyversion,'${PYTHON_MAJMIN}') | ||
| 253 | inFolders=False | 262 | inFolders=False |
| 254 | for folder in allfolders: | 263 | for folder in allfolders: |
| 255 | if folder in item: | 264 | if folder in item: |
| @@ -265,7 +274,6 @@ for key in old_manifest: | |||
| 265 | folderFound = True | 274 | folderFound = True |
| 266 | if keyfolder not in new_manifest[key]['rdepends'] and keyfolder != key: | 275 | if keyfolder not in new_manifest[key]['rdepends'] and keyfolder != key: |
| 267 | new_manifest[key]['rdepends'].append(keyfolder) | 276 | new_manifest[key]['rdepends'].append(keyfolder) |
| 268 | |||
| 269 | else: | 277 | else: |
| 270 | break | 278 | break |
| 271 | 279 | ||
diff --git a/meta/recipes-devtools/python/python3_3.5.5.bb b/meta/recipes-devtools/python/python3_3.5.5.bb index 8afe15eee6..9e31fa6f29 100644 --- a/meta/recipes-devtools/python/python3_3.5.5.bb +++ b/meta/recipes-devtools/python/python3_3.5.5.bb | |||
| @@ -334,7 +334,7 @@ do_create_manifest() { | |||
| 334 | 334 | ||
| 335 | cd ${WORKDIR} | 335 | cd ${WORKDIR} |
| 336 | # This needs to be executed by python-native and NOT by HOST's python | 336 | # This needs to be executed by python-native and NOT by HOST's python |
| 337 | nativepython3 create_manifest3.py | 337 | nativepython3 create_manifest3.py ${PYTHON_MAJMIN} |
| 338 | cp python3-manifest.json.new ${THISDIR}/python3/python3-manifest.json | 338 | cp python3-manifest.json.new ${THISDIR}/python3/python3-manifest.json |
| 339 | } | 339 | } |
| 340 | 340 | ||
