OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /e/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src openpkg-web          Date:   15-Sep-2003 21:12:23
  Branch: HEAD                             Handle: 2003091520122102

  Added files:
    openpkg-src/db          db.patch
  Modified files:
    openpkg-src/db          db.spec
    openpkg-web             news.txt

  Log:
    include the two patches I've assembling for RPM here, too

  Summary:
    Revision    Changes     Path
    1.1         +53 -0      openpkg-src/db/db.patch
    1.35        +4  -2      openpkg-src/db/db.spec
    1.6572      +1  -0      openpkg-web/news.txt
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/db/db.patch
  ============================================================================
  $ cvs diff -u -r0 -r1.1 db.patch
  --- /dev/null 2003-09-15 21:12:23.000000000 +0200
  +++ db.patch  2003-09-15 21:12:23.000000000 +0200
  @@ -0,0 +1,53 @@
  ++---------------------------------------------------------------------------
  +| Bugfix: POSIX/SUSv3 clearly expresses that fcntl(2) returns "value
  +| other than -1" on success, so check for equality to -1 instead of
  +| non-equality to 0. In practice this does not harm on most platforms,
  +| because they fortunately (by conincidence and common practice)
  +| return 0.
  ++---------------------------------------------------------------------------
  +Index: mutex/mut_fcntl.c
  +--- mutex/mut_fcntl.c        18 Jan 2003 14:05:03 -0000      1.1.1.5
  ++++ mutex/mut_fcntl.c        15 Sep 2003 13:37:58 -0000
  +@@ -101,7 +101,7 @@
  + 
  +             /* Acquire an exclusive kernel lock. */
  +             k_lock.l_type = F_WRLCK;
  +-            if (fcntl(dbenv->lockfhp->fd, F_SETLKW, &k_lock))
  ++            if (fcntl(dbenv->lockfhp->fd, F_SETLKW, &k_lock) == -1)
  +                     return (__os_get_errno());
  + 
  +             /* If the resource is still available, it's ours. */
  +@@ -112,7 +112,7 @@
  + 
  +             /* Release the kernel lock. */
  +             k_lock.l_type = F_UNLCK;
  +-            if (fcntl(dbenv->lockfhp->fd, F_SETLK, &k_lock))
  ++            if (fcntl(dbenv->lockfhp->fd, F_SETLK, &k_lock) == -1)
  +                     return (__os_get_errno());
  + 
  +             /*
  +
  ++---------------------------------------------------------------------------
  +| The O_DIRECT feature is fully broken under at least Linux 2.2 and
  +| 2.4. It is sometimes accepted by open(2) without error and later
  +| causes a write(2) to fail with EINVAL -- all depending on the
  +| underlying filesystem (usually works on tmpfs and fails on ext3).
  +| Sometimes it also causes open(2) to fail with EINVAL. In general,
  +| it does especially no "graceful degradation" and so is useless for
  +| use mostly all platforms except for those where we know it works
  +| (currently FreeBSD only). Interestingly, RPM works on RedHat, just
  +| because RedHat's "kernel" package contains a patch which masks out
  +| O_DIRECT usage... ;-)
  ++---------------------------------------------------------------------------
  +Index: os/os_open.c
  +--- os/os_open.c     18 Jan 2003 14:05:03 -0000      1.1.1.5
  ++++ os/os_open.c     15 Sep 2003 18:12:23 -0000
  +@@ -93,7 +93,7 @@
  +     if (LF_ISSET(DB_OSO_TRUNC))
  +             oflags |= O_TRUNC;
  + 
  +-#ifdef HAVE_O_DIRECT
  ++#if defined(HAVE_O_DIRECT) && defined(__FreeBSD__)
  +     if (LF_ISSET(DB_OSO_DIRECT))
  +             oflags |= O_DIRECT;
  + #endif
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/db/db.spec
  ============================================================================
  $ cvs diff -u -r1.34 -r1.35 db.spec
  --- openpkg-src/db/db.spec    9 Sep 2003 10:09:14 -0000       1.34
  +++ openpkg-src/db/db.spec    15 Sep 2003 19:12:23 -0000      1.35
  @@ -37,7 +37,7 @@
   Group:        Database
   License:      BSD
   Version:      %{V_version}.%{V_revision}
  -Release:      20030909
  +Release:      20030915
   
   #   package options
   %option       with_compat no
  @@ -46,6 +46,7 @@
   #   list of sources
   Source0:      http://www.sleepycat.com/update/snapshot/db-%{V_version}.tar.gz
   Patch0:       http://www.sleepycat.com/update/%{V_version}/patch.%{V_version}.1
  +Patch1:       db.patch
   
   #   build information
   Prefix:       %{l_prefix}
  @@ -66,7 +67,8 @@
   
   %prep
       %setup -q -n db-%{V_version}
  -    %patch -p0
  +    %patch0 -p0
  +    %patch1 -p0
   
   %build
       mutex="no"
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-web/news.txt
  ============================================================================
  $ cvs diff -u -r1.6571 -r1.6572 news.txt
  --- openpkg-web/news.txt      15 Sep 2003 18:29:39 -0000      1.6571
  +++ openpkg-web/news.txt      15 Sep 2003 19:12:21 -0000      1.6572
  @@ -1,3 +1,4 @@
  +15-Sep-2003: Upgraded package: P<db-4.1.25.1-20030915>
   15-Sep-2003: Upgraded package: P<mysql3-3.23.58-20030915>
   15-Sep-2003: Upgraded package: P<file-4.04-20030915>
   15-Sep-2003: Upgraded package: P<cfengine-2.0.8-20030915>
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [EMAIL PROTECTED]

Reply via email to