From: Eduardo Lima (Etrunko) Date: Wed, 11 Dec 2013 13:22:06 +0000 (-0200) Subject: Added tizen packaging X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;ds=inline;h=82b3c70f5d86cbd304d5efd505b0dda2a957f85a;p=platform%2Fupstream%2Flibdb.git Added tizen packaging Signed-off-by: Eduardo Lima (Etrunko) --- diff --git a/packaging/007-mt19937db.c_license.patch b/packaging/007-mt19937db.c_license.patch new file mode 100644 index 0000000..eab05d7 --- /dev/null +++ b/packaging/007-mt19937db.c_license.patch @@ -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 + + +--- 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 index 0000000..ccc9ddf --- /dev/null +++ b/packaging/db-1.85-errno.patch @@ -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 index 0000000..b0881c3 --- /dev/null +++ b/packaging/db-4.5.20-jni-include-dir.patch @@ -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 index 0000000..62ae950 --- /dev/null +++ b/packaging/db-4.6.21-1.85-compat.patch @@ -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 index 0000000..f0e6ff6 --- /dev/null +++ b/packaging/libdb-multiarch.patch @@ -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 index 0000000..e69de29 diff --git a/packaging/libdb.manifest b/packaging/libdb.manifest new file mode 100644 index 0000000..017d22d --- /dev/null +++ b/packaging/libdb.manifest @@ -0,0 +1,5 @@ + + + + + diff --git a/packaging/libdb.spec b/packaging/libdb.spec new file mode 100644 index 0000000..5cb3a27 --- /dev/null +++ b/packaging/libdb.spec @@ -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 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 index 0000000..fe3177d --- /dev/null +++ b/packaging/patch.1.1 @@ -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 index 0000000..a343909 --- /dev/null +++ b/packaging/patch.1.2 @@ -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 index 0000000..5ca03df --- /dev/null +++ b/packaging/patch.1.3 @@ -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 index 0000000..cec5fbc --- /dev/null +++ b/packaging/patch.1.4 @@ -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));