summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-devtools/python/python3/create_manifest3.py10
-rw-r--r--meta/recipes-devtools/python/python3_3.5.5.bb2
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
44import json 44import json
45import os 45import os
46 46
47# Get python version from ${PYTHON_MAJMIN}
48pyversion = 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
48pivot='recipe-sysroot-native' 51pivot='recipe-sysroot-native'
49for p in sys.path: 52for p in sys.path:
@@ -62,6 +65,7 @@ hasfolders=[]
62allfolders=[] 65allfolders=[]
63 66
64def isFolder(value): 67def 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
86output = subprocess.check_output([sys.executable, 'get_module_deps3.py', 'python-core-package']).decode('utf8') 90output = subprocess.check_output([sys.executable, 'get_module_deps3.py', 'python-core-package']).decode('utf8')
87for item in output.split(): 91for 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
100for value in old_manifest['core']['files']: 105for 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