]> git.pld-linux.org Git - packages/nss.git/blame_incremental - nss.spec
- updated to 3.30.2
[packages/nss.git] / nss.spec
... / ...
CommitLineData
1%define nspr_ver 1:4.14
2%define foover %(echo %{version} | tr . _)
3Summary: NSS - Network Security Services
4Summary(pl.UTF-8): NSS - Network Security Services
5Name: nss
6Version: 3.30.2
7Release: 1
8Epoch: 1
9License: MPL v2.0
10Group: Libraries
11Source0: http://ftp.mozilla.org/pub/security/nss/releases/NSS_%{foover}_RTM/src/%{name}-%{version}.tar.gz
12# Source0-md5: 42c22dd8ec6254f846259f1d8dd2eb76
13Source1: %{name}-mozilla-nss.pc
14Source2: %{name}-config.in
15Source3: http://www.cacert.org/certs/root.der
16# Source3-md5: a61b375e390d9c3654eebd2031461f6b
17Source4: nss-softokn.pc.in
18# Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1083900
19Patch0: x32.patch
20URL: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS
21BuildRequires: nspr-devel >= %{nspr_ver}
22BuildRequires: nss-tools
23BuildRequires: perl-base
24BuildRequires: sqlite3-devel
25BuildRequires: zlib-devel
26BuildConflicts: mozilla < 0.9.6-3
27Requires: %{name}-softokn-freebl = %{epoch}:%{version}-%{release}
28Requires: nspr >= %{nspr_ver}
29Obsoletes: libnss3
30# needs http2 code update: https://bugzilla.mozilla.org/show_bug.cgi?id=1323209
31Conflicts: firefox < 50.1.0-2
32Conflicts: iceape < 2.46-1
33Conflicts: iceweasel < 51
34Conflicts: mozilla-firefox < 51
35Conflicts: seamonkey < 2.47
36BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
37
38%define specflags -fno-strict-aliasing
39# signed - stripped before signing
40%define _noautostrip .*%{_libdir}/libfreebl3.so\\|.*%{_libdir}/libsoftokn3.so
41%define _noautochrpath .*%{_libdir}/libfreebl3.so\\|.*%{_libdir}/libsoftokn3.so
42
43%description
44NSS supports cross-platform development of security-enabled server
45applications. Applications built with NSS can support PKCS #5,
46PKCS #7, PKCS #11, PKCS #12, S/MIME, TLS, SSL v2 and v3, X.509 v3
47certificates, and other security standards.
48
49%description -l pl.UTF-8
50NSS wspomaga pisanie wieloplatformowych bezpiecznych serwerów.
51Aplikacja używająca NSS jest w stanie obsłużyć PKCS #5, PKCS #7,
52PKCS #11, PKCS #12, S/MIME, TLS, SSL v2 oraz v3, certyfikaty X.509 v3,
53i wiele innych bezpiecznych standardów.
54
55%package tools
56Summary: NSS command line tools and utilities
57Summary(pl.UTF-8): Narzędzia NSS obsługiwane z linii poleceń
58Group: Applications
59Requires: %{name} = %{epoch}:%{version}-%{release}
60
61%description tools
62The NSS Toolkit command line tool.
63
64%description tools -l pl.UTF-8
65Narzędzia NSS obsługiwane z linii poleceń.
66
67%package devel
68Summary: NSS - header files
69Summary(pl.UTF-8): NSS - pliki nagłówkowe
70Group: Development/Libraries
71Requires: %{name} = %{epoch}:%{version}-%{release}
72Requires: nspr-devel >= %{nspr_ver}
73Obsoletes: libnss3-devel
74
75%description devel
76Development part of NSS library.
77
78%description devel -l pl.UTF-8
79Część biblioteki NSS przeznaczona dla programistów.
80
81%package static
82Summary: NSS - static library
83Summary(pl.UTF-8): NSS - biblioteka statyczna
84Group: Development/Libraries
85Requires: %{name}-devel = %{epoch}:%{version}-%{release}
86
87%description static
88Static NSS Toolkit libraries.
89
90%description static -l pl.UTF-8
91Statyczne wersje bibliotek z NSS.
92
93%package softokn-freebl
94Summary: Freebl library for the Network Security Services
95Summary(pl.UTF-8): Biblioteka freebl dla bibliotek NSS
96Group: Libraries
97
98%description softokn-freebl
99Freebl cryptographic library for the Network Security Services.
100
101%description softokn-freebl -l pl.UTF-8
102Biblioteka kryptograficzna freebl dla bibliotek NSS.
103
104%prep
105%setup -q
106%patch0 -p1
107
108%if 0%{!?debug:1}
109# strip before signing
110%{__sed} -i -e '/export ADDON_PATH$/a\ echo STRIP \; %{__strip} --strip-unneeded -R.comment -R.note ${5}' nss/cmd/shlibsign/sign.sh
111%endif
112
113%build
114# http://wiki.cacert.org/wiki/NSSLib
115addbuiltin -n "CAcert Inc." -t "CT,C,C" < %{SOURCE3} >> nss/lib/ckfw/builtins/certdata.txt
116
117%ifarch %{x8664} ppc64 sparc64
118export USE_64=1
119%endif
120
121# http://pki.fedoraproject.org/wiki/ECC_Capable_NSS
122for dir in ecc noecc; do
123 install -d $dir
124 cp -a nss $dir/nss
125done
126
127export BUILD_OPT=1
128export MOZILLA_CLIENT=1
129export NSDISTMODE=copy
130export NSPR_INCLUDE_DIR=/usr/include/nspr
131export NSS_USE_SYSTEM_SQLITE=1
132export USE_PTHREADS=1
133export USE_SYSTEM_ZLIB=1
134export ZLIB_LIBS="-lz"
135%ifarch x32
136export USE_X32=1
137%endif
138
139# https://bugzilla.mozilla.org/show_bug.cgi?id=1084623
140
141# Forcing ecc with this hack would produce broken librares (softoken, freebl etc).
142# Thus we also build noecc version (which doesn't require hack) and use these
143# libs from there.
144%{__sed} -i -e 's|#error|//error|g' ecc/nss/lib/freebl/ecl/ecl-curve.h
145%{__make} -j1 -C ecc/nss \
146 NSS_ECC_MORE_THAN_SUITE_B=1 \
147 CC="%{__cc}" \
148 OPTIMIZER="%{rpmcflags} %{rpmcppflags}" \
149
150%{__make} -j1 -C noecc/nss \
151 CC="%{__cc}" \
152 OPTIMIZER="%{rpmcflags} %{rpmcppflags}"
153
154%install
155rm -rf $RPM_BUILD_ROOT
156install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1,%{_includedir}/nss,/%{_lib},%{_libdir},%{_pkgconfigdir}}
157
158cp -p ecc/dist/private/nss/* $RPM_BUILD_ROOT%{_includedir}/nss
159cp -p ecc/dist/public/dbm/* $RPM_BUILD_ROOT%{_includedir}/nss
160cp -p ecc/dist/public/nss/* $RPM_BUILD_ROOT%{_includedir}/nss
161install -p ecc/dist/Linux*/bin/* $RPM_BUILD_ROOT%{_bindir}
162install -p ecc/dist/Linux*/lib/* $RPM_BUILD_ROOT%{_libdir}
163
164# non-ECC version, we need only libnssdbm3, libsoftokn3, libfreebl3
165install -p noecc/dist/Linux*/lib/libnssdbm3.* $RPM_BUILD_ROOT%{_libdir}
166install -p noecc/dist/Linux*/lib/libsoftokn3.* $RPM_BUILD_ROOT%{_libdir}
167install -p noecc/dist/Linux*/lib/libfreebl3.* $RPM_BUILD_ROOT%{_libdir}
168
169cp -p nss/doc/nroff/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
170
171%{__sed} -e '
172 s#libdir=.*#libdir=%{_libdir}#g
173 s#includedir=.*#includedir=%{_includedir}#g
174 s#VERSION#%{version}#g
175' %{SOURCE1} > $RPM_BUILD_ROOT%{_pkgconfigdir}/nss.pc
176# compatibility symlink
177ln -s nss.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/mozilla-nss.pc
178
179cat %{SOURCE4} | \
180sed -e "s,%%libdir%%,%{_libdir},g" \
181 -e "s,%%prefix%%,%{_prefix},g" \
182 -e "s,%%exec_prefix%%,%{_prefix},g" \
183 -e "s,%%includedir%%,%{_includedir}/nss,g" \
184 -e "s,%%NSPR_VERSION%%,$(echo %{nspr_ver} | sed -e 's#.*:##g'),g" \
185 -e "s,%%NSS_VERSION%%,%{version},g" \
186 -e "s,%%SOFTOKEN_VERSION%%,%{version},g" > \
187 $RPM_BUILD_ROOT%{_pkgconfigdir}/nss-softokn.pc
188
189NSS_VMAJOR=$(awk '/#define.*NSS_VMAJOR/ {print $3}' nss/lib/nss/nss.h)
190NSS_VMINOR=$(awk '/#define.*NSS_VMINOR/ {print $3}' nss/lib/nss/nss.h)
191NSS_VPATCH=$(awk '/#define.*NSS_VPATCH/ {print $3}' nss/lib/nss/nss.h)
192%{__sed} -e "
193 s,@libdir@,%{_libdir},g
194 s,@prefix@,%{_prefix},g
195 s,@exec_prefix@,%{_prefix},g
196 s,@includedir@,%{_includedir}/nss,g
197 s,@MOD_MAJOR_VERSION@,$NSS_VMAJOR,g
198 s,@MOD_MINOR_VERSION@,$NSS_VMINOR,g
199 s,@MOD_PATCH_VERSION@,$NSS_VPATCH,g
200" %{SOURCE2} > $RPM_BUILD_ROOT%{_bindir}/nss-config
201chmod +x $RPM_BUILD_ROOT%{_bindir}/nss-config
202
203%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfreebl3.so $RPM_BUILD_ROOT/%{_lib}
204ln -s /%{_lib}/libfreebl3.so $RPM_BUILD_ROOT%{_libdir}/libfreebl3.so
205%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfreebl3.chk $RPM_BUILD_ROOT/%{_lib}
206ln -s /%{_lib}/libfreebl3.chk $RPM_BUILD_ROOT%{_libdir}/libfreebl3.chk
207%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfreeblpriv3.so $RPM_BUILD_ROOT/%{_lib}
208ln -s /%{_lib}/libfreeblpriv3.so $RPM_BUILD_ROOT%{_libdir}/libfreeblpriv3.so
209%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfreeblpriv3.chk $RPM_BUILD_ROOT/%{_lib}
210ln -s /%{_lib}/libfreeblpriv3.chk $RPM_BUILD_ROOT%{_libdir}/libfreeblpriv3.chk
211
212# conflict with openssl-static
213%{__mv} $RPM_BUILD_ROOT%{_libdir}/libssl{,3}.a
214
215# unit tests
216%{__rm} $RPM_BUILD_ROOT%{_bindir}/der_gtest
217%{__rm} $RPM_BUILD_ROOT%{_bindir}/fbectest
218%{__rm} $RPM_BUILD_ROOT%{_bindir}/gtests
219%{__rm} $RPM_BUILD_ROOT%{_bindir}/nss_bogo_shim
220%{__rm} $RPM_BUILD_ROOT%{_bindir}/pk11_gtest
221%{__rm} $RPM_BUILD_ROOT%{_bindir}/pk11ectest
222%{__rm} $RPM_BUILD_ROOT%{_bindir}/ssl_gtest
223%{__rm} $RPM_BUILD_ROOT%{_bindir}/util_gtest
224%{__rm} $RPM_BUILD_ROOT%{_libdir}/libgtest*
225
226if [ ! -f "$RPM_BUILD_ROOT%{_includedir}/nss/nsslowhash.h" ]; then
227 echo >&2 "ERROR: %{_includedir}/nss/nsslowhash.h not installed. Needed by glibc"
228 exit 1
229fi
230
231%clean
232rm -rf $RPM_BUILD_ROOT
233
234%post -p /sbin/ldconfig
235%postun -p /sbin/ldconfig
236
237%files
238%defattr(644,root,root,755)
239# COPYING beside MPL v2.0 text contains GPL/LGPL compatibility notes
240%doc nss/{COPYING,trademarks.txt}
241%attr(755,root,root) %{_libdir}/libfreebl3.so
242%attr(755,root,root) %{_libdir}/libfreeblpriv3.so
243%attr(755,root,root) %{_libdir}/libnss3.so
244%attr(755,root,root) %{_libdir}/libnssckbi.so
245%attr(755,root,root) %{_libdir}/libnssdbm3.so
246%attr(755,root,root) %{_libdir}/libnssutil3.so
247%attr(755,root,root) %{_libdir}/libsmime3.so
248%attr(755,root,root) %{_libdir}/libsoftokn3.so
249%attr(755,root,root) %{_libdir}/libssl3.so
250%{_libdir}/libfreebl3.chk
251%{_libdir}/libfreeblpriv3.chk
252%{_libdir}/libnssdbm3.chk
253%{_libdir}/libsoftokn3.chk
254
255%files devel
256%defattr(644,root,root,755)
257%attr(755,root,root) %{_bindir}/nss-config
258%{_libdir}/libcrmf.a
259%{_libdir}/libfreebl.a
260%{_includedir}/nss
261%{_pkgconfigdir}/mozilla-nss.pc
262%{_pkgconfigdir}/nss.pc
263%{_pkgconfigdir}/nss-softokn.pc
264
265%files tools
266%defattr(644,root,root,755)
267%attr(755,root,root) %{_bindir}/addbuiltin
268%attr(755,root,root) %{_bindir}/atob
269%attr(755,root,root) %{_bindir}/baddbdir
270%attr(755,root,root) %{_bindir}/bltest
271%attr(755,root,root) %{_bindir}/btoa
272%attr(755,root,root) %{_bindir}/certcgi
273%attr(755,root,root) %{_bindir}/certutil
274%attr(755,root,root) %{_bindir}/chktest
275%attr(755,root,root) %{_bindir}/cmsutil
276%attr(755,root,root) %{_bindir}/conflict
277%attr(755,root,root) %{_bindir}/crlutil
278%attr(755,root,root) %{_bindir}/crmftest
279%attr(755,root,root) %{_bindir}/dbtest
280%attr(755,root,root) %{_bindir}/derdump
281%attr(755,root,root) %{_bindir}/dertimetest
282%attr(755,root,root) %{_bindir}/digest
283%attr(755,root,root) %{_bindir}/ecperf
284%attr(755,root,root) %{_bindir}/encodeinttest
285%attr(755,root,root) %{_bindir}/fipstest
286%attr(755,root,root) %{_bindir}/httpserv
287%attr(755,root,root) %{_bindir}/listsuites
288%attr(755,root,root) %{_bindir}/lowhashtest
289%attr(755,root,root) %{_bindir}/makepqg
290%attr(755,root,root) %{_bindir}/mangle
291%attr(755,root,root) %{_bindir}/modutil
292%attr(755,root,root) %{_bindir}/multinit
293%attr(755,root,root) %{_bindir}/nonspr10
294%attr(755,root,root) %{_bindir}/ocspclnt
295%attr(755,root,root) %{_bindir}/ocspresp
296%attr(755,root,root) %{_bindir}/oidcalc
297%attr(755,root,root) %{_bindir}/p7content
298%attr(755,root,root) %{_bindir}/p7env
299%attr(755,root,root) %{_bindir}/p7sign
300%attr(755,root,root) %{_bindir}/p7verify
301%attr(755,root,root) %{_bindir}/pk11gcmtest
302%attr(755,root,root) %{_bindir}/pk11mode
303%attr(755,root,root) %{_bindir}/pk12util
304%attr(755,root,root) %{_bindir}/pk1sign
305%attr(755,root,root) %{_bindir}/pkix-errcodes
306%attr(755,root,root) %{_bindir}/pp
307%attr(755,root,root) %{_bindir}/pwdecrypt
308%attr(755,root,root) %{_bindir}/remtest
309%attr(755,root,root) %{_bindir}/rsaperf
310%attr(755,root,root) %{_bindir}/sdrtest
311%attr(755,root,root) %{_bindir}/secmodtest
312%attr(755,root,root) %{_bindir}/selfserv
313%attr(755,root,root) %{_bindir}/shlibsign
314%attr(755,root,root) %{_bindir}/signtool
315%attr(755,root,root) %{_bindir}/signver
316%attr(755,root,root) %{_bindir}/ssltap
317%attr(755,root,root) %{_bindir}/strsclnt
318%attr(755,root,root) %{_bindir}/symkeyutil
319%attr(755,root,root) %{_bindir}/tstclnt
320%attr(755,root,root) %{_bindir}/vfychain
321%attr(755,root,root) %{_bindir}/vfyserv
322%{_mandir}/man1/certutil.1*
323%{_mandir}/man1/cmsutil.1*
324%{_mandir}/man1/crlutil.1*
325%{_mandir}/man1/derdump.1*
326%{_mandir}/man1/modutil.1*
327%{_mandir}/man1/pk12util.1*
328%{_mandir}/man1/pp.1*
329%{_mandir}/man1/signtool.1*
330%{_mandir}/man1/signver.1*
331%{_mandir}/man1/ssltap.1*
332%{_mandir}/man1/vfychain.1*
333%{_mandir}/man1/vfyserv.1*
334
335%files static
336%defattr(644,root,root,755)
337%{_libdir}/libcertdb.a
338%{_libdir}/libcerthi.a
339%{_libdir}/libcryptohi.a
340%{_libdir}/libdbm.a
341%{_libdir}/libjar.a
342%{_libdir}/libnss.a
343%{_libdir}/libnssb.a
344%{_libdir}/libnssckfw.a
345%{_libdir}/libnssdbm.a
346%{_libdir}/libnssdev.a
347%{_libdir}/libnsspki.a
348%{_libdir}/libnssutil.a
349%{_libdir}/libpk11wrap.a
350%{_libdir}/libpkcs12.a
351%{_libdir}/libpkcs7.a
352%{_libdir}/libpkixcertsel.a
353%{_libdir}/libpkixchecker.a
354%{_libdir}/libpkixcrlsel.a
355%{_libdir}/libpkixmodule.a
356%{_libdir}/libpkixparams.a
357%{_libdir}/libpkixpki.a
358%{_libdir}/libpkixresults.a
359%{_libdir}/libpkixstore.a
360%{_libdir}/libpkixsystem.a
361%{_libdir}/libpkixtop.a
362%{_libdir}/libpkixutil.a
363%{_libdir}/libsectool.a
364%{_libdir}/libsmime.a
365%{_libdir}/libsoftokn.a
366%{_libdir}/libssl3.a
367
368%files softokn-freebl
369%defattr(644,root,root,755)
370%attr(755,root,root) /%{_lib}/libfreebl3.so
371%attr(755,root,root) /%{_lib}/libfreeblpriv3.so
372/%{_lib}/libfreebl3.chk
373/%{_lib}/libfreeblpriv3.chk
This page took 0.070774 seconds and 4 git commands to generate.