Added tizen packaging
authorEduardo Lima (Etrunko) <eduardo.lima@intel.com>
Wed, 11 Dec 2013 13:22:06 +0000 (11:22 -0200)
committerEduardo Lima (Etrunko) <eduardo.lima@intel.com>
Wed, 11 Dec 2013 15:09:46 +0000 (13:09 -0200)
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
12 files changed:
packaging/007-mt19937db.c_license.patch [new file with mode: 0644]
packaging/db-1.85-errno.patch [new file with mode: 0644]
packaging/db-4.5.20-jni-include-dir.patch [new file with mode: 0644]
packaging/db-4.6.21-1.85-compat.patch [new file with mode: 0644]
packaging/libdb-multiarch.patch [new file with mode: 0644]
packaging/libdb.changes [new file with mode: 0644]
packaging/libdb.manifest [new file with mode: 0644]
packaging/libdb.spec [new file with mode: 0644]
packaging/patch.1.1 [new file with mode: 0644]
packaging/patch.1.2 [new file with mode: 0644]
packaging/patch.1.3 [new file with mode: 0644]
packaging/patch.1.4 [new file with mode: 0644]

diff --git a/packaging/007-mt19937db.c_license.patch b/packaging/007-mt19937db.c_license.patch
new file mode 100644 (file)
index 0000000..eab05d7
--- /dev/null
@@ -0,0 +1,49 @@
+Description: mt19937db.c license should include the GPL
+ This file is distributed from upstream Berkeley DB under the Artistic
+ License (no version specified), althouth it was later released by the
+ original author under both GPL2+ and BSD.
+ .
+ References:
+ http://web.archive.org/web/20010806225716/http://www.math.keio.ac.jp/matumoto/mt19937int.c
+ http://web.archive.org/web/20130127064020/http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/MT2002/CODES/mt19937ar.c
+ https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=886838
+ https://lists.nongnu.org/archive/html/gnu-linux-libre/2010-05/msg00000.html
+ .
+Author: Ruben Rodriguez <ruben@trisquel.info>
+
+
+--- db-5.3.21/src/crypto/mersenne/mt19937db.c.licensefix
++++ db-5.3.21/src/crypto/mersenne/mt19937db.c
+@@ -16,16 +16,27 @@
+ /*   Coded by Takuji Nishimura, considering the suggestions by    */
+ /* Topher Cooper and Marc Rieffel in July-Aug. 1997.              */
+-/* This library is free software under the Artistic license:       */
+-/* see the file COPYING distributed together with this code.       */
+-/* For the verification of the code, its output sequence file      */
+-/* mt19937int.out is attached (2001/4/2)                           */
+-
+ /* Copyright (C) 1997, 1999 Makoto Matsumoto and Takuji Nishimura. */
+ /* Any feedback is very welcome. For any question, comments,       */
+ /* see http://www.math.keio.ac.jp/matumoto/emt.html or email       */
+ /* matumoto@math.keio.ac.jp                                        */
++/* This library is free software; you can redistribute it and/or   */
++/* modify it under the terms of the GNU Library General Public     */
++/* License as published by the Free Software Foundation; either    */
++/* version 2 of the License, or (at your option) any later         */
++/* version.                                                        */
++/* This library is distributed in the hope that it will be useful, */
++/* but WITHOUT ANY WARRANTY; without even the implied warranty of  */
++/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.            */
++/* See the GNU Library General Public License for more details.    */
++/* You should have received a copy of the GNU Library General      */
++/* Public License along with this library; if not, write to the    */
++/* Free Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA   */ 
++/* 02111-1307  USA                                                 */
++
++/* This library is free software under the Artistic license:       */
++
+ /* REFERENCE                                                       */
+ /* M. Matsumoto and T. Nishimura,                                  */
+ /* "Mersenne Twister: A 623-Dimensionally Equidistributed Uniform  */
diff --git a/packaging/db-1.85-errno.patch b/packaging/db-1.85-errno.patch
new file mode 100644 (file)
index 0000000..ccc9ddf
--- /dev/null
@@ -0,0 +1,89 @@
+glibc doesn't like errno as the name of a field.
+--- db.1.85/hash/hash.h        Mon Feb 18 19:12:14 2002
++++ db.1.85/hash/hash.h        Mon Feb 18 19:12:20 2002
+@@ -103,7 +103,7 @@
+       BUFHEAD         *cpage;         /* Current page */
+       int             cbucket;        /* Current bucket */
+       int             cndx;           /* Index of next item on cpage */
+-      int             errno;          /* Error Number -- for DBM 
++      int             err;            /* Error Number -- for DBM 
+                                        * compatability */
+       int             new_file;       /* Indicates if fd is backing store 
+                                        * or no */
+--- db.1.85/hash/hash.c        Mon Feb 18 19:12:24 2002
++++ db.1.85/hash/hash.c        Mon Feb 18 19:12:44 2002
+@@ -505,7 +505,7 @@
+       else
+               if (wsize != sizeof(HASHHDR)) {
+                       errno = EFTYPE;
+-                      hashp->errno = errno;
++                      hashp->err = errno;
+                       return (-1);
+               }
+       for (i = 0; i < NCACHED; i++)
+@@ -536,7 +536,7 @@
+       hashp = (HTAB *)dbp->internal;
+       if (flag) {
+-              hashp->errno = errno = EINVAL;
++              hashp->err = errno = EINVAL;
+               return (ERROR);
+       }
+       return (hash_access(hashp, HASH_GET, (DBT *)key, data));
+@@ -553,11 +553,11 @@
+       hashp = (HTAB *)dbp->internal;
+       if (flag && flag != R_NOOVERWRITE) {
+-              hashp->errno = errno = EINVAL;
++              hashp->err = errno = EINVAL;
+               return (ERROR);
+       }
+       if ((hashp->flags & O_ACCMODE) == O_RDONLY) {
+-              hashp->errno = errno = EPERM;
++              hashp->err = errno = EPERM;
+               return (ERROR);
+       }
+       return (hash_access(hashp, flag == R_NOOVERWRITE ?
+@@ -574,11 +574,11 @@
+       hashp = (HTAB *)dbp->internal;
+       if (flag && flag != R_CURSOR) {
+-              hashp->errno = errno = EINVAL;
++              hashp->err = errno = EINVAL;
+               return (ERROR);
+       }
+       if ((hashp->flags & O_ACCMODE) == O_RDONLY) {
+-              hashp->errno = errno = EPERM;
++              hashp->err = errno = EPERM;
+               return (ERROR);
+       }
+       return (hash_access(hashp, HASH_DELETE, (DBT *)key, NULL));
+@@ -729,7 +729,7 @@
+       hashp = (HTAB *)dbp->internal;
+       if (flag && flag != R_FIRST && flag != R_NEXT) {
+-              hashp->errno = errno = EINVAL;
++              hashp->err = errno = EINVAL;
+               return (ERROR);
+       }
+ #ifdef HASH_STATISTICS
+--- db.1.85/hash/ndbm.c        Mon Feb 18 19:12:58 2002
++++ db.1.85/hash/ndbm.c        Mon Feb 18 19:13:05 2002
+@@ -180,7 +180,7 @@
+       HTAB *hp;
+       hp = (HTAB *)db->internal;
+-      return (hp->errno);
++      return (hp->err);
+ }
+ extern int
+@@ -190,7 +190,7 @@
+       HTAB *hp;
+       hp = (HTAB *)db->internal;
+-      hp->errno = 0;
++      hp->err = 0;
+       return (0);
+ }
diff --git a/packaging/db-4.5.20-jni-include-dir.patch b/packaging/db-4.5.20-jni-include-dir.patch
new file mode 100644 (file)
index 0000000..b0881c3
--- /dev/null
@@ -0,0 +1,12 @@
+diff -up db-4.7.25/dist/configure.ac.jni db-4.7.25/dist/configure.ac
+--- db-4.7.25/dist/configure.ac.jni    2008-08-20 14:22:59.000000000 +0200
++++ db-4.7.25/dist/configure.ac        2008-08-20 14:23:39.000000000 +0200
+@@ -418,7 +418,7 @@ if test "$db_cv_java" = "yes"; then
+       AC_PROG_JAVAC
+       AC_PROG_JAR
+       AC_PROG_JAVA
+-      AC_JNI_INCLUDE_DIR
++      JNI_INCLUDE_DIRS="/usr/lib/jvm/java/include /usr/lib/jvm/java/include/linux"
+       AC_MSG_CHECKING(java version)
+         case "$JAVA" in
diff --git a/packaging/db-4.6.21-1.85-compat.patch b/packaging/db-4.6.21-1.85-compat.patch
new file mode 100644 (file)
index 0000000..62ae950
--- /dev/null
@@ -0,0 +1,14 @@
+diff -up db-5.1.19/dist/Makefile.in.185compat db-5.1.19/dist/Makefile.in
+--- db-5.1.19/dist/Makefile.in.185compat       2010-08-27 17:08:03.000000000 +0200
++++ db-5.1.19/dist/Makefile.in 2010-09-10 10:02:32.974640425 +0200
+@@ -193,8 +193,8 @@ libtso_major=      $(libtcl_base)-$(LIBMAJOR)
+ # local libraries, for example.  Do that by adding -I options to the DB185INC
+ # line, and -l options to the DB185LIB line.
+ ##################################################
+-DB185INC=     -c @CFLAGS@ -I$(topdir) @CPPFLAGS@
+-DB185LIB=
++DB185INC=     -c @CFLAGS@ -I$(srcdir) -I$(srcdir)/db.1.85/PORT/linux/include @CPPFLAGS@
++DB185LIB=     ${srcdir}/db.1.85/PORT/linux/libdb.a
+ ##################################################
+ # Performance Event Monitoring definitions
diff --git a/packaging/libdb-multiarch.patch b/packaging/libdb-multiarch.patch
new file mode 100644 (file)
index 0000000..f0e6ff6
--- /dev/null
@@ -0,0 +1,12 @@
+diff -up db-5.3.15/dist/aclocal/sequence.m4.multiarch db-5.3.15/dist/aclocal/sequence.m4
+--- db-5.3.15/dist/aclocal/sequence.m4.multiarch       2010-06-25 17:50:36.000000000 +0200
++++ db-5.3.15/dist/aclocal/sequence.m4 2011-12-20 02:00:49.000000000 +0100
+@@ -78,7 +78,7 @@ AC_DEFUN(AM_SEQUENCE_CONFIGURE, [
+       fi
+       if test "$db_cv_build_sequence" = "yes"; then
+               AC_SUBST(db_seq_decl)
+-              db_seq_decl="typedef $db_cv_seq_type db_seq_t;";
++              db_seq_decl="typedef int64_t db_seq_t;";
+               AC_DEFINE(HAVE_64BIT_TYPES)
+               AH_TEMPLATE(HAVE_64BIT_TYPES,
diff --git a/packaging/libdb.changes b/packaging/libdb.changes
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packaging/libdb.manifest b/packaging/libdb.manifest
new file mode 100644 (file)
index 0000000..017d22d
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+    <domain name="_"/>
+ </request>
+</manifest>
diff --git a/packaging/libdb.spec b/packaging/libdb.spec
new file mode 100644 (file)
index 0000000..5cb3a27
--- /dev/null
@@ -0,0 +1,401 @@
+%define __soversion_major 5
+%define __soversion %{__soversion_major}.3
+
+Summary: The Berkeley DB database library for C
+Name: libdb
+Version: 5.3.21
+Release: 11
+Source0: http://download.oracle.com/berkeley-db/db-%{version}.tar.gz
+Patch0: libdb-multiarch.patch
+# db-1.85 upstream patches
+Patch10: http://www.oracle.com/technology/products/berkeley-db/db/update/1.85/patch.1.1
+Patch11: http://www.oracle.com/technology/products/berkeley-db/db/update/1.85/patch.1.2
+Patch12: http://www.oracle.com/technology/products/berkeley-db/db/update/1.85/patch.1.3
+Patch13: http://www.oracle.com/technology/products/berkeley-db/db/update/1.85/patch.1.4
+# other patches
+Patch20: db-1.85-errno.patch
+Patch22: db-4.6.21-1.85-compat.patch
+Patch24: db-4.5.20-jni-include-dir.patch
+# License clarification patch
+# http://devel.trisquel.info/gitweb/?p=package-helpers.git;a=blob;f=helpers/DATA/db4.8/007-mt19937db.c_license.patch;h=1036db4d337ce4c60984380b89afcaa63b2ef88f;hb=df48d40d3544088338759e8bea2e7f832a564d48
+Patch25: 007-mt19937db.c_license.patch
+URL: http://www.oracle.com/database/berkeley-db/
+License: BSD-3-Clause and LGPL-2.0+
+Group: System/Libraries
+BuildRequires: perl libtool
+BuildRequires: tcl-devel >= 8.5.2-3
+BuildRequires: java-devel >= 1:1.6.0
+BuildRequires: chrpath
+Conflicts: filesystem < 3
+
+%description
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. The Berkeley DB includes B+tree, Extended
+Linear Hashing, Fixed and Variable-length record access methods,
+transactions, locking, logging, shared memory caching, and database
+recovery. The Berkeley DB supports C, C++, Java, and Perl APIs. It is
+used by many applications, including Python and Perl, so this should
+be installed on all systems.
+
+%package utils
+Summary: Command line tools for managing Berkeley DB databases
+Group: Applications/Core Applications
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description utils
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. Berkeley DB includes B+tree, Extended
+Linear Hashing, Fixed and Variable-length record access methods,
+transactions, locking, logging, shared memory caching, and database
+recovery. DB supports C, C++, Java and Perl APIs.
+
+%package devel
+Summary: C development files for the Berkeley DB library
+Group: Development/Libraries
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains the header files,
+libraries, and documentation for building programs which use the
+Berkeley DB.
+
+%package devel-doc
+Summary: C development documentation files for the Berkeley DB library
+Group: Documentation
+Requires: %{name} = %{version}-%{release}
+Requires: %{name}-devel = %{version}-%{release}
+BuildArch: noarch
+
+%description devel-doc
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains the header files,
+libraries, and documentation for building programs which use the
+Berkeley DB.
+
+%package devel-static
+Summary: Berkeley DB static libraries
+Group: Development/Libraries
+Requires: %{name}-devel%{?_isa} = %{version}-%{release}
+
+%description devel-static
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains static libraries
+needed for applications that require static linking of
+Berkeley DB.
+
+%package cxx
+Summary: The Berkeley DB database library for C++
+Group: System/Libraries
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description cxx
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. The Berkeley DB includes B+tree, Extended
+Linear Hashing, Fixed and Variable-length record access methods,
+transactions, locking, logging, shared memory caching, and database
+recovery. The Berkeley DB supports C, C++, Java, and Perl APIs. It is
+used by many applications, including Python and Perl, so this should
+be installed on all systems.
+
+%package cxx-devel
+Summary: The Berkeley DB database library for C++
+Group: System/Libraries
+Requires: %{name}-cxx%{?_isa} = %{version}-%{release}
+Requires: %{name}-devel%{?_isa} = %{version}-%{release}
+
+%description cxx-devel
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. The Berkeley DB includes B+tree, Extended
+Linear Hashing, Fixed and Variable-length record access methods,
+transactions, locking, logging, shared memory caching, and database
+recovery. The Berkeley DB supports C, C++, Java, and Perl APIs. It is
+used by many applications, including Python and Perl, so this should
+be installed on all systems.
+
+%package tcl
+Summary: Development files for using the Berkeley DB with tcl
+Group: Development/Libraries
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description tcl
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains the libraries
+for building programs which use the Berkeley DB in Tcl.
+
+%package tcl-devel
+Summary: Development files for using the Berkeley DB with tcl
+Group: Development/Libraries
+Requires: %{name}-tcl%{?_isa} = %{version}-%{release}
+
+%description tcl-devel
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains the libraries
+for building programs which use the Berkeley DB in Tcl.
+
+%package sql
+Summary: Development files for using the Berkeley DB with sql
+Group: Development/Libraries
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description sql
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains the libraries
+for building programs which use the Berkeley DB in SQL.
+
+%package sql-devel
+Summary: Development files for using the Berkeley DB with sql
+Group: Development/Libraries
+Requires: %{name}-sql%{?_isa} = %{version}-%{release}
+
+%description sql-devel
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains the libraries
+for building programs which use the Berkeley DB in SQL.
+
+%package java
+Summary: Development files for using the Berkeley DB with Java
+Group: Development/Libraries
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description java
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains the libraries
+for building programs which use the Berkeley DB in Java.
+
+%package java-devel
+Summary: Development files for using the Berkeley DB with Java
+Group: Development/Libraries
+Requires: %{name}-java%{?_isa} = %{version}-%{release}
+
+%description java-devel
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. This package contains the libraries
+for building programs which use the Berkeley DB in Java.
+
+%prep
+%setup -q -n db-%{version}
+
+%patch0 -p1 -b .multiarch
+pushd db.1.85/PORT/linux
+%patch10 -p0 -b .1.1
+popd
+pushd db.1.85
+%patch11 -p0 -b .1.2
+%patch12 -p0 -b .1.3
+%patch13 -p0 -b .1.4
+%patch20 -p1 -b .errno
+popd
+
+%patch22 -p1 -b .185compat
+%patch24 -p1 -b .4.5.20.jni
+%patch25 -p1 -b .licensefix
+
+cd dist
+./s_config
+
+%build
+CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
+CFLAGS="$CFLAGS -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_DISABLE_DIRSYNC=1 -DSQLITE_ENABLE_FTS3=3 -DSQLITE_ENABLE_RTREE=1 -DSQLITE_SECURE_DELETE=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 -I../../../lang/sql/sqlite/ext/fts3/"
+export CFLAGS
+
+# Build the old db-185 libraries.
+make -C db.1.85/PORT/%{_os} OORG="$CFLAGS"
+
+test -d dist/dist-tls || mkdir dist/dist-tls
+# Static link db_dump185 with old db-185 libraries.
+/bin/sh libtool --tag=CC --mode=compile        %{__cc} $RPM_OPT_FLAGS -Idb.1.85/PORT/%{_os}/include -D_REENTRANT -c util/db_dump185.c -o dist/dist-tls/db_dump185.lo
+/bin/sh libtool --tag=LD --mode=link %{__cc} -o dist/dist-tls/db_dump185 dist/dist-tls/db_dump185.lo db.1.85/PORT/%{_os}/libdb.a
+
+pushd dist/dist-tls
+ln -sf ../configure .
+%configure -C \
+       --enable-compat185 --enable-dump185 \
+       --enable-shared --enable-static \
+       --enable-tcl --with-tcl=%{_libdir} \
+       --enable-cxx --enable-sql \
+       --enable-java \
+       --enable-test \
+       --disable-rpath \
+       --with-tcl=%{_libdir}/tcl8.5
+
+# Remove libtool predep_objects and postdep_objects wonkiness so that
+# building without -nostdlib doesn't include them twice.  Because we
+# already link with g++, weird stuff happens if you don't let the
+# compiler handle this.
+perl -pi -e 's/^predep_objects=".*$/predep_objects=""/' libtool
+perl -pi -e 's/^postdep_objects=".*$/postdep_objects=""/' libtool
+perl -pi -e 's/-shared -nostdlib/-shared/' libtool
+
+make %{?_smp_mflags}
+
+# XXX hack around libtool not creating ./libs/libdb_java-X.Y.lai
+LDBJ=./.libs/libdb_java-%{__soversion}.la
+if test -f ${LDBJ} -a ! -f ${LDBJ}i; then
+       sed -e 's,^installed=no,installed=yes,' < ${LDBJ} > ${LDBJ}i
+fi
+popd
+
+%install
+rm -rf ${RPM_BUILD_ROOT}
+mkdir -p ${RPM_BUILD_ROOT}%{_includedir}
+mkdir -p ${RPM_BUILD_ROOT}%{_libdir}
+
+# Force off stripping of installed binaries
+%makeinstall STRIP=/bin/true -C dist/dist-tls
+
+# XXX Nuke non-versioned archives and symlinks
+rm -f ${RPM_BUILD_ROOT}%{_libdir}/{libdb.a,libdb_cxx.a,libdb_tcl.a,libdb_sql.a}
+
+chmod +x ${RPM_BUILD_ROOT}%{_libdir}/*.so*
+
+# Move the header files to a subdirectory, in case we're deploying on a
+# system with multiple versions of DB installed.
+mkdir -p ${RPM_BUILD_ROOT}%{_includedir}/%{name}
+mv ${RPM_BUILD_ROOT}%{_includedir}/*.h ${RPM_BUILD_ROOT}%{_includedir}/%{name}/
+
+# Create symlinks to includes so that "use <db.h> and link with -ldb" works.
+for i in db.h db_cxx.h db_185.h; do
+       ln -s %{name}/$i ${RPM_BUILD_ROOT}%{_includedir}
+done
+
+# Move java jar file to the correct place
+mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/java
+mv ${RPM_BUILD_ROOT}%{_libdir}/*.jar ${RPM_BUILD_ROOT}%{_datadir}/java
+
+# Eliminate installed doco
+rm -rf ${RPM_BUILD_ROOT}%{_prefix}/docs
+
+# XXX Avoid Permission denied. strip when building as non-root.
+chmod u+w ${RPM_BUILD_ROOT}%{_bindir} ${RPM_BUILD_ROOT}%{_bindir}/*
+
+# remove unneeded .la files (#225675)
+rm -f ${RPM_BUILD_ROOT}%{_libdir}/*.la
+
+# remove RPATHs
+chrpath -d ${RPM_BUILD_ROOT}%{_libdir}/*.so ${RPM_BUILD_ROOT}%{_bindir}/*
+
+# unify documentation and examples, remove stuff we don't need
+rm -rf docs/csharp
+rm -rf examples/csharp
+rm -rf docs/installation
+mv examples docs
+
+%clean
+rm -rf ${RPM_BUILD_ROOT}
+
+%post -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+
+%post -p /sbin/ldconfig cxx
+
+%postun -p /sbin/ldconfig cxx
+
+%post -p /sbin/ldconfig sql
+
+%postun -p /sbin/ldconfig sql
+
+%post -p /sbin/ldconfig tcl
+
+%postun -p /sbin/ldconfig tcl
+
+%post -p /sbin/ldconfig java
+
+%postun -p /sbin/ldconfig java
+
+%files
+%defattr(-,root,root,-)
+%doc LICENSE README
+%{_libdir}/libdb-%{__soversion}.so
+%{_libdir}/libdb-%{__soversion_major}.so
+
+%files devel
+%defattr(-,root,root,-)
+%{_libdir}/libdb.so
+%dir %{_includedir}/%{name}
+%{_includedir}/%{name}/db.h
+%{_includedir}/%{name}/db_185.h
+%{_includedir}/db.h
+%{_includedir}/db_185.h
+
+%files devel-doc
+%defattr(-,root,root,-)
+%doc   docs/*
+
+%files devel-static
+%defattr(-,root,root,-)
+%{_libdir}/libdb-%{__soversion}.a
+%{_libdir}/libdb_cxx-%{__soversion}.a
+%{_libdir}/libdb_tcl-%{__soversion}.a
+%{_libdir}/libdb_sql-%{__soversion}.a
+%{_libdir}/libdb_java-%{__soversion}.a
+
+%files utils
+%defattr(-,root,root,-)
+%{_bindir}/db*_archive
+%{_bindir}/db*_checkpoint
+%{_bindir}/db*_deadlock
+%{_bindir}/db*_dump*
+%{_bindir}/db*_hotbackup
+%{_bindir}/db*_load
+%{_bindir}/db*_printlog
+%{_bindir}/db*_recover
+%{_bindir}/db*_replicate
+%{_bindir}/db*_stat
+%{_bindir}/db*_upgrade
+%{_bindir}/db*_verify
+%{_bindir}/db*_tuner
+
+%files cxx
+%defattr(-,root,root,-)
+%{_libdir}/libdb_cxx-%{__soversion}.so
+%{_libdir}/libdb_cxx-%{__soversion_major}.so
+
+%files cxx-devel
+%defattr(-,root,root,-)
+%{_includedir}/%{name}/db_cxx.h
+%{_includedir}/db_cxx.h
+%{_libdir}/libdb_cxx.so
+
+%files tcl
+%defattr(-,root,root,-)
+%{_libdir}/libdb_tcl-%{__soversion}.so
+%{_libdir}/libdb_tcl-%{__soversion_major}.so
+
+%files tcl-devel
+%defattr(-,root,root,-)
+%{_libdir}/libdb_tcl.so
+
+%files sql
+%defattr(-,root,root,-)
+%{_libdir}/libdb_sql-%{__soversion}.so
+%{_libdir}/libdb_sql-%{__soversion_major}.so
+
+%files sql-devel
+%defattr(-,root,root,-)
+%{_bindir}/dbsql
+%{_libdir}/libdb_sql.so
+%{_includedir}/%{name}/dbsql.h
+
+%files java
+%defattr(-,root,root,-)
+%{_libdir}/libdb_java-%{__soversion_major}*.so
+%{_datadir}/java/*.jar
+
+%files java-devel
+%defattr(-,root,root,-)
+%{_libdir}/libdb_java.so
diff --git a/packaging/patch.1.1 b/packaging/patch.1.1
new file mode 100644 (file)
index 0000000..fe3177d
--- /dev/null
@@ -0,0 +1,20 @@
+*** Makefile.orig      Wed Jul 13 21:43:16 1994
+--- Makefile   Wed Dec 31 19:00:00 1969
+***************
+*** 15,22 ****
+  
+  ${LIBDB}: ${OBJ1} ${OBJ2} ${OBJ3} ${OBJ4} ${OBJ5} ${MISC}
+       rm -f $@
+!      ar cq $@ \
+!          `lorder ${OBJ1} ${OBJ2} ${OBJ3} ${OBJ4} ${OBJ5} ${MISC} | tsort`
+       ranlib $@
+  
+  clean:
+--- 15,21 ----
+  
+  ${LIBDB}: ${OBJ1} ${OBJ2} ${OBJ3} ${OBJ4} ${OBJ5} ${MISC}
+       rm -f $@
+!      ar cq $@ ${OBJ1} ${OBJ2} ${OBJ3} ${OBJ4} ${OBJ5} ${MISC}
+       ranlib $@
+  
+  clean:
diff --git a/packaging/patch.1.2 b/packaging/patch.1.2
new file mode 100644 (file)
index 0000000..a343909
--- /dev/null
@@ -0,0 +1,19 @@
+*** btree/bt_split.c   Tue Jul 26 14:22:02 1994
+--- btree/bt_split.c   Sat Jan  4 14:38:55 1997
+***************
+*** 673,679 ****
+                * where we decide to try and copy too much onto the left page.
+                * Make sure that doesn't happen.
+                */
+!              if (skip <= off && used + nbytes >= full) {
+                       --off;
+                       break;
+               }
+--- 673,679 ----
+                * where we decide to try and copy too much onto the left page.
+                * Make sure that doesn't happen.
+                */
+!              if (skip <= off && used + nbytes >= full || nxt == top - 1) {
+                       --off;
+                       break;
+               }
diff --git a/packaging/patch.1.3 b/packaging/patch.1.3
new file mode 100644 (file)
index 0000000..5ca03df
--- /dev/null
@@ -0,0 +1,37 @@
+*** btree/bt_split.c.orig      Sat Feb  8 10:14:10 1997
+--- btree/bt_split.c   Sat Feb  8 10:14:51 1997
+***************
+*** 673,679 ****
+                * where we decide to try and copy too much onto the left page.
+                * Make sure that doesn't happen.
+                */
+!              if (skip <= off && used + nbytes >= full || nxt == top - 1) {
+                       --off;
+                       break;
+               }
+--- 673,680 ----
+                * where we decide to try and copy too much onto the left page.
+                * Make sure that doesn't happen.
+                */
+!              if (skip <= off &&
+!                  used + nbytes + sizeof(indx_t) >= full || nxt == top - 1) {
+                       --off;
+                       break;
+               }
+***************
+*** 686,692 ****
+                       memmove((char *)l + l->upper, src, nbytes);
+               }
+  
+!              used += nbytes;
+               if (used >= half) {
+                       if (!isbigkey || bigkeycnt == 3)
+                               break;
+--- 687,693 ----
+                       memmove((char *)l + l->upper, src, nbytes);
+               }
+  
+!              used += nbytes + sizeof(indx_t);
+               if (used >= half) {
+                       if (!isbigkey || bigkeycnt == 3)
+                               break;
diff --git a/packaging/patch.1.4 b/packaging/patch.1.4
new file mode 100644 (file)
index 0000000..cec5fbc
--- /dev/null
@@ -0,0 +1,22 @@
+*** btree/bt_page.c.orig       Wed Jul 13 21:29:02 1994
+--- btree/bt_page.c    Wed Jun 11 20:14:43 1997
+***************
+*** 65,70 ****
+--- 65,71 ----
+       h->prevpg = P_INVALID;
+       h->nextpg = t->bt_free;
+       t->bt_free = h->pgno;
++      F_SET(t, B_METADIRTY);
+  
+       /* Make sure the page gets written back. */
+       return (mpool_put(t->bt_mp, h, MPOOL_DIRTY));
+***************
+*** 92,97 ****
+--- 93,99 ----
+           (h = mpool_get(t->bt_mp, t->bt_free, 0)) != NULL) {
+               *npg = t->bt_free;
+               t->bt_free = h->nextpg;
++              F_SET(t, B_METADIRTY);
+               return (h);
+       }
+       return (mpool_new(t->bt_mp, npg));