# # spec file for package gdbm # # Copyright (c) 2012 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/ # Name: gdbm %define lname libgdbm3 Url: http://directory.fsf.org/GNU/gdbm.html #!BuildIgnore: man # bug437293 %ifarch ppc64 Obsoletes: gdbm-64bit %endif # Version: 1.8.3 Release: 0 Summary: GNU dbm key/data database License: GPL-2.0+ Group: System/Libraries Source: ftp://prep.ai.mit.edu/gnu/gdbm/gdbm-%{version}.tar.bz2 Source2: baselibs.conf Patch: gdbm-%{version}.dif Patch1: gdbm-protoize_dbm_headers.patch Patch2: gdbm-prototype_static_functions.patch Patch3: gdbm-fix_testprogs.patch Patch4: gdbm-1.8.3-no-build-date.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: libtool %description GNU dbm is a library of database functions that use extensible hashing and work similar to the standard UNIX dbm. These routines are provided to a programmer needing to create and manipulate a hashed database. The basic use of GDBM is to store key/data pairs in a data file. Each key must be unique and each key is paired with only one data item. The library provides primitives for storing key/data pairs, searching and retrieving the data by its key and deleting a key along with its data. It also supports sequential iteration over all key/data pairs in a database. For compatibility with programs using old UNIX dbm functions, the package also provides traditional dbm and ndbm interfaces. %package -n %lname Summary: GNU dbm key/data database License: GPL-2.0+ Group: System/Libraries # O/P added in 12.2 Obsoletes: gdbm < %version-%release Provides: gdbm = %version-%release %description -n %lname GNU dbm is a library of database functions that use extensible hashing and work similar to the standard UNIX dbm. These routines are provided to a programmer needing to create and manipulate a hashed database. The basic use of GDBM is to store key/data pairs in a data file. Each key must be unique and each key is paired with only one data item. The library provides primitives for storing key/data pairs, searching and retrieving the data by its key and deleting a key along with its data. It also supports sequential iteration over all key/data pairs in a database. For compatibility with programs using old UNIX dbm functions, the package also provides traditional dbm and ndbm interfaces. %package devel Summary: Include Files and Libraries mandatory for Development License: GPL-2.0+ ; LGPL-2.1+ Group: Development/Libraries/C and C++ Requires: gdbm = %{version} Provides: gdbm:/usr/lib/libgdbm.so PreReq: %install_info_prereq # bug437293 %ifarch ppc64 Obsoletes: gdbm-devel-64bit %endif # %description devel This package contains all necessary include files and libraries needed to develop applications that require these. Authors: -------- Jason Downs Phil Nelson %prep %setup -q %patch %patch1 %patch2 %patch3 %patch4 %build aclocal autoreconf --force --install %ifarch sparc64 export CC="gcc -m64" %endif export CFLAGS="$RPM_OPT_FLAGS -Wa,--noexecstack" %configure make %{?_smp_mflags}; %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 ( %_libdir/libgdbm.so %_libdir/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 ( %_libdir/libgdbm.a %_libdir/libgdbm_compat.a )" > $RPM_BUILD_ROOT/%{_libdir}/libndbm.a %post -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig %files -n %lname %defattr(-,root,root) %doc COPYING README NEWS %_libdir/libgdbm.so.3 %_libdir/libgdbm.so.3.0.0 %_libdir/libgdbm_compat.so.3 %_libdir/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