summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>2017-02-02 15:20:41 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-03-13 09:43:21 +0000
commitbdebe0d50a210438730ee7797968eafe169ded23 (patch)
treea4a13890056341fc890cf2ef104fb04a8f49122c
parent749a496d273f9fd378588e309cf976294584ca5f (diff)
downloadopenembedded-core-contrib-bdebe0d50a210438730ee7797968eafe169ded23.tar.gz
openembedded-core-contrib-bdebe0d50a210438730ee7797968eafe169ded23.tar.bz2
openembedded-core-contrib-bdebe0d50a210438730ee7797968eafe169ded23.zip
package_rpm.bbclass: instruct rpm to not remove the buildroot directory
This is the ${W}/package directory which may be reused in subsequent builds. Also clean up various default directories rpm 4 creates. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
-rw-r--r--meta/classes/package_rpm.bbclass7
1 files changed, 5 insertions, 2 deletions
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 9b634e583b..ff86dc8798 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -697,7 +697,7 @@ python do_package_rpm () {
os.chmod(pkgwritedir, 0o755)
cmd = rpmbuild
- cmd = cmd + " --nodeps --short-circuit --target " + pkgarch + " --buildroot " + pkgd
+ cmd = cmd + " --noclean --nodeps --short-circuit --target " + pkgarch + " --buildroot " + pkgd
cmd = cmd + " --define '_topdir " + workdir + "' --define '_rpmdir " + pkgwritedir + "'"
cmd = cmd + " --define '_builddir " + d.getVar('S') + "'"
cmd = cmd + " --define '_build_name_fmt %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm'"
@@ -721,8 +721,11 @@ python do_package_rpm () {
bb.build.exec_func('SBUILDSPEC', d)
cmd = cmd + " -bb " + outspecfile
+ # rpm 4 creates various empty directories in _topdir, let's clean them up
+ cleanupcmd = "rm -rf %s/BUILDROOT %s/SOURCES %s/SPECS %s/SRPMS" % (workdir, workdir, workdir, workdir)
+
# Build the rpm package!
- d.setVar('BUILDSPEC', cmd + "\n")
+ d.setVar('BUILDSPEC', cmd + "\n" + cleanupcmd + "\n")
d.setVarFlag('BUILDSPEC', 'func', '1')
bb.build.exec_func('BUILDSPEC', d)