diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2012-07-23 10:43:22 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-07-28 11:13:51 +0100 |
commit | 9135d351ba7cb21e50239d2b310565680bd4fdca (patch) | |
tree | 09f01db01e59305d101484e90b19b9580f01da1a /meta/recipes-devtools/rpm/rpmresolve_1.0.bb | |
parent | 3861dc6f52c8c3abe925302dadba15d90efbd6b5 (diff) | |
download | openembedded-core-contrib-9135d351ba7cb21e50239d2b310565680bd4fdca.tar.gz |
classes/rootfs_rpm: improve speed of RPM rootfs construction
Improve the performance of the RPM backend during do_rootfs by
performing most of the package name to file resolution in a separate
utility written in C, processing the entire list of packages at once
rather than running rpm on the command line which loads the RPM database
for every package.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Diffstat (limited to 'meta/recipes-devtools/rpm/rpmresolve_1.0.bb')
-rw-r--r-- | meta/recipes-devtools/rpm/rpmresolve_1.0.bb | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/meta/recipes-devtools/rpm/rpmresolve_1.0.bb b/meta/recipes-devtools/rpm/rpmresolve_1.0.bb new file mode 100644 index 0000000000..f8750e02ba --- /dev/null +++ b/meta/recipes-devtools/rpm/rpmresolve_1.0.bb @@ -0,0 +1,22 @@ +SUMMARY = "OpenEmbedded RPM resolver utility" +DESCRIPTION = "OpenEmbedded RPM resolver - performs RPM database lookups in batches to avoid \ + repeated invocations of rpm on the command line." +DEPENDS = "rpm" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" +PR = "r0" + +SRC_URI = "file://rpmresolve.c" + +S = "${WORKDIR}" + +do_compile() { + ${CC} ${CFLAGS} -ggdb -I${STAGING_INCDIR}/rpm ${LDFLAGS} rpmresolve.c -o rpmresolve -lrpmbuild -lrpm -lrpmio -lrpmdb -lpopt +} + +do_install() { + install -d ${D}${bindir} + install -m 0755 rpmresolve ${D}${bindir} +} + +BBCLASSEXTEND = "native" |