summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDiego Santa Cruz <Diego.SantaCruz@spinetix.com>2021-03-03 19:09:04 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-03-06 22:36:34 +0000
commit0dea6cccc1c638078846e6eb8e48e8ef69c87618 (patch)
tree715820836b0a67c27eee834ed47580b4a20ce5a7
parent81e4260b83c52558c320fd7d1c1eafcb312ad6be (diff)
downloadopenembedded-core-contrib-0dea6cccc1c638078846e6eb8e48e8ef69c87618.tar.gz
rpm: split build and extra functionality into separate packages
Having all the rpm build related tools in the main package requires adding runtime dependencies on perl and python3-core, so adding rpm to a target image can pull quite many unneeded packages to satisfy the dependencies. This splits all the build related tools into rpm-build and moves the bash, perl and python3-core runtime dependencies to that package. Also, the rpmsign tool is split into rpm-sign and rpm2archive (only built if archive is in PACKAGECONFIG) into rpm-archive. These are separate packages since they are not really related to building, so do not belong in rpm-build, but are not necessarily wanted in target images when rpm is included. Signed-off-by: Diego Santa Cruz <Diego.SantaCruz@spinetix.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/rpm/rpm_4.16.1.2.bb39
1 files changed, 35 insertions, 4 deletions
diff --git a/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb b/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb
index 9195d66dd1..d369c706a2 100644
--- a/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb
+++ b/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb
@@ -145,15 +145,46 @@ FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/rpm.
FILES_${PN}-dev += "${libdir}/rpm-plugins/*.la \
"
+PACKAGE_BEFORE_PN += "${PN}-build ${PN}-sign ${PN}-archive"
+
+RRECOMMENDS_${PN} += "rpm-build rpm-sign rpm-archive"
+
+FILES_${PN}-build = "\
+ ${bindir}/rpmbuild \
+ ${bindir}/gendiff \
+ ${bindir}/rpmspec \
+ ${libdir}/librpmbuild.so.* \
+ ${libdir}/rpm/brp-* \
+ ${libdir}/rpm/check-* \
+ ${libdir}/rpm/debugedit \
+ ${libdir}/rpm/sepdebugcrcfix \
+ ${libdir}/rpm/find-debuginfo.sh \
+ ${libdir}/rpm/find-lang.sh \
+ ${libdir}/rpm/*provides* \
+ ${libdir}/rpm/*requires* \
+ ${libdir}/rpm/*deps* \
+ ${libdir}/rpm/*.prov \
+ ${libdir}/rpm/*.req \
+ ${libdir}/rpm/config.* \
+ ${libdir}/rpm/mkinstalldirs \
+ ${libdir}/rpm/macros.p* \
+ ${libdir}/rpm/fileattrs/* \
+"
+
+FILES_${PN}-sign = "\
+ ${bindir}/rpmsign \
+ ${libdir}/librpmsign.so.* \
+"
+
+FILES_${PN}-archive = "\
+ ${bindir}/rpm2archive \
+"
PACKAGES += "python3-rpm"
PROVIDES += "python3-rpm"
FILES_python3-rpm = "${PYTHON_SITEPACKAGES_DIR}/rpm/*"
-# rpm 5.x was packaging the rpm build tools separately
-RPROVIDES_${PN} += "rpm-build"
-
-RDEPENDS_${PN} = "bash perl python3-core"
+RDEPENDS_${PN}-build = "bash perl python3-core"
PACKAGE_PREPROCESS_FUNCS += "rpm_package_preprocess"