]> git.pld-linux.org Git - packages/nss_db.git/blame - nss_db.spec
- update rename todo
[packages/nss_db.git] / nss_db.spec
CommitLineData
5acbb529
ER
1# TODO
2# - new usptream: http://sourceforge.net/projects/nssdb/
3# see http://www.linux-archive.org/development-discussions-related-fedora-devel-lists-fedoraproject-org/546891-nss_db.html
c3050c19 4# - think of how to install with glibc 2.15: rename to nss_bdb, use /var/bdb (latter not FHS compatible?)
b0ecbbc3
ER
5# 4.8 makes libpthread a hard requirement
6# 4.7 has a heavier footprint
6d680dcb
JR
7%define db_version 4.6.21
8
5e402cdd 9Summary: Berkeley DB Name Service Switch Module
3997c356 10Summary(pl.UTF-8): Moduł NSS do baz db
5e402cdd 11Name: nss_db
97e01337
ER
12Version: 2.5
13Release: 0.1
b0ecbbc3
ER
14# DB is under the Sleepycat (Oracle) license.
15# nss_db is under the LGPLv2+ license.
16License: Sleepycat and LGPL v2+
5e402cdd 17Group: Base
97e01337
ER
18URL: http://sourceforge.net/projects/nssdb/
19Source0: http://downloads.sourceforge.net/nssdb/%{name}-%{version}.tar.gz
20# Source0-md5: 5216e844559cd5aad1823f8de2269bf6
6d680dcb
JR
21Source1: http://download.oracle.com/berkeley-db/db-%{db_version}.tar.gz
22# Source1-md5: 718082e7e35fc48478a2334b0bc4cd11
6df1b800 23Patch0: %{name}-chmod_644.patch
197a7ea1 24Patch1: %{name}-amfix.patch
cef36ccc
JB
25Patch2: %{name}-glibc23.patch
26Patch3: %{name}-db41.patch
05581d59 27Patch4: %{name}-errno.patch
f9c77854 28Patch5: %{name}-link.patch
6d680dcb
JR
29Patch6: %{name}-enoent.patch
30Patch7: %{name}-uniqdb.patch
31Patch8: %{name}-initialize.patch
32Patch9: %{name}-selinux.patch
0dd3abb7 33Patch10: %{name}-makedb-atomic.patch
a189e324 34Patch11: %{name}-makedb-shared.patch
b0ecbbc3
ER
35Patch101: http://www.oracle.com/technology/products/berkeley-db/db/update/4.6.21/patch.4.6.21.1
36Patch102: http://www.oracle.com/technology/products/berkeley-db/db/update/4.6.21/patch.4.6.21.2
37Patch103: http://www.oracle.com/technology/products/berkeley-db/db/update/4.6.21/patch.4.6.21.3
38Patch104: http://www.oracle.com/technology/products/berkeley-db/db/update/4.6.21/patch.4.6.21.4
6df1b800 39BuildRequires: autoconf
cef36ccc 40BuildRequires: automake >= 1.4
2040200c 41BuildRequires: db-devel
cef36ccc
JB
42BuildRequires: gettext-devel
43BuildRequires: glibc-devel >= 2.3
6d680dcb 44BuildRequires: libselinux-devel
5acbb529
ER
45# because of broken configure
46BuildRequires: libstdc++-devel
b0ecbbc3
ER
47BuildRequires: libtool
48Requires: glibc >= 6:2.3
8cdd2295 49Requires: make
bff56947 50Requires: sed >= 4.0
5e402cdd
JR
51BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52
34a5d083
ER
53# glibc private symbols
54%define _noautoreq .*(GLIBC_PRIVATE)
b1d0d14b 55
6953c5af 56%description
5e402cdd 57This is nss_db, a name service switch module that can be used with
197a7ea1
JB
58glibc-2.2.x.
59
aa86435a
JR
60%description -l pl.UTF-8
61To jest nss_db, moduł do serwisu nazw, który może być używany z
197a7ea1 62glibc-2.2.x.
5e402cdd
JR
63
64%prep
97e01337 65%setup -q -a1
6df1b800 66%patch0 -p1
197a7ea1 67%patch1 -p1
97e01337
ER
68#%patch2 -p1 # seems obsolete
69#%patch3 -p1 # obsolete
70#%patch4 -p1 obsolete
f9c77854 71%patch5 -p1
6d680dcb 72%patch6 -p1
97e01337
ER
73#%patch7 -p1 applied
74#%patch8 -p1 applied
75#%patch9 -p1 applied
76#%patch10 -p1 applied
a189e324 77%patch11 -p1
6d680dcb
JR
78
79mkdir db-build
b0ecbbc3
ER
80cd db-%{db_version}
81%patch101 -p0
82%patch102 -p0
83%patch103 -p0
84%patch104 -p0
5e402cdd
JR
85
86%build
b0ecbbc3 87dbdir=$(pwd)/db-instroot
6d680dcb
JR
88cd db-build
89
90CC="%{__cc}"
91CXX="%{__cxx}"
92CFLAGS="%{rpmcflags}"
93CXXFLAGS="%{rpmcflags} -fno-implicit-templates"
94LDFLAGS="%{rpmcflags} %{rpmldflags}"
95export CC CXX CFLAGS CXXFLAGS LDFLAGS
96
97echo db_cv_mutex=UNIX/fcntl > config.cache
98../db-%{db_version}/dist/configure -C \
99 --disable-compat185 \
100 --disable-cxx \
101 --disable-diagnostic \
102 --disable-dump185 \
103 --disable-java \
104 --disable-rpc \
105 --disable-tcl \
106 --disable-shared \
b0ecbbc3
ER
107 --disable-cryptography \
108 --disable-hash \
109 --disable-queue \
110 --disable-replication \
111 --disable-statistics \
112 --disable-verify \
6d680dcb
JR
113 --with-pic \
114 --with-uniquename=_nssdb \
115 --prefix=$dbdir \
116 --libdir=$dbdir/lib
117%{__make}
118%{__make} install
119cd ..
120
97e01337 121#%{__gettextize}
1ad44be8 122%{__libtoolize}
97e01337 123%{__aclocal} -I m4
9df34064 124%{__autoconf}
cef36ccc 125%{__autoheader}
9df34064 126%{__automake}
6d680dcb
JR
127%configure \
128 --with-db=${dbdir} \
129 --with-selinux
130
5fd46e69
JB
131%{__make} \
132 slibdir=/%{_lib}
5e402cdd 133
b1d0d14b
JR
134# Check for any problems, since we filter GLIBC_PRIVATE provs
135# in glibc package and deps here
136cat >> test-dlopen.c << _EOF
137#include <dlfcn.h>
138/* Simple program to see if dlopen() would succeed. */
139int main(int argc, char **argv)
140{
141 if (dlopen(argv[1], RTLD_NOW))
142 return 0;
143 return 1;
144}
145_EOF
146
147%{__cc} %{rpmcflags} -o test-dlopen test-dlopen.c -ldl
148
149./test-dlopen src/.libs/libnss_db.so.2.0.0
150
5e402cdd
JR
151%install
152rm -rf $RPM_BUILD_ROOT
cef36ccc 153install -d $RPM_BUILD_ROOT{/%{_lib},/var/db}
5e402cdd
JR
154
155%{__make} install \
5fd46e69 156 slibdir=/%{_lib} \
5e402cdd
JR
157 DESTDIR=$RPM_BUILD_ROOT
158
b0ecbbc3
ER
159rm $RPM_BUILD_ROOT%{_libdir}/libnss_db.so
160cp -a db-Makefile $RPM_BUILD_ROOT/var/db/Makefile
5e402cdd 161
b0ecbbc3 162cat << EOF -> $RPM_BUILD_ROOT%{_bindir}/create-db
5e402cdd 163#!/bin/sh
b0ecbbc3 164%{__make} -sC /var/db
5e402cdd
JR
165EOF
166
167ln -sf create-db $RPM_BUILD_ROOT%{_bindir}/update-db
168
cef36ccc
JB
169%find_lang %{name}
170
5e402cdd
JR
171%clean
172rm -rf $RPM_BUILD_ROOT
173
7a92398f 174%post -p /sbin/ldconfig
bff56947
ER
175
176%preun
177if [ "$1" -eq 0 -a -f %{_sysconfdir}/nsswitch.conf ] ; then
178 %{__sed} -i -e '
179 /^\(passwd\|group\|ethers\|protocols\|rpc\|services\|shadow\|netgroup\|hosts\):/ !b
180 s/[[:blank:]]\+db\>//
181 ' %{_sysconfdir}/nsswitch.conf
182fi
183
34a5d083
ER
184%postun -p /sbin/ldconfig
185
cef36ccc 186%files -f %{name}.lang
5e402cdd 187%defattr(644,root,root,755)
cef36ccc 188%doc AUTHORS ChangeLog NEWS README THANKS
b0ecbbc3
ER
189%attr(755,root,root) /%{_lib}/libnss_db-*.so
190%attr(755,root,root) %ghost /%{_lib}/libnss_db.so.2
191%attr(755,root,root) %{_bindir}/create-db
192%attr(755,root,root) %{_bindir}/makedb
193%attr(755,root,root) %{_bindir}/update-db
194
b146e918 195%config(noreplace) %verify(not md5 mtime size) /var/db/Makefile
This page took 0.107455 seconds and 4 git commands to generate.