summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPanu Matilainen <pmatilai@redhat.com>2009-04-13 13:58:39 +0300
committerPanu Matilainen <pmatilai@redhat.com>2009-04-14 10:11:23 +0300
commit96367a38a766ac598bdf0816dcc54bdb8cbca478 (patch)
tree8052da2010ac73c8839d9dc264788d5aa8b11c52
parent2ae7ee48c42b0cd7350265356cbc18efa37ebef6 (diff)
downloadrpm-96367a38a766ac598bdf0816dcc54bdb8cbca478.tar.gz
Error out at build on unsupported payload compressors (rhbz#495429)
- only permit bzip2/lzma/xz payload compression if rpm built with the necessary libraries (cherry picked from commit 0f967d157d3a02696898f848f4cd584e646b264f)
-rw-r--r--build/pack.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/build/pack.c b/build/pack.c
index b87299510..57324ac25 100644
--- a/build/pack.c
+++ b/build/pack.c
@@ -381,16 +381,20 @@ rpmRC writeRPM(Header *hdrp, unsigned char ** pkgidp, const char *fileName,
if (strcmp(s+1, "gzdio") == 0) {
compr = "gzip";
+#if HAVE_BZLIB_H
} else if (strcmp(s+1, "bzdio") == 0) {
compr = "bzip2";
/* Add prereq on rpm version that understands bzip2 payloads */
(void) rpmlibNeedsFeature(h, "PayloadIsBzip2", "3.0.5-1");
+#endif
+#if HAVE_LZMA_H
} else if (strcmp(s+1, "xzdio") == 0) {
compr = "xz";
(void) rpmlibNeedsFeature(h, "PayloadIsXz", "5.2-1");
} else if (strcmp(s+1, "lzdio") == 0) {
compr = "lzma";
(void) rpmlibNeedsFeature(h, "PayloadIsLzma", "4.4.6-1");
+#endif
} else {
rpmlog(RPMLOG_ERR, _("Unknown payload compression: %s\n"),
rpmio_flags);