From 96a5445b98310316d1df0a416e97516fd6482d24 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Mon, 20 Nov 2017 01:42:20 +0000 Subject: [PATCH] Drop bzdio support There is no use in supporting bzip2 compressed payloads in rpmbuild nowadays. --- build/pack.c | 2 ++ configure.ac | 14 +------------- lib/psm.c | 2 ++ lib/rpmlibprov.c | 2 ++ macros.in | 1 - rpm-4_0.spec | 9 ++++----- rpmio/Makefile.am | 2 +- rpmio/rpmio.c | 10 +++++----- 8 files changed, 17 insertions(+), 25 deletions(-) diff --git a/build/pack.c b/build/pack.c index 2cea9ad..86251d4 100644 --- a/build/pack.c +++ b/build/pack.c @@ -438,11 +438,13 @@ int writeRPM(Header *hdrp, const char *fileName, int type, if (s[1] == 'g' && s[2] == 'z') (void) headerAddEntry(h, RPMTAG_PAYLOADCOMPRESSOR, RPM_STRING_TYPE, "gzip", 1); +#ifdef HAVE_BZLIB_H if (s[1] == 'b' && s[2] == 'z') { (void) headerAddEntry(h, RPMTAG_PAYLOADCOMPRESSOR, RPM_STRING_TYPE, "bzip2", 1); (void) rpmlibNeedsFeature(h, "PayloadIsBzip2", NULL); } +#endif if (s[1] == 'l' && s[2] == 'z') { (void) headerAddEntry(h, RPMTAG_PAYLOADCOMPRESSOR, RPM_STRING_TYPE, "lzma", 1); diff --git a/configure.ac b/configure.ac index e9e1ddd..b447f22 100644 --- a/configure.ac +++ b/configure.ac @@ -287,18 +287,6 @@ dnl zlib-1.0.4 has not gzseek AC_CHECK_LIB(${zlib}, gzseek, [AC_DEFINE(HAVE_GZSEEK, 1, [Define as 1 if your zlib has gzseek()])]) fi -BZLIB= -AC_CHECK_LIB(bz2, BZ2_bzread, [ - WITH_BZIP2=1 - LIBBZ2="-lbz2" - AC_DEFINE(HAVE_BZ2_1_0, 1, [Define as 1 if you bzip2 1.0]) ], - AC_CHECK_LIB(bz2, bzread, [ - WITH_BZIP2=1 - LIBBZ2="-lbz2" ], - WITH_BZIP2=0)) -AC_SUBST(WITH_BZIP2) -AC_SUBST(LIBBZ2) - LIBPOPT= AC_CHECK_LIB(popt, poptGetContext, [LIBPOPT="-lpopt"]) AC_SUBST(LIBPOPT) @@ -328,7 +316,7 @@ AC_CHECK_HEADERS(netinet/in_systm.h) AC_CHECK_HEADERS(machine/types.h) AC_CHECK_HEADERS(mntent.h sys/mnttab.h sys/systemcfg.h) AC_CHECK_HEADERS(sys/mount.h sys/mntctl.h sys/param.h sys/vmount.h) -AC_CHECK_HEADERS(bzlib.h libio.h zlib.h) +AC_CHECK_HEADERS(libio.h zlib.h) AC_CHECK_HEADERS(err.h mcheck.h syslog.h) AC_CHECK_HEADERS(locale.h) diff --git a/lib/psm.c b/lib/psm.c index 050bf25..c340516 100644 --- a/lib/psm.c +++ b/lib/psm.c @@ -1716,8 +1716,10 @@ assert(psm->mi == NULL); t = stpcpy(t, "r"); if (!strcmp(payload_compressor, "gzip")) t = stpcpy(t, ".gzdio"); +#ifdef HAVE_BZLIB_H if (!strcmp(payload_compressor, "bzip2")) t = stpcpy(t, ".bzdio"); +#endif if (!strcmp(payload_compressor, "lzma")) t = stpcpy(t, ".lzdio"); if (!strcmp(payload_compressor, "xz")) diff --git a/lib/rpmlibprov.c b/lib/rpmlibprov.c index 9e8da5a..33d07b0 100644 --- a/lib/rpmlibprov.c +++ b/lib/rpmlibprov.c @@ -19,9 +19,11 @@ static struct rpmlibProvides_s { { "rpmlib(CompressedFileNames)", "3.0.4-1", (RPMSENSE_RPMLIB|RPMSENSE_EQUAL), N_("file name(s) are stored as (dirName,baseName,dirIndex) tuple, not as path.")}, +#ifdef HAVE_BZLIB_H { "rpmlib(PayloadIsBzip2)", "3.0.5-1", (RPMSENSE_RPMLIB|RPMSENSE_EQUAL), N_("package payload is compressed using bzip2.") }, +#endif { "rpmlib(PayloadIsLzma)", "4.4.2-1", (RPMSENSE_RPMLIB|RPMSENSE_EQUAL), N_("package payload can be compressed using lzma.") }, diff --git a/macros.in b/macros.in index 1fd7558..71afa77 100644 --- a/macros.in +++ b/macros.in @@ -254,7 +254,6 @@ # Compression type and level for source/binary package payloads. # "w9.gzdio" gzip level 9 (default). -# "w9.bzdio" bzip2 level 9. # #%_source_payload w9.gzdio #%_binary_payload w9.gzdio diff --git a/rpm-4_0.spec b/rpm-4_0.spec index 5c577ca..2bea49a 100644 --- a/rpm-4_0.spec +++ b/rpm-4_0.spec @@ -74,7 +74,7 @@ BuildPreReq: rpm >= 3.0.6-ipl24mdk, %_bindir/subst BuildPreReq: elfutils-devel # Automatically added by buildreq on Thu Apr 23 2009 and edited manually. -BuildRequires: bzlib-devel libdb4.7-devel libelf-devel liblzma-devel libpopt-devel python-devel zlib-devel +BuildRequires: libdb4.7-devel libelf-devel liblzma-devel libpopt-devel python-devel zlib-devel %package -n lib%oname Summary: Shared libraries required for applications which will manipulate RPM packages @@ -82,7 +82,6 @@ Summary(ru_RU.UTF-8): Файлы, необходимые для разработ License: GPL/LGPL Group: System/Libraries PreReq: zlib >= 1.1.4 -PreReq: bzlib >= 1:1.0.2-alt2 PreReq: libpopt >= 1:1.7-alt3 PreReq: libdb4.7 @@ -109,7 +108,7 @@ Summary(ru_RU.UTF-8): Статические библиотеки, необхо License: GPL/LGPL Group: Development/C Requires: lib%oname-devel = %version-%release -Requires: bzlib-devel-static, libbeecrypt-devel-static, libdb4.7-devel-static, libpopt-devel-static, zlib-devel-static +Requires: libbeecrypt-devel-static, libdb4.7-devel-static, libpopt-devel-static, zlib-devel-static %package build-topdir @@ -276,9 +275,9 @@ done touch %buildroot%_localstatedir/%oname/files-awaiting-filetriggers # Prepare documentation. -bzip2 -9k CHANGES ||: +xz -9 CHANGES ||: mkdir -p %buildroot%_docdir/%oname-%rpm_version -install -p -m644 CHANGES.bz2 CREDITS README README.ALT* \ +install -p -m644 CHANGES.xz CREDITS README README.ALT* \ %buildroot%_docdir/%oname-%rpm_version/ cp -a doc/manual %buildroot%_docdir/%oname-%rpm_version/ rm -f %buildroot%_docdir/%oname-%rpm_version/manual/{Makefile*,buildroot} diff --git a/rpmio/Makefile.am b/rpmio/Makefile.am index 5299f53..07035a4 100644 --- a/rpmio/Makefile.am +++ b/rpmio/Makefile.am @@ -17,7 +17,7 @@ lib_LTLIBRARIES = librpmio.la librpmio_la_SOURCES = digest.c macro.c rpmio.c rpmlog.c rpmmalloc.c \ rpmpgp.c rpmrpc.c strcasecmp.c stubs.c url.c ugid.c librpmio_la_LDFLAGS = -release @VERSION@ -librpmio_la_LIBADD = @LIBBEECRYPT@ @LIBBZ2@ @LIBZ@ -llzma +librpmio_la_LIBADD = @LIBBEECRYPT@ @LIBZ@ -llzma clean-local: rm -f *.o diff --git a/rpmio/rpmio.c b/rpmio/rpmio.c index 34e2e0f..89352ab 100644 --- a/rpmio/rpmio.c +++ b/rpmio/rpmio.c @@ -180,7 +180,7 @@ static /*@observer@*/ const char * fdbg(/*@null@*/ FD_t fd) sprintf(be, "FAD %d fp %p", fps->fdno, fps->fp); } else if (fps->io == gzdio) { sprintf(be, "GZD %p fdno %d", fps->fp, fps->fdno); -#if HAVE_BZLIB_H +#ifdef HAVE_BZLIB_H } else if (fps->io == bzdio) { sprintf(be, "BZD %p fdno %d", fps->fp, fps->fdno); #endif @@ -2554,7 +2554,7 @@ FDIO_t gzdio = /*@-compmempass@*/ &gzdio_s /*@=compmempass@*/ ; /* =============================================================== */ /* Support for BZIP2 library. */ -#if HAVE_BZLIB_H +#ifdef HAVE_BZLIB_H /*@-moduncon@*/ #include @@ -3485,7 +3485,7 @@ fprintf(stderr, "*** Fdopen(%p,%s) %s\n", fd, fmode, fdbg(fd)); /*@-internalglobs@*/ fd = gzdFdopen(fd, zstdio); /*@=internalglobs@*/ -#if HAVE_BZLIB_H +#ifdef HAVE_BZLIB_H } else if (!strcmp(end, "bzdio")) { iof = bzdio; /*@-internalglobs@*/ @@ -3659,7 +3659,7 @@ int Fflush(FD_t fd) vh = fdGetFp(fd); if (vh && fdGetIo(fd) == gzdio) return gzdFlush(vh); -#if HAVE_BZLIB_H +#ifdef HAVE_BZLIB_H if (vh && fdGetIo(fd) == bzdio) return bzdFlush(vh); #endif @@ -3685,7 +3685,7 @@ int Ferror(FD_t fd) } else if (fps->io == gzdio) { ec = (fd->syserrno || fd->errcookie != NULL) ? -1 : 0; i--; /* XXX fdio under gzdio always has fdno == -1 */ -#if HAVE_BZLIB_H +#ifdef HAVE_BZLIB_H } else if (fps->io == bzdio) { ec = (fd->syserrno || fd->errcookie != NULL) ? -1 : 0; i--; /* XXX fdio under bzdio always has fdno == -1 */