File gdbm.spec of Package gdbm

#
# spec file for package gdbm (Version 1.8.3)
#
# 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:           gdbm
Url:            http://directory.fsf.org/GNU/gdbm.html
#!BuildIgnore: man
Prefix:         /usr
License:        GPL v2 or later
Group:          System/Libraries
AutoReqProv:    on
# bug437293
%ifarch ppc64
Obsoletes:      gdbm-64bit
%endif
%ifarch  %ix86 ppc
Obsoletes:      gdbm-32bit
%endif
#
Version:        1.8.3
Release:        370
Summary:        GNU Database Routines
Source:         ftp://prep.ai.mit.edu/gnu/gdbm/gdbm-%{version}.tar.bz2
Patch:          gdbm-%{version}.dif
Patch1:         gdbm-protoize_dbm_headers.patch
Patch2:         gdbm-prototype_static_functions.patch
Patch3:         gdbm-fix_testprogs.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
A static and dynamic library for the GNU database routines.



%package devel
License:        GPL v2 or later; LGPL v2.1 or later
Summary:        Include Files and Libraries mandatory for Development
Group:          Development/Libraries/C and C++
Requires:       gdbm = %{version}
Provides:       gdbm:/usr/lib/libgdbm.so
PreReq:         %install_info_prereq
AutoReqProv:    on
# bug437293
%ifarch ppc64
Obsoletes:      gdbm-devel-64bit
%endif
%ifarch  %ix86 ppc
Obsoletes:      gdbm-devel-32bit
%endif
#

%description devel
This package contains all necessary include files and libraries needed
to develop applications that require these.



Authors:
--------
    Jason Downs <downsj@downsj.com>
    Phil Nelson <phil@unicorn.wwu.edu>

%prep
%setup -q
%patch
%patch1
%patch2
%patch3

%build
aclocal
autoreconf --force --install
%ifarch sparc64
export CC="gcc -m64"
%endif
export CFLAGS="$RPM_OPT_FLAGS -Wa,--noexecstack"
%configure
make

%install
make install INSTALL_ROOT=$RPM_BUILD_ROOT
make install-compat INSTALL_ROOT=$RPM_BUILD_ROOT
echo "/* GNU ld script
   Use the shared library, but some functions are only in
   the static library, so try that secondarily.  */
GROUP ( /usr/%{_lib}/libgdbm.so /usr/%{_lib}/libgdbm_compat.so )" > $RPM_BUILD_ROOT/%{_libdir}/libndbm.so
echo "/* GNU ld script
   Use the shared library, but some functions are only in
   the static library, so try that secondarily.  */
GROUP ( /usr/%{_lib}/libgdbm.a /usr/%{_lib}/libgdbm_compat.a )" > $RPM_BUILD_ROOT/%{_libdir}/libndbm.a

%clean
rm -rf $RPM_BUILD_ROOT

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%files
%defattr(-,root,root)
%doc COPYING README NEWS
%{_prefix}/%{_lib}/libgdbm.so.3
%{_prefix}/%{_lib}/libgdbm.so.3.0.0
%{_prefix}/%{_lib}/libgdbm_compat.so.3
%{_prefix}/%{_lib}/libgdbm_compat.so.3.0.0

%files devel
%defattr(-,root,root)
%{_prefix}/include/dbm.h
%{_prefix}/include/gdbm.h
%{_prefix}/include/ndbm.h
%{_infodir}/gdbm.info.gz
%{_prefix}/%{_lib}/libgdbm.a
%{_prefix}/%{_lib}/libgdbm.so
%{_prefix}/%{_lib}/libgdbm_compat.a
%{_prefix}/%{_lib}/libgdbm_compat.so
%{_prefix}/%{_lib}/libndbm.a
%{_prefix}/%{_lib}/libndbm.so
%{_mandir}/man3/gdbm.3.gz
%exclude %{_libdir}/*.la

%post devel
%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz

%postun devel
%install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz

%changelog
* Mon Nov 24 2008 olh@suse.de
- obsolete old -XXbit packages (bnc#437293)
* Thu Apr 10 2008 ro@suse.de
- added baselibs.conf file to build xxbit packages
  for multilib support
* Thu Feb 28 2008 pth@suse.de
- Add ANSI prototypes to dbm.h and ndbm.h (protected by macros)
- Provide full prototype for static function.
- Fix test* apps by including appropriate headers and calling
  fgets instead of gets.
* Wed Dec 26 2007 crrodriguez@suse.de
- both libgdbm.la and libgdbm_compat.la had empty dependency_libs
  and has been removed.
- fix library-without-ldconfig-post* errors
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Wed Aug 24 2005 kukuk@suse.de
- Don't reuse old temporary files in gdbm_reorganize [#105763]
* Mon Aug 30 2004 schwab@suse.de
- Fix uses of libtool.
* Fri Nov 21 2003 kukuk@suse.de
- Compile with no execstack
- Build as normal user
* Wed Jul 02 2003 kukuk@suse.de
- Remove man from buildsystem
* Mon May 12 2003 kukuk@suse.de
- Use defattr
* Thu Apr 24 2003 ro@suse.de
- fix install_info --delete call and move from preun to postun
* Fri Feb 07 2003 ro@suse.de
- added install_info macros
* Fri Jan 10 2003 kukuk@suse.de
- Use fcntl instead of flock for locking
* Mon Dec 02 2002 kukuk@suse.de
- Update to gdbm 1.8.3 (lot of bug fixes)
* Fri Aug 09 2002 kukuk@suse.de
- Fix requires for gdbm-devel [Bug #17543]
* Thu May 30 2002 olh@suse.de
- use aclocal + autoreconf --force --install, fix for ppc64
* Wed Apr 17 2002 kukuk@suse.de
- Remove gdbm 1.7.3
* Tue Dec 11 2001 froh@suse.de
- the Makefile.in of gdbm 1.7 is missing @libdir@, instead of patching
  that we follow sparc64 and ia64 and just ommit gdbm 1.7 on s390x.
* Thu Mar 22 2001 ro@suse.de
- added split-aliases as provides
* Fri Oct 27 2000 kukuk@suse.de
- Create devel subpackage
* Mon Sep 25 2000 kukuk@suse.de
- Use BuildRoot
* Thu Jun 01 2000 kukuk@suse.de
- Add group tag
* Tue Apr 04 2000 kukuk@suse.de
- Add ltconfig fix
* Tue Apr 04 2000 kukuk@suse.de
- Add automake to need for build
* Mon Apr 03 2000 bk@suse.de
- s390 team added config.{sub,guess} update macros for s390
* Thu Feb 03 2000 schwab@suse.de
- Update config.{guess,sub} to latest version.
* Fri Jan 21 2000 kukuk@suse.de
- Move /usr/{info,man} -> /usr/share/{info,man}
* Mon Oct 18 1999 kukuk@suse.de
- gdbm 1.8.0: Fix memory leak
* Mon Sep 13 1999 bs@suse.de
- ran old prepare_spec on spec file to switch to new prepare_spec.
* Fri Aug 27 1999 kukuk@suse.de
- Fix file list
* Thu Aug 26 1999 kukuk@suse.de
- Add libgdbm 1.8.0 as default
* Mon Jun 28 1999 kukuk@suse.de
- Add libndbm.so and libndbm.a link
* Mon Mar 01 1999 ro@suse.de
- added ndbm.h for glibc-2.1
* Mon Feb 22 1999 ro@suse.de
- link explicitly with -lc
* Fri Dec 18 1998 ro@suse.de
- respect alpha in specfile
* Mon Dec 07 1998 ro@suse.de
- pack ndbm.h only for libc5
* Mon Oct 20 1997 ro@suse.de
- ready for autobuild
* Thu Jan 02 1997 florian@suse.de
- add ndbm.h header files