X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=blobdiff_plain;f=mozilla-firefox-bin.spec;h=8d4e9f9a01ed5076b6d5b0ef772efd0d83c6f593;hb=806ffd6ddf51a321f0ff87a3d435f90e42e307f1;hp=5516d52693a2760faa140e78fa1d9472ca184d8b;hpb=dc043ca8c77183dd9b45e3e0aaa14e6a1f384871;p=packages%2Fmozilla-firefox-bin.git diff --git a/mozilla-firefox-bin.spec b/mozilla-firefox-bin.spec index 5516d52..8d4e9f9 100644 --- a/mozilla-firefox-bin.spec +++ b/mozilla-firefox-bin.spec @@ -1,32 +1,46 @@ %define realname firefox Summary: Mozilla Firefox web browser -Summary(pl.UTF-8): Mozilla Firefox - przeglądarka WWW +Summary(pl.UTF-8): Mozilla Firefox - przeglądarka WWW Name: mozilla-firefox-bin -Version: 2.0.0.1 +Version: 16.0.2 Release: 1 License: MPL/LGPL Group: X11/Applications/Networking -Source0: http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/%{version}/linux-i686/en-US/%{realname}-%{version}.tar.gz -# Source0-md5: 24a58db01dbb0168545a1c86d09128f0 -Source1: %{name}.desktop -Source2: %{name}.sh +Source0: http://releases.mozilla.org/pub/mozilla.org/%{realname}/releases/%{version}/linux-i686/en-US/%{realname}-%{version}.tar.bz2?/%{realname}-%{version}.i686.tar.bz2 +# Source0-md5: 79378b314f1c35689c6908c8bb97b19a +Source1: http://releases.mozilla.org/pub/mozilla.org/%{realname}/releases/%{version}/linux-x86_64/en-US/%{realname}-%{version}.tar.bz2?/%{realname}-%{version}.x8664.tar.bz2 +# Source1-md5: 5258b203d85c44224672fda9682ecaed +Source2: %{name}.desktop +Source3: %{name}.sh +#Patch0: %{name}-agent.patch +#Patch1: %{name}-ti-agent.patch +#Patch2: nochilds.patch URL: http://www.mozilla.org/projects/firefox/ +BuildRequires: rpmbuild(macros) >= 1.453 BuildRequires: zip +Requires: browser-plugins >= 2.0 +Requires: myspell-common +Requires: nss >=3.12.10 +Requires: sqlite3 >= 3.6.22-2 Provides: wwwbrowser Obsoletes: mozilla-firebird Conflicts: mozilla-firefox -ExclusiveArch: i686 athlon +ExclusiveArch: i686 athlon %{x8664} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _firefoxdir %{_libdir}/%{name} -# mozilla and firefox provide their own versions -# list of capabilities (SONAME, perl(module), php(module) regexps) which don't generate dependencies on package NAMES -%define _noautoreqdep libgkgfx.so libgtkembedmoz.so libgtkxtbin.so libjsj.so libmozjs.so libxpcom.so libxpcom_compat.so libxpcom_core.so libfreebl3.so libnspr4.so libplc4.so libplds4.so libfreebl3.so libnss3.so libnssckbi.so libsmime3.so libsoftokn3.chk libsoftokn3.so libssl3.so +%define moz_caps libmozalloc.so libmozsqlite3.so libxpcom.so libxul.so +%define sqlite_caps libsqlite3.so + # list of files (regexps) which don't generate Provides -%define _noautoprovfiles %{_firefoxdir}/components +%define _noautoprovfiles %{_libdir}/%{name}/components # list of script capabilities (regexps) not to be used in Provides -%define _noautoprov libplc4.so libplds4.so +%define _noautoprov %{moz_caps} +%define _noautoreq %{_noautoprov} %{sqlite_caps} libnotify.so.1 + +# no debuginfo available +%define _enable_debug_packages 0 %description Mozilla Firefox is an open-source web browser, designed for standards @@ -37,49 +51,134 @@ Mozilla Firefox jest open sourcową przeglądarką sieci WWW, stworzoną z myślą o zgodności ze standardami, wydajnością i przenośnością. %prep -%setup -q -n %{realname} +%setup -qcT +%ifarch i686 athlon +%{__tar} jxf %{SOURCE0} --strip-components=1 +%endif +%ifarch %{x8664} +%{__tar} jxf %{SOURCE1} --strip-components=1 +%endif +%if "%{pld_release}" == "th" +#%patch0 -p0 +%endif +%if "%{pld_release}" == "ti" +#%patch1 -p0 +%endif +#%patch2 -p1 -%build %install rm -rf $RPM_BUILD_ROOT install -d \ - $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}} \ - $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_firefoxdir}} \ - $RPM_BUILD_ROOT{%{_includedir}/%{name}/idl,%{_pkgconfigdir}} + $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/%{name}/plugins} \ + $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} + +cp -a . $RPM_BUILD_ROOT%{_libdir}/%{name} +sed 's,@LIBDIR@,%{_libdir},' %{SOURCE3} > $RPM_BUILD_ROOT%{_bindir}/%{name} +ln -s %{name} $RPM_BUILD_ROOT%{_bindir}/firefox-bin +cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_desktopdir} +cp -a icons/mozicon128.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png + +%browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/plugins + +# use system dict +rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries +ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries -cp -r * $RPM_BUILD_ROOT%{_firefoxdir} -sed 's,@LIBDIR@,%{_libdir},' %{SOURCE2} > $RPM_BUILD_ROOT%{_bindir}/firefox -#ln -s %{_firefoxdir}/firefox $RPM_BUILD_ROOT%{_bindir}/firefox +# use system sqlite +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/libsqlite3.so +ln -s /%{_lib}/libsqlite3.so.0 $RPM_BUILD_ROOT%{_libdir}/%{name}/libsqlite3.so -install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} +# never package these +# nss +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{freebl3,nss3,nssckbi,nssdbm3,nssutil3,smime3,softokn3,ssl3}.* +# nspr +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{nspr4,plc4,plds4}.so +# mozldap +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{ldap,ldif,prldap,ssldap}60.so + +# remove update notifier, we prefer rpm packages for updating +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/updater +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/updater.ini +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/update.locale +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/Throbber-small.gif + +# remove unecessary stuff +rm $RPM_BUILD_ROOT%{_libdir}/%{name}/removed-files +rm $RPM_BUILD_ROOT%{_libdir}/%{name}/dependentlibs.list %clean rm -rf $RPM_BUILD_ROOT +%pretrans +if [ -d %{_libdir}/%{name}/dictionaries ] && [ ! -L %{_libdir}/%{name}/dictionaries ]; then + mv -v %{_libdir}/%{name}/dictionaries{,.rpmsave} +fi +exit 0 + +%post +%update_browser_plugins + +%postun +if [ "$1" = 0 ]; then + %update_browser_plugins +fi + %files %defattr(644,root,root,755) -%{_firefoxdir}/libsoftokn3.chk -%attr(755,root,root) %{_bindir}/firefox -%dir %{_firefoxdir} -%{_firefoxdir}/res -%dir %{_firefoxdir}/components -%attr(755,root,root) %{_firefoxdir}/components/*.so -%{_firefoxdir}/components/*.js -%{_firefoxdir}/components/*.xpt -%{_firefoxdir}/plugins -%{_firefoxdir}/searchplugins -%{_firefoxdir}/icons -%{_firefoxdir}/defaults -%{_firefoxdir}/greprefs -%{_firefoxdir}/browserconfig.properties -%{_firefoxdir}/dictionaries -%attr(755,root,root) %{_firefoxdir}/*.so -%{_firefoxdir}/libfreebl3.chk -%attr(755,root,root) %{_firefoxdir}/*.sh -%attr(755,root,root) %{_firefoxdir}/m* -%attr(755,root,root) %{_firefoxdir}/f* -%attr(755,root,root) %{_firefoxdir}/x* -#%{_pixmapsdir}/* -%{_desktopdir}/*.desktop - -%{_firefoxdir}/chrome +%attr(755,root,root) %{_bindir}/%{name} +%attr(755,root,root) %{_bindir}/firefox-bin + +# browser plugins v2 +%{_browserpluginsconfdir}/browsers.d/%{name}.* +%config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist + +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/application.ini +%{_libdir}/%{name}/blocklist.xml +#%{_libdir}/%{name}/browserconfig.properties +%{_libdir}/%{name}/chrome.manifest +%{_libdir}/%{name}/omni.ja +%{_libdir}/%{name}/platform.ini +%attr(755,root,root) %{_libdir}/%{name}/firefox +%attr(755,root,root) %{_libdir}/%{name}/firefox-bin +%attr(755,root,root) %{_libdir}/%{name}/precomplete +%attr(755,root,root) %{_libdir}/%{name}/mozilla-xremote-client +%attr(755,root,root) %{_libdir}/%{name}/plugin-container + +%{_libdir}/%{name}/chrome +%{_libdir}/%{name}/defaults +%{_libdir}/%{name}/dictionaries +#%{_libdir}/%{name}/greprefs +#%{_libdir}/%{name}/hyphenation +#%{_libdir}/%{name}/hyphenation/hyph_en_US.dic +%{_libdir}/%{name}/icons +#%{_libdir}/%{name}/modules +#%{_libdir}/%{name}/res +%{_libdir}/%{name}/searchplugins + +%dir %{_libdir}/%{name}/extensions +# the signature of the default theme +%{_libdir}/%{name}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd} + +#%dir %{_libdir}/%{name}/distribution +#%dir %{_libdir}/%{name}/distribution/extensions +#%{_libdir}/%{name}/distribution/extensions/testpilot@labs.mozilla.com.xpi + +%dir %{_libdir}/%{name}/components +%attr(755,root,root) %{_libdir}/%{name}/components/*.so +%{_libdir}/%{name}/components/binary.manifest +#%{_libdir}/%{name}/components/*.js +#%{_libdir}/%{name}/components/*.xpt + +%dir %{_libdir}/%{name}/plugins +#%attr(755,root,root) %{_libdir}/%{name}/plugins/libnullplugin.so +%attr(755,root,root) %{_libdir}/%{name}/*.so +%attr(755,root,root) %{_libdir}/%{name}/*.sh + +# crashreporter +%attr(755,root,root) %{_libdir}/%{name}/crashreporter +%{_libdir}/%{name}/crashreporter-override.ini +%{_libdir}/%{name}/crashreporter.ini + +%{_pixmapsdir}/%{name}.png +%{_desktopdir}/%{name}.desktop