-%define nspr_ver 1:4.10.8
+%define nspr_ver 1:4.17
%define foover %(echo %{version} | tr . _)
Summary: NSS - Network Security Services
Summary(pl.UTF-8): NSS - Network Security Services
Name: nss
-Version: 3.19.2
+Version: 3.33
Release: 1
Epoch: 1
License: MPL v2.0
Group: Libraries
-Source0: http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_%{foover}_RTM/src/%{name}-%{version}.tar.gz
-# Source0-md5: b02ffd1e8e8ef5f8512fa02d8ca9db3d
+Source0: http://ftp.mozilla.org/pub/security/nss/releases/NSS_%{foover}_RTM/src/%{name}-%{version}.tar.gz
+# Source0-md5: 43663c850e2b2ed48ecb8910b055f5a9
Source1: %{name}-mozilla-nss.pc
Source2: %{name}-config.in
Source3: http://www.cacert.org/certs/root.der
Source4: nss-softokn.pc.in
# Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1083900
Patch0: x32.patch
-URL: http://www.mozilla.org/projects/security/pki/nss/
+URL: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS
BuildRequires: nspr-devel >= %{nspr_ver}
BuildRequires: nss-tools
BuildRequires: perl-base
Requires: %{name}-softokn-freebl = %{epoch}:%{version}-%{release}
Requires: nspr >= %{nspr_ver}
Obsoletes: libnss3
+# needs http2 code update: https://bugzilla.mozilla.org/show_bug.cgi?id=1323209
+Conflicts: firefox < 50.1.0-2
+Conflicts: iceape < 2.46-1
+Conflicts: iceweasel < 51
+Conflicts: mozilla-firefox < 51
+Conflicts: seamonkey < 2.47
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define specflags -fno-strict-aliasing
# Forcing ecc with this hack would produce broken librares (softoken, freebl etc).
# Thus we also build noecc version (which doesn't require hack) and use these
# libs from there.
-sed -i -e 's|#error|#warning|g' ecc/nss/lib/freebl/ecl/ecl-curve.h
+%{__sed} -i -e 's|#error|//error|g' ecc/nss/lib/freebl/ecl/ecl-curve.h
%{__make} -j1 -C ecc/nss \
NSS_ECC_MORE_THAN_SUITE_B=1 \
CC="%{__cc}" \
cp -p ecc/dist/private/nss/* $RPM_BUILD_ROOT%{_includedir}/nss
cp -p ecc/dist/public/dbm/* $RPM_BUILD_ROOT%{_includedir}/nss
cp -p ecc/dist/public/nss/* $RPM_BUILD_ROOT%{_includedir}/nss
-install -p ecc/dist/*/bin/* $RPM_BUILD_ROOT%{_bindir}
-install -p ecc/dist/*/lib/* $RPM_BUILD_ROOT%{_libdir}
+install -p ecc/dist/Linux*/bin/* $RPM_BUILD_ROOT%{_bindir}
+install -p ecc/dist/Linux*/lib/* $RPM_BUILD_ROOT%{_libdir}
# non-ECC version, we need only libnssdbm3, libsoftokn3, libfreebl3
-install -p noecc/dist/*/lib/libnssdbm3.* $RPM_BUILD_ROOT%{_libdir}
-install -p noecc/dist/*/lib/libsoftokn3.* $RPM_BUILD_ROOT%{_libdir}
-install -p noecc/dist/*/lib/libfreebl3.* $RPM_BUILD_ROOT%{_libdir}
+install -p noecc/dist/Linux*/lib/libnssdbm3.* $RPM_BUILD_ROOT%{_libdir}
+install -p noecc/dist/Linux*/lib/libsoftokn3.* $RPM_BUILD_ROOT%{_libdir}
+install -p noecc/dist/Linux*/lib/libfreebl3.* $RPM_BUILD_ROOT%{_libdir}
cp -p nss/doc/nroff/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
-e "s,%%SOFTOKEN_VERSION%%,%{version},g" > \
$RPM_BUILD_ROOT%{_pkgconfigdir}/nss-softokn.pc
-
NSS_VMAJOR=$(awk '/#define.*NSS_VMAJOR/ {print $3}' nss/lib/nss/nss.h)
NSS_VMINOR=$(awk '/#define.*NSS_VMINOR/ {print $3}' nss/lib/nss/nss.h)
NSS_VPATCH=$(awk '/#define.*NSS_VPATCH/ {print $3}' nss/lib/nss/nss.h)
" %{SOURCE2} > $RPM_BUILD_ROOT%{_bindir}/nss-config
chmod +x $RPM_BUILD_ROOT%{_bindir}/nss-config
-mv $RPM_BUILD_ROOT%{_libdir}/libfreebl3.so $RPM_BUILD_ROOT/%{_lib}
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfreebl3.so $RPM_BUILD_ROOT/%{_lib}
ln -s /%{_lib}/libfreebl3.so $RPM_BUILD_ROOT%{_libdir}/libfreebl3.so
-mv $RPM_BUILD_ROOT%{_libdir}/libfreebl3.chk $RPM_BUILD_ROOT/%{_lib}
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfreebl3.chk $RPM_BUILD_ROOT/%{_lib}
ln -s /%{_lib}/libfreebl3.chk $RPM_BUILD_ROOT%{_libdir}/libfreebl3.chk
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfreeblpriv3.so $RPM_BUILD_ROOT/%{_lib}
+ln -s /%{_lib}/libfreeblpriv3.so $RPM_BUILD_ROOT%{_libdir}/libfreeblpriv3.so
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfreeblpriv3.chk $RPM_BUILD_ROOT/%{_lib}
+ln -s /%{_lib}/libfreeblpriv3.chk $RPM_BUILD_ROOT%{_libdir}/libfreeblpriv3.chk
# conflict with openssl-static
-mv $RPM_BUILD_ROOT%{_libdir}/libssl{,3}.a
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libssl{,3}.a
+
+# unit tests
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/{certdb,certhigh,der,pk11,ssl,util}_gtest
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/fbectest
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/nss_bogo_shim
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/pk11ectest
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libgtest*
if [ ! -f "$RPM_BUILD_ROOT%{_includedir}/nss/nsslowhash.h" ]; then
echo >&2 "ERROR: %{_includedir}/nss/nsslowhash.h not installed. Needed by glibc"
# COPYING beside MPL v2.0 text contains GPL/LGPL compatibility notes
%doc nss/{COPYING,trademarks.txt}
%attr(755,root,root) %{_libdir}/libfreebl3.so
+%attr(755,root,root) %{_libdir}/libfreeblpriv3.so
%attr(755,root,root) %{_libdir}/libnss3.so
%attr(755,root,root) %{_libdir}/libnssckbi.so
%attr(755,root,root) %{_libdir}/libnssdbm3.so
%attr(755,root,root) %{_libdir}/libsoftokn3.so
%attr(755,root,root) %{_libdir}/libssl3.so
%{_libdir}/libfreebl3.chk
+%{_libdir}/libfreeblpriv3.chk
%{_libdir}/libnssdbm3.chk
%{_libdir}/libsoftokn3.chk
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/nss-config
+%{_libdir}/libcpputil.a
%{_libdir}/libcrmf.a
%{_libdir}/libfreebl.a
%{_includedir}/nss
%attr(755,root,root) %{_bindir}/btoa
%attr(755,root,root) %{_bindir}/certcgi
%attr(755,root,root) %{_bindir}/certutil
-%attr(755,root,root) %{_bindir}/checkcert
%attr(755,root,root) %{_bindir}/chktest
%attr(755,root,root) %{_bindir}/cmsutil
%attr(755,root,root) %{_bindir}/conflict
%attr(755,root,root) %{_bindir}/derdump
%attr(755,root,root) %{_bindir}/dertimetest
%attr(755,root,root) %{_bindir}/digest
+%attr(755,root,root) %{_bindir}/ecperf
%attr(755,root,root) %{_bindir}/encodeinttest
%attr(755,root,root) %{_bindir}/fipstest
%attr(755,root,root) %{_bindir}/httpserv
%files softokn-freebl
%defattr(644,root,root,755)
%attr(755,root,root) /%{_lib}/libfreebl3.so
+%attr(755,root,root) /%{_lib}/libfreeblpriv3.so
/%{_lib}/libfreebl3.chk
+/%{_lib}/libfreeblpriv3.chk