# - see ftp://ftp.debian.org/debian/pool/main/m/mozilla-firefox/*diff*
# for hints how to make locales
# - make it more pld-like (bookmarks, default page etc..)
-# - add dictionaries outside of mozilla
#
# Conditional build:
%bcond_with tests # enable tests (whatever they check)
%bcond_without gnome # disable all GNOME components (gnomevfs, gnome, gnomeui)
+%bcond_with tidy # enable htmlvalidator extension (tidy)
+#
+%define _tidy_ver 0.839
+%define _firefox_ver 2.0.0.4
#
Summary: Firefox Community Edition web browser
Summary(pl.UTF-8): Firefox Community Edition - przeglądarka WWW
Name: mozilla-firefox
-Version: 2.0.0.2
-Release: 2
+Version: 2.0.0.4
+Release: 1
License: MPL/LGPL
Group: X11/Applications/Networking
Source0: ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/%{version}/source/firefox-%{version}-source.tar.bz2
-# Source0-md5: d7db87b76c1e78a229b662d7dd642265
-Source1: %{name}.desktop
-Source2: %{name}.sh
+# Source0-md5: 99c14794976b2532addfcd2d836c6bb2
+Source1: http://users.skynet.be/mgueury/mozilla/tidy_08x_source.zip
+# Source1-md5: ad63736e9d57de3e6c69696319b34b3b
+Source2: %{name}.desktop
+Source3: %{name}.sh
Patch0: mozilla-install.patch
Patch1: %{name}-lib_path.patch
+Patch2: %{name}-addon-tidy.patch
Patch3: %{name}-nopangoxft.patch
Patch5: %{name}-fonts.patch
-# drop as soon as bug is fixed since it's so ugly hack
-# fixing symptoms only
-# https://bugzilla.mozilla.org/show_bug.cgi?id=362462
-Patch6: mozilla-hack-gcc_4_2.patch
+Patch69: %{name}-agent.patch
+Patch7: %{name}-myspell.patch
# if ac rebuild is needed...
#PatchX: %{name}-ac.patch
URL: http://www.mozilla.org/projects/firefox/
BuildRequires: cairo-devel >= 1.0.0
%{?with_gnome:BuildRequires: gnome-vfs2-devel >= 2.0}
BuildRequires: gtk+2-devel >= 1:2.0.0
-BuildRequires: heimdal-devel >= 0.7.1
+BuildRequires: krb5-devel
BuildRequires: libIDL-devel >= 0.8.0
%{?with_gnome:BuildRequires: libgnome-devel >= 2.0}
%{?with_gnome:BuildRequires: libgnomeui-devel >= 2.2.0}
BuildRequires: libjpeg-devel >= 6b
BuildRequires: libpng-devel >= 1.2.7
BuildRequires: libstdc++-devel
+BuildRequires: myspell-devel
BuildRequires: nspr-devel >= 1:4.6.3
BuildRequires: nss-devel >= 1:3.11.3-3
+%{?with_tidy:BuildRequires: opensp-devel}
BuildRequires: pango-devel >= 1:1.6.0
BuildRequires: perl-modules >= 5.004
BuildRequires: pkgconfig
Obsoletes: mozilla-firebird
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-# mozilla and firefox provide their own versions
-%define _noautoreqdep libgkgfx.so libgtkembedmoz.so libgtkxtbin.so libjsj.so libmozjs.so libxpcom.so libxpcom_compat.so libxpcom_core.so
+# firefox/thunderbird/seamonkey provide their own versions
+%define _noautoreqdep libgkgfx.so libgtkxtbin.so libjsj.so libxpcom_compat.so libxpcom_core.so
%define _noautoprovfiles %{_libdir}/%{name}/components
+# we don't want these to satisfy xulrunner-devel
+%define _noautoprov libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so
+# and as we don't provide them, don't require either
+%define _noautoreq libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so
%define specflags -fno-strict-aliasing -fno-tree-vrp -fno-stack-protector
standards compliance, performance and portability.
%description -l pl.UTF-8
-Firefox Community Edition jest open sourcową przeglądarką sieci WWW,
-stworzoną z myślą o zgodności ze standardami, wydajnością i
-przenośnością.
+Firefox Community Edition jest przeglądarką WWW rozpowszechnianą
+zgodnie z ideami ruchu otwartego oprogramowania oraz tworzoną z myślą
+o zgodności ze standardami, wydajnością i przenośnością.
%package libs
Summary: Firefox Community Edition shared libraries
Anglojęzyczne zasoby dla przeglądarki Firefox Community Edition.
%prep
-%setup -qc
+%setup -qc %{?with_tidy:-a1}
+%if %{with tidy}
+mv mozilla_tidy_source/mozilla/extensions/tidy mozilla/extensions/tidy
+mv mozilla_tidy_source/tidy_extension .
+rm -rf mozilla/extensions/tidy/opensp
+%endif
cd mozilla
%patch0 -p1
%patch1 -p1
+%{?with_tidy:%patch2 -p1}
%patch3 -p1
%patch5 -p1
-%patch6 -p2
-
-sed -i 's/\(-lgss\)\(\W\)/\1disable\2/' configure
+%patch7 -p1
+%patch69 -p1
# use system
#rm -rf mozilla/nsprpub mozilla/security/nss
ac_add_options --enable-default-toolkit=gtk2
ac_add_options --enable-svg
ac_add_options --enable-system-cairo
+ac_add_options --enable-system-myspell
ac_add_options --enable-xft
ac_add_options --with-distribution-id=org.pld-linux
ac_add_options --with-system-nspr
# move arch independant ones to datadir
mv $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome $RPM_BUILD_ROOT%{_datadir}/%{name}/chrome
mv $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults $RPM_BUILD_ROOT%{_datadir}/%{name}/defaults
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries $RPM_BUILD_ROOT%{_datadir}/%{name}/dictionaries
mv $RPM_BUILD_ROOT%{_libdir}/%{name}/extensions $RPM_BUILD_ROOT%{_datadir}/%{name}/extensions
mv $RPM_BUILD_ROOT%{_libdir}/%{name}/greprefs $RPM_BUILD_ROOT%{_datadir}/%{name}/greprefs
mv $RPM_BUILD_ROOT%{_libdir}/%{name}/icons $RPM_BUILD_ROOT%{_datadir}/%{name}/icons
mv $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins $RPM_BUILD_ROOT%{_datadir}/%{name}/searchplugins
ln -s ../../share/%{name}/chrome $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome
ln -s ../../share/%{name}/defaults $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults
-ln -s ../../share/%{name}/dictionaries $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
ln -s ../../share/%{name}/extensions $RPM_BUILD_ROOT%{_libdir}/%{name}/extensions
ln -s ../../share/%{name}/greprefs $RPM_BUILD_ROOT%{_libdir}/%{name}/greprefs
ln -s ../../share/%{name}/icons $RPM_BUILD_ROOT%{_libdir}/%{name}/icons
ln -s ../../share/%{name}/res $RPM_BUILD_ROOT%{_libdir}/%{name}/res
ln -s ../../share/%{name}/searchplugins $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins
-sed 's,@LIBDIR@,%{_libdir},' %{SOURCE2} > $RPM_BUILD_ROOT%{_bindir}/mozilla-firefox
+rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
+ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
+
+sed 's,@LIBDIR@,%{_libdir},' %{SOURCE3} > $RPM_BUILD_ROOT%{_bindir}/mozilla-firefox
ln -s mozilla-firefox $RPM_BUILD_ROOT%{_bindir}/firefox
install browser/base/branding/icon64.png $RPM_BUILD_ROOT%{_pixmapsdir}/mozilla-firefox.png
-install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
+install %{SOURCE2} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop
# header/development files
rm $RPM_BUILD_ROOT%{_libdir}/%{name}/xpidl
%clean
rm -rf $RPM_BUILD_ROOT
-%pre
-for d in chrome defaults dictionaries extensions greprefs icons init.d res searchplugins; do
+%pretrans
+if [ -d %{_libdir}/%{name}/dictionaries ] && [ ! -L %{_libdir}/%{name}/dictionaries ]; then
+ mv -v %{_libdir}/%{name}/dictionaries{,.rpmsave}
+fi
+for d in chrome defaults extensions greprefs icons init.d res searchplugins; do
if [ -d %{_libdir}/%{name}/$d ] && [ ! -L %{_libdir}/%{name}/$d ]; then
install -d %{_datadir}/%{name}
mv %{_libdir}/%{name}/$d %{_datadir}/%{name}/$d
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/chrome
%{_datadir}/%{name}/defaults
-%{_datadir}/%{name}/dictionaries
%{_datadir}/%{name}/greprefs
%{_datadir}/%{name}/icons
%{_datadir}/%{name}/init.d
%defattr(644,root,root,755)
%{_datadir}/%{name}/chrome/en-US.jar
%{_datadir}/%{name}/chrome/en-US.manifest
-# probably should share these with all mozilla apps
-%{_datadir}/%{name}/dictionaries/en-US.aff
-%{_datadir}/%{name}/dictionaries/en-US.dic