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