Error out at build on unsupported payload compressors (rhbz#495429)
authorPanu Matilainen <pmatilai@redhat.com>
Mon, 13 Apr 2009 10:58:39 +0000 (13:58 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Mon, 13 Apr 2009 10:58:39 +0000 (13:58 +0300)
- only permit bzip2/lzma/xz payload compression if rpm built with the
  necessary libraries

build/pack.c

index b872995..57324ac 100644 (file)
@@ -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);