RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  ____________________________________________________________________________

  Server: rpm5.org                         Name:   Per Øyvind Karlsen
  Root:   /v/rpm/cvs                       Email:  [EMAIL PROTECTED]
  Module: rpm                              Date:   06-Dec-2007 23:58:17
  Branch: rpm-4_5                          Handle: 2007120622581601

  Modified files:           (Branch: rpm-4_5)
    rpm                     configure.ac macros.in
    rpm/rpmio               LzmaDecode.c LzmaDecode.h rpmio.c rpmmacro.h

  Log:
    Removes obsolete lzma utils stuff and fixes lzma payload compression usage.
    PR: LZMA support used obsolete version of utils. Payload definition didn't 
set compression level..
    Submitted by: Per Øyvind Karlsen
    
    Obtained from: Anders F Björklund (rpm 5.0 branch)

  Summary:
    Revision    Changes     Path
    2.70.2.21   +0  -1      rpm/configure.ac
    1.159.2.9   +2  -3      rpm/macros.in
    1.2.2.1     +1  -1      rpm/rpmio/LzmaDecode.c
    1.2.2.1     +1  -1      rpm/rpmio/LzmaDecode.h
    1.79.2.5    +18 -4      rpm/rpmio/rpmio.c
    2.39.2.1    +1  -1      rpm/rpmio/rpmmacro.h
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/configure.ac
  ============================================================================
  $ cvs diff -u -r2.70.2.20 -r2.70.2.21 configure.ac
  --- rpm/configure.ac  27 Sep 2007 07:47:42 -0000      2.70.2.20
  +++ rpm/configure.ac  6 Dec 2007 22:58:16 -0000       2.70.2.21
  @@ -264,7 +264,6 @@
   AC_PATH_PROG(__LDCONFIG, ldconfig, /sbin/ldconfig, $MYPATH)
   AC_PATH_PROG(__LUA, lua, %{_bindir}/lua, $MYPATH)
   AC_PATH_PROG(__LZMA, lzma, %{_bindir}/lzma, $MYPATH)
  -AC_PATH_PROG(__LZMASH, lzmash, %{_bindir}/lzmash, $MYPATH)
   AC_PATH_PROG(__LZOP, lzop, %{_bindir}/lzop, $MYPATH)
   AC_PATH_PROG(__MAKE, make, %{_bindir}/make, $MYPATH)
   AC_PATH_PROG(__MKDIR, mkdir, /bin/mkdir, $MYPATH)
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/macros.in
  ============================================================================
  $ cvs diff -u -r1.159.2.8 -r1.159.2.9 macros.in
  --- rpm/macros.in     19 Aug 2007 22:19:40 -0000      1.159.2.8
  +++ rpm/macros.in     6 Dec 2007 22:58:16 -0000       1.159.2.9
  @@ -1,7 +1,7 @@
   #/*! \page config_macros Default configuration: @USRLIBRPM@/macros
   # \verbatim
   #
  -# $Id: macros.in,v 1.159.2.8 2007/08/19 22:19:40 robert Exp $
  +# $Id: macros.in,v 1.159.2.9 2007/12/06 22:58:16 pkarlsen Exp $
   #
   # This is a global RPM configuration file. All changes made here will
   # be lost when the rpm package is upgraded. Any per-system configuration
  @@ -64,7 +64,6 @@
   %__lua                       @__LUA@
   %__ln_s                      @LN_S@
   %__lzma                      @__LZMA@
  -%__lzmash            @__LZMASH@
   %__lzop                      @__LZOP@
   %__make                      @__MAKE@
   %make                        %{__make}
  @@ -345,7 +344,7 @@
   #    Compression type and level for source/binary package payloads.
   #            "w9.gzdio"      gzip level 9 (default).
   #            "w9.bzdio"      bzip2 level 9.
  -#            "w9.lzdio"      lzma level 9.
  +#            "w5.lzdio"      lzma level 5. (most optimal compromise)
   #
   #%_source_payload    w9.gzdio
   #%_binary_payload    w9.gzdio
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmio/LzmaDecode.c
  ============================================================================
  $ cvs diff -u -r1.2 -r1.2.2.1 LzmaDecode.c
  --- rpm/rpmio/LzmaDecode.c    25 May 2007 18:34:14 -0000      1.2
  +++ rpm/rpmio/LzmaDecode.c    6 Dec 2007 22:58:17 -0000       1.2.2.1
  @@ -4,7 +4,7 @@
     LzmaDecode.c
     LZMA Decoder (optimized for Speed version)
     
  -  LZMA SDK 4.22 Copyright (c) 1999-2005 Igor Pavlov (2005-06-10)
  +  LZMA SDK 4.32 Copyright (c) 1999-2005 Igor Pavlov (2005-12-09)
     http://www.7-zip.org/
   
     LZMA SDK is licensed under two licenses:
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmio/LzmaDecode.h
  ============================================================================
  $ cvs diff -u -r1.2 -r1.2.2.1 LzmaDecode.h
  --- rpm/rpmio/LzmaDecode.h    25 May 2007 18:34:14 -0000      1.2
  +++ rpm/rpmio/LzmaDecode.h    6 Dec 2007 22:58:17 -0000       1.2.2.1
  @@ -2,7 +2,7 @@
     LzmaDecode.h
     LZMA Decoder interface
   
  -  LZMA SDK 4.21 Copyright (c) 1999-2005 Igor Pavlov (2005-06-08)
  +  LZMA SDK 4.32 Copyright (c) 1999-2005 Igor Pavlov (2005-12-09)
     http://www.7-zip.org/
   
     LZMA SDK is licensed under two licenses:
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmio/rpmio.c
  ============================================================================
  $ cvs diff -u -r1.79.2.4 -r1.79.2.5 rpmio.c
  --- rpm/rpmio/rpmio.c 30 Jul 2007 02:59:55 -0000      1.79.2.4
  +++ rpm/rpmio/rpmio.c 6 Dec 2007 22:58:17 -0000       1.79.2.5
  @@ -2813,13 +2813,25 @@
       return rc;
   }
   
  -static FD_t lzdWriteOpen(int fdno, int fopen)
  +/[EMAIL PROTECTED]@*/     /* XXX hide rpmGlobalMacroContext mods for now. */
  +static FD_t lzdWriteOpen(int fdno, int fopen, const char * mode)
        /[EMAIL PROTECTED] fileSystem, internalState @*/
        /[EMAIL PROTECTED] fileSystem, internalState @*/
   {
       int pid;
       int p[2];
       int xx;
  +    const char *lzma;
  +    char l[3];
  +    const char *level;
  +    
  +    if (isdigit(mode[1])) /* "w5" */
  +    {
  +     sprintf(l, "-%c", mode[1]);
  +     level = l;
  +    }
  +    else
  +        level = NULL;
   
       if (fdno < 0) return NULL;
       if (pipe(p) < 0) {
  @@ -2856,8 +2868,10 @@
           xx = dup2(fdno, 1);
           for (i = 3; i < 1024; i++)
            xx = close(i);
  -        if (execl("/usr/bin/lzma", "lzma", "e", "-si", "-so", NULL))
  +     lzma = rpmGetPath("%{?__lzma}%{!?__lzma:/usr/bin/lzma}", NULL);
  +     if (execl(lzma, "lzma", level, NULL))
               _exit(1);
  +     lzma = _free(lzma);
       }
       return NULL; /* warning */
   }
  @@ -2923,7 +2937,7 @@
           int fdno = open(path, O_WRONLY);
   
           if (fdno < 0) return NULL;
  -        return lzdWriteOpen(fdno, 1);
  +        return lzdWriteOpen(fdno, 1, mode);
       } else {
           int fdno = open(path, O_RDONLY);
   
  @@ -2946,7 +2960,7 @@
       fdSetFdno(fd, -1);               /* XXX skip the fdio close */
       if (fdno < 0) return NULL;
       if (fmode[0] == 'w') {
  -        return lzdWriteOpen(fdno, 0);
  +        return lzdWriteOpen(fdno, 0, fmode);
       } else {
           return lzdReadOpen(fdno, 0);
       }
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmio/rpmmacro.h
  ============================================================================
  $ cvs diff -u -r2.39 -r2.39.2.1 rpmmacro.h
  --- rpm/rpmio/rpmmacro.h      25 May 2007 17:36:36 -0000      2.39
  +++ rpm/rpmio/rpmmacro.h      6 Dec 2007 22:58:17 -0000       2.39.2.1
  @@ -170,7 +170,7 @@
       COMPRESSED_BZIP2         = 2,    /*!< bzip2 can handle */
       COMPRESSED_ZIP           = 3,    /*!< unzip can handle */
       COMPRESSED_LZOP          = 4,    /*!< lzop can handle */
  -    COMPRESSED_LZMA          = 5     /*!< lzmash can handle */
  +    COMPRESSED_LZMA          = 5     /*!< lzma can handle */
   } rpmCompressedMagic;
   
   /**
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                rpm-cvs@rpm5.org

Reply via email to