diff --git a/nspr-4.33.tar.gz b/nspr-4.33.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..57d0b25e2d398ac9abc234deb8b733db324e37a8 Binary files /dev/null and b/nspr-4.33.tar.gz differ diff --git a/nspr-config.xml b/nspr-config.xml new file mode 100644 index 0000000000000000000000000000000000000000..9e3f99c6ff222de67535d7bfe6b50816f72cca87 --- /dev/null +++ b/nspr-config.xml @@ -0,0 +1,127 @@ + + + +]> + + + + + &date; + Netscape Portable Runtime + nspr + &version; + + + + nspr-config + 1 + + + + nspr-config + Return meta information about nspr libraries + + + + + nspr-config + + + + + + + + + + + + Description + nspr-config is a shell script which can be used to obtain gcc options for building client pacakges of nspr. + + + + Options + + + + + Returns the top level system directory under which the nspr libraries are installed. + + + + + Returns the top level system directory under which any nspr binaries would be installed. + + + + count + Returns the path to the directory were the nspr headers are installed. + + + + + Returns the upstream version of nspr in the form major_version-minor_version-patch_version. + + + + + Returns the compiler linking flags. + + + + + Returns the compiler include flags. + + + + + Returns the path to the directory were the nspr libraries are installed. + + + + + + + Examples + + The following example will query for both include path and linkage flags: + + /usr/bin/nspr-config --cflags --libs + + + + + + + + Files + + /usr/bin/nspr-config + + + + + See also + pkg-config(1) + + + + Authors + The NSPR liraries were written and maintained by developers with Netscape, Red Hat, Sun, Oracle, Mozilla, and Google. + + Authors: Elio Maldonado <emaldona@redhat.com>. + + + + + + LICENSE + Licensed under the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. + + + + + diff --git a/nspr.spec b/nspr.spec new file mode 100644 index 0000000000000000000000000000000000000000..52e8c864a04ba1542c148a3c3312db34f9d60d05 --- /dev/null +++ b/nspr.spec @@ -0,0 +1,120 @@ +%define anolis_release 1 +%global nspr_version 4.33 + +Summary: Netscape Portable Runtime +Name: nspr +Version: %{nspr_version} +Release: %{anolis_release}%{?dist} +License: MPLv2.0 +URL: http://ftp.mozilla.org/pub/nspr/releases/v${nspr_version}/src +Conflicts: filesystem < 3 +BuildRequires: gcc + +# Sources available at ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/ +# When hg tag based snapshots are being used, refer to hg documentation on +# mozilla.org and check out subdirectory mozilla/nsprpub. +Source0: %{name}-%{nspr_version}.tar.gz +Source1: nspr-config.xml + +%description +NSPR provides platform independence for non-GUI operating system +facilities. These facilities include threads, thread synchronization, +normal file and network I/O, interval timing and calendar time, basic +memory management (malloc and free) and shared library linking. + +%package devel +Summary: Development libraries for the Netscape Portable Runtime +Requires: nspr = %{version}-%{release} +Requires: pkgconfig +BuildRequires: xmlto +Conflicts: filesystem < 3 + +%description devel +Header files for doing development with the Netscape Portable Runtime. + +%prep + +%setup -q -n %{name}-%{nspr_version} + +%build +%define _configure ./nspr/configure +%configure \ + --prefix=%{_prefix} \ + --libdir=%{_libdir} \ + --includedir=%{_includedir}/nspr4 \ + --enable-64bit \ + --enable-optimize="$RPM_OPT_FLAGS" \ + --disable-debug + +# The assembly files are only for legacy atomics, to which we prefer GCC atomics +sed -i '/^PR_MD_ASFILES/d' config/autoconf.mk +make + +date +"%e %B %Y" | tr -d '\n' > date.xml +echo -n %{version} > version.xml + +for m in %{SOURCE1}; do + cp ${m} . +done +for m in nspr-config.xml; do + xmlto man ${m} +done + +%check + +# Run test suite. +perl ./nspr/pr/tests/runtests.pl 2>&1 | tee output.log + +TEST_FAILURES=`grep -c FAILED ./output.log` || : +if [ $TEST_FAILURES -ne 0 ]; then + echo "error: test suite returned failure(s)" + exit 1 +fi +echo "test suite completed" + +%install + +%{__rm} -Rf $RPM_BUILD_ROOT + +DESTDIR=$RPM_BUILD_ROOT \ + make install + +mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1 + +NSPR_LIBS=`./config/nspr-config --libs` +NSPR_CFLAGS=`./config/nspr-config --cflags` +NSPR_VERSION=`./config/nspr-config --version` +%{__mkdir_p} $RPM_BUILD_ROOT/%{_libdir}/pkgconfig + +# Get rid of the things we don't want installed (per upstream) +%{__rm} -rf \ + $RPM_BUILD_ROOT/%{_bindir}/compile-et.pl \ + $RPM_BUILD_ROOT/%{_bindir}/prerr.properties \ + $RPM_BUILD_ROOT/%{_libdir}/libnspr4.a \ + $RPM_BUILD_ROOT/%{_libdir}/libplc4.a \ + $RPM_BUILD_ROOT/%{_libdir}/libplds4.a \ + $RPM_BUILD_ROOT/%{_datadir}/aclocal/nspr.m4 \ + $RPM_BUILD_ROOT/%{_includedir}/nspr4/md + +for f in nspr-config; do + install -c -m 644 ${f}.1 $RPM_BUILD_ROOT%{_mandir}/man1/${f}.1 +done + +%ldconfig_scriptlets + +%files +%{!?_licensedir:%global license %%doc} +%license nspr/LICENSE +%{_libdir}/libnspr4.so +%{_libdir}/libplc4.so +%{_libdir}/libplds4.so + +%files devel +%{_includedir}/nspr4 +%{_libdir}/pkgconfig/nspr.pc +%{_bindir}/nspr-config +%{_mandir}/man*/* + +%changelog +* Thu Mar 10 2022 mgb01105731 - 4.33-1 +- Init from upstream version 4.33