File db43.spec of Package db43

#
# spec file for package db43 (Version 4.3.29)
#
# 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:           db43
BuildRequires:  ed gcc-c++
Summary:        Berkeley DB Database Library
Version:        4.3.29
Release:        125
Source:         db-%{version}.tar.bz2
Patch:          db-%{version}.dif
Url:            http://www.sleepycat.com
License:        BSD 3-Clause
Group:          System/Libraries
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Prefix:         %{_prefix}

%description
The Berkeley DB Database is a programmatic toolkit that provides
database support for applications.

This package contains the necessary runtime libraries.



%package devel
License:        BSD 3-Clause
Summary:        Include Files and Libraries for the Berkeley DB library
Group:          Development/Libraries/C and C++
Prefix:         %{_prefix}
Requires:       db43 = %{version} glibc-devel

%description devel
The Berkeley DB Database is a programmatic toolkit that provides
database support for applications.

This package contains the header files, libraries, and documentation
for building programs which use Berkeley DB.



%prep
%setup -q -n db-%{version}
%patch

%build
cd dist
./s_config
CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
CXXFLAGS="$CFLAGS"
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 --enable-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}/db43
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}/db43
# Move documentation to the right directory
mkdir -p $RPM_BUILD_ROOT%{_defaultdocdir}/db43
mv $RPM_BUILD_ROOT%{_prefix}/docs/* $RPM_BUILD_ROOT/%{_defaultdocdir}/db43/
cp -a LICENSE README $RPM_BUILD_ROOT/%{_defaultdocdir}/db43/
#
# Remove api documentation for Java and TCL
rm -rf $RPM_BUILD_ROOT/%{_defaultdocdir}/db43/{java,api_*,collections,gsg,ref,utility}
rm -fv $RPM_BUILD_ROOT%{_bindir}/*
rm -fv $RPM_BUILD_ROOT%{_libdir}/{libdb.a,libdb_cxx.a}
rm -fv $RPM_BUILD_ROOT%{_libdir}/tls/{libdb.a,libdb_cxx.a}
# Remove crappy *.la files
rm -rf $RPM_BUILD_ROOT%{_libdir}/*.la
rm -rf $RPM_BUILD_ROOT%{_libdir}/tls/*.la
# remove files normally in util package
rm -rf $RPM_BUILD_ROOT%{_libdir}/libdb-4.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libdb.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libdb_cxx-4.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libdb_cxx.so

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%clean
rm -rf ${RPM_BUILD_ROOT}

%files
%defattr(-,root,root)
%dir %{_defaultdocdir}/db43
%doc %{_defaultdocdir}/db43/LICENSE
%doc %{_defaultdocdir}/db43/README
%doc %{_defaultdocdir}/db43/index.html
%doc %{_defaultdocdir}/db43/images
%doc %{_defaultdocdir}/db43/sleepycat
%{_libdir}/libdb-4.3.so
%{_libdir}/libdb_cxx-4.3.so

%files devel
%defattr(-,root,root)
%dir %{_includedir}/db43
%{_includedir}/db43/db.h
%{_includedir}/db43/db_185.h
%{_includedir}/db43/db_cxx.h
%{_libdir}/libdb-4.3.a
%{_libdir}/libdb_cxx-4.3.a

%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
* Sun Nov 05 2006 ro@suse.de
- fix requires for devel package
* Thu Sep 21 2006 ro@suse.de
- rename to db43 as compat package
* 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
openSUSE Build Service is sponsored by