Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.1
libdb-4_5
libdb-4_5.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libdb-4_5.spec of Package libdb-4_5
# # spec file for package libdb-4_5 (Version 4.5.20) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: libdb-4_5 %define generic_name db %define docdir %{_defaultdocdir}/%{name} %define source_dir %{_datadir}/%{name}-source Version: 4.5.20 Release: 94 %define major 4 %define minor 5 Summary: Berkeley DB Database Library Version 4.5 Source: db-%{version}.tar.bz2 Url: http://www.sleepycat.com Patch0: patch.%{version}.1 Patch1: patch.%{version}.2 Patch2: db-%{version}.dif License: BSD 3-Clause Group: System/Libraries BuildRoot: %{_tmppath}/%{name}-%{version}-build Prefix: %{_prefix} Provides: db = %{version} %description The Berkeley DB Database is a programmatic toolkit that provides database support for applications. This package contains the necessary runtime libraries. %package -n db-utils-doc License: BSD 3-Clause Summary: Documentation for the Command Line tools for Managing Berkeley DB Databases Group: Productivity/Databases/Tools Prefix: %{_prefix} Requires: db = %{version} %description -n db-utils-doc The Berkeley DB Database is a programmatic toolkit that provides database support for applications. This package contains the documentation for the command line tools for managing Berkeley DB databases. %package -n db-utils License: BSD 3-Clause Summary: Command Line tools for Managing Berkeley DB Databases Group: Productivity/Databases/Tools Prefix: %{_prefix} Requires: db = %{version} %description -n db-utils The Berkeley DB Database is a programmatic toolkit that provides database support for applications. This package contains the command line tools for managing Berkeley DB databases. %package -n db-doc License: BSD 3-Clause Summary: Documentation for Berkeley DB Group: Development/Libraries/C and C++ Prefix: %{_prefix} %description -n db-doc The Berkeley DB Database is a programmatic toolkit that provides database support for applications. This package contains the documentation. %package devel License: BSD 3-Clause Summary: Development Files and Libraries for the old Berkeley DB library Version 4.5 Group: Development/Libraries/C and C++ Prefix: %{_prefix} Requires: db = %{version} glibc-devel Provides: db-devel = %{version} %description devel The Berkeley DB Database is a programmatic toolkit that provides database support for applications. This package contains the header files and libraries. %prep %setup -q -n %{generic_name}-%{version} %patch %patch1 %patch2 cd .. tar -jcf %{generic_name}-%{version}.tar.bz2 %{generic_name}-%{version} %build cd dist ./s_config CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" CC=gcc export CFLAGS CXXFLAGS CC # # Build now the NPTL version # mkdir ../build_nptl cd ../build_nptl ../dist/configure --prefix=%{_prefix} \ --libdir=%{_libdir} --enable-compat185 --disable-dump185 \ --enable-shared --enable-static --enable-rpc --disable-cxx \ --with-mutex="POSIX/pthreads/library" \ %{_target_cpu}-suse-linux # Make sure O_DIRECT is really disabled (build host could have old kernel) perl -pi -e 's/#define HAVE_O_DIRECT 1/#undef HAVE_O_DIRECT/' db_config.h # Remove libtool predep_objects and postdep_objects wonkiness 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 LIBSO_LIBS='$(LIBS)' LIBXSO_LIBS='$(LIBS)'" -L%{_libdir} -lstdc++" %install mkdir -p ${RPM_BUILD_ROOT}%{_includedir}/db4 #mkdir -p ${RPM_BUILD_ROOT}% {source_dir}/ # #cp % {_builddir}/% {generic_name}-% {version}.tar.bz2 ${RPM_BUILD_ROOT}% {source_dir}/ #mkdir -p $RPM_BUILD_ROOT/% {_defaultdocdir}/% {name}-source #cat >>$RPM_BUILD_ROOT/% {_defaultdocdir}/% {name}-source/README<<EOF #The patches in this directory were applied to the sources. #The sources were installed to: #% {source_dir}/% {generic_name}-% {version}.tar.bz2 #EOF CONFIG_ARGS=$(find . -name "config.log" -exec grep "\$ \.\./dist\/configure" {} \; | sed 's/.*configure\( --.*\)/\1/g') if [ -z "$CONFIG_ARGS" ] then echo "could not find configure arguments ... exiting" exit 42 fi #echo $CONFIG_ARGS >> $RPM_BUILD_ROOT/% {_defaultdocdir}/% {name}-source/configure_args.txt #cp % {_sourcedir}/*patch* $RPM_BUILD_ROOT/% {_defaultdocdir}/% {name}-source || true #cp % {_sourcedir}/*.dif* $RPM_BUILD_ROOT/% {_defaultdocdir}/% {name}-source || true # mkdir -p ${RPM_BUILD_ROOT}%{_prefix}/%{_lib} cd build_nptl make prefix=${RPM_BUILD_ROOT}%{_prefix} libdir=${RPM_BUILD_ROOT}%{_libdir} strip=true install cd .. # make ldd happy: chmod 755 $RPM_BUILD_ROOT%{_libdir}/libdb*.so # Fix header file installation mv ${RPM_BUILD_ROOT}%{_includedir}/*.h ${RPM_BUILD_ROOT}%{_includedir}/db4 echo "#include <db4/db.h>" > ${RPM_BUILD_ROOT}%{_includedir}/db.h echo "#include <db4/db_185.h>" > ${RPM_BUILD_ROOT}%{_includedir}/db_185.h rm -f ${RPM_BUILD_ROOT}%{_includedir}/db4/db_cxx.h # remove dangling tags symlink from examples. rm -f examples_cxx/tags rm -f examples_c/tags # Move documentation to the right directory mkdir -p $RPM_BUILD_ROOT%{docdir} mv $RPM_BUILD_ROOT%{_prefix}/docs/* $RPM_BUILD_ROOT/%{docdir} cp -a examples_cxx examples_c $RPM_BUILD_ROOT/%{docdir} cp -a LICENSE README $RPM_BUILD_ROOT/%{docdir} # # Remove api documentation for Java and TCL rm -rf $RPM_BUILD_ROOT/%{docdir}/java rm -rf $RPM_BUILD_ROOT/%{docdir}/api_java rm -rf $RPM_BUILD_ROOT/%{docdir}/api_tcl mv $RPM_BUILD_ROOT/%{docdir}/collections/tutorial $RPM_BUILD_ROOT/%{docdir}/ # Remove crappy *.la files rm -rf $RPM_BUILD_ROOT%{_libdir}/*.la rm -rf $RPM_BUILD_ROOT%{_libdir}/tls/*.la %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %clean rm -rf ${RPM_BUILD_ROOT} %files %defattr(-,root,root) %{_libdir}/libdb-%{major}.%{minor}.so %files -n db-doc %defattr(-,root,root) %dir %{docdir} %doc %{docdir}/LICENSE %doc %{docdir}/README %doc %{docdir}/index.html %doc %{docdir}/license %doc %{docdir}/images %doc %{docdir}/api_c %doc %{docdir}/api_cxx %doc %{docdir}/gsg* %doc %{docdir}/ref %doc %{docdir}/examples_c %doc %{docdir}/examples_cxx %doc %{docdir}/tutorial %files -n db-utils-doc %defattr(-,root,root) %doc %{docdir}/utility %files -n db-utils %defattr(-,root,root) %{_bindir}/berkeley_db_svc %{_bindir}/db_archive %{_bindir}/db_checkpoint %{_bindir}/db_deadlock %{_bindir}/db_dump %{_bindir}/db_load %{_bindir}/db_printlog %{_bindir}/db_recover %{_bindir}/db_stat %{_bindir}/db_upgrade %{_bindir}/db_verify %{_bindir}/db_hotbackup %files devel %defattr(-,root,root) %dir %{_includedir}/db4 %{_includedir}/db.h %{_includedir}/db_185.h %{_includedir}/db4/db.h %{_includedir}/db4/db_185.h %{_libdir}/libdb.so %{_libdir}/libdb.a %{_libdir}/libdb-%{major}.%{minor}.a %{_libdir}/libdb-%{major}.so #% files source #% defattr(-,root,root) #% {_defaultdocdir}/% {name}-source #% {source_dir} # %changelog * Fri Nov 21 2008 ro@suse.de - update check-build.sh * Fri Jun 27 2008 schwab@suse.de - Fix configure script. * Thu Apr 10 2008 ro@suse.de - added baselibs.conf file to build xxbit packages for multilib support * Tue May 15 2007 kesselborn@suse.de - copied spec file from db44 - changed package structure to: db-doc db-utils db-utils-doc libdb-4_5 libdb-4_5 - update to version 4.5: Database or Log File On-Disk Format Changes: None New Features: 1. A new event style notification. 2. Multi-Version Concurrency Control for the Btree/Recno access methods. 3. A new replication framework with a default TCP/IP setup. 4. A new port to the BREW platform (a cell phone OS), not fully supported but ready for testing. 5. Several enhancements to the Java Collections API including the implementation of the size() method. 6. Online replication upgrades for high availability replicated 24/7 systems. Database Environment Changes: 1. Update the DB_ENV->failchk method to garbage collect per-process mutexes stranded after unexpected process failure. [#13964] 2. Fix a bug that could cause memory used to track threads for DB_ENV->failchk to not be reused when a thread no longer exists. [#14425] 3. Add set_event_notify behavior as part of new event notification in Berkeley DB. [#14534] 4. Fix a bug so that we no longer panic on DB_ENV->close() if a previous environment close failed to log. This condition will now return an error. [#14693] Concurrent Data Store Changes: 1. Fix a bug where renaming a subdatabase in a Concurrent Data Store environment could fail. [#14185] General Access Method Changes: 1. Fix a bug that could leave extra unallocated pages at the end of a database file. [#14031] 2. Optimize secondary updates when overwriting primary records. [#14075] 3. Fix a bug to prevent a trap when creating a named in-memory database and there are already temporary files open. [#14133] 4. Fix a bug which caused a trap if the key parameter to DBC->c_get was omitted with DB_CURRENT. [#14143] 5. Fix a bug with secondary cursors when the secondary has off-page duplicates. This bug resulted in incorrect primary data being returned. [#14240] 6. Fix a bug that would not properly upgrade database files from releases 3.2.9 (and earlier) to releases 4.0 (and greater). [#14461] 7. Fix a bug that could cause a DB_READ_UNCOMMITTED get through a secondary index to return DB_SECONDARY_CORRUPT. [#14487] 8. Fix a bug so that non-transactional cursor updates of a transactional database will generate an error. [#14519] 9. Add a message when the system panics due to a page in the wrong state at its time of allocation. [#14527] Btree Access Method Changes: 1. Fix a bug that could cause a diagnostic assertion by setting the deleted bit on a record in an internal node. [#13944] 2. Fix 3 problems in BTREE compaction: [#14238] 1. When deleting a page don't check the next key in the parent if we are going to delete the parent too. 2. Need to check that the tree has not collapsed between dropping a read lock and getting the write lock. If it has collapsed we will fetch the root of the tree. 3. Fix a case where we fail to lock the next page before reading it. 3. Fix a bug that could cause the compaction of a Btree with sorted duplicates to fail when attempting to compact an off page duplicate tree if a key could not fit in an internal node. [#14771] 4. Fix a bug that causes a loop if an empty Btree was compacted. [#14493] Hash Access Method Changes: 1. Fix a bug that could cause corruption in queue extent files if multiple processes tried to open the same extent at the same time. [#14438] Queue Access Method Changes: 1. Fix a bug that caused locks not maintained where queue records were read but not present in the queue at the end of a transaction, therefore violating serializability. [#13719] Recno Access Method Changes: None C++-specific API Changes: 1. C++ applications that check could the error code in exceptions should note that DbMemoryException has been changed to have the error code DB_BUFFER_SMALL rather than ENOMEM, to match the error returned by the C API. DbMemoryException will be thrown when a Dbt is too small to contain data returned by Berkeley DB. When a call to malloc fails, or some other resource is exhausted, a plain DbException will be thrown with error code set to ENOMEM. [#13939] Java-specific API Changes: 1. Database.verify may now be called. This method is now static and takes a DatabaseConfig parameter. [#13971] 2. Add DB_ENV->{fileid_reset, lsn_reset} to the public API. [#14076] Java collections and bind API Changes: 1. The com.sleepycat.collections package is now fully compatible with the Java Collections framework. [#14732] Tcl-specific API Changes: None RPC-specific Client/Server Changes: None Replication Changes: 1. Fix a bug so that internal init will remove client databases at the start of internal init. [#14147] 2. Fix a bug in replication internal init so that using data_dir will be handled correctly. Make internal init resilient to multiple data_dir calls with the same directory. [#14489] 3. Fix a bug in the 4.2 sync-up algorithm that could result in no open files. [#14552] 4. Fix a bug where a PERM bulk buffer could have a zero LSN passed to the application callback. [#14675] 5. Change names of some existing replication API methods as described in "Replication Method Naming" page of the "Upgrading Berkeley DB Applications to Release 4.5" section of Berkeley DB Reference Guide. [#14723] 6. Fix a bug which could cause an election to succeed only after waiting for the timeout to expire, even when all sites responded in a timely manner. The bug was most easily visible in an election between 2 sites. [#14752] XA Resource Manager Changes: None Locking Subsystem Changes: 1. Fix a bug that could cause a writer to hang if readuncommitted is enabled and it tries to reacquire a write lock. [#14919] Logging Subsystem Changes: 1. Fix a bug so that log headers are now included in the check sum. This avoids a possible race in doing hot backups. [#11636]. 2. Fix a bug where recovery fails if there is no disk space for the forced checkpoint that occurs at the end of processing the log. [#13986] 3. Fix a bug which could cause a page to be missing from the end of a database file if the page at the end of the file was freed while it contained data and the system was restarted prior to the log record for that free was flushed to disk. [#14090] 4. Fix a bug that could cause log files to be incorrectly removed by log_archive if it was run immediately after recovery. [#14874] Memory Pool Subsystem Changes: 1. Fix a bug that could cause corruption to the buffer pool cache if a race condition was hit while using DB->Compact. [#14360] 2. Fix a bug where cache pages could be leaked in applications creating temporary files for which the DB_MPOOL_NOFILE flag was set. [#14544] Transaction Subsystem Changes: 1. Fix a bug that could cause extra empty pages to appear in a database file after recovery. [#11118] 2. Fix a bug triggered when running recovery with a feedback function that could cause a NULL pointer dereference. [#13834] 3. Fix a bug where running recovery could create duplicate entries in the data directory list. [#13884] 4. Fix a bug to not trade locks if a write lock is already owned. [#13917] 5. Fix a bug that could cause traps or hangs if the DB_TXN->set_name function is used in a multithreaded application. [#14033] 6. Fix a bug so that a transaction can no longer be committed after it had deadlocked. [#14037] 7. Fix a bug that could cause a trap during recovery if multiple operations that could remove the same extent are recovered. [#14061] 8. Fix a bug that could cause an extent file to be deleted after the last record in the extent was consumed but the consuming transaction was aborted. [#14179] 9. Fix a bug where the parent database would not use DB_READ_UNCOMMITTED in certain cases when calling DBC->c_pget. [#14361] 10. Fix a bug so that it is no longer possible to do a non-transactional cursor update on a database that is opened transactionally. [#14519] 11. Fix a bug that causes a sequence to ignore the DB_AUTO_COMMIT settings. [#14582] 12. Fix a bug, change txn_recover so that multiple processes will recover prepared transactions without requiring that the first process stay active. [#14707] Utility Changes: 1. Fix a bug that caused db_verify to not check the order on leaf pages which were the leftmost children of an internal node. [#13004] 2. Fix a bug that caused db_hotbackup to not backup queue extent files. [#13848] 3. Fix a bug so that db_verify no longer reports that an unused hash page is not fully zeroed. [#14030] 4. Fix a bug where db_stat ignored the -f option to return "fast statistics". [#14283] 5. Fix a bug that prevented the db_stat utility from opening database files with write permission so that meta data statistics would be updated. [#14755] Configuration, Documentation, Portability and Build Changes: 1. The Berkeley DB 4.3 and 4.4 releases disallowed using the --with-uniquename configuration option with the C++, Java, or RPC --enable-XXX options. The 4.5 release returns to the 4.2 release behavior, allowing those combinations of configuration options. [#14067] 2. Fix build issues when CONFIG_TEST is not enabled for Tcl. [#14507] 3. There are updated build instructions for Berkeley DB PHP module on Linux. [#14249] 4. Use libtool's "standard" environment variable names so that you can set "AR" to "ar -X64" for example, and modify both libtool and the Makefile commands. Remove the install-strip target from the Makefile, it is no longer used. [#14726] * Fri May 04 2007 dbornkessel@suse.de - moved libdb-4.so to devel package - renamed package to db44 - cleaned up spec file * Thu Apr 19 2007 dmueller@suse.de - remove unused db_cxx libraries * Tue Mar 20 2007 rguenther@suse.de - Remove unused ed BuildRequires. * Tue Sep 12 2006 rhafer@suse.de - updated to db-4.4.20 (plus released Sleepycat patches). Most important changes: * Add support to compact an existing Btree database. * Add support for named in-memory databases. * Add support for database environment recovery serialization. * Add utility for performing hot backups of a database environment. * Add replication configuration API. - removed Assembler mutex code patch which wasn't used anymore anyways * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Fri Jan 13 2006 schwab@suse.de - Don't strip binaries. * Sun Oct 23 2005 kukuk@suse.de - Libtool is crap * Thu Oct 20 2005 kukuk@suse.de - Remove LinuxThreads support * Mon Oct 10 2005 kukuk@suse.de - Update to version 4.3.29 - Add Getting Started Guide to devel package [#117776] * Sun Sep 18 2005 kukuk@suse.de - Compile with -fno-strict-aliasing * Wed Jul 13 2005 kukuk@suse.de - Remove duplicate index.html from db-devel * Mon Jul 11 2005 kukuk@suse.de - Fix compiling with NPTL only glibc - Remove *.la files - Add glibc-devel to db-devel Requires * Thu Jun 09 2005 kukuk@suse.de - Fix compiler warnings, remove obsolete compiler flags * Tue Jan 25 2005 choeger@suse.de - Update to 4.3.27 * Thu Nov 18 2004 kukuk@suse.de - Update to 4.3.21 * Fri Sep 10 2004 kukuk@suse.de - i586 now also has NPTL support * Mon May 10 2004 kukuk@suse.de - Add libtool workaround to always get a soname [Bug #39128] * Thu Mar 25 2004 kukuk@suse.de - Add a locking fix for replication clients * Wed Mar 24 2004 meissner@suse.de - Slightly adjusted ppc locking to use isync at the right place. - actually apply Thorstens last patch. * Mon Jan 12 2004 kukuk@suse.de - Add patch to fix problem with long-running applications hanging in DB cache. * Mon Jan 12 2004 kukuk@suse.de - Add/Remove nptl libraries to/from ldconfig cache * Tue Dec 16 2003 kukuk@suse.de - Fix libtool.ac for AMD64 - Fix mutex.ac for MIPS * Mon Dec 15 2003 kukuk@suse.de - Update to version 4.2.52 - Disable MIPS patch temporary * Tue Dec 09 2003 kukuk@suse.de - Add s390 as NPTL architecture * Thu Nov 27 2003 kukuk@suse.de - Fix linking of libdb_cxx.so * Mon Nov 24 2003 kukuk@suse.de - Link non-NPTL libdb on NPTL archs against pthread library, too * Fri Nov 21 2003 kukuk@suse.de - Remove old, unused patches - Compile with no-execstack - Add db linked against nptl pthread library * Fri Oct 17 2003 adrian@suse.de - revert last change and implement fast mutexes for mips (partly taken from linux kernel source) * Wed Oct 15 2003 adrian@suse.de - use posixmutexes on mips * Wed Oct 15 2003 kukuk@suse.de - Build as non root * Thu Oct 02 2003 kukuk@suse.de - Remove ed from needed for build * Fri Sep 26 2003 kukuk@suse.de - Disable db_dump185 - Enable compiler warnings - Disable strict aliasing * Mon Jun 23 2003 meissner@suse.de - PPC needs isync after bne or it might break on SMP systems and lwsync (sync all previous memory operations) on unset. * Mon May 12 2003 kukuk@suse.de - Add examples_{c,cxx} to devel filelist * Thu May 08 2003 kukuk@suse.de - Update to 4.1.25 * Thu Jan 23 2003 bg@suse.de - Fix mutex support for hppa (patch by Keith Bostic, bostic@sleepycat.com) * Thu Jan 09 2003 kukuk@suse.de - Add db4-4.0.14-recover.patch: fix endless loop with db_recover * Mon Sep 16 2002 rhafer@suse.de - Added locker-leak-fix.dif, which fixes a resource leak triggerd by openldap2 and larger databases. For more details see: www.openldap.org/its/index.cgi/Software%%20Bugs?id=2040 * Fri Aug 30 2002 schwab@suse.de - Fix last libstdc++ change for real. * Fri Aug 30 2002 kukuk@suse.de - Fix last libstdc++ change * Tue Aug 27 2002 pthomas@suse.de - Explicitely link libdb_cxx against libstdc++. This is a hack until libtool 1.4e is released. - Directly pass RPM_OPT_FLAGS as CFLAGS and CXXFLAGS. * Thu Jul 25 2002 rhafer@suse.de - fix for mutex support on s390 (by bk@suse.de) - rebuild configure script during build (using s_conf) * Wed Jul 03 2002 uli@suse.de - added mutex support for x86-64 * Fri May 10 2002 kukuk@suse.de - Add patch to fix missing mutex support on Alpha, SPARC and s390 * Fri May 03 2002 kukuk@suse.de - correct calculation of needed space for shalloc [Bug #12096] * Mon Jan 21 2002 kukuk@suse.de - Update to db 4.0.14 - put all documenation into /usr/share/doc/packages/db, so html index works. * Thu Nov 15 2001 ro@suse.de - added patch 3.3.11.1 Fix a bug in DB 1.85 compatibility mode that could cause DB 1.85 applications to fail to compile * Mon Nov 05 2001 adrian@suse.de - update to 3.3.11 - move optional documentation to db-extensions-devel package * Fri Jul 20 2001 kukuk@suse.de - Fix build on multilib archs * Wed Jun 06 2001 bk@suse.de - add suse_update_config for s390x * Wed May 09 2001 mfabian@suse.de - bzip2 sources * Sat Mar 31 2001 schwab@suse.de - Build static and shared libraries in one go. * Mon Nov 06 2000 kukuk@suse.de - Add /usr/include/db_185.h and /usr/include/db_cxx.h * Wed Oct 25 2000 kukuk@suse.de - Install static library versions, too * Sat Oct 21 2000 kukuk@suse.de - Fix documentation - Add /usr/include/db.h * Wed Oct 18 2000 kukuk@suse.de - initial version
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor