Name: mingw32-nspr
Version: 4.7.2
-Release: 1%{?dist}
+Release: 3%{?dist}
Summary: MinGW Windows port of the Netscape Portable Runtime (NSPR)
License: MPLv1.1 or GPLv2+ or LGPLv2+
BuildArch: noarch
-#Source1: nspr.pc.in
-#Source2: nspr-config-vars.in
+Source1: nspr.pc.in
+Source2: nspr-config-vars.in
-#Patch1: nspr-config-pc.patch
+Patch1: nspr-config-pc.patch
+# MinGW-specific build patch.
Patch1000: mingw32-nspr-4.7.2-build.patch
BuildRequires: mingw32-filesystem >= 33
BuildRequires: mingw32-gcc
BuildRequires: mingw32-binutils
+Requires: pkgconfig
+
%description
NSPR provides platform independence for non-GUI operating system
%prep
%setup -q -n nspr-%{version}
+cp ./mozilla/nsprpub/config/nspr-config.in \
+ ./mozilla/nsprpub/config/nspr-config-pc.in
+%patch1 -p0
+
+cp %{SOURCE2} ./mozilla/nsprpub/config/
+
pushd mozilla/nsprpub
%patch1000 -p0
popd
--prefix=%{_mingw32_prefix} \
--libdir=%{_mingw32_libdir} \
--includedir=%{_mingw32_includedir}/nspr4 \
- --enable-optimize="$RPM_OPT_FLAGS" \
+ --enable-optimize="%{_mingw32_cflags}" \
--disable-debug \
--enable-win32-target=WINNT \
--enable-64bit=no
-# Something in the configure script is added -m64 option,
-# so remove it.
-# Also remove stack-protector checks.
-pushd config
-mv autoconf.mk autoconf.mk.orig
-sed -e 's/-m64//' -e 's/-fstack-protector//' \
- < autoconf.mk.orig > autoconf.mk
-popd
-
# NSPR comes with its own "special" install program called nsinstall.
# This must be built as a native program.
make -C config CC=gcc CFLAGS="-DXP_UNIX=1"
# Now build the rest using the "special" nsinstall.
make \
- NSINSTALL=`pwd`/config/nsinstall \
+ NSINSTALL=$(pwd)/config/nsinstall \
RANLIB=i686-pc-mingw32-ranlib \
+ RC=i686-pc-mingw32-windres \
%{?_smp_mflags}
popd
install dist/lib/*.dll.a $RPM_BUILD_ROOT%{_mingw32_libdir}
cp -r dist/include/nspr $RPM_BUILD_ROOT%{_mingw32_includedir}/
+# Write an nspr pkgconfig file.
+
+NSPR_LIBS=`./config/nspr-config --libs`
+NSPR_CFLAGS=`./config/nspr-config --cflags`
+NSPR_VERSION=`./config/nspr-config --version`
+%{__mkdir_p} $RPM_BUILD_ROOT/%{_mingw32_libdir}/pkgconfig
+
+cat ./config/nspr-config-vars > \
+ $RPM_BUILD_ROOT/%{_mingw32_libdir}/pkgconfig/nspr.pc
+
+cat %{SOURCE1} | sed -e "s,%%libdir%%,%{_mingw32_libdir},g" \
+ -e "s,%%prefix%%,%{_mingw32_prefix},g" \
+ -e "s,%%exec_prefix%%,%{_mingw32_prefix},g" \
+ -e "s,%%includedir%%,%{_mingw32_includedir}/nspr4,g" \
+ -e "s,%%NSPR_VERSION%%,$NSPR_VERSION,g" \
+ -e "s,%%FULL_NSPR_LIBS%%,$NSPR_LIBS,g" \
+ -e "s,%%FULL_NSPR_CFLAGS%%,$NSPR_CFLAGS,g" >> \
+ $RPM_BUILD_ROOT/%{_mingw32_libdir}/pkgconfig/nspr.pc
+
popd
%{_mingw32_bindir}/libplds4.dll
%{_mingw32_libdir}/libnspr4.dll.a
%{_mingw32_libdir}/libplc4.dll.a
+%{_mingw32_libdir}/pkgconfig/nspr.pc
%{_mingw32_includedir}/nspr
%changelog
-* Mon Nov 10 2008 Richard W.M. Jones <rjones@redhat.com> - 4.7.2-1
+* Tue Jan 13 2009 Richard W.M. Jones <rjones@redhat.com> - 4.7.2-3
+- Requires pkgconfig.
+
+* Mon Nov 10 2008 Richard W.M. Jones <rjones@redhat.com> - 4.7.2-2
- Initial RPM release.