X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;ds=sidebyside;f=nspr%2Fmingw32-nspr.spec;h=3c45a57998487bdc3c5adf9005ac0ef217f88130;hb=c76b6c3e4ebfd3b43b138dbf511f55340e822e18;hp=128461e37896b0e0a5f57afbb384938cc8c6124c;hpb=a19620c1d1099884f507bc046901b95c92fe50f6;p=fedora-mingw.git diff --git a/nspr/mingw32-nspr.spec b/nspr/mingw32-nspr.spec index 128461e..3c45a57 100644 --- a/nspr/mingw32-nspr.spec +++ b/nspr/mingw32-nspr.spec @@ -6,7 +6,7 @@ Name: mingw32-nspr Version: 4.7.2 -Release: 1%{?dist} +Release: 7%{?dist} Summary: MinGW Windows port of the Netscape Portable Runtime (NSPR) License: MPLv1.1 or GPLv2+ or LGPLv2+ @@ -17,17 +17,17 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 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 - -Patch1000: mingw32-nspr-4.7.2-build.patch +Patch1: nspr-config-pc.patch BuildRequires: mingw32-filesystem >= 33 BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils +Requires: pkgconfig + %description NSPR provides platform independence for non-GUI operating system @@ -39,9 +39,11 @@ memory management (malloc and free) and shared library linking. %prep %setup -q -n nspr-%{version} -pushd mozilla/nsprpub -%patch1000 -p0 -popd +cp ./mozilla/nsprpub/config/nspr-config.in \ + ./mozilla/nsprpub/config/nspr-config-pc.in +%patch1 -p0 + +cp %{SOURCE2} ./mozilla/nsprpub/config/ %build @@ -49,31 +51,21 @@ pushd mozilla/nsprpub # Configure for Windows cross-compiling. %{_mingw32_configure} \ - --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 @@ -89,8 +81,27 @@ mkdir -p $RPM_BUILD_ROOT%{_mingw32_bindir} mkdir -p $RPM_BUILD_ROOT%{_mingw32_libdir} mkdir -p $RPM_BUILD_ROOT%{_mingw32_includedir} install dist/bin/*.dll $RPM_BUILD_ROOT%{_mingw32_bindir} -install dist/lib/*.dll.a $RPM_BUILD_ROOT%{_mingw32_libdir} -cp -r dist/include/nspr $RPM_BUILD_ROOT%{_mingw32_includedir}/ +install dist/lib/*.a $RPM_BUILD_ROOT%{_mingw32_libdir} +cp -rL 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 @@ -104,11 +115,28 @@ rm -rf $RPM_BUILD_ROOT %{_mingw32_bindir}/libnspr4.dll %{_mingw32_bindir}/libplc4.dll %{_mingw32_bindir}/libplds4.dll -%{_mingw32_libdir}/libnspr4.dll.a -%{_mingw32_libdir}/libplc4.dll.a +%{_mingw32_libdir}/libnspr4.a +%{_mingw32_libdir}/libplc4.a +%{_mingw32_libdir}/libnspr4_s.a +%{_mingw32_libdir}/libplc4_s.a +%{_mingw32_libdir}/libplds4.a +%{_mingw32_libdir}/libplds4_s.a +%{_mingw32_libdir}/pkgconfig/nspr.pc %{_mingw32_includedir}/nspr %changelog -* Mon Nov 10 2008 Richard W.M. Jones - 4.7.2-1 +* Fri Feb 20 2009 Richard W.M. Jones - 4.7.2-7 +- Rebuild for mingw32-gcc 4.4 + +* Wed Feb 18 2009 Richard W.M. Jones - 4.7.2-6 +- Fix build inside mock. + +* Tue Feb 17 2009 Richard W.M. Jones - 4.7.2-4 +- 'cp -L' to install header files, not symlinks to header files. + +* Tue Jan 13 2009 Richard W.M. Jones - 4.7.2-3 +- Requires pkgconfig. + +* Mon Nov 10 2008 Richard W.M. Jones - 4.7.2-2 - Initial RPM release.