summaryrefslogtreecommitdiffstats
path: root/meta/lib/oe/package_manager.py
diff options
context:
space:
mode:
Diffstat (limited to 'meta/lib/oe/package_manager.py')
-rw-r--r--meta/lib/oe/package_manager.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index a8360fe983..3aff9d89c6 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -6,6 +6,7 @@ import shutil
6import multiprocessing 6import multiprocessing
7import re 7import re
8import bb 8import bb
9import tempfile
9 10
10 11
11# this can be used by all PM backends to create the index files in parallel 12# this can be used by all PM backends to create the index files in parallel
@@ -411,16 +412,22 @@ class DpkgPkgsList(PkgsList):
411 output = tmp_output 412 output = tmp_output
412 elif format == "deps": 413 elif format == "deps":
413 opkg_query_cmd = bb.utils.which(os.getenv('PATH'), "opkg-query-helper.py") 414 opkg_query_cmd = bb.utils.which(os.getenv('PATH'), "opkg-query-helper.py")
415 file_out = tempfile.NamedTemporaryFile()
416 file_out.write(output)
417 file_out.flush()
414 418
415 try: 419 try:
416 output = subprocess.check_output("echo -e '%s' | %s" % 420 output = subprocess.check_output("cat %s | %s" %
417 (output, opkg_query_cmd), 421 (file_out.name, opkg_query_cmd),
418 stderr=subprocess.STDOUT, 422 stderr=subprocess.STDOUT,
419 shell=True) 423 shell=True)
420 except subprocess.CalledProcessError as e: 424 except subprocess.CalledProcessError as e:
425 file_out.close()
421 bb.fatal("Cannot compute packages dependencies. Command '%s' " 426 bb.fatal("Cannot compute packages dependencies. Command '%s' "
422 "returned %d:\n%s" % (e.cmd, e.returncode, e.output)) 427 "returned %d:\n%s" % (e.cmd, e.returncode, e.output))
423 428
429 file_out.close()
430
424 return output 431 return output
425 432
426 433