On Sun, 2018-08-19 at 21:43 -0500, Joshua Watt wrote: > Replaces usage of the deprecated oe.utils.getstatusoutput() with Python > subprocess calls. > > Signed-off-by: Joshua Watt <jpewhac...@gmail.com> > --- > meta/classes/package.bbclass | 19 +++++++++++-------- > 1 file changed, 11 insertions(+), 8 deletions(-) > > diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass > index 4ce9de2f573..b05d2858281 100644 > --- a/meta/classes/package.bbclass > +++ b/meta/classes/package.bbclass > @@ -380,6 +380,7 @@ def splitdebuginfo(file, dvar, debugdir, debuglibdir, > debugappend, debugsrcdir, > # sourcefile is also generated containing a list of debugsources > > import stat > + import subprocess > > src = file[len(dvar):] > dest = debuglibdir + os.path.dirname(src) + debugdir + "/" + > os.path.basename(src) + debugappend > @@ -409,16 +410,18 @@ def splitdebuginfo(file, dvar, debugdir, debuglibdir, > debugappend, debugsrcdir, > > bb.utils.mkdirhier(os.path.dirname(debugfile)) > > - cmd = "'%s' --only-keep-debug '%s' '%s'" % (objcopy, file, debugfile) > - (retval, output) = oe.utils.getstatusoutput(cmd) > - if retval: > - bb.fatal("objcopy failed with exit code %s (cmd was %s)%s" % > (retval, cmd, ":\n%s" % output if output else "")) > + cmd = (objcopy, '--only-keep-debug', file, debugfile) > + try: > + subprocess.check_output(cmd) > + except subprocess.CalledProcessError as e: > + bb.fatal("objcopy failed with exit code %s (cmd was %s)%s" % > (e.returncode, ' '.join(cmd), ":\n%s" % output.decode('utf-8') if e.output > else "")) > > # Set the debuglink to have the view of the file path on the target > - cmd = "'%s' --add-gnu-debuglink='%s' '%s'" % (objcopy, debugfile, file) > - (retval, output) = oe.utils.getstatusoutput(cmd) > - if retval: > - bb.fatal("objcopy failed with exit code %s (cmd was %s)%s" % > (retval, cmd, ":\n%s" % output if output else "")) > + cmd = (objcopy, '--add-gnu-debuglink', debugfile, file) > + try: > + subprocess.check_output(cmd) > + except subprocess.CalledProcessError as e: > + bb.fatal("objcopy failed with exit code %s (cmd was %s)%s" % > (e.returncode, ' '.join(cmd), ":\n%s" % output.decode('utf-8') if e.output > else "")) > > if newmode: > os.chmod(file, origmode)
I appreciate this is a direct replacement and functionally equivalent but are these custom exceptions any real use? Its hard to actually get them right and I suspect we may be better off without them using the standard formatter? Cheers, Richard -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core